Birla Institute of Technology & Science, Pilani
Automata and Computability

Saving $160 on access to 10,000+ programs is a holiday treat. Save now.

Birla Institute of Technology & Science, Pilani

Automata and Computability

Included with Coursera Plus

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

6 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace
Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

6 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Master finite automata, pushdown automata, and Turing machines to analyse computation limits and formal language processing.

  • Understand computability, NP-completeness, and complexity classes to assess problem-solving limits in theoretical computer science.

  • Apply proof techniques and logic to formalise computational models, algorithmic efficiency, and automata-based problem-solving.

  • Construct regular expressions and context-free grammars to solve pattern matching and parsing problems in software engineering.

Details to know

Shareable certificate

Add to your LinkedIn profile

Recently updated!

November 2025

Assessments

157 assignments¹

AI Graded see disclaimer
Taught in English

See how employees at top companies are mastering in-demand skills

 logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

There are 10 modules in this course

This module provides an in-depth exploration of the foundational concepts of Automata Theory. It begins with an introduction to the theoretical underpinnings and practical relevance of automata in computing. Students will review finite automata, focusing on deterministic finite automata (DFA) and their structure, functionality, and applications. The module also explores the concept of languages accepted by DFAs, emphasising how automata relate to formal language theory and computational problem-solving.

What's included

13 videos12 readings12 assignments1 plugin

Finite Automata is a fundamental module in theoretical computer science that introduces the mathematical models of computation and their applications in problem-solving and language processing. This module focuses on the study of abstract machines and the computational problems that they can solve. Students will learn how to design, analyse, and implement finite automata to recognise regular languages and perform pattern matching.

What's included

11 videos11 readings13 assignments1 plugin

This module focuses on the study of Regular Languages within the context of Automata Theory. Regular languages form the foundation of formal language theory and are closely linked with Finite Automata. The module covers the theoretical underpinnings of regular languages, their characterisation through finite automata and regular expressions, and the practical applications in areas such as compiler design, pattern matching, and text processing. Students will explore how to manipulate regular languages and prove their properties and limitations.

What's included

19 videos19 readings21 assignments

This module introduces the concept of Context-Free Languages (CFLs) and their fundamental role in the theory of computation and formal language theory. It covers the theoretical foundations, practical applications, and formal representation of CFLs through Context-Free Grammars (CFGs). Students will explore how CFLs are generated, manipulated, and analysed using derivation trees, parse trees, and normal forms such as Chomsky Normal Form (CNF) and Greibach Normal Form (GNF). The module also examines key properties of CFLs, including ambiguity, the pumping lemma for CFLs, and closure properties. Practical applications in programming languages, syntax analysis, and compiler design are also discussed.

What's included

20 videos20 readings22 assignments1 plugin

This module introduces key techniques for simplifying context-free grammars (CFGs), including the removal of useless, nullable, and unit productions. It also covers the transformation of CFGs into normal forms, such as Chomsky Normal Form (CNF) and Greibach Normal Form (GNF), which are essential for parsing and algorithmic applications. Additionally, the module explores fundamental properties of Context-Free Languages (CFLs), including closure properties, the pumping lemma, and decision problems.

What's included

15 videos15 readings17 assignments

This module introduces the Turing Machine, a fundamental theoretical model of computation. It covers the formal definition of a Turing Machine, its components, and its functioning as a computational device. Students will explore different approaches to designing Turing Machines and work through design examples to understand their applications. The module also examines the dual role of Turing Machines: As a language acceptor to recognise formal languages and as a transducer to compute functions, demonstrating their significance in theoretical computer science and the foundations of computation.

What's included

17 videos4 readings17 assignments

This module explores advanced concepts and variations of the Turing Machine, a cornerstone of computational theory. It delves into Turing Machines with finite control, multiple tracks, two-way infinite tapes, multi-tape configurations, multi-head mechanisms, and non-deterministic models, highlighting their unique capabilities and computational power. The concept of the Universal Turing Machine is introduced, demonstrating its role as a model of general computation. The module also examines Turing-computable functions and their implications, culminating in an understanding of the Church-Turing Thesis, which formalises the limits of algorithmic computation and the foundations of computer science.

What's included

17 videos4 readings17 assignments

This module examines the classification of formal languages and their relationship to computational models. It focuses on recursive and recursively enumerable languages, exploring their properties and distinctions within the computational framework. The concept of unrestricted grammars is introduced as a powerful tool for generating languages beyond regular and context-free classes. Additionally, the module delves into context-sensitive grammars (CSG) and their place in the Chomsky Hierarchy, providing a structured understanding of language classes and their computational complexity. These topics form the foundation for analysing the expressive power of different formal systems and their real-world applications.

What's included

15 videos4 readings15 assignments

This module, part of Automata Theory, focuses on the foundational concepts of computability and decidability. Students will study formal languages, automata models (finite automata, pushdown automata, Turing machines), and the classification of computational problems based on their solvability. The module examines how Turing machines serve as a standard for what is "computable" and explores the limits of algorithmic problem solving through examples of decidable and undecidable languages. Students will engage in formal reasoning, proofs, and reductions to understand the theoretical boundaries of computation.

What's included

11 videos11 readings13 assignments1 plugin

This module, integrated into Automata Theory, introduces the study of computational complexity, understanding not just what problems can be solved, but how efficiently they can be solved. Students will explore models of computation, such as Turing machines, to analyse time and space complexity. The course covers complexity classes like P, NP, and NP-complete problems, with a focus on formal methods to prove complexity bounds. Through examples and theoretical proofs, students will develop the ability to evaluate the efficiency of algorithms and the intrinsic difficulty of computational problems.

What's included

8 videos9 readings10 assignments

Instructor

BITS Pilani Instructors Group
Birla Institute of Technology & Science, Pilani
30 Courses40,954 learners

Offered by

Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."
Coursera Plus

Open new doors with Coursera Plus

Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Frequently asked questions

¹ Some assignments in this course are AI-graded. For these assignments, your data will be used in accordance with Coursera's Privacy Notice.