FLAT notes
FLAT notes
Sudarshan, McGraw-Hill.
Reference Books:
----------------------------------------------------------------------------------------------------------------
Course Code: BTCS502-18 Course Title: Formal Language & 3L:1T:0P 3Credits 42 Hours
Automata Theory
Detailed Contents
Module 1: Introduction
Alphabet, languages and grammars, productions and derivation, Chomsky hierarchy of
languages. [3hrs] (CO1 )
Module 2: Regular languages and finite automata:
Regular expressions and languages, deterministic finite automata (DFA) and equivalence with
regular expressions, nondeterministic finite automata (NFA) and equivalence with DFA, regular
grammars and equivalence with finite automata, properties of regular languages, pumping lemma
for regular languages, minimization of finite automata. [8hrs] (CO2 )
Module 3: Context-free languages and pushdown automata
Context-free grammars (CFG) and languages (CFL), Chomsky and Greibach normal forms,
nondeterministic pushdown automata (PDA) and equivalence with CFG, parse trees, ambiguity
in CFG, pumping lemma for context-free languages, deterministic pushdown automata, closure
properties of CFLs. [8hrs] (CO3 )
Module 4: Context-sensitive languages
Context-sensitive grammars (CSG) and languages, linear bounded automata and equivalence
with CSG. [5hrs] (CO4 )
Module 5: Turing machines
The basic model for Turing machines (TM), Turing recognizable (recursively enumerable) and
Turing-decidable (recursive) languages and their closure properties, variants of Turing machines,
nondeterministic TMs and equivalence with deterministic TMs, unrestricted grammars and
equivalence with Turing machines, TMs as enumerators. [8hrs] (CO 5 )
CO3: Design context free grammars to generate strings of context free language .
CO4: Determine equivalence of languages accepted by Push Down Automata and languages
generated by context free grammars
Text Books:
----------------------------------------------------------------------------------------------------------------
Course Code: BTCS503-18 Course Title: Software Engineering 3L:1T:0P 3Credits 42 Hours
Detailed Contents:
Module 1:
Evolution and impact of Software engineering, software life cycle models: Waterfall,
prototyping, Evolutionary, and Spiral models. Feasibility study, Functional and Non-functional
requirements, Requirements gathering, Requirements analysis and specification.
[10hrs] (CO 1)
Module 2:
Basic issues in software design, modularity, cohesion, coupling and layering, function-oriented
software design: DFD and Structure chart, object modeling using UML, Object-oriented software
development, user interface design. Coding standards and Code review techniques.
[8hrs] (CO2 )
Module 3:
Fundamentals of testing, White-box, and black-box testing, Test coverage analysis and test case
design techniques, mutation testing, Static and dynamic analysis, Software reliability metrics,
reliability growth modeling. [10hrs] (CO 3)
Module 4: