cs and it.pdf

47
MAHAMAYA TECHNICAL UNIVERSITY, NOIDA Syllabus For B. TECH. SECOND YEAR Of COMPUTER SCIENCE & ENGINEERING(CSE) & INFORMATION TECHNOLOGY (IT) (Effective from the Academic Session: 2013-14)

Upload: mm8871

Post on 26-Oct-2015

163 views

Category:

Documents


4 download

DESCRIPTION

Syll

TRANSCRIPT

Page 1: CS and IT.pdf

MAHAMAYA TECHNICAL UNIVERSITY,

NOIDA

Syllabus

For

B. TECH. SECOND YEAR

Of

COMPUTER SCIENCE & ENGINEERING(CSE)

& INFORMATION TECHNOLOGY (IT)

(Effective from the Academic Session: 2013-14)

Page 2: CS and IT.pdf

SCHEME OF EVALUATION OF B. TECH SECOND YEAR

(COMMON TO CSE AND IT)

SEMESTER III

S.NO.

Subject Code Subjects

Periods

L T P Evaluation Scheme

Sessional End Semester Total Credit

CT TA TOT P Th P 1 AS-306/

HU-301 Technical Writing/ Introduction to Human Behaviour (Including Human Sociology and Psychology)

3 0 0 10 10 20 - 80 - 100 3

2 AS-301A/ AS-302

Mathematics-III /Basics of System Modelling and Simulation

3 1 0

30 20 50 -

100 - 150 4

3 EE-305 Sensor & Instrumentation

3 1 2 20 10 30 15 100 30 175 5

4 CS-301 Data Structures 3 1 2 20 10 30 15 100 30 175 5 5 EC-302 Digital Design 3 1 2 20 10 30 15 100 30 175 5 6 CS-302 Discrete Structures 3 1 2 20 10 30 15 100 30 175 5 7 AU-301

Human Values and Professional Ethics

2 1 0

10 10 20 - 80 - 100 Comp Audit

course 8 General Proficiency 50 - - 50 - 18/20 5/ 6 8 1000 27

L: Lecture T: Tutorial P: Practical/Project CT: Class Test TA: Teacher’s Assessment Th: Theory TOT: Total TA =10 (5 for teachers assessment plus 5 for attendance) TA=20 (10 for teachers assessment plus 10 for attendance) P= 15(4marks for practical exam. 4marks viva. 4marks for lab. records and 3 marks for quiz). P= 30(10marks for practical exam. 10marks viva. 5marks for lab. records and 5 marks for quiz). Note: AU-301/AU-401 may be offered in both the Semesters. A student has to clear this subject in second year or in any semester after second year.

Page 3: CS and IT.pdf

SEMESTER IV

L: Lecture T: Tutorial P: Practical/Project CT: Class Test TA: Teacher’s Assessment Th: Theory TOT: Total TA =10 (5 for teachers assessment plus 5 for attendance) TA=20 (10 for teachers assessment plus 10 for attendance) P= 15(4marks for practical exam. 4marks viva. 4marks for lab. records and 3 marks for quiz) P= 30(10marks for practical exam. 10marks viva. 5marks for lab. records and 5 marks for quiz).

S.NO

Subject Code Subjects

Periods

L T P Evaluation Scheme

Sessional End Semester Total Credit

CT TA TOT P Th P 1 HU-401/

AS-406 Introduction to Human Behaviour (Including Human Sociology and Psychology)/ Technical Writing

3 0 0

10 10 20 - 80 - 100 3

2 AS-402/ AS-401 A

Basics of System Modelling and Simulation/ Mathematics-III

3 1 0

30 20 50 - 100 - 150 4

3 CS-401 Computer Organization

3 1 2 20 10 30 15 100 30 175 5

4 CS-402 Data Base Management Systems

3 1 2 20 10 30 15 100 30 175 5

5 CS-403 Object Oriented Programming with C++

3 1 2 20 10 30 15 100 30 175 5

6 CS-404 Theory of Computation

3 1 2 20 10 30 15 100 30 175 5

7 AU-401 Human Values and Professional Ethics

2 1 0

10 10 20 - 80 - 100 Comp Audit

course 8 General Proficiency 50 - - 50 20 /18 6/5 8 1000 27

Page 4: CS and IT.pdf

SEMESTER – III

(COMMON TO CSE AND IT)

AS-306/AS-406: TECHNICAL WRITING

L : T : P :: 3 : 0 : 0 Credit : 3

Objective of The Course

To impart basic skills in Technical Communication in various formats of technical writing to MCA and second year UG students in the English language. Having achieved the basic skills in professional communication in English through laboratory practice teaching, the students are required to learn various forms of technical writings. Communication is not restricted to forms of verbal interaction among the professionals. Every professional is required to be proficient in Technical Communication as well. Such proficiency is desired to be achieved through class room learning of different formats of technical writing which are usually used in any technical profession. Desired Outcome of The Course

The students must be able to : (a) Understand Communication as a process and channels of it in general and Technical Communication in particular. (b) Learn Technical writing including sentence structure and be able to understand and use technology specific words. (c) Write scientific articles, synopsis, reports (routine and annual) including Project and Sample Reports. (d) Write Technical Notes, Proposals and Articles. (e) Learn to records minutes of meetings, Seminars, workshops, make technical presentations and learn resume/CV writing.

Key Concepts

Communication as a process of interaction between originator and receiver. Context of Technical Communication as means of indulgence in various forms and formats of technical writings as required in organizations-technological as well as commercial. Writing Skills : Selection of words and phrases in technical writing leading to sentence structure as well as length and structure of paragraph. Writing scientific Articles, Reports, recording minutes and Notes, authoring and review of Research Articles. Speaking Skills : Participation in Meetings, Seminars, Workshops and Technical Presentation. Teaching Methodology

1. Equipping the student for competent techno-specific Technical Communication in English Language and enabling the student to be proficient in technical writing. 2. The teacher is required to teach the course through lectures, tutorials and samples of written technical formats. 3. The teacher must project himself as a proficient expert in technical writing of English language.

Page 5: CS and IT.pdf

4. The course has to be taught in small batches so as to give individual attention to students – both, in the process of learning to write as well as participation in conferences, seminars, workshops and project presentations. 5. The Books suggested have portions of Technical Communication in each and as such the same be treated as base texts. Expansion of the parts be undertaken with the help of relevant matter through internet. Infact, the students be encouraged to enhance their technical writing skills by self learning.

Unit - I Communication–Nature and process. Channels of Communication–Down ward, upward and horizontal Communication. Networks and Barriers to Communication. Technical Communication–Definition, Oral and written Technical Communication. Importance and Need for Technical Communication Nature of Technical Communication-Aspects and Forms of Technical Communication Technical Communication Skills-Listening, Speaking, Reading and Writing (Improving these with comprehensions). Unit -II Techniques of Writing, Selection of words and phrases in technical writing. Difference between Technical Writing and General Writing. Abstract and specific words Sentence structure, Requisites of sentence construction. Paragraph Length and structure Jargons and Cliché. Unit -III Scientific Article Writing. Synopsis Writing, Project writing and Dissertation /Thesis Writing. Report Writing- meaning, significance, structure and style. Different type of Reports-routine reports and annual reports. Project Reports Sample Reports Technical Articles-nature, significance and types. Journal Articles and Conference Papers. Unit -IV Technical Note Making Mechanics and Note Writing Techniques. Technical Proposals- meaning, structure, types and significance. Types of Proposals Review and Research Articles. Elements of Technical Articles. Unit -V Meetings-Preparation of Agenda, participation, chairing and writing minutes of meetings. Conferences, Seminars, Technical Presentations and Workshops. Video Conferencing, technical description of engineering objects/produces and processes. Slogan Writing, Speech advertising.

Page 6: CS and IT.pdf

CV Writing, difference between Biodata, CV and Resume. Types of resume and tips for resume writing. Text Books & References

1. M Ashraf Rizvi, “Effective Technical communication”, Tata Mc Graw Hill Education Pvt. Ltd., 2012.

2. Kavita Tyagi, Padma Misra, “Basic Technical Communication”, PHI Learning Pvt. Ltd, 2012.

3. Sangeeta Sharma, Binod Mishra, “Communication Skills for Engineers and Scientist”, PHI Learning Pvt Ltd, 2012.

4. Felicity O’ Dell & Michael Mc Carthy, “Englsih Collocations in Advanced Use.” Cambridge University Press 2010.

5. Raymond Murphy. “Essential English Grammar.” Cambridge University Press. 6. Sharon J. Gerson & Steven M. Gerson. “ Technical Writing, Eighth Impression, 2013,

Pearson Education, Inc.

Performance & Evaluation System

The students shall write two internal sessional tests as for other subjects besides the end-semester written exams. The internal sessionals will have a weightage of 20 marks and the end-semester theory examination shall carry 80 marks making the subject of Technical Writing worth 100 marks. Assignments are to be given to reinforce the concepts and ensure total understanding of technical writing.

Suggested web-links:

http://www.ego4u.com/ http://www.english4today.com/ http://www.learnamericanenglishonline.com/ http://learnenglish.britishcouncil.org/en/ http://www.englisch-hilfen.de/en/ http://www.englishclub.com/ http://www.englishlearning.com/ http://learningenglish.voanews.com/ http://www.usingenglish.com/dictionary.html http://www.mindtools.com/pages/article/newCS_99.http

Page 7: CS and IT.pdf

HUMAN BEHAVIOUR (Including Human Sociology and Psychology)

HU-301/HU-401

Objective of the Course: The course intends to impart knowledge and learning of different aspects of human behaviour especially in the organisational context that directs human behaviour. This has special significance to the professionals as these aspects of human behaviour needs to be accounted for while taking a decision with respect to enhancement of human productivity. UNIT-I

Concept, Nature, Characteristics, Conceptual Foundations and Importance, Roles & Skills of Human Capital. Human’s Knowing Behaviour- Approaches to understand Cognitive, Behaviouristic & Social Cognitive behaviour, Pro-social – Behaviour – Nature and Determinants (Standard Behaviour, Altruism, Empathy). UNIT-II

Perception and Attribution: Concept, Nature, Process, Importance. Management and Behavioural Applications of Perception. Attitude: Concept, Process and Importance, Attitude Measurement. Attitudes and Workforce Diversity. Personality: Concept, Nature, Types and Theories of Personality Shaping, Personality Attitude and Job Satisfaction. Learning: Concept and Theories of Learning. UNIT -III

Motivation: Meaning, Maslow’s, Herzberg, McClelland’s Theories of Motivation, Leadership: Style and Theories of Leadership-Trait, Behavioural and Situational Theories, Conflict Management: Conflict: Concept, Sources, Types, Classification of Conflict Intra, Individual, Interpersonal, Intergroup and Organisational, Resolution of Conflict. UNIT -IV

Group Dynamics: Types of Group and their development stages, concept, status, norms size and cohesiveness. Power and Politics: Concept, Sources of Power, Distinction between Power, Authority and Influence, Approaches to Power, Political Implications of Power: Dysfunctional Uses of Power. References:

1. Newstrom John W. - Organizational Behaviour: Human Behaviour at Work (Tata Mc Graw Hill, 2. Luthans Fred - Organizational Behaviour (Tata Mc Graw Hill, 10th edition)

Page 8: CS and IT.pdf

3. Mc Shane L. Steven, Glinow Mary Ann Von & Sharma Radha R. - Organizational Behaviour (Tata Mc Graw Hill) 4. Robbins Stephen P. - Organizational Behaviour (Pearson Education) 5. Hersey Paul, Blanchard, Kenneth H and Johnson Dewey E. - Management of Organisational Behaviour: 6. Greenberg Jerald and Baron Robert A. - Behaviour In Organisations: Understanding and Managing the Human Side of Work (Prentice Hall of India) 7. Laurie J. Mullins : Essentials of Organizational Behaviour, Pearson Learning

8. Ian Brooks : Organizational Behaviour, Pearson Learning

9. Baron, R.A., Psychology, 5th Edition, Pearson

Page 9: CS and IT.pdf

AS-301A/AS-401A:ENGINEERING MATHEMATICS-III Group A (AEI, EE, EN, EC, IC, CS, IT, etc.)

Prerequisites: AS-101 & AS-201

L T P 3 1 0

Unit-I : Complex Analysis Analytic functions, Cauchy-Riemann equations . Conformal mapping (for linear transformation) . Cauchy’s theorem , Cauchy integral formula. Power Series, Taylor series, Laurent series . Zeros, Singularities, Poles. Residue theorem , Evaluation of real integrals of the type

2

0

(cos ,sin )f x x dxπ

∫ and

-

( ) .f x dx+ ∞

∞∫

Unit-II : Mathematical Methods Fourier Transform, Fourier sine and cosine transforms, Properties of transform, convolution theorem, Applications to boundary value problems. Difference equations and its solution . Z-transform, some standard Z-transforms, properties of Z-transform. Application to difference equations.

Unit-III: Mathematical Statistics Elements of Probability theory, Bayes’s Theorem. Random variables, Distribution function, Probability Mass and Density functions, Joint distributions and Marginal and Conditional distributions. Expectation . Moments, Moment Generating function . Skewness , Kurtosis. Binomial, Poisson and Normal Distributions.

Unit-IV: Linear Algebra Introduction to Group, Ring and Field*. Vector Spaces, subspaces, Linear Dependence & Independence, Bases and Dimension , Standard Bases of Rn, Coordinates with respect to a bases, complementary subspaces. Standard inner product, Norm, Gram-Schmidt Orthogonalization Process.

Unit-V: Numerical Techniques

Solution of Algebraic and Transcendental equations by Newton-Raphson method and its rate of convergence. Solution of linear simultaneous equations by Gauss- Seidel method. Interpolation, finite differences, difference tables, Newton’s forward & backward difference formulae , Newton’s divided difference formula . Numerical differentiation and integration (Newton’s Cotes Quadrature formula without proof), Trapezoidal rule, Simpson’s 1/3rd& 3/8th rules. Solution of ordinary linear differential equations by Picard’s and Runge-Kutta 4th order methods. * Questions should not be set.

Page 10: CS and IT.pdf

Text Books: 1.Peter O’Neil :Advance Engineering Mathematics, Cengage Learning 2. S.S. Sastry: Introductory Mathods of Numerical Analysis, Prentice-Hall of India Pvt.Ltd. 3. V. Krishna Murthy, V.P.Mainra, & J.L.Arora: An Introduction to Linear Algebra, Affiliated East-West Press Pvt.Ltd. 4. B.V.Ramana: Higher Engineering Mathematics, Tata McGraw – Hill Publishing Co. Ltd. 5. S.R.K. Iyenger, R.K. Jain, Mathematical Methods, Second Edition, Narosa Publishing House. Reference Books:

1. Erwin Kreyszig: Advance Engineering Mathematics,Wiley India. 2. H.K.Dass : Higher Engineering Mathematics,S.Chand & Co.Ltd. 3. Michael Greenberg: Advance Engineering Mathematics, Pearson. 4. B.S.Grewal: Numerical Methods in Engg. & Science, Khanna Publisher. 5. Gilbert Strang: Linear Algebra and its application , Cengage Learning.

Page 11: CS and IT.pdf

AS – 302/AS-402: Basics of System Modelling & Simulation

L.T.P:3.1.0 Course Description: This course will cover both theoretical & application aspects of mathematical modelling of existing or new basic systems to demonstrate the concepts of modelling, approach and use of simulation techniques and their relationships to the real world systems.

Course Objectives:

1. To present concepts of computer modelling and simulation to various natural, man-made, social and engineering systems.

2. The course will provide experience of modelling & simulation specifically suited to engineering systems to show how it can help in the analysis, design, performance evaluation, operational behaviour and assessment of performance & efficiency with respect to specific goals.

Learning Outcomes:

1. Understand the modelling concepts & types of models used to represent different classes of real world systems.

2. Applying various mathematical concepts & techniques to define physical, natural & social systems.

3. Applying concepts of computer simulation for types of inputs, system models, output behaviour and performance estimation.

4. Understand how to evaluate, validate & verify models of simple systems. 5. Understand how complex and heterogeneous systems can be simplified and modelled

for a specific task and thus understand the limitations of modelling & simulation.

Cognitive Skills learnt:

1. Ability to mathematically model any system from various fields. 2. Ability to implement simple numerical algorithms to solve various modelling equations

that are used to describe real world systems. 3. Ability to select suitable techniques for generating system models, simulate them on

computers and evaluate the system performance. Course Pre-requisites: Probability & Statistical Method

Course Content:

Unit -I: Introduction to System Modelling & Simulation: (7 lectures) Need & use of Simulation, system models, advantages & limitations of models, simplified representation of complex & large systems, Principals & Steps in creating system models, capturing system environment, components of systems and selection of appropriate modelling techniques & simulation methodologies; relationships between selected models & simulation techniques.

Page 12: CS and IT.pdf

Unit -II: System Modelling Concepts: (8 Lectures) Types of system models, continuous & discrete systems, comparison of analytical & simulation methods, Event & Data Modelling, Model building, Data modelling & techniques of building useful Input Data models, multivariate & time series input models. Steps in system model building; Monte Carlo Method, verification, calibration & validation of models for simple systems.

Unit -III: Probability & Random Number generation: (7 Lectures) Discrete & Continuous Random Variables, probability functions, descriptive characteristics of a Distribution. Tests of Hypothesis and Estimation of Confidence Interval, Estimation of Error, Parameter Estimation, Goodness-of-fit Tests. Numerical Computation techniques for Continuous & Discrete Models. Distributed Lag & Cobweb Models.

Unit IV: Queuing Systems & Discrete System Simulation: (6 Lectures) Modelling & Generation of Arrival Patterns, Exponential & Poisson distribution, Service Times, Normal Distribution Queuing Systems, Simulation of Single & Multiple Server Queuing Systems, gathering statistics, Measuring occupancy & Utilization, Service Delay & Transit Times Estimation.

Unit -V: Real World Application of Simulation: (12 Lectures) Transfer Line Model, Inventory System Model, Deadlock Detection Model, Computer Center Model, Job Shop Model, Just-In-Time Model, Pi value estimation, Capital recovery Model, Economics of Insurance policy, Reliability Estimation, Warranty Problem & Estimation, Computer Network Model. Interpretation of Confidence Interval of a Parameter.

References & Bibliography:

1. Gorden G. , System Simulation, Prentice Hall. 2. Law M. Averill, Simulation Modeling & Analysis, Tata MacGraw Hill, New Delhi, 4th

Edition. 3. Sengupta S., System Simulation & Modelling, Pearson Education, 2013. 4. Banks, Carson, Nelson & Nocor, Discrete Event System Simulation, Prentice Hall, 4th

Edition 2005. 5. Kleinrock L. Queueing Systems- Vol I: Theory, John Wiely & Sons Inc, 1975. 6. Morris H. DeGroot & Mark J. Schervish , Probability & Statistics, Addison Wiseley, 3rd

Edition, 2002. 7. Pratiksha Saxena, Modeling and Simulation, Narosa Publishing House,2011 8. Zeigler, Praehofer and Kim, Theory of Modelling and Simulation, 2nd Edition, Elsevier, 2013.

URL: www.insightmaker.com: Free web based Multi-user Modelling & Simulation Environment. www.ocw.mit.edu: Course on “Introduction to Modelling & Simulation”. www.wolfarm.com/system-modeler: For system modelling software & Visualizer.

Page 13: CS and IT.pdf

List of experiments:

1. Simulation of Scheduling Algorithms: CPU Scheduling Techniques: FCFS, SJF, & Priority Scheduling, Using Queuing Theory

2. Simulation of Disk Scheduling Algorithms. 3. Modelling Multiplexers & Concentrators and applying queuing theory concepts

to determine operational performance parameters. 4. Simulation of System Reliability of any given system and determine its reliability

and average failure rate based on the given component reliability. 5. Modelling of Traffic based on given statistics of Traffic Density & vehicle

heterogeneity. 6. Telephone Exchange Modelling & Call rate & Call drop estimation based on

exchange capacity. 7. Congestion Modelling & Analysing the impact of congestion control algorithms in

Mobile systems/ Computer networks/ Assembly Line operations. Note: Students shall perform practicals in tutorial periods using Sci Lab which is freely downloadable from http://www.scilab.org/products/scilab http://www.scilab.in/

Page 14: CS and IT.pdf

EE-305: SENSOR AND INSTRUMENTATION

L T P 3 1 2

Objective & Out come of learning This is intended to be a compulsory course for all branches of Engg. The objective of the course is to familiarize with different types of main sensors and transducers used in Industry and to familiarize how signal conditioning is to be carried out for further use. Then how to acquire this data for computer and to telemeter it over a distance. Some basic fundamental of virtual instrumentation system and display devices is stressed. This course enables the students to learn the sensors and transducers & their application course in industry.

Pre-requisite: Basic courses of Electrical and Electronics Engg EE-101/EC-101

Unit-I Sensors & Transducer, Definition, Classification & Characterization, Displacement Sensors: Potentiometric, LVDT & Optical Encoder; Accelerometers: Mass & Piezoelectric; Strain Gauges: Wire & Semiconductor; Pressure Sensor: LVDT based Diaphragm & Piezoelectric, Temperature Sensor: Thermocouple, RTD, & Liquid in Glass; Flow Sensor: Ultrasonic, Electromagnetic, Laser & Thermal; Level Sensor: Ultrasonic &

Capacitive; Proximity Sensor, Concept of Smart Sensors:

Unit-II Signals Definition, Analog Signal Processing Circuits: Bridges, Op-amp Amplifiers, Differential Amplifiers, Active Filters(Low Pass & High Pass), Frequency to Voltage Convertor, Voltage to Frequency Convertor, Modulator (AM), & Demodulator (Envelop Detector). Unit-III

Digital Processing of Analog Signal: Analog Multiplexer Circuit, S/H Circuit, ADC, DAC, Convolution, Digital Filtering, Digital Telemetry System: PCM Display Devices: Analog (CRT), Digital (LCD, LED) Recorders: Analog (Magnetic, Strip Chart), Digital Printers.

Unit-IV Virtual Instrumentation Instrumentation System, DAQ System, Software for Virtual Instrumentation. Instrumentation System for Flow, Pressure, and Temperature Measurement Unit-V Measurement Errors: Gross errors and systematic errors, Absolute and relative errors, Accuracy,

Precision, Resolution and Significant figures

Voltmeters and Multi-meters- Introduction, Multi range voltmeter, Extending voltmeter ranges,

Loading, A C voltmeter using Rectifiers – Half wave and full wave, Peak responding and True RMS

voltmeters, Q-meter

DC and AC Bridge circuits for resistance, capacitance and inductance measurements.

Signal analysis: wave analyzer, harmonic distortion analyzer, spectrum analyzer.

Page 15: CS and IT.pdf

Text Books

1. DVS Murthy “Transducers and Instrumentation, PHI 2nd Edition 2013

2. D Patranabis “Sensors and Transducers” PHI 2nd Edition 2013.

3. Ranjan CS (et.al) “Instrumentation and Device Systems” PHI.

Reference Books

1. Arun K. Ghosh “Introduction to measurements and Instrumentation, PHI, 4th Edition 2012.

2. A.D. Helfrick and W.D. cooper “Modern Electronic Instrumentation & Measurement Techniques.” PHI – 2001

3. DAVID A. BELL “Electronic Instrumentation & measurement” 3rd Edition 2013, Oxford University Press.

4. Hermann K.P. Neubert, “Instrument Transducers” 2nd Edition 2012, Oxford University Press.

Web Resource: NPTEL course.

EE-305P

1. Study of Potentiometric Displacement Sensor.

2. Study of LVDT sensor

3. Study of Thermocouple & RTD sensors.

4. Frequency measurement of supply voltage

5. Study of Ultrasonic Flow Sensor

6. Study of ADC & DAC

7. Study of Proximity Sensors.

8. Acquisition of various sensors Output using USB DAQ.

9. Study of Active Low Pass Filter.

10. Study of Strain Gauges.

Page 16: CS and IT.pdf

CS-301: Data Structures L:T:P ::3:1:2

Prerequisite: Students should be familiar with procedural language like C and concepts of mathematics Objective: To make students understand specification, representation, and implementation of data types and data structures, basic techniques of algorithm analysis, recursive methods, applications of Data Structures. Course Outcome: On completion of this course, student should be able to-

1. Understand abstract data types 2. Understand and use arrays and link lists for various operations like insert, delete,

append and concatenate etc. 3. Understand applications of link lists like polynomial addition and multiplication etc. 4. Understand operations on Stacks, Trees, AVL Trees, B-Trees and B+-Trees etc. 5. Understand representation of graphs and their traversal; concept of Minimum

Spanning Tree etc. 6. Understand various sorting and searching algorithms with their time complexities. 7. Understand concept of garbage collection and compaction.

Unit – I Introduction: Basic Terminology, Elementary Data Organization, Algorithm, Efficiency of an Algorithm, Time and Space Complexity, Asymptotic notations: Big-Oh, Time-Space trade-off. Abstract Data Types (ADT).

Arrays: Definition, Single and Multidimensional Arrays, Representation of Arrays: Row Major Order, and Column Major Order, Application of arrays, Sparse Matrices and their representations.

Stacks: Primitive Stack operations: Push & Pop, Array and Linked Implementation of Stack in C, Application of stack: Prefix and Postfix Expressions, Evaluation of postfix expression, Recursion, Tower of Hanoi Problem, Simulating Recursion, Principles of recursion, Tail recursion, Removal of recursion

Unit – II Queues, Operations on Queue: Create, Add, Delete, Full and Empty, Circular queues, Array implementation of queues in C, Dequeue and Priority Queue.

Linked lists: Array Implementation and Dynamic Implementation of Singly Linked Lists, Doubly Linked List, Circularly Linked List, Operations on a Linked List. Insertion, Deletion, Traversal, Polynomial Representation and Addition, Generalized Linked List. Linked implementation of stack, queues, Dequeue and Priority Queue.

Unit – III Searching : Sequential search, Binary Search Sorting: Comparison and Analysis Internal Sorting: Insertion Sort, Selection, Bubble Sort, Quick Sort, Two Way Merge Sort, Heap Sort, Radix Sort, Practical consideration for Internal Sorting

Page 17: CS and IT.pdf

Hashing: Hash Function, Collision Resolution Strategies Storage Management: Garbage Collection and Compaction.

Unit – IV Trees: Basic terminology, Binary Trees, Binary Tree Representation: Array Representation and Dynamic Representation, Complete Binary Tree, Algebraic Expressions, Extended Binary Trees, Array and Linked Representation of Binary trees, Tree Traversal algorithms: Inorder, Preorder and Postorder, Threaded Binary trees, Traversing Threaded Binary trees, Huffman algorithm.

Search Trees: Binary Search Trees(BST), Insertion and Deletion in BST, Complexity of Search Algorithm, AVL trees, Introduction to m-way Search Trees, B Trees & B+ Trees. Unit – V Graphs: Terminology, Sequential and linked Representations of Graphs: Adjacency Matrices, Adjacency List, Adjacency Multi list, Graph Traversal : Depth First Search and Breadth First Search, Connected Component, Spanning Trees, Minimum Cost Spanning Trees: Prims and Kruskal algorithm. Transistive Closure and Shortest Path algorithm: Warshal Algorithm and Dijikstra Algorithm, Introduction to Activity Networks

Text Books: 1. Aaron M. Tenenbaum, Yedidyah Langsam and Moshe J. Augenstein “Data Structures

Using C and C++” , Pearson Education. 2. Horowitz and Sahani, “Fundamentals of Data Structures”, Galgotia Publication.

References: 1. Jean Paul Trembley and Paul G. Sorenson, “An Introduction to Data Structures with

applications”, McGraw Hill. 2. R. Kruse et al, “Data Structures and Program Design in C”, Pearson Education. 3. Seymour Lipschutz, “Data Structures with C” Schaum’s Outline Series, TMH. 4. G A V Pai, “Data Structures and Algorithms”, TMH.

Web References

1. http://www.nptel.iitm.ac.in/video.php?subjectId=106102064 2. http://www.cs.auckland.ac.nz/~jmor159/PLDS210/ppt/index.html 3. http://www.informatics.sussex.ac.uk/courses/dats/dats.html 4. http://www.cs.umd.edu/~mount/420/Lects/420lects.pdf

Page 18: CS and IT.pdf

Week Lecture 1 Chapter Lecture2 Chapter Lecture 3 Chapter Lab Meeting Week-1 Introduction,Elem

entary Data Organization, Data Structure operations

Text-1 chapter-1

Algorithm Complexity and Time- Space tradeoff.

Text-1 chapter-1

Arrays: Ordered List, Linear and Multidimensional Arrays, Representations of Array

Text-1 chapter-1

Array Operations and Stack Operations using array Week -3 Application of stack:

Week-2 Operations on Array: Traversal, Insertion, Deletion

Text-1 chapter-1

Application of arrays, Sparse Matrices and their and overview: Basic Terminology representations

Text-1 chapter-1

Primitive Stack operations: Push & Pop, Array and Linked Implementation of Stack in C,

Text-1 chapter-2

Evaluation of Expression

Week-3 Application of stack: Prefix and Postfix Expressions, Evaluation of postfix expression, Recursion, Tower of Hanoi Problem,

Text-1 chapter-2

Simulating Recursion, Principles of recursion, Tail recursion, Removal of recursion

Text-1 chapter-3

Queues- Create, Add, Delete, Full and Empty, Circular queues,

Text-1 chapter-4, Text-2 chapter-3

Recursion, Queue Operations

Week-4 Array Implementation and Dynamic Implementation of Singly Linked Lists,

Text-1 chapter-4

Operations on a Linked List-List Insertion, Deletion, Traversal

Text-1 chapter-4

Doubly Linked List, Text-1 chapter-4

Single Linked List

Week-5 Circularly Linked List,

Text-1 chapter-4, Text-2 chapter-3

Polynomial Representation and Addition,

Text-1 chapter-4

Generalized Linked List

Text-1 chapter-4

Double Linked List and applications

Week-6 Linked implementation of stack, queues, Dequeue and Priority Queue.

Text-1 chapter-4

Sequential search, Binary Search

Text-1 chapter-7

Insertion Sort, Selection, Bubble Sort,

Text-1 chapter-6 Text-2 chapter 7

Sorting

Week-7 Quick Sort Text-1 chapter-6 text-2 chapter 7

Two Way Merge Sort

Text-1 chapter-6, Text-2 chapter 7

Heap Sort Text-1 chapter-6, Text-2 chapter 7

Sorting

Week-8 Radix Sort, Practical consideration for Internal Sorting

Text-1 chapter 6 Text-2 chapter 9

Hash Function, Collision Resolution Strategies

Text-2 chapter 9

Storage Management: Garbage Collection and Compaction.

Text-2 chapter 9

Sorting

Week-9 Trees: Basic terminology, Binary Trees, Binary

Text-1 chapter-5

Tree Representation: Array Representation and Dynamic Representation,

Text-1 chapter-5

Complete Binary Tree, Algebraic Expressions, Extended Binary Trees, Array and Linked Representation of Binary trees,

Text-1 chapter-5

Binary Tree

Week-10 Tree Traversal algorithms: Inorder, Preorder and Postorder,

Text-1 chapter-5

Threaded Binary trees, Traversing Threaded Binary trees

Text-1 chapter-5

Huffman algorithm. Text-1 chapter-5

Tree traversal

Week-11 Binary Search Trees(BST), Insertion and Deletion in BST, Complexity of Search Algorithm

Text-1 chapter-5

Binary Search Trees(BST), Insertion and Deletion in BST, Complexity of Search Algorithm

Text-1 chapter-5

AVL trees, Introduction to m-way Search Trees

Reference-3 chapter 7

Binary Search Tree

Week-12 B Trees & B+ Trees.

Text-1 chapter-8, reference-3

Graphs: Terminology, Sequential and

Text-1 chapter-8, reference-3

Representations of Graphs: Adjacency Matrices, Adjacency

Text-1 chapter-8, reference-3

Height balanced tree

Page 19: CS and IT.pdf

Lab. CS-301P NOTE: More programs can be added to the list Write Program in C or C++ for following:

• Array implementation of Stack, Queue, Dequeue, Circular Queue,List. • Programs solving problem of Tower of Hanoi for n disks with and without Tail Recursion. • Implementation of Stack, Queue, Circular Queue, List using Dynamic memory

Allocation. • Implementation of Tree Structures, Binary Tree, Tree Traversal, Binary Search Tree, • Insertion and Deletion in BST. • Implementation of Searching and Sorting Algorithms. • Graph Implementation, BFS, DFS, Min. cost spanning tree, shortest path algorithm.

chapter 7 linked, Applications chapter 7 List, Adjacency Multi list,

chapter 7

Week-13 Graph Traversal : Depth First Search and Breadth First Search

Text-1 chapter-8

Connected Component, Spanning Trees,

Text-1 chapter-8

Minimum Cost Spanning Trees: Prims and Kruskal algorithm

Text-1 chapter-8

Graph Representation

Week-14 Transistive Closure and Shortest Path algorithm: Warshal Algorithm and Dijikstra Algorithm

Text-1 chapter-8

Transistive Closure and Shortest Path algorithm: Warshal Algorithm and Dijikstra Algorithm

Text-1 chapter-8

Introduction to Activity Networks

Text-1 chapter-8

Shortest Path

Page 20: CS and IT.pdf

EC-302: Digital Design L:T:P ::3:1:2

Course Objective:

This course is intended to provide the students with a comprehensive understanding of the fundamentals of digital logic circuits. Students should be able to analyze, design, and implement combinational and sequential circuits. Course Pre requisites: There are no definite prerequisites. However, an understanding of Boolean algebra will be useful. Course Contents:

Unit

Topic Text

Book / Topics

Lectures

I a) b) c)

