130 likes | 141 Views
This course covers the mathematical foundations of computer science, including sets, relations, formal languages, finite automata, regular grammars, context-free languages, pushdown automata, Turing machines, and computability theory.
E N D
ANJUMAN COLLEGE OF ENGINEERING & TECHNOLOGY Department of Computer Science & Engineering Sub: Theoretical Foundations of Computer Sciences Prof. SaimaZareenAnsari
Syllabus: • Unit 1: Mathematical preliminaries –Sets, operations, relations, strings, closure of relation, countability and diagonalization, induction and proof methods- pigeon-hole principle ,concept of language, formal grammars, Chomsky hierarchy. • Unit 2: Finite Automaton, regular languages, deterministic & non deterministic finite automata, ϵ-closures, minimization of automata, equivalence, Moore and Mealy machine. • Unit 3:Regular expression, identities, Regular grammar, right linear, left linear, Arden theorem, Pumping lemma for regular sets, closure & decision properties for regular sets, Context free languages, parse trees and ambiguity, reduction of CFGS, Normal forms for CFG .
Unit 4:Push down Automata (PDA), non-determinism, acceptance by two methods and their equivalence, conversion of PDA to CFG, CFG to PDAs, closure and decision properties of CFLs, pumping lemma for CFL. • Unit 5:Turing machines, TM as acceptor, TM as transducers, Variations of TM, linear bounded automata, TM as computer of function. • Unit 6:Recursively enumerable (r.e.) set, recursive sets, Decidability and solvability, Post correspondence Problem (PCP), Introduction to recursive function theory, primitive recursive functions, Ackerman function. Prof. Saima Zareen Ansari
COURSE OUTCOMES: • CO1:Classify the concept of languages and automata. • CO2:Explain the formal relationships among machines, languages and grammars. • CO3: Construct Regular Grammar and normal forms for CFG. • CO4: Design and develop finite automata for given regular language. • CO5: Design Push Down Automata, Turing Machine for given languages • CO6: Demonstrate use of computability, decidability, recursive function theory through problem solving Prof. Saima Zareen Ansari
MEALY & MOORE MACHINE Prof. Saima Zareen Ansari
FINITE AUTOMATA FINITE AUTOMATA WITH OUTPUT FINITE AUTOMATA WITHOUT OUTPUT Mealy Machine Moore Machine DFA NFA NFA with ϵ Prof. Saima Zareen Ansari
FINITE AUTOMATA WITH OUTPUT Moore Machine Mealy Machine λ Q = Δ λ Q * Ʃ = Δ 0 0 Mealy and Moore machine consist of SIX TUPLE: (Q, Ʃ, δ, qo, Δ, λ) Q= Set of State Ʃ= Set of Alphabet δ= Transition q0= Initial State Δ= Set of Output alphabet (Output Symbol) λ= Output Mapping Function Prof. Saima Zareen Ansari
Conversion of Mealy Machine to Moore Machine • Find out different output generated with qί in the next state column of Mealy Machine. • Then split qί into different states depending upon output generated with it. For example: If output generated by qί is ‘1’ in the first next state column & ‘0’ in the second next state column, then split q1 into q10 & q11. Follow the above steps for all the states. 3. Now copy all the present states & next states in Moore machine format and output of the next state are common. Prof. Saima Zareen Ansari
Conversion of Mealy to Moore Machine Q * Ʃ = Δ : Q = Δ Prof. Saima Zareen Ansari
Conversion of Moore Machine to Mealy Machine • Draw the Mealy machine table. • Copy all the Present state & Next state column of the states into the table. • For output column of the Next state, check Present state & its output generated in the Moore Machine table. For example: If output generated by state Qί is ‘m’, copy this output into the output column of Mealy machine table wherever Qί is present in the next state. Prof. Saima Zareen Ansari
Conversion of Moore to Mealy Machine Q = Δ : Q * Ʃ = Δ Prof. Saima Zareen Ansari
Construction of Moore & Melay Machine Prof. Saima Zareen Ansari
THANK YOU Prof. Saima Zareen Ansari