Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Theory of Computation(TOC) / Automata : Complete Pack
Rating: 4.5 out of 5(108 ratings)
2,093 students

Theory of Computation(TOC) / Automata : Complete Pack

Learn and play with DFA, NFA, DPDA, NPDA, LBA, Turing Machine and Formal Languages.
Last updated 11/2025
English

What you'll learn

  • Able to design Finite Automata machines for given problems.
  • Able to analyze a given Finite Automata machine and find out its Language.
  • Able to design Pushdown Automata machine for given CF language(s).
  • Able to generate the strings/sentences of a given context-free languages using its grammar.

Course content

11 sections103 lectures11h 51m total length
  • Introduction of Theory of Computation.12:08
  • Formal Languages4:10

    Formal languages require alphabet, grammar, and an automaton; examples include English, Hindi, and programming languages. They include regular, context-free, context-sensitive, and recursively enumerable languages with their grammars and machines.

  • Grammer : Definition7:37
  • Classification of Grammars1:51
  • Automata : Definition2:02

    The lecture defines automata as a mathematical model that recognizes formal language and accepts inputs, explaining final and non-final states, and introducing finite automata, push-down automata, and linear bounded automata.

  • Chomsky Hierarchy : Relation among Languages, Grammars and Automata's5:25
  • Expressive Power or Recognizing Power of Automata.5:00

    Compare the expressive power of automata by counting languages they accept—from regular languages for finite automata to context-free, context-sensitive, and all languages for Turing machines.

  • Determinstic and Non-Deterministic Automata.7:50

    Explain deterministic finite automata versus non deterministic finite automata, single transition per input for deterministic automata and branching to multiple states for nondeterministic ones, and discuss expressive power of languages.

  • Memory States of FA, PDA, TM.9:01

    Compare memory states across finite automata, pushdown automata, and Turing machines. Show how adding a second stack increases recognition power beyond a single-stack automaton.

Requirements

  • No prerequisites. Starting from scratch.

Description

One stop destination for "Theory of Computation(TOC)" or "Automata Theory" or "Formal Languages".

Features : 

  • Complete end to end discussion from scratch.

  • Thorough theory discussion for every chapter.

  • 150+ problems solved with video solutions.

  • Doubts clarifications can be done with in 24 hours.

  • Quizzes and Assignments for self assessment.


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:

  • For everyone

  • Academic Students.

  • Interview Preparation Persons.

  • Competitive Exam Preparation Aspirants.

  • Anyone interested in Theory of computation/ Automata Theory.

Who this course is for:

  • Academic Students.
  • Competitive Exams Aspirants.
  • GATE CS/IT.