Number Systems & Conversions : Binary ,Octal and Hexadecimal Numbers Number base conversions Complement of numbers Signed Binary Numbers Binary Codes Boolean Algebra And Logic Gates:

Basic Theorems and properties of Boolean Algebra Boolean Functions Canonical and Standard Forms Other Logic Operations Digital Logic Gates Gate-level minimization:

4

K- map method( up to five variable) POS simplification, Don’t care conditions NAND and NOR implementation, Other Two Level implementations Ex-OR Function

5QuineMc-Clusky method (Tabular method).

1.2,1.4 1.3 1.5 1.6 1.7

2.4 2.5 2.6 2.7 2.8

3.2,3.3,3.4 3.5 3.6

3.7,3.8 3.9

3.10

2 3 5

II

Combinational Logic : Analysis and Design 4.1 to 4.4

Combinational circuits, Analysis procedure, design procedure

Binary adder-subtractor, Decimal adder

Binary multiplier, Magnitude comparator

Decoders, Encoders Multiplexers, Demultiplexers

4.1,4.2 4.3,4.4

4.5 4.6 4.7 4.8

4.9,4.10 4.11

8

Page 21: CS and IT.pdf

III

SynchronousSequential Logic : Analysis and Design

Sequential circuits, Storage elements: latches andflip flops, Analysis of clocked sequential circuits

