Theory of Computation

  • Software Engineering |

Description

This course introduces the fundamental mathematical models of computation. The course presents both inherent capabilities and limitations of these computational models as well as their relationships with formal languages. Topics to be covered include: Finite automata and regular languages, deterministic and nondeterministic computations, pumping lemma for regular languages, context-free grammars and languages, pushdown automata, pumping lemma for context-free languages, and Turing machines and their variants.

Program

Software Engineering Plan -2021

Objectives

  • 1. Understand the capabilities and limitation of computational models.
    2. Prove whether a given language is regular.
    3. Prove whether a given language is context-free.
    4. Design variants of Turing machines.
    5. Understand the relationship between the regular, context-free, and recursively enumerable languages.
    6. Implement simple parsers using Finite State Automata and regular expressions.

Textbook

Michael Sipser, Introduction to the Theory of Computation, Cengage Learning

Course Content

content serial Description
1Deterministic Finite State Automata
2Non-Deterministic Finite State Automata
3Equivalence between DFA and NFA
4Regular Expressions
5Non-Regular Languages
6Context-Free Grammars
7Context-Free Grammars
87th week exam
9Push-Down Automata
10Non-Context Free Languages
11Turing Machines
12Variants of Turing Machines
1312th week exam
14Complexity Theory
15Revision
16Final Exam

Markets and Career

  • Generation, transmission, distribution and utilization of electrical power for public and private sectors to secure both continuous and emergency demands.
  • Electrical power feeding for civil and military marine and aviation utilities.
  • Electrical works in construction engineering.

Start your application

Start The your journey to your new career.