One stop destination for “Theory of Computation(TOC)” or “Automata Theory” or “Formal Languages”.
Features :
COURSE OVERVIEW:
Formal languages and automata theory deals with the concepts of automata, formal languages, grammar, computability and decidability. The reasons to study Formal Languages and Automata Theory are Automata Theory provides a simple, elegant view of the complex machine that we call a computer. Automata Theory possesses a high degree of permanence and stability, in contrast with the ever-changing paradigms of the technology, development, and management of computer systems. Further, parts of the Automata theory have direct bearing on practice, such as Automata on circuit design, compiler design, and search algorithms; Formal Languages and Grammars on
compiler design; and Complexity on cryptography and optimization problems in manufacturing, business, and management. Last, but not least, research oriented students will make good use of the Automata theory studied in this course.
Course Objectives:
To understand the concept of machines: finite automata, pushdown automata, linear bounded automata, and Turing machines.
To understand the formal languages and grammars: regular grammar and regular languages, context-free languages and context-free grammar; and introduction to context-sensitive language and context-free grammar, and unrestricted grammar and languages.
To understand the relation between these formal languages, grammars, and machines.
To understand the complexity or difficulty level of problems when solved using these machines.
To understand the concept of algorithm.
To compare the complexity of problems.
Who this course is for: