Lesson plan /

Lesson Information

Course Credit
Course ECTS Credit
Teaching Language of Instruction İngilizce
Level of Course Bachelor's Degree, TYYÇ: Level 6, EQF-LLL: Level 6, QF-EHEA: First Cycle
Type of Course
Mode of Delivery Face-to-face
Does the course require compulsory or optional work experience?
Course Coordinator
Instructor (s)
Course Assistant

Purpose and Content

The aim of the course Introduction to the Theory of Computation is a classical introduction to automata theory, formal grammars and complexity theory known collectively as the theory of computation.
Course Content General Introduction: Languages, Grammars, Automata (Machines), The Chomsky Hierarchy, Applications. Finite State Machines, Regular Expressions, Regular Grammars, Nondeterminism, Non-regular sets, The Pumping Lemma, Decision Algorithms for Regular Sets

Weekly Course Subjects

1Finite State Machines, Design, Non-Determinism
2Closure Properties, Regular Expressions, Equivalence with Finite State Machines.
3The Pumping Lemma – Proving a Language is Non-Regular, The Adversary Game, Using Closure Properties.
4Regular Grammars, Equivalence to FSMs, Other FSM Variations, Minimization of FSM’s.
5Decision Algorithms for Regular Sets and Undecidability
6Context-Free Grammars, Semantic and Inductive Design, Examples, Applications.
7Chomsky Normal Form. Three Applications.
8Midterm
9Pushdown Machines, Non-Determinism Adds Power, Equivalence to CFG’s.
10The Pumping Lemma and Non-Context-Free Sets.
11Closure Properties, DCFL’s and Decision Algorithms.
12Turing Machines, Design.
13Variations and Equivalence: Non-Determinism, MultiTape, Two-Way.
14Recursive and Recursively Enumerable Sets, Undecidability.

Resources

1-1-Introduction to the Theory of Computation, Michael Sipser.