State reduction and assignments, Design procedure.

Shift registers Counters( Ripple counters and Synchronous Counters)

5.1, 5.2 5.3,5.4

5.5 5.7 5.8 6.2

6.3,6.4

8

IV

Asynchronous Sequential Logic : Analysis and Design

Asynchronous sequential logic Analysis procedure

Circuit with latches Design procedure,

Reduction of State and Flow tables Race free state assignment,

Hazards Design Example

9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8

8

V a) b)

Memory And Programmable Logic Devices RAM Memory Decoding Error Detection and Correction ROM PLA PAL State Machine Design with SM charts Register Transfer Level Notations Algorithmic State Machines Design Example

7.2 7.3 7.4 7.5 7.6 7.7

8.2

8.4 8.5

8

Text Book:

1. “Digital Design”, M. Morris Mano and M. D. Ciletti, 5th Edition, Pearson Education Reference Books:

1. “Fundamentals of Logic Design”, Charles H. Roth, Jr., 5th Edition, Brooks/Cole, a division of Thomson, 2004.

2. 2. "Digital Principles and Application", D P Leach, A P Malvino and Goutam Saha, 7th Edition, TMH

Page 22: CS and IT.pdf

3. 3. "Digital Design - Principles and Practices" , J F Wakerly, 4th Edition, Pearson Education

Course Outcome:

On successful completion of this course, students will be able to:

• Understand various number systems and perform number conversions between different number systems

• Gain the knowledge of logic gates (AND, OR, NAND, NOR, XOR, XNOR) • Understand Boolean algebra and use it in representing, analyzing, and designing

digital logic circuits. • Use K-maps and Tabular Method to minimize and optimize two-level logic

functions up to 5 variables. • Design a combinational logic circuit from given specifications • Analyze a given combinational circuits , developing a truth table and Boolean

expression • Design simple sequential logic circuit from given specifications. • Analyze the behaviour of a given sequential circuit, producing an appropriate

state table and state diagrams. • Understand the basics of: ROM, RAM, PROM, PLA, PAL, etc.

Page 23: CS and IT.pdf

Lab.EC- 302 P

Course Objective:

This lab course focuses on design and implementation of combinatorial logic and sequential logic digital circuits. Students will design, construct, test and troubleshoot digital circuits of both combinational and sequential types in the lab. Course Pre requisites:

This course has no prerequisites. The co-requisite course for this lab is EC-302 (Digital Design). Course Content:

ExpNo.

Experiment

Objective

Expected Outcome

1.

Verification of Logic Gate

1. To study and understand nomenclature, pin-configuration, and data sheets of 74 series TTL ICs. 2. To verify and interpret truth tables for AND, OR, NOT, NAND, NOR Exclusive OR and Exclusive NOR Gates.

• To get familiarized with pin-configuration of different types of 74 series TTL ICs.

• To get familiarized with the Different Portions of the datasheet for a Digital IC and using the datasheet to gather relevant information to utilize the IC as a Component in another Digital Logic Circuit.

2.

Using NAND and NOR gates as universal logic gates

1. To realize a given logic functions with the help of universal gate-NAND Gate 2. To realize a given logic functions with the help of universal gate-NOR Gate 3. To realize an XOR and XNOR gate using minimum number of NAND gates.

• To be able to use NAND or NOR gates for the implementation of any other gate and also for the realization of any given Boolean function

3.

Design and implementation of Adders and

1. To design and implement Half Adder and Half Subtractor using logic gates.

• Should be able to understand Binary addition/subtraction by noting down the output readings of sum/difference and the

Page 24: CS and IT.pdf

Subtractors 2. To design and implement Full Adder and Full Subtractor using logic gates 3. To design and implement 4- bit binary Adder/ Subtractor . Using IC 7483 4. To design and implement BCD adder using IC 7483

carry/borrow bit for different combinations of inputs. • Should be able to understand the difference between BCD and Binary addition

4

Design and implementation of Code Converters

1. To design and implement BCD to excess-3( and vice versa) code converters using logic gates. 2. To design and implement Binary to gray (and vice versa code converters) using logic gates.

• Should be able to understand and implement code-conversion process using basic logic gates

5 Design and implementation of Magnitude Comparators

1. To design and implement 2 bit Magnitude Comparator using logic gates. 2. To design and implement 8- bit Magnitude Comparator using IC 7485.

• To understand the process of comparing two 2-bit numbers using logic gates • To be able to understand, and use “Equivalence Function” for implementing Magnitude comparators. • To get familiarized with Magnitude Comparator IC

6 Design and implementation of Parity Generators/ Checkers

1. To design and implement odd/even parity checker /generator using IC74180.

• To understand and verify the concept of adding even and odd parity in the transmitted data • To understand and verify the concept of checking even and odd parity in the received data

7 Design and implementation of encoders and decoders

1. To design and implement 4 to 2 encoder using logic gates. 2. To design and implement 3 to 8 decoder using logic gates 3. To study and test IC7445 and IC74147.

• To be able to understand and verify the concepts of encoding and de-coding using basic logic gates • To get familiarized with the ICs used as encoder/decoder

8 Design and implementation of Multiplexers and De-multiplexers

1. To design and implement 4:1 Multiplexer using logic gates. 2. To design and implement 1:4 De-

• To be able to understand and verify the concepts of data multiplexing and de-multiplexing using basic logic gates

Page 25: CS and IT.pdf

multiplexer using logic gates 3. To study and test IC74150 and IC 74154

• To get familiarized with the use of decoder IC as de-multiplexer.

9.

Design and implementation of shift registers

1. To design and implement 4-bit SISO, SIPO, PISO and PIPO shift registers using Flip- flops. 2. To design and implement 8- bit Shift left/shift right register using flip-flops

• To be able to understand and verify the concepts of Serial in-serial out, Serial in-parallel out, Parallel in- parallel out and Parallel in- serial out shift register operations

10. Design and implementation of Synchronous and Asynchronous Counters

1. To design and implement 3-bit synchronous up/down counter. 2. To implement and verify 3-bit asynchronous up/down counter. 3.To design and implement synchronous /asynchronous MOD counters.

• To be able to design and verify the up/down counting using synchronous/ ripple counters • To understand the concept of “Modulus” and implement a synchronous/asynchronous counter for any given Modulus using minimum number of Flip-flops.

MINI PROJECT 11. Mini Project in Digital

Design To design, implement and verify a mini project using easily attainable parts

• Students will acquire the ability to make links across different areas of knowledge and to generate, develop and evaluate ideas and information so as to apply these skills to the project task.

• Students will acquire collaborative skills through working in a team to achieve common goals.

Course Outcome: The students are expected to acquire basic troubleshooting skills necessary for the design

and analysis of digital circuits. References: 1. “Digital Design”, M. Morris Mano and M. D. Ciletti, 5th Edition, Pearson Education 2. “Fundamentals of Logic Design”, Charles H. Roth, Jr., 5th Edition, Brooks/Cole, a division of Thomson, 2004. 3. Virtual Lab Website http://www.vlab.co.in/, http://www.digital.iitkgp.ernet.in/dec/index.php

Page 26: CS and IT.pdf

CS-302 : Discrete Structures L:T:P ::3:1:2

Prerequisites: Concepts of Mathematics. Objective: Introduce propositional and predicate logic, Introduce the basics of integer theory, counting principles, Introduce and work with important discrete data structures such as sets, relations, sequences, and discrete functions.

Course Outcome: On completion of this course, student should be able to- 1. Understand the concepts of Set Theory, Relations, Functions, Groups, Abelian

Groups, Rings and Fields. 2. Understand the concepts of Propositional Logic, Predicate Calculus and Quantifiers;

and how to check validity of statements. 3. Understand the concepts of Recurrence Relation and method to solve the Recurrence

Relation using Generating Function. 4. Understand the basic concepts of Graph Theory.

UNIT -I: Basic Structures- Sets, Functions and Relations

• Set Theory: Introduction to the theory of sets; combination of sets; multisets; ordered pairs, power sets; finite and infinite sets; principle of inclusion and exclusion; proofs of some general identities on sets.

• Relations: definitions and properties of relations; relation composition; representations of relations by binary matrices and digraphs; operations on relations. closure of relations; reflexive, symmetric and transitive closures. Warshall's algorithm to compute transitive closure of a relation; equivalence relations and equivalence classes, partial order sets, combination of partial order sets, Hasse diagram. definition, properties of lattices – bounded, complemented, modular and complete lattice.

• Functions: definition, classification of functions, operations on functions.

UNIT -II Techniques of Counting, Induction and recurrence Relation • Recurrence Relation: Recursive definition of functions, Recursive algorithms,

Method of solving recurrences. • Counting: Introduction, Counting Techniques, Pigeonhole Principle, Permutation and

Combinations. • Induction: Mathematical induction, Variants of induction.

UNIT -III Algebric Structures

• Algebraic Structures: Definition, Groups, types:Semi Groups,Monoid Group,Abelian group, properties of groups, Subgroups and order, Cyclic Groups, Cosets, Lagrange’s theorem, Normal Subgroups, Permutation and Symmetric groups, Group Homomorphisms, Definition and elementary properties of Rings and Fields, Integers Modulo n.

UNIT -IV Logic • Boolean Algebra: Introduction, Axioms and Theorems of Boolean algebra, Algebraic

manipulation of Boolean expressions. Simplification of Boolean Functions, Karnaugh maps, Logic gates, Digital circuits and Boolean algebra.

• Propositional Logic: Proposition, well formed formula, Truth tables, Tautology, Satisfiability, Contradiction, Algebra of proposition, Theory of Inference.

• Predicate Logic: First order predicate, well formed formula of predicate, quantifiers, Inference theory of predicate logic.

Page 27: CS and IT.pdf

UNIT -V Graphs and Trees

• Graphs: Definition and terminology, Representation of graphs, Multigraphs, Bipartite graphs, Planar graphs, Isomorphism and Homeomorphism of graphs, Euler and Hamiltonian paths, Graph coloring.

• Trees : Definition, Binary tree, applications of trees, Binary tree traversal, Binary search tree, spanning trees.

Textbook:

1. Kenneth H. Rosen, Discrete Mathematics and Its Applications, 6/e, McGraw-Hill, 2006.

2. Babu Ram et.al., Discrete Mathematics, Pearson Education.

References:

1. C.L. Liu, Elements of Discrete Mathematics, 2nd Edition, McGraw Hill, 1985. 2. Jean Paul Trembley, R Manohar, Discrete Mathematical Structures with Application

to Computer Science, McGraw-Hill, Inc. New York, NY, 1975. 3. B. Kolman, R.C. Busby, and S.C. Ross, Discrete Mathematical Structures, 5/e,

Prentice Hall, 2004. 4. E.R. Scheinerman, Mathematics: A Discrete Introduction, Brooks/Cole, 2000. 5. R.P. Grimaldi, Discrete and Combinatorial Mathematics, 5/e, Addison Wesley, 2004.

Web References

1. nptel.iitm.ac.in/video.php?subjectId=106106094 2. http://www.cs.virginia.edu/~asb/teaching/cs202-spring07/slides.html 3. www.abstractmath.org/MM/dm.pdf.

Page 28: CS and IT.pdf

Week Lecture 1 Chapter Lecture2 Chapter Lecture 3 Chapter Lab Meeting

Week-1 introduction to the theory of sets; combination of sets; multisets; ordered pairs, power sets; finite and infinite

Text-1 chapter 2

principle of inclusion and exclusion; proofs of some general identities on sets; selected problems from each topic

Text-1 chapter 2

Relations: definitions and properties of relations; relation composition; representations of relations by binary matrices and digraphs;

Text-1 chapter 8

Lab Experiment-1

Week-2 Operations on relations. closure of relations; reflexive, symmetric and transitive closures.

Text-1 chapter 7

Warshall's algorithm to compute transitive closure of a relation; equivalence relations and equivalence classes

Text-1 chapter 7

Partial order sets, combination of partial order sets, Hasse diagram.

Text-1 chapter 7

Lab Experiment-2

Week-3 definition, properties of lattices – bounded, complemented, modular and complete lattice.

Text-1 chapter 7

Functions: definition, classification of functions, operations on functions

Text-1 chapter 7

Recursive definition of functions

Text-1 chapter 2

Lab Experiment-3

Week-4 Recursive algorithms Text-1 chapter 4

Method of solving recurrences.

Text-1 chapter 6

Growth of functions. Text-1 chapter 6

Lab Experiment-4

Week-5 Introduction, Counting Techniques,

Text-1 chapter 6

Pigeonhole Principle, Permutation and Combinations

Text-1 chapter 5

Introduction to induction Text-1 chapter 4

Lab Experiment-5

Week-6 variants of induction- weak induction and structural induction

Text-1 chapter 4

Definition, Groups, types:Semi Groups,Monoid Group

Text-1 Chapter 11, Text-2 Chapter 10

Abelian group, properties of groups, Subgroups and order

Text-1 Chapter 11, Text-2 Chapter 10

Lab Experiment-6

Week-7 Cyclic Groups, Cosets,

Text-1 Chapter 11, Text-2 Chapter 10

Normal Subgroups, Text-1 Chapter 11, Text-2 Chapter 10

Permutation and Symmetric groups,

Text-1 Chapter 11, Text-2 Chapter 10

Lab Experiment7

Week-8 Group Homomorphisms

Text-1 Chapter 11, Text-2 Chapter 10

Definition and elementary properties of Rings and field

Text-1 Chapter 11, Text-2 Chapter 10

Integers Modulo n Text-1 Chapter 11, Text-2 Chapter 10

Lab Experiment-8

Week-9 Boolean Algebra: Introduction, Axioms and Theorems of Boolean algebra,

Text-1 chapter-10

Algebraic manipulation of Boolean expressions.

Text-1 chapter-10

Simplification of Boolean Functions, Karnaugh maps, Logic gates, Digital circuits and Boolean algebra

Text-1 chapter-10

Lab Experiment-9

Week-10

Proposition, well formed formula, Truth tables

Text-1 chapter-1

Tautology, Satisfiability, Contradiction,

Text-1 chapter-1

Algebra of proposition, Theory of Inference.

Text-1 chapter-1

Lab Experiment-10

Page 29: CS and IT.pdf

LAB. CS-302P: NOTE: More programs can be added to the list

1. Assume that the universal set U is finite. Given subsets A and B of U, write a program using bit strings to find the following

a. Ã b. A ∪ B c. A ∩ B d. A – B e. A ⊕ B

2. Implement sets which includes simulation of following operations on set a. Subset b. Union c. Intersection d. Cartesian product e. Membership f. Difference g. Power set h. Symmetric difference i. Set Cardinality

3. Using the matrix representation of binary relations on a finite set, write programs to a. Determine whether the relation is reflexive b. Determine whether the relation is symmetric c. Determine whether the relation is transitive d. Find the matrix representing intersection of two relations e. Find the matrix representing the union of two relations

4. Write a program to find the matrix representing the transitive closure using the Warshall’s algorithm.

5. Write a code to check whether a function is one to one.

6. Write recursive function to find – a. successor of a number b. predecessor of a number

Week-11

First order predicate, well formed formula of predicate

Text-1 chapter-1

quantifiers Text-1 chapter-1

Inference theory of predicate logic

Text-1 chapter-1

Lab Experiment-11

Week-12

Graph:Definition and terminology

Text-1 chapter-8

Representation of graphs

Text-1 chapter-8

Multigraphs, Bipartite graphs

Text-1 chapter-8

Lab Experiment-12

Week-13

Planar graphs, Isomorphism and Homeomorphism of graphs

Text-1 chapter-8

Euler and Hamiltonian paths

Text-1 chapter-8

Graph coloring. Text-1 chapter-8

Lab Experiment-13

Week-14

Definition, Binary tree, applications of trees

Text-1 chapter-9

Binary tree traversal Text-1 chapter-9

Binary search tree, spanning trees.

Text-1 chapter-9

Lab Experiment-14

Page 30: CS and IT.pdf

c. Ackermann’s function for natural numbers m and n. 7. Write programs using recursion for each of the following. Also formulate and solve

recurrences for them. a. Greatest Common Divisor of two numbers b. Linear Search c. Binary Search

8. Given a positive integer n and a nonnegative integer not exceeding n, write a program to find the number of r-permutations and r-combinations of a set with n elements

9. Given a positive integer n, write a program to list all the combinations of the set {1,2,3..., n}

10. Write functions to simulate- a. AND b. OR c. NOT d. XOR e. NAND f. NOR

11. Write functions to implement the logical expressions- a. p AND (p OR q ) b. NOT p OR q c. (p AND q) OR ( NOT p AND NOT q )

12. Write a program to simulate K-map to simplify the 3 variable Boolean expression 13. Write a program for binary tree traversal 14. Write a program for graph traversal

a. DFS b. BFS

Page 31: CS and IT.pdf

SEMESTER –IV

SYLLABI OF HU-401, AS-406, AS-401A, AS-402, AND AU-401 HAVE ALREADY BEEN INCLUDED IN THIRD SEMESTER

CS-401: Computer Organization L:T:P ::3:1:2

Course Objectives: Objective of this course is to have a thorough understanding of the basic structure and operation of a digital computer, to study the different ways of communicating with I/O devices and standard I/O interfaces and to study the hierarchical memory system including cache memories and virtual memory. The Subject discusses in detail the operation of the arithmetic unit including the algorithms & implementation of fixed-point and floating-point addition, subtraction, multiplication & division. Pre-requisites: Binary number System and Boolean algebra. Gates and flip flops. Combinational and sequential logic UNIT-I Introduction: - Review of digital logic and gates, Design of adder and subtractor using gates & K-MAP, functioning of multiplexer, de-multiplexer, flip-flop. Arithmetic for Computer:- Introduction to number system, negative numbers, addition & subtraction, logical operation, constructing and A.L.U., multiplications & division, floating point arithmetic. UNIT-II Processor Design:- Processor organization, Processor Level, information representation, instruction format, Addressing modes (Implied Mode, Immediate mode, register indirect mode, auto increment or Auto decrement mode, direct addressing mode, indirect addressing mode, relative addressing mode, index addressing mode), instruction types. UNIT-III Control Design: - Basic Concepts, Hardwired Control, Control memory address sequencing, micro instruction interpretation, CPU control unit, basic concepts of micro programmed control, micro program sequencer for a control memory, micro instruction formats. UNIT-IV Memory Organization:- Classification memories, Memory Hierarchy, Optimization of memory hierarchy, Virtual Memory, Dynamic Address Translation Scheme addressing scheme for main memory, segmented memory system, paged segment memory, memory management policies, High speed memories, characteristics of cache memory, Cache memory organization, Block replacement policies, interleaved memories, associated memories. UNIT-V System Organization: - Bus arbitration, Programmed I/O (IO addressing, IO instruction), DMA (Types & procedures), interrupts (procedure, interrupt selection, vectored interrupts), Concurrency Control, System management.

Page 32: CS and IT.pdf

Text Books:

1. Computer Architecture and Organization, By John P. Hayes, Me Graw Hill. References:

2. Computer organization and design, by John L. Hennessy 7 David A. Petterson, Morgan

Kaufman. 3. Computer System Architecture, by M. Morris Mano, PHI

Web Resourses: http://nptel.iitm.ac.in/courses/Webcourse-contents/IIT-KANPUR/CompArchitecture/page1.htm

Week Lecture 1 Chapter Lecture2 Chapter Lecture 3 Chapter Lab Meeting

Week-1 Review of digital logic & gates

Any Std Book

Design of adder and subtractor using gates & K-MAP

Any Std Book

Functioning of multiplexer, de-multiplexer, flip-flop

Any Std Book

Study of Breadboard Based Lab

Week-2 Introduction to number system, negative numbers

Any Std Book

Addition & subtraction, logical operation, constructing and A.L.U.

4.1 T1 Multiplications 4.1 T1 Study of Simulator Based Lab

Week-3 Division 4.1 T1 Floating point arithmetic. 4.3 T1

Revision and Discussion - Lab1

Week-4 Processor organization 3.1 T1 Processor Level 2.3 T1 Information Representation

3.2 T1 Lab2

Week-5 Instruction format 3.3 T1 Addressing Mode 3.3 T1 Addressing Mode 3.3 T1 Lab3

Week-6 Instruction Type 3.3 T1 Revision and Discussion

- Revision and Discussion

- Lab4

Week-7 Basic Concepts 5.1T1 Hardwired Control

5.1T1 Micro instruction interpretation

5.2T1 Lab5

Week-8 CPU control unit 5.2T1 Basic concepts of micro programmed control

5.2T1 Micro program sequencer for a control memory

5.2T1 Lab6

Week-9 Micro instruction formats 5.2T1 Revision and Discussion

- Revision and Discussion

- Lab7

Week-10 Classification memories 6.1T1 Memory Hierarchy 6.2T1 Optimization of memory hierarchy

6.2T1 Lab8

Week-11 Virtual Memory, Dynamic Address

Translation Scheme addressing scheme for

main memory

6.2T1 Segmented memory system, paged segment memory

6.2T1 Memory management policies

6.2T1 Lab9

Week-12 High speed memories, characteristics of cache memory

6.3T1 Cache memory organization, Block replacement policies

6.3T1 interleaved memories, associated memories

6.3T1 Lab10

Week-13 Bus arbitration 7.1T1 Programmed I/O (IO addressing, IO

7.2.T1 DMA (Types & procedures)

7.2.T1 Lab11

Page 33: CS and IT.pdf

Lab. CS-401P

1. Breadboard implementation of flip flops SR, JK, T and D flip flop And verify their characteristic table.

2. Experiments with clocked flip-flops 3. Design of Counters 4. Breadboard implementation of Counters and Shift Registers. 5. Implementation of arithmetic algorithms. 6. Breadboard implementation of Half/Full Adder and Half/Full Subtractor. 7. Breadboard implementation of Half/Full Adder. 8. Breadboard implementation of 7-segment display. 9. Ripple Carry Adder:( 4 bit ripple carry adder) Using Simulator 10. Carry-look-ahead adder:(4 bit carry lookahead adder) Using Simulator 11. Carry-Save-ahead adder:(4 bit carry lookahead adder) Using Simulator 12. Booth's Multiplier: (Objective of 4 bit Booth's multiplier) Using Simulator

Course Plan Topic Reference Hour 1.Introduction: - Review of digital logic gates, Design of adder and subtractor using gates &K-MAP, functioning of multiplexer, de-multiplexer, flip-flop. Arithmetic for Computer:-Introduction to number system, negative numbers, addition &subtraction, logical operation, constructing and A.L.U., multiplications & division, floatingpoint arithmetic.

John P. Hayes

8 Hr

2.Processor Design:- Processor organisation, Processor Level, information representation,instruction format, Addressing modes (Implied Mode, Immediate mode, register indirectmode, auto increment or Auto decrement mode, direct addressing mode, indirectaddressing mode, relative addressing mode, index addressing mode), instruction types.

John P. Hayes

8 Hr

3. Control Design: - Control memory address sequencing, micro instruction interpretation,CPU control unit, basic concepts of micro programmed control, micro program sequencerfor a control memory, micro instruction formats.

John P. Hayes

8 Hr

4.Memory Organization:- Classification memories, Memory Hierarchy, Optimization ofmemory hierarchy, Virtual Memory, Dynamic Address Translation Scheme addressingscheme for main memory, segmented memory system, paged segment memory, memorymanagement policies, High speed memories, characteristics of cache memory, Cachememory organisation, Block replacement policies, interleaved memories, associatedmemories.

John P. Hayes

8 Hr

5. System Organization: - Bus arbitration, Programmed I/O (IO addressing, IO instruction),DMA (Types & procedures), interrupts (procedure, interrupt selection, vectored interrupts),Concurrency Control, System management.

John P. Hayes

8 Hr

instruction)

Week-14 Interrupts (procedure, interrupt selection, vectored interrupts)

7.2.T1 Concurrency Control

7.3.T1 System management 7.3.T1 Lab11

Page 34: CS and IT.pdf

CS-402: Data Base Management Systems L:T:P ::3:1:2

Objective: The main objective of this course is to provide students with the background to design, implement, and use database management systems. A variety of topics will be covered that are important for modern databases in order to prepare the students for real life applications of databases.

Prerequisite: Basic Concepts of Algebra

Unit-I [Text Book 1 and 2] (8 Hours) Introduction: An overview of database management system, Database System vs. File System, Database System Concept and Architecture, Data Models, Schema And Instances, Data Independence And Database Language And Interfaces, Overall Database Structure. Data modeling using the Entity Relationship Model: ER model concepts, notation for ER diagram, mapping constraints, keys, Concepts of Super Key, Candidate Key, Primary Key, Foreign Key, Generalization, Specialization, Aggregation, Attributes Inheritance, reduction of an ER diagrams to tables, relationship of higher degree. Unit-II [Text Book 1] (8 Hours) Relational data Model and Language: Relational data model concepts, Codd’s Rule, Integrity Constraints, Entity Integrity, Referential Integrity, Keys constraints, Domain constraints, Relational Algebra and Relational Calculus. Introduction on SQL: SQL data type and literals. Types of SQL commands: DDL commands (Create, Alter and Drop), DML commands (Insert, Update and Delete), SQL operators and their procedure. Tables, Views and Indexes. Queries and Sub Queries. Aggregate Functions. Joins, Unions, Intersection, Minus. Unit-III [Text Book 1 and 2] (8 Hours) Overview of PL/SQL, Cursors, Triggers, and Procedures. Data Base Design & Normalization: Functional Dependencies, Inference Rules, Normal Forms, First, Second, Third Normal Forms, BCNF, Inclusion Dependence, Loss Less Join Decompositions, Normalization Using FD, MVD And Fourth Normal Forms, JD and Fifth Normal Forms, Alternative Approaches to Database Design. Unit-IV [Text Book 2] (8 Hours) Transaction Processing Concept: Transaction System, Recoverability, Recovery From Transaction Failures, Log Based Recovery, Checkpoints, Shadow Paging, Cascading Rollback, ARIES, Testing of Serializability, Serializability of Schedules, Conflict & View Serializable Schedule. Introduction to Distributed Database, Multimedia Database and Object-Oriented Database. Unit-V [Text Book 3] (8 Hours) Concurrency Control Techniques: Concurrency Control, Locking Techniques for concurrency control, Two-phase locking protocol, Deadlock Handling, Time stamping protocols for concurrency control, Thomas’ write rule, validation based protocol, multiple granularities, Multi version schemes, Recovery with concurrent transaction. Overview of Big Data

Text Books 1. Korth, Silberschatz, Sudarshan, “Database Concepts”, 6th Edition, McGraw Hill Pub. 2. Elmasri, Navathe, “Fundamentals of Database Systems”, 6th Edition, Addison Wesley. 3. Ramkrishnan, Gehrke, “Database Management System”, 3rd Edition, McGraw Hill

Page 35: CS and IT.pdf

Reference Books 1. Date C J, “An Introduction to Database Systems”, Addision Wesley 2. O’Neil, Databases, Elsevier Pub. 3. Leon & Leon, ”Database Management Systems”, Vikas Publishing House 4. Bipin C. Desai, “An Introduction to Database Systems”, Gagotia Publications 5. Majumdar & Bhattacharya, “Database Management System”, TMH Web References 1. NPTEL Material at http://nptel.iitm.ac.in/video.php?subjectId=106106093 2. ISTE Workshop on DBMS, Video Lectures and Content available at http://www.it.iitb.ac.in/nmeict/eVideos/DBMSMAIN/content/content.html

Lab. CS-402P

Write the queries for Data Definition and Data Manipulation Language.

1. Write syntax for creating the following tables: STUDENT (Roll_No, Name, Branch, Year, Section, Hostel, F_name, Address) BOOK (Book_id, Title, Author, Publisher, Cost, Copies) TRANSACTION (Roll_No, Book_Id, Date_Issue, Date_Return, Fine) Add Primary Key and Foreign key to appropriate attributes in the above mentioned tables. Add a constraint on Book table for accepting value in Copies attribute not less than 0.

2. Write SQL command to add a new field DOB in the STUDENT table. 3. Write SQL command to drop Fine column from TRANSACTION table. 4. Insert at least 5 records in each table. 5. Update title of books from ‘Database Management Systems’ to ‘DBMS’. 6. Delete all entries from the Hostel column of STUDENT table. 7. Write SQL Queries for the following:

(a) To display the details of all students

(b) Display the records of (a) in ascending order of Roll_No.

(c) To display all Networking Books in the Library

(d) To display those books which have ‘Computer’ word in their title (like Computer

Fundamentals, Computer Graphics etc.)

(e) To display all the books which have been issued so far

(f) To display the books which have not been issued so far

(g) To display all the students of 4th year CSE branch who are staying in Hostel

(h) To display the student’s names who have not returned the books issued to them.

