4th Sem Micro-Syllabus All in 1
4th Sem Micro-Syllabus All in 1
Course Description: This course presents a study of Finite State Machines and their languages. It
covers the details of finite state automata, regular expressions, context free grammars. More, the
course includes design of the Push-down automata and Turing Machines. The course also includes
basics of undecidabilty and intractability.
Course Objectives: The main objective of the course is to introduce concepts of the models of
computation and formal language approach to computation. The general objectives are to,
introduce concepts in automata theory and theory of computation, design different finite state
machines and grammars and recognizers for different formal languages, identify different formal
language classes and their relationships, and determine the decidability and intractability of
computational problems.
Detail Syllabus
Text Books
1. John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Introduction to Automata Theory,
Languages, and Computation, 3rd Edition, Pearson - Addison-Wesley.
Reference Books
1. Harry R. Lewis and Christos H. Papadimitriou, Elements of the Theory of Computation, 2nd
Edition, Prentice Hall.
2. Michael Sipser, Introduction to the Theory of Computation, 3rd Edition, Thomson Course
Technology
3. Efim Kinber, Carl Smith, Theory of Computing: A Gentle introduction, Prentice- Hall.
4. John Martin, Introduction to Languages and the Theory of Computation, 3rd Edition,
Tata McGraw Hill.
Laboratory Work Manual
Student should write programs and prepare lab sheets for most of the units in the syllabus. Majorly,
students should practice design and implementation of Finite State Machines viz. DFA, NFA, PDA,
and Turing Machine. Students are highly recommended to construct Tokenizers/ Lexical analyzer
over/for some language. The nature of programming can be decided by the instructor and students
as per their comfort. The instructors have to prepare lab sheets for individual unit covering the
concept of all units as per the requirement. The sample lab sessions can be as following
descriptions;
- Write programs for illustrating the concepts of Strings, Prefix, Suffix and Substring of a
String.
Unit II & III: Introduction to Finite Automata and Regular Expressions (14 Hrs)
Unit IV & V: Context Free Grammar and Push Down Automata (14 Hrs)
- Write programs for illustrating the concepts of Turing Machine as a Language Recognizer.
Model Question
Tribhuvan University
Institute of Science and Technology
Section A
Long Answer Questions
Attempt any Two questions. [2*10=20]
1. Define the extended transition function of DFA. Draw a DFA accepting language L=
{1n | n=2,3,4…….}. Show acceptance of strings 1110011 and 1110 using extended
transition function. [2+4+4]
2. What is deterministic pushdown automaton? Configure a pushdown automaton
accepting the language, L= {wCwR | w € (a,b)*}. Show instantaneous description of
strings abbCbba and baCba. [2+4+4]
3. How a Turing Machine works? Construct a Turing Machine accepting the language, L=
{ (n )n }. Also show the transition diagram of the machine. Illustrate whether a string (( ))
is accepted by the Turing Machine or not. [2+6+2]
Section B
Short Answer Questions
Attempt any Eight questions. [8*5=40]
Course Description: This course introduces concept of computer networking and discuss the
different layers of networking model.
Course Objective: The main objective of this course is to introduce the understanding of the
concept of computer networking with its layers, topologies, protocols & standards, IPv4/IPv6
addressing, Routing and Latest Networking Standards.
4. Network Layer 4
[10 Hour] 4.1.Introduction and Functions (10Hrs)
4.2.IPv4 Addressing
4.3.Class-full and Classless Addressing
4.4.IPv4 Sub-netting/ Super-netting
4.5.IPv6 Addressing and its Features
4.6.IPv4 and IPv6 Datagram Formats
4.7.Comparison of IPv4 and IPv6 Addressing
4.8.NATing
4.9.Example Addresses
Unicast, Multicast and Broadcast
4.10. Routing 4
4.10.1. Introduction and Definition
4.10.2. Types of Routing
Static vs Dynamic, Unicast vs Multicast, Link
State vs Distance Vector, Interior vs Exterior
4.10.3. Path Computation Algorithms
Bellman Ford, Dijkstra’s
4.10.4. Routing Protocols
RIP, OSPF & BGP
Text Books:
1. Data Communications and Networking, 4th Edition, Behrouz A. Forouzan. McGraw-Hill
2. Computer Networking; A Top Down Approach Featuring The Internet, 2nd Edition, Kurose
James F., Ross W. Keith PEARSON EDUCATION ASIA
Laboratory works:
The lab activities under this subject should accommodate at least the following
S.N. Contents
1. Understanding of Network equipment, wiring in details
2. Practice on basic Networking commands (ifconfig/ipconfig, tcpdump, netstat, dnsip,
hostname, route)
3. Overview of IP Addressing and sub-netting, static ip setting on Linux/windows
machine, testing
4. Introduction to Packet Tracer, creating of a LAN and connectivity test in the LAN,
creation of VLAN and VLAN trunking.
5. Basic Router Configuration, Static Routing Implementation
6. Implementation of Dynamic/interior/exterior routing (RIP, OSPF, BGP)
7. Firewall Implementation, Router Access Control List (ACL)
8. Packet capture and header analysis by wire-shark (TCP,UDP,IP)
9. Basic concept of DNS, Web, FTP (shall use packet tracer, GNS3)
Model Question
Course Description: This course includes the basic concepts of operating system
components. It consists of process management, deadlocks and process
synchronization, memory management techniques, File system implementation, and
I/O device management principles. It also includes case study on Linux operating
system.
Course Objectives
Describe need and role of operating system.
Understand OS components such a scheduler, memory manager, file
system handlers and I/O device managers.
Analyze and criticize techniques used in OS components
Demonstrate and simulate algorithms used in OS components
Identify algorithms and techniques used in different components of Linux
Course Contents:
Unit Teaching Hour References
Unit 1: Operating System Overview (4)
1.1 Introduction: Definition, Two views of 2 Hour
operating system, Evolution/History of
operating system, Types of OS (Mainframe,
Server, Multiprocessor, PC, Real-Time,
Embedded, Smart Card Operating Systems),
Operating System Structures
2 Hour
1.2 System Calls: Definition, Handling System
Calls, System calls for Process, File, and
Directory Management, System Programs,
The Shell, Open Source Operating Systems
Unit 2: Process Management (10)
2.1 Introduction: Process vs Program, 1 Hour
Multiprogramming, Process Model, Process
States, Process Control Block/Process Table.
2.2 Threads: Definition, Thread vs Process,
1 Hour
Thread Usage, User and Kernel Space
Threads.
1 Hour
2.3 Inter Process Communication: Definition
Race Condition, Critical Section
3 Hour
2.4 Implementing Mutual Exclusion: Mutual
Exclusion with Busy Waiting (Disabling
Interrupts, Lock Variables, Strict Alteration,
Peterson’s Solution, Test and Set Lock),
Sleep and Wakeup, Semaphore, Monitors,
Message Passing
2.5 Classical IPC problems: Producer 1 Hour
Consumer, Sleeping Barber, and Dining
Philosopher Problem
3 Hour
2.6 Process Scheduling: Goals, Batch System
Scheduling (First-Come First-Served,
Shortest Job First, Shortest Remaining Time
Next), Interactive System Scheduling
(Round-Robin Scheduling, Priority
Scheduling, Multiple Queues), Overview of
Real Time System Scheduling (No need to
discuss any real time system scheduling
algorithm)
Unit 3: Process Deadlocks (6)
3.1 Introduction: Definition, Deadlock 1.5 Hour
Characterization, Preemptable and Non-
Preemptable Resources, Resource–
Allocation Graph, Necessary Conditions for
Deadlock
3.2 Handling Deadlocks: Ostrich Algorithm, 4.5 Hour
Deadlock prevention, Safe and Unsafe States,
Deadlock Avoidance (Bankers algorithm for
Single and Multiple Resource Instances), ,
Deadlock Detection (For Single and Multiple
Resource Instances), Recovery From
Deadlock (Through Preemption and
Rollback)
Unit 4: Memory Management (8)
4.1 Introduction: Monoprogramming vs Multi- 1 Hour
programming, Modelling Multi-
programming, Multiprogramming with
fixed and variable partitions, Relocation
and Protection.
4.2 Space Management: Fragmentation and
1 Hour
Compaction, Memory management (Bitmaps
& Linked-list), Memory Allocation
Strategies
2 Hour
4.3 Virtual Memory: Paging, Page Table, Page
Table Structure, Pages and Frames, Handling
Page Faults, TLB’s 3 Hour
4.4 Page Replacement Algorithms: Hit Rate
and Miss Rate, Concept of Locality of
Reference, FIFO, Belady’s Anomaly, Second
Chance, LRU, Optimal, LFU, Clock, WS-
Clock. 1 Hour
Text Book
Modern Operating Systems: Andrew S. Tanenbaum, PH1 Publication,
Third edition, 2008
Reference
Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, “Operating
System Concepts”, John Wiley & Sons (ASIA) Pvt. Ltd, Seventh edition,
2005.
Harvey M. Deitel, Paul J. Deitel, and David R. Choffnes, “Operating
Systems, Prentice Hall, Third edition, 2003.
Laboratory Work
The laboratory work includes solving problems in operating system. The lab
work should include;
1 Demonstration of basic Linux Commands
2 Process creation and termination, thread creation and termination
3 Simulation of IPC techniques
4 Simulation process Scheduling algorithms
5 Simulation of deadlock avoidance and deadlock detection algorithms
6 Simulation of page replacement algorithms
7 Simulation of File allocation techniques
8 Simulate free space management techniques
9 Simulation of disk scheduling algorithms
Model Question
Long Questions
Attempt any two questions. (2 × 10 = 20)
1 What is sleep and wakeup? Demonstrate problem with suitable code snippet and
illustration.
2 When page fault occurs and how it is handled? Demonstrate Second Chance, and
LRU page replacement algorithm for memory with three frames and following
reference string: 1,3,7,4,5,2,3,6,4,5,7,8, 5,1,4
3 What is Inode? Why it is superior to other file allocation approaches? Consider
20-GB disk with 8-KB block size. How much memory space will be occupied if
contiguous, and File allocation table is used for file allocation. Assume that each
FAT entry takes 4 byte.
Short Questions
Attempt any eight questions. (8 × 5 = 40)
4 Define the terms shell and system call? How it is handled? Illustrate with suitable
example.
5 What are main goals of interactive system scheduling? Discuss priority
scheduling along with its pros and cons.
6 How starvation differs from deadlock? Consider the following situation of
processes and resources:
Process Has Max
P1 2 6
P2 1 5
P3 2 5
P4 2 6
Free=3
• What will happen if process P3 requests 1 resource?
• What will happen if process P4 requests 1 resource?
7 Consider a virtual memory and physical memory of size 128-MB and 32-MB
respectively. Assume that page size is 4-KB. What will be the number of bits
required for page number, frame number, and offset? Find physical address for
the virtual address 20500. (Assume that value at index 5 of page table is 2)
8 Define the term race condition? Justify that race condition leads data loss or
incorrect data.
9 Explain directory implementation techniques employed in operating systems
briefly.
10 What is the main purpose of disk scheduling algorithms? Which disk scheduling
technique is best but impractical? Explain the algorithm with example.
11 How threads differ from processes? Explain thread usages.
12 Write short notes on:
a) Linux Scheduling
b) Fragmentation
Database Management System
Course Description: The course covers the basic concepts of databases, database system
concepts and architecture, data modeling using ER diagram, relational model, SQL, relational
algebra and calculus, normalization, transaction processing, concurrency control, and
database recovery.
Course Objective: The main objective of this course is to introduce the basic concepts of
database, data modeling techniques using entity relationship diagram, relational algebra and
calculus, basic and advanced features SQL, normalization, transaction processing,
concurrency control, and recovery techniques.
Detail Syllabus:
Unit 1 Database and Database Users Teaching
Hours (2)
Introduction Traditional file processing system; Definition of 1 hr
database and database management system with
example
Characteristics of the Self-describing nature of a database system;
Database Approach Insulation between programs and data, and data
abstraction; Support of multiple views of the data;
Sharing of data and multiuser transaction
processing
Actors on the Scene Database administrators; Database designers; End
users; System Analysts and Application
Programmers
Workers behind the DBMS system designers and implementers; Tool 1 hr
Scene developers; Operators and maintenance personnel
Advantages of Using Controlling redundancy; Restricting unauthorized
the DBMS Approach access; Providing persistent storage; Providing
storage structures and search techniques for
efficient query processing; Providing backup and
recovery; providing multiple user interfaces;
Enforcing integrity constraints; Reduced application
development time; Flexibility; Availability of up-
to-date information; Economies of scale
Unit 2 Database System – Concepts and Architecture Teaching
Hours (3)
Data Models, Schemas, Definition of data abstraction and data model; 1 hr
and Instances Categories of data models (high level, low level,
and representational data models) – Introduction to
entity-relationship model, relational data model,
network data model, hierarchical model, network
model, object data model, and self-describing data
models; Concept of schema and instance
Three-Schema Concept of three-schema architecture; Logical and 1 hr
Architecture and Data physical data independence
Independence
Database Languages Concept of DDL, SDL, VDL, DML, procedural and
and Interfaces non-procedural languages; Concept of interfaces
The Database System Concept of database system environment
Environment
Centralized and Basics of centralized and client/server architectures 1 hr
Client/Server
Architectures for
DBMSs
Classification of Classification based on data models, number of
Database Management users, number of sites, cost and type of access path
Systems
Unit 3 Data Modelling Using the Entity-Relational Teaching
Model Hours (6)
Using High-Level Concept of conceptual design 2 hrs
Conceptual Data
Models for Database
Design
Entity Types, Entity Concept of entity types, entity sets, attributes, and
Sets, Attributes, and keys; Concept of relationship types and relationship
Keys; Relationship sets, roles and constraints
Types, Relationship
Sets, Roles, and
Structural Constraints
Weak Entity Types Concept of weak entity types and partial keys
ER Diagrams, Naming Drawing ER diagrams using ER notations, naming 2 hrs
Conventions, and conventions and design issues
Design Issues
Relationship Types of Concept of higher degree relationships
Degree Higher Than
Two
Subclasses, Concept of enhanced ER (EER) model, 2 hrs
Superclasses, and superclasses, subclasses and subclasses
Inheritance
Specialization and Concept of specialization and generalization
Generalization
Constraints and Different constraints and characteristics of
Characteristics of specialization and generalization
Specialization and
Generalization
Unit 4 The Relational Data Model and Relational Database Teaching
Constraints Hours (3)
Relational Model Concept of domain, attributes, tuples, and relations; 2 hrs
Concepts Characteristics of relations; Relational model
notation
Relational Model Different categories of constraints; Domain
Constraints and constraints; Key and NULL values constraints;
Relational Database
Schemas Relational databases and relational database
schemas; Entity integrity, referential integrity, and
foreign key
Update Operations, Concept of insert, delete, and update operations; 1 hr
Transactions, and Concept of transactions
Dealing with Constraint
Violations
Unit 5 The Relational Algebra and Relational Calculus Teaching
Hours (5)
Unary Relational Concept and example of SELECT and PROJECT 3 hrs
Operations: SELECT and operations; Sequences of operations; RENAME
PROJECT operation
Relational Algebra Concept and example of UNION,
Operations from Set INTERSECTION, MINUS, and CARTESIAN
Theory PRODUCT operations
Binary Relational Concept and example of JOIN operation and its
Operations: JOIN and variations; Concept and example of DIVISION
DIVISION operation
Additional Relational Concept of generalized projection, aggregate 2 hrs
Operations functions, OUTER JOIN operations, and OUTER
UNION operation
the Tuple Relational Introduction to tuple relational calculus with
Calculus examples
the Domain Relational Introduction to domain relational calculus with
Calculus examples
Unit 6 SQL Teaching
Hours (8)
Data Definition and Data CREATE TABLE command; Attribute data types 1 hr
Types and domains; ALTER and DROP commands
Specifying Constraints Attribute constraints and attribute defaults; Key and 1 hr
referential integrity constraints
Basic Retrieval Queries SELECT-FROM-WHERE structure; Ambiguous 5 hrs
attribute names, aliasing, renaming, and tuple
variables; Unspecified WHERE clause and use of
asterisk (*); Pattern matching and arithmetic
operators
Complex Retrieval Comparisons involving NULL; Nested queries
Queries
INSERT, DELETE, and Concept and example of INSERT, DELETE, and 1 hr
UPDATE Statements UPDATE commands
Views Concept of views; CREATE VIEW command
Laboratory Works:
The laboratory work includes writing database programs to create and query databases using
basic and advanced features of structured query language (SQL) like
Data definition and data Types
Specifying constraints (primary key, foreign key, referential integrity etc.)
Basic and complex retrieval queries
Aggregate functions
INSERT, DELETE, and UPDATE Statements
Using join and views
Text Books:
1. Fundamentals of Database Systems; Seventh Edition; Ramez Elmasri, Shamkant B.
Navathe; Pearson Education
2. Database System Concepts; Sixth Edition; Avi Silberschatz, Henry F Korth, S Sudarshan;
McGraw-Hill
Reference Books:
1. Database Management Systems; Third Edition; Raghu Ramakrishnan, Johannes Gehrke;
McGraw-Hill
2. A First Course in Database Systems; Jaffrey D. Ullman, Jennifer Widom; Third Edition;
Pearson Education Limited
Model Question
Course Description: The course introduces the ideas and techniques underlying the principles and
design of artificial intelligent systems. The course covers the basics and applications of AI
including: design of intelligent agents, problem solving, searching, knowledge representation
systems, probabilistic reasoning, neural networks, machine learning and natural language
processing.
Course Objectives: The main objective of the course is to introduce concepts of Artificial
Intelligence. The general objectives are to learn about computer systems that exhibit intelligent
behavior, design intelligent agents, identify AI problems and solve the problems, design knowledge
representation and expert systems, design neural networks for solving problems, identify different
machine learning paradigms and identify their practical applications.
Detail Syllabus
1.2. History of AI
1.4. Applications of AI
Text Book
1. Stuart Russel and Peter Norvig, Artificial Intelligence A Modern Approach, Pearson
Reference Books
1. George F. Luger, Artificial Intelligence: Structures and Strategies for Complex Problem
Solving, Benjamin/Cummings Publication
2. E. Rich, K. Knight, Shivashankar B. Nair, Artificial Intelligence, Tata McGraw Hill.
3. D. W. Patterson, Artificial Intelligence and Expert Systems, Prentice Hall.
4. P. H. Winston, Artificial Intelligence, Addison Wesley.
Laboratory Work Manual
Student should write programs and prepare lab sheet for most of the units in the syllabus. Majorly,
students should practice design and implementation of intelligent agents and expert systems,
searching techniques, knowledge representation systems and machine learning techniques. Students
are also advised to implement Neural Networks for solving practical problems of AI. Students are
advised to use LISP, PROLOG, and any other high level language like C, C++, Java, etc. The
nature of programming can be decided by the instructor and student as per their comfort. The
instructors have to prepare lab sheets for individual units covering the concept of the units as per the
requirement. The sample lab sessions can be as following descriptions;
- Write program for implementing expert systems like disease prediction, weather forecasting
etc.
- Use library tools like NLTK to illustrate concepts of Natural Language Processing.
Model Question
Tribhuvan University
Institute of Science and Technology
Section A
Long Answer Questions
Attempt any Two questions. [2*10=20]
1. What do you mean by heuristic search? Given following state space representation,
show how greedy best first and A* search is used to find the goal state. [2+8] [Unit 3]
5 4
A B C
6
S 5
5
G
3
D E F 3
2 4
S is the start state and G is the goal state. The heuristics of the states are h(S)= 12 ,
h(A)= 8, h(D)= 9, h(B)= 7, h(D)= 6, h(E)= 4, h(C)= 5 , h(F)= 2, h(G)= 0.
3. What is Artificial Neural Network? Define its mathematical model. Discuss how back
propagation algorithm is used to train ANN? [1+2+6] [Unit 5]
Section B
Short Answer Questions
Attempt any Eight questions. [8*5=40]
M ax a
M in b c d
e f g h i j k
w in draw w in w in lo se lo se draw
10. How knowledge is represented using semantic networks? Illustrate with an example. [5]
[Unit 4]
11. What is supervised learning? Discuss how Naïve Bayes model works? [Unit 5]
12. Construct PEAS framework for following intelligent agents. [ Unit 2]
a. Internet Shopping Assistant
b. English Language Tutor