YoVDO

Formal Languages and Automata Theory

Offered By: Udemy

Tags

Automata Theory Courses Finite Automata Courses Context-Free Grammars Courses Formal Languages Courses Computability Courses

Course Description

Overview

Introduction to Automata Theory, Languages and Computation

What you'll learn:
  • Develop a formal notation for strings, languages and machines.
  • Design finite automata to accept a set of strings of a language.
  • Prove that a given language is regular and apply the closure properties of languages.
  • Design context free grammars to generate strings from a context free language and convert them into normal forms.
  • Prove equivalence of languages accepted by Push Down Automata and languages generated by context free grammars.
  • Identify the hierarchy of formal languages, grammars and machines
  • Distinguish between computability and non-computability and Decidability and undecidability.

  • Formal Languages and Automat Theory deals with the concepts of automata, formal languages, grammar, algorithms, computability, decidability, and complexity.

  • The reasons to study Formal Languages and Automat 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.

  • The purpose of this course is to acquaint the student with an overview of the theoretical foundations of computer science from the perspective of formal languages.

At the end of the course, the students will be able to:

  • Provide introduction to some of the central ideas of theoretical computer science from the perspective of formal languages.

  • Introduce the fundamental concepts of formal languages, grammars and automata theory.

  • Classify machines by their power to recognize languages.

  • Employ finite state machines to solve problems in computing.

  • Understand deterministic and non-deterministic machines.

  • Understand the differences between decidability and undecidability.


Taught by

Rasineni Madana Mohana

Related Courses

System Validation: Automata and behavioural equivalences
EIT Digital via Coursera
Automata Theory
Stanford University via edX
理论计算机科学基础 | Introduction to Theoretical Computer Science
Peking University via edX
离散数学概论 Discrete Mathematics Generality
Peking University via Coursera
Mecânica para a criação de autômatos de madeira
Domestika