(i) To display the student names who have been issued DBMS book by Korth.

(j) To display the students who have not issued any book so far.

(k) To display the students who have been issued at least one book.

(l) To display the title of the second costliest book.

(m) To display the students who have not returned the book more than 6 weeks.

(n) To display the student names along with all the books issued to them.

Page 36: CS and IT.pdf

(o) To display the students of IV year from CSE branch who have been issued

Graphics book(s) for more than 15 days, which have not been returned.

8. Create view to access the student’s details only from 4th year of CSE branch.

9. Create an index on Title column of BOOK Table.

10. Write PL/SQL program to display the name of the student of 4th year in CSE branch

whose Roll_No is 1005.

11. Write appropriate programme in PL/SQL for restricting user to enter the data in BOOK table on Sunday and also beyond the working hours (say after 5 PM).

12. Write PL/SQL program to display 5 costliest books in the library. Lecture Plan

Unit No.

Lect. No.

Lecture Contents Reference

I 1 Database System Concept & Architecture. Korth, Silberschatz, Sudarshan, Database Concepts, McGraw Hill

Elmasri, Navathe, Fundamentals of Database Systems, Addision Wesley

2 Data Model Schema & Instances.

3 Database System Versus File Processing System. Data Independence

4 Database Language, DDL & DML Statements.

5 E-R Model Concept, Notation for E-R Model.

6 Mapping Constraints & Concepts of Keys.

7 Generalization & Aggregation.

8 Extended E-R Model.

II 9 DDL & DML Statements Using Constraints. Korth, Silberschatz, Sudarshan, Database Concepts, McGraw Hill

10 Relational data model concept, Constraints Key.

11 Relational Algebra & calculus, Tuple.

12 Characteristics of SQL & PL/SQL, Types of SQL Commands & Operators, Tables, Views & Indexes

13 Assertions, Cursors

14 Triggers

15 Queries & sub Queries.

16 Joins, Unions, Minus.

Page 37: CS and IT.pdf

III 17 Functional Dependencies Korth, Silberschatz, Sudarshan, Database Concepts, McGraw Hill

Elmasri, Navathe, Fundamentals of Database Systems, Addison Wesley

18 Closure Set, Canonical Form, Key

19 Decomposition, Anomalies & Normalization.

20 Normal Forms based on Functional Dependency

21 Normal Forms based on Functional Dependency

22 Normalization using MVD& JD.

23 Normal Forms based using MVD& JD.

24 Alternative Approaches to Database Design.

IV 25 Transaction System.

Elmasri, Navathe, Fundamentals of Database Systems, Addison Wesley

26 Testing of Serializability.

27 Serializability of Schedules.

28 Recoverability, Recovery from Transaction Failure.

29 Checkpoints, Log Based Recovery

30 Shadow Paging, ARIES.

31 Distributed Database

32 Multimedia Database, Object-Oriented Database.

V 33 Concurrency Control Techniques. Ramkrishnan, Gehrke, Database Management System, McGraw Hill

34 Locking based Techniques, 2PL, Deadlock

35 Timestamp-Ordering Protocol.

36 Validation Based Protocol.

37 Multiple Granularities.

38 Multi-version Time stamp Ordering Protocol.

39 Recovery with concurrent transaction

40 Introduction to Big Data

Page 38: CS and IT.pdf

CS-403:Object Oriented Programming with C++ L:T:P ::3:1:2

PREREQUISITES

Students should be familiar with the basic discipline and the idea behind each of the main programming paradigms.

OBJECTIVES

The objectives of this course are:

• To understand and express the essential and interesting features of an application in the complex real world, an object-oriented model is built around.

• Familiarize with the development artifacts of object oriented systems. • Understand the principals of objects encapsulation, inheritance, and

polymorphism that form the foundation for object-oriented systems development. • Familiarize with object oriented programming environment. The programming

language specified is C++ that is one of the standard programming languages used in the industry and also forms the base of all object oriented languages.

• Introduction to the basic concepts of object oriented modeling. • To be familiar with the Unified Modeling Language (UML).It is an object-

oriented language for specifying, visualizing, constructing, and documenting the artifacts of software systems, as well as for business modeling.

LEARNING OUTCOME

• Develop an understanding of Object Oriented Systems. • Develop hands on expertise in C++.

Unit – I

Object Modeling: structured approach versus Object Oriented Approach, Objects and classes, links and association, generalization and inheritance, aggregation, abstract class, multiple inheritance, metadata, candidate keys, constraints.

(Text Book 2-chpt3, 4, 5, Text Book 1-chpt 1, 2,3)

Dynamic Modeling: Events and states, operations, nested state diagrams and concurrency, advanced dynamic modeling concepts, a sample dynamic model.

(Text Book 1-CH 5)

Unit – II

Functional Modeling: Data flow diagram, specifying operations, constraints, a sample functional model. OMT (object modeling techniques) methodologies, examples and case studies to demonstrate methodologies, comparison of methodologies: OMT with SA/SD, JSD. (Text Book 1-chpt 6, Text Book 2-chpt 16)

Modeling with UML: UML terminology, Introduction of Things, Relationships and Diagrams of UML. (Ref. Book 1 chpt 9)(Text Book 1-chpt 5)

Page 39: CS and IT.pdf

Unit –III

Introduction: History of C++, Advantage, Need, C++ Program Structure. Classes and objects: Class and Objects Creation, Constructors and Destructors, Access Specifiers, Inline Functions, Default Function Arguments, Static keyword, Function overloading Arrays as Class Member. Arrays of Object. String. The Standard C++ String Class. Operator Overloading: Overloading Unary Operators. Overloading. Binary Operators.

(Text Book3 CH-7)

Unit -IV

Friend Functions, Friend Classes, Pointers and Class Objects: This Pointer, Pointers to objects, Memory Management: New and Delete, Garbage collection Inheritance: Concepts, Access Modifiers, Inheritance Types.

Polymorphism Concepts: Virtual methods, Compile time Polymorphism, Run time Polymorphism.

(Text book 3, Text Book4)

Unit -V

Managing Console I/O operations: C++ stream classes, Managing unformatted and formatted Console I/O operations, Managing output with manipulations

Streams and File I/O File streams, Streams with file handling, String streams, Built-in streams.

Templates and Exceptions: Function Templates, Class Templates, Exceptions, throw () and catch (), The Standard Template Library: Introduction Algorithms, Sequence Containers, Iteators, Specialized Iteators, Associative Containers, Storing User- Defined Object, Function Objects. (Text Book 3, Text Book 4) Text Books: 1. James Rumbaugh etal, “Object Oriented Modeling and Design”, PHI 2. Ivar Jacobson etal, “Object Oriented Software Engineering: A Use Case Driven Approach”, Pearson Education 3. E. Balagurusamy, “Object Oriented Programming with C++”, TMH 4. Robert Lafore, “Object Oriented Programming in C++”, Techmedia Publication. References:

1. Atul Kahate, “Object Oriented Analysis & Design”, TMH. 2. Yogesh Singh, Ruchika Malhotra,”Object Oriented Software Engineering”, PHI. 3. Herbert Sehlidt, “The Complete Reference c++”, TMH.

4. Schaum's Outline of Programming with C++, TMH.

Web References:

http://nptel.iitm.ac.in/courses/Webcoursecontents/IIScBANG/System%20Analysis%20and%20Design/pdf/PPTs/mod9.pdf

Page 40: CS and IT.pdf

Week Lecture 1 Chapter Lecture2 Chapter Lecture 3 Chapter Lab Meeting

Week-1 Object Modelling Objects and classes

links and association

Text Book2

Ch-1,2

Text Book2

Ch-1,2

generalization and inheritance

Text Book1 CH 1,2,3

aggregation, abstract class

Text Book1-CH 1,2,3

Study of Use Case Diagram

Week-2 multiple inheritance,

Text Book 1-CH 1,2,3 Text Book 2-chpt3, 4

metadata, candidate keys, constraints

Text Book1 CH6, Text Book2-CH 16

Dynamic Modelling: Events and states, operations

Text Book1CH 5

Study of Sequence Diagram

Week-3 Nested state diagrams and concurrency,

Text Book1CH 5

advanced dynamic modelling concepts

Text Book 1-CH 5

Sample dynamic model.

Text Book 1-CH 5

advanced dynamic modeling concepts

Week-4 Functional Modelling: Data flow diagram

Text Book 1-CH6, Text Book2 CH 16

Specifying operations, constraints, a sample functional model.

Text Book1 CH6, Text Book2-CH 16

OMT (object modelling techniques) methodologies

Text Book1 CH6, Text Book2 CH 16

Study of State chart Diagram

Week-5 Examples and case studies to demonstrate methodologies, comparison of methodologies: OMT with SA/SD, JSD.

Text Book1 CH6, Text Book2 CH16 (refer to web references)

Examples and case studies to demonstrate methodologies, comparison of methodologies: OMT with SA/SD, JSD.

Text Book1-CH6, Text Book2- CH16(refer to web references)

Modelling with UML: UML terminology,

Ref. Book1 CH 9

Case Studies

Week-6 Relationships and Diagrams of UML.

Ch-9 Ref:Book1

Testing Object Oriented Systems: Introduction, State Based testing.

(Ref. Book 2, chpt 9)

Testing Object Oriented Systems: Introduction, State Based testing

Ref. Book2, chpt 9

Case Studies

Week-7 Introduction: History of C++, Advantage, Need, C++ Program Structure

Text Book 4 CH-1

Text Book3 CH-5,Text Book 4 CH-6

Classes and objects: Class and Objects Creation

Text Book3-CH6,Text Book 4 CH-6

Text

Constructors and Destructors,

Access Specifiers,

Book3 CH-4,Text Book4 CH-13

Creating Classes, Constructors ,Destructors & Access Specifier

Page 41: CS and IT.pdf

Lab CS-403P

Assignments, Case Studies and Programs on the following are to be done in the lab

• Use Case Diagram

• Sequence Diagram

• Advanced dynamic modeling concepts

• State chart Diagram

Week-8 Inline Functions, Default Function Arguments

Text Book4 CH-11

Static keyword, Function overloading

Text Book4 CH-7

Arrays as Class Member

Arrays of Object

Text

Book3 CH-15

Inline functions, Static Keyword, Arrays of objects

Week-9 String. The Standard C++ String Class.

Text

Book3 CH-15

Overloading Unary Operators.

Text Book3 CH-7,

Text Book4 CH-8.

Overloading. Binary Operators

Text Book3 CH-7,

Text Book4 CH-8.

Overloading and Friend Keyword

Week-10 Friend Functions, Friend Classes,

Text Book 4,CH-11

Pointers and Class Objects: This Pointer,

Pointers to objects

Text Book3 CH-9

Memory Management: New and Delete, Garbage collection

Text Book3 CH-9.

Pointers and memory management

Week -11 Inheritance: Concepts, Access Modifiers,

Text Book3 CH-8

Inheritance Types.

Text Book3 CH-8

Polymorphism Concepts: Virtual methods, Compile time Polymorphism, Run time Polymorphism

Text Book 3 CH-9

Inheritance

Week-13 Managing Console I/O operations

C++ streams, c++stream classes , unformatted I/O

Text Book 3 CH-10

Templates and Exceptions: Function Templates, Class Templates, Exceptions, throw () and catch (),

Text Book3 CH-12,13

. Streams and File I/O File streams, Streams with file handling, String streams, Built-in streams

Text Book3 CH-10,11

Polymorphism and File Handling

Week-14 The Standard Template Library: Introduction, Algorithm,

Text Book3 CH-14.Text Book CH-15.

Sequence Containers, Iteators, specialized iteators

Text Book3 CH-14.Text Book CH-15.

Associative Containers, Storing User- Defined Object, Function Objects.

Text Book3 CH-14.Text Book4 CH-15.

Templates and Exception Handling

Page 42: CS and IT.pdf

• Creating Classes, Constructors ,Destructors & Access Specifier

• Inline functions, Static Keyword, Arrays of objects

• Overloading and Friend Functions

• Pointers and memory management

• Inheritance

• Polymorphism and File Handling

• Templates and Exception Handling

Page 43: CS and IT.pdf

CS-404:Theory of Computation L:T:P ::3:1:2

Prerequisite: Discrete Structures.

Objective: Introduce concepts in automata theory and theory of computation, Identify different formal language classes and their relationships, Design grammars and recognizers for different formal languages, Prove or disprove theorems in automata theory using its properties , Determine the decidability and intractability of computational problems.

Learning Outcome: On completion of this course, student should be able to-

1. Understand formal languages, grammars, automata and their relationships. 2. Able to design Finite Automata (FA) and understand the equivalence of DFA and

NFA and Regular Language. 3. Able to construct the equivalent DFA with the minimum number of states. 4. Determine whether a given language is regular (by constructing an automaton or with

the pumping lemma). 5. Clean a given grammar and transform a CFG into a normal form. 6. Design PDA for given CFL. Construct a PDA for a given context free grammar, and

vice versa. 7. Construct a Turing machine for given language. 8. Understand the concept of Undecidability.

Unit – I Introduction; Alphabets, Strings and Languages; Automata and Grammars, Deterministic finite Automata (DFA)-Formal Definition, Simplified notation: State transition graph, Transition table, Language of DFA, Nondeterministic finite Automata (NFA), NFA with epsilon transition, Language of NFA, Equivalence of NFA and DFA, Minimization of Finite Automata, Distinguishing one string from other, Myhill-Nerode Theorem . Unit – II Regular expression (RE) , Definition, Operators of regular expression and therr precedence, Algebraic laws for Regular expressions, Kleen’s Theorem, Regular expression to FA, DFA to Regular expression, Arden Theorem, Non Regular Languages, Pumping Lemma for regular Languages. Application of Pumping Lemma, Closure properties of Regular Languages, Decision properties of Regular Languages, FA with output: Moore and Mealy machine, Equivalence of Moore and Mealy Machine, Applications and Limitation of FA. Unit – III Chomsky Hierarchy of Grammars: Type0, 1, 2 and 3 Grammars. Context free grammar (CFG) and Context Free Languages (CFL): Definition, Examples, Derivation , Derivation trees, Ambiguity in Grammar, Inherent ambiguity, Ambiguous to Unambiguous CFG, Simplification of CFGs, Normal forms for CFGs: CNF and GNF, Closure properties of CFLs, Decision Properties of CFLs: Emptiness, Finiteness and Membership, Pumping lemma for CFLs,

Page 44: CS and IT.pdf

Unit – IV Push Down Automata (PDA): Description and definition, Instantaneous Description, Language of PDA, Acceptance by Final state, Acceptance by empty stack, Deterministic PDA, Equivalence of PDA and CFG, CFG to PDA and PDA to CFG, Two stack PDA Unit – V (8 Hours) Turing machines (TM): Basic model, definition and representation, Instantaneous Description, Language acceptance by TM, TM as Computer of Integer Functions, Variants of Turing Machine, Universal TM, Church’s Thesis, Recursive and Recursively Enumerable Languages, Enumeration Computability : Concepts, Introduction to complexity theory, Introduction to Undecidability, Halting Problem, Post Correspondence Problem(PCP), Modified PCP Text Books:

1. John E Hopcroft, Rajeev Motwani, Jeffrey D Ullman, “Introduction to Automata Theory, Languages and Computation”, Pearson Education

2. Peter Linz, “An Introduction to formal language and automata”, Third edition, Narosa Publication.

References:

1. Kamala Krithivasan, Rama R, “Introduction to Formal Languages, Automata Theory and Computation”, Pearson Education

2. Martin J. C., “Introduction to Languages and Theory of Computations”, TMH 3. Papadimitrou, C. and Lewis, C.L., “Elements of the Theory of Computation”, PHI 4. K.L.P. Mishra and N.Chandrasekaran, “Theory of Computer Science : Automata,

Languages and Computation”, PHI 5. Cohen D. I. A., “Introduction to Computer theory”, John Wiley & Sons 3. John E Hopcroft, Jeffrey D Ullman, “Introduction to Automata Theory, Languages

and Computation”, Narosa Publication. 6. Web References

1. www.nptel.iitm.ac.in/courses/106106049/ 2. http://infolab.stanford.edu/~ullman/ialc.html 3. http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-045j-

automata-computability-and-complexity-spring-2011/lecture-notes/

Page 45: CS and IT.pdf

Week Lecture 1 Chapter Lecture2 Chapter Lecture 3 Chapter Lab Meeting

Week-1 Introduction and application, Automata and Grammars

Text-2-Chapter-1

Deterministic finite Automata (DFA)-Formal Definition, Simplified notation: State transition graph, Transition table,

Text-1-Chapter-2

DFA and Language of DFA

Text-1Chapter-2

Lab Experiment-1

Week-2 Nondeterministic finite Automata (NFA), NFA with epsilon transition, Language of NFA

Text-1Chapter-2

Equivalence of NFA and DFA

Text-1-Chapter-2

Equivalence of epsilon NFA and DFA,

Text-1-Chapter-2

Lab Experiment-2

Week-3

Minimization of Finite Automata

Text-1-chapter-4

Distinguishing one string from other, Myhill-Nerode Theorem .

Reference 6 -Chapter-3

Regular expression (RE), Definition, Operators of regular expression and their precedence,

Text-1-chapter-3

Lab Experiment-3

Week-4

Algebraic laws for Regular expressions, Kleen’s Theorem

Text-1-chapter-3

and

Reference 5

Regular expression to FA, DFA to Regular expression, Arden Theorem,

Text-1-chapter-3 and reference -4

Regular Languages, Pumping Lemma for regular Languages. Application of Pumping Lemma,

Text-1-chapter-4

Lab Experiment-4

Week-5 Closure properties of Regular Languages,

Text-1-chapter-4

Decision properties of Regular Languages

Text-1-chapter 4

FA with output: Moore and Mealy machine,

Reference -1

Lab Experiment-5

Week-6 Equivalence of Moore and Mealy Machine, Applications and Limitation of FA.

Reference-1 Context free grammar (CFG) and Context Free Languages (CFL): Definition, Examples,

Text-2- chapter-5

Derivation , Derivation trees,

Text-2-chapter-5

Lab Experiment-6

Week-7 Ambiguity in Grammar, Inherent ambiguity, Ambiguous to Unambiguous CFG

Text-2-cahpter-5

Simplification of CFGs Text-2-chapter-6

Normal forms for CFGs-CNF

Text-2-chapter-6

Lab Experiment-7

Week-8 Normal Form-GNF

Text-2-chapter-6

Reference 6 – Chapter 4

Closure properties of CFLs, Decision Properties of CFLs: Emptiness, Finiteness and Membership

Text-2-chapter-8

Pumping lemma for CFLs

Text-2-chapter-8

Lab Experiment-8

Page 46: CS and IT.pdf

Lab. CS-404P NOTE: More programs can be added to the list

1. Write a C program to generate strings up to length 15 with the indivisible symbols like {0,1},

{a, b}, {+,-}.

2. Write a C program which reads a program written in any programming language and then

perform lexical analysis. The output of program should contain the tokens i.e. classification

as identifier, special symbol, delimiter, operator, keyword or string. It should also display the

number of identifiers, special symbol, delimiter, operator, keyword, strings and statements.

3. Write a C program to check whether a given grammar is type-0, type-1, type-2 or

type-3.

4. Write a C program to convert NFA to DFA

5. Write a C program to convert NFA with epsilon moves to NFA

6. Write a C program that accepts any Context Free Grammar (use appropriate data

structure

to store CFG) and then print it in the proper format.

Week-9 Push Down Automata (PDA): Description and definition,

Text-1-chapter-6

Instantaneous Description

Text-1-chapter-6

Languages of PDA, Acceptance by Final state,

Text-1-chapter-6

Lab Experiment-9

Week-10 Acceptance by empty stack

Text-1-chapter-6

Deterministic PDA Text-1-chapter-6

Equivalence of PDA and CFG, CFG to PDA

Text-1-chapter-6

Lab Experiment-10

Week-11 PDA to CFG Text-1-chapter-6

Two stack PDA Reference 5-chapter-21

Turing machines (TM): Basic model, definition and representation, Instantaneous Description,

Text-1-chapter-8

Lab Experiment-11

Week-12 TM as accepter Text-1-chapter-8

Language acceptance by TM,

Text-1-chapter-8

TM as Computer of Integer Functions

Text-1-chapter-8

Lab Experiment-12

Week-13 Variants of Turing Machine

Text-2-chapter-10

Universal TM, Turing Church’s Thesis

Text-1-chapter-9

Recursive and Recursively Enumerable Languages, Enumeration

Text-1-chapter-9

Lab Experiment-13

Week-14 Computability : Concepts, Introduction to complexity theory, Introduction to Undecidability,

Text-1-chapter-9

Halting Problem

Text-1-chapter-9

Post Correspondence Problem(PCP), Modified PCP,

Text-1-chapter-9

Lab Experiment-14

Page 47: CS and IT.pdf

7. Write a program to remove NULL productions from a given CFG

8. Write a program to remove UNIT productions from a given CFG

9. Write a program to remove useless symbols from a given CFG

10. Write a C program to convert CFG to CNF

11. Write a C program to convert CFG to GNF

12. Write a program for recognition of a given string using CKY algorithm. Use a

subprogram for generation of string (*) of various length. (Length u to 8 and * of 0,1).

13. Write a C program to convert PDA to CFG

14. Write a C program to convert CFG to PDA