Institute of Engineering & Management
Dept. of Information Technology
2nd YEAR
Course Curriculum
Department of IT
Page 1
Institute of Engineering & Management
COURSE: CS402-FORMAL LANGUAGE AND AUTOMATA THEORY PROGRAMME:INFORMATION TECHNOLOGY
DEGREE:B. TECH
COURSE: Formal Language and Automata Theory
SEMESTER: 6
COURSECODE: CS402
COURSE TYPE: Theory
COURSE AREA/DOMAIN: Theory of Computation
CONTACTHOURS: 4(weekly)
CORRESPONDINGLABCOURSE CODE (IFANY):---
LABCOURSE NAME:---
CREDITS: 4
Course pre-requisites
CODE CS20 1 CS30 2 CS50 3
COURSE NAME Basic Computation & Principles of Computer Programming Data structures and algorithms
DESCRIPTION Programming basics
S II
Concept of algorithms
III
Discrete Mathematics
Elementary discrete mathematics including the notion of set,function,relation,product,partial order,equivalence relation,graph& tree. They should have a thorough understanding of the principle of
V
Course Objectives To develop an understanding of computability and complexity To develop an ability to design machine models for various computation problems Course Outcomes Students would be able to determine computability of problems Students would be able to design algorithms using machine models Students would be able to apply the knowledge in compiler design, text and image processing. The student will be able to define a system and recognize the behavior of a system. They will be able to minimize a system and compare different systems. Department of IT
Page 2
Institute of Engineering & Management Programme Outcomes addressed in this course An ability to apply knowledge of mathematics, science, and engineering An ability to identify, formulate and solve engineering problems (e) An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice (k) Syllabus Module 1 UNIT
II III IV V
DETAILS Fundamentals: Basic definition of sequential circuit, block diagram, mathematical representation, concept of transition table and transition diagram (Relating of Automata concept to sequential circuit concept) Design of sequence detector, Introduction to finite state model Finite state machine: Definitions, capability & state equivalent, kth- equivalent Merger graph, Merger table, Compatibility graph Finite memory definiteness, testing table & testing graph Deterministic finite automaton and non deterministic finite automaton
1 1 1 1
VI
Transition diagrams and Language recognizers.
1
VII
Finite Automata: NFA with Î transitions - Significance, acceptance of languages. Conversions and Equivalence: Equivalence between NFA with and without Î transitions. NFA to DFA conversion
1
I
VIII
IX X
Minimization of FSM, Equivalence between two FSM’s , Limitations of FSM Application of finite automata, Finite Automata with output- Moore & Mealy machine
HOURS 2
2
1 2
Module 2 UNIT I II
DETAILS Regular Languages: Regular sets. Regular expressions, identity rules. Arden’s theorem state and prove
III
Constructing finite Automata for a given regular expressions, Regular string accepted by NFA/DFA Pumping lemma of regular sets. Closure properties of regular sets (proofs not i d) Formalism: Regular grammars-right linear and left linear grammars. Grammar
1
Equivalence between regular linear grammar and FA
1
IV V VI
Department of IT
HOURS 1 1 1 1
Page 3
Institute of Engineering & Management VII
Inter conversion, Context free grammar
1
VIII
Derivation trees, sentential forms. Right most and leftmost derivation of strings. (Concept only)
1
UNIT I
DETAILS Context Free Grammars, Ambiguity in context free grammars
HOURS 1
II
Minimization of Context Free Grammars.
1
III
Chomsky normal form and Greibach normal form
1
IV
Pumping Lemma for Context Free Languages
1
V
Enumeration of properties of CFL (proofs omitted). Closure property of CFL, Ogden’s lemma & its applications Push Down Automata: Push down automata, definition.
Module 3
VI
VIII
Acceptance of CFL, Acceptance by final state and acceptance by empty state and its equivalence Equivalence of CFL and PDA, interconversion. (Proofs not required).
IX
Introduction to DCFL and DPDA.
VII
1 1 1 1 1
Module 4 UNIT I II III IV V
DETAILS Turing Machine : Turing Machine, definition, model Design of TM, Computable functions Church’s hypothesis, counter machine Types of Turing machines (proofs not required) Universal Turing Machine, Halting problem
HOURS 1 1 1 1 2
Gaps in the syllabus - to meet industry/profession requirements
How to apply machine models in designing programming logic
PROPOSED ACTIONS Lab
PO MAPPING b
Interconnection between Compiler and Automata Theory
Extra Class
b
S.NO.
DESCRIPTION
1 2
Topics beyond syllabus/advanced topics S.
DESCRIPTION
HOURS
1
Multi Tape Turing Machine and its Applications
1
Department of IT
Page 4
Institute of Engineering & Management 2
Decidability and Un decidability
1
Web Source References S.
URL
1
https://class.coursera.org/automata/lecture/preview
Delivery/Instructional Methodologies S.
DESCRIPTION
1
Chalk and Talk
2
Study Material
3
Power Point Presentation
Assessment Methodologies S.
TYPE
1
DESCRIPTION Student Assignment
2
Tests
Direct
3
University Examination
Direct
4
Student Feedback
Indirect
Direct
Course Plan S. NO.
Day
Module
Day 1 Day 2
Topic Need for this subject, Decision making as computation
I
Concept of sequential circuit
Day 3
Flip Flop and concept of memory
Day 4
Definition of Finite State Automaton
Day 5 Day 6 Department of IT
II
Transition table and diagram, Mathematical representation Worked out examples Page 5
Institute of Engineering & Management Day 7 Day 8
III
Merger graph, Merger table, Compatibility graph Finite memory definiteness, testing table & testing graph
Day 9
Definition of language and grammar
Day 10
Rules – single symbol, concatenation, union, Kleene Closure
Day 11
IV
Day 12 Day 13 Day 14
Closure properties Worked out examples
V
Definition, Conversion from NFA to DFA Worked out examples
Day 15
Introduction, Equivalent States, Distinguished State
Day 16
Myhill-Nerode Theorem
Day 17
VI
Day 18 Day 19 Day 20
Partitioning method with worked out example VII
Day 21 Day 22
Table filling method with worked out example
Arden’s Theorem Worked out example Limitations of Finite State Machines
VIII
Day 23
Pumping Lemma for Regular Language Worked out examples
S. NO.
Day
24
Day 24
Revisiting Formal Grammar, Generalization of grammar with increased power
25
Day 25
Introduction to Context Free Grammar and Context Free Language
26
Day 26
27
Day 27
Closure properties of Context Free Language
28
Day 28
Normal forms – Chomsky and Greibach Normal Form
Department of IT
Module
IX
Topic
Mathematical Definition of Context Free Language
Page 6
Institute of Engineering & Management 29
Day 29
Worked out examples
30
Day 30
Limitations of Context Free Language
32
Day 31
32
Day 32
Worked out examples
33
Day 33
Push Down Automata: Push down automata, definition.
34
Day 34
Acceptance of CFL, Acceptance by final state and acceptance by empty state and its equivalence
35
Day 35
Equivalence of CFL and PDA, interconversion. (Proofs not required).
36
Day 36
Introduction to DCFL and DPDA.
37
Day 37
Turing Machine : Turing Machine, definition, model
38
Day 38
39
Day 39
Church’s hypothesis, counter machine
40
Day 40
Types of Turing machines (proofs not required)
41
Day 41
Universal Turing Machine
42
Day 42
Halting problem
Department of IT
X
XI
XII
Pumping Lemma for Context Free Language
Design of TM, Computable functions
Page 7
Institute of Engineering & Management
COURSE: CS 492- SOFTWARE TOOLS LAB PROGRAMME:
INFORMATION TECHNOLOGY
DEGREE:B. TECH
COURSE: Software Tools
SEMESTER: IV
CREDITS: 2
COURSECODE: CS492
COURSE TYPE: Practical
COURSE AREA/DOMAIN: Laboratory Skills
CONTACT HOURS: 3 (weeks)
CORRESPONDING THEORY COURSE CODE : Software Engg (IT603)
THEORY COURSE NAME: Software Tools
Course pre-requisites Problem Solving and Basics of Learning Visual Basic 6.0 Developing a project in Visual Basic 6.0 and Microsoft Access Laboratory Educational Objectives To develop conceptual understanding of Window Based Application To implement various Visual Basic 6.0 Tools/ Controls (such as, Label, Button, Text Box etc.). To develop understanding of database connection in Visual Basic 6.0.
Laboratory Outcomes Models: Identify the concept of Window-Based application and ability to implement it using Visual Basic 6.0 (VB). (LO-2) Experiment: Ability to do basic VB programming (LO-3) Design: Design and build a window-based project to meet desired specifications and tests it using appropriate testing strategy and/or equipments. (LO4) Teamwork: Work effectively in teams to accomplish the assigned responsibilities in an integral manner. (LO – 5) Communication: Communicate effectively about laboratory work both orally and in writing journals/technical reports. (LO – 6) Department of IT
Page 8
Institute of Engineering & Management Ethics and Awareness: Behave with highest ethical standards with concern to global, environmental, economic, social issues & lifelong learning, and awareness of contemporary issues. (LO-7) Syllabus Introduction to Visual Basic. Concept about Form, Project, Application, Tools, Toolbox, Controls & Properties. Idea about Labels, Buttons, Text Boxes. Data basics, Different type variables & their use in VB, Sub-functions & Procedure details, Input box () & Msgbox (). Making decisions, looping Implementation of List boxes & Data lists, List Box control, Combo Boxes, Data Arrays, Frames, Buttons, Check Boxes, Timer Control Programming with data, ODBC data base connectivity. Data Form Wizard, query, menus and graphics in VB Applications. Case studies using any of the following items including relevant form design with the help of visual programming aids. a) Payroll accounting system. b) Library circulation management system. c) Inventory control system. d) University examination & grading system. e) Patient information system. f) Tourist information system. g) Judiciary information system. h) Flight reservation system. i) Bookshop automation software. j) Time management software. Lab Assignments ASSIGNMENT NO 1 1. Write a program in VB to implement a calculator that will take 2 numbers as user input and provides the output on pressing +,-,*,/ buttons. 2. Write a program in VB that will ask the user to enter his/her name in a text box, school name in another textbox and has to choose a gender from radio button group. Then the following message will be display by pressing a command button. Ex. Welcome Rohan. He studied at Puri Zilla School.
Department of IT
Page 9
Institute of Engineering & Management 3.Write a program in VB that will ask the user to enter numbers in a textbox followed by a click on button for 10 times. At the 11th time a message will be displayed which will prompt that “your maximum limit is 10 ” and it will display the sum of the 10 numbers. 4. Create a VB form where the student will enter his/her name in a textbox and will choose the department(IT, CSE, ECE) and section(A, B) from dropdownlists.By pressing the submit button a message will be displayed . Eg.Ram is studying in section A of CSE department. 5. In the above form add a radio button group which will show gender and a checkbox group showing hobbies(playing,dancing,singing,gardening etc). Now by pressing the submit button two messages will be displayed. Eg: Ram is studying in section A of CSE department. His hobbies are playing and gardening. ASSIGNMENT NO. 2 6. Design a form in the following way:
Explanation: a) By pressing “>” the selected item from first list should be copied to second list and should be removed from first list. b) By pressing “>>” button the all items from first list should be copied to second list and should be removed from first list. c) By pressing “