Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
105 views21 pages

ATFL Lecture 1

This document provides information about the course "Theory of Automata and Formal Languages" to be taught in the ODD/EVEN semester of 2022-23. It will be a 3-credit course taught over 2 lectures and 1 tutorial per week. The course aims to design machines that can solve various problem types by studying different automata like finite state automata, pushdown automata, and Turing machines. It will also cover formal language theory and concepts like regular expressions and grammars. The course outcomes include being able to identify solvable problems, design appropriate machines to solve them, and prove limitations of machine computational power.

Uploaded by

Masti n Chill
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
105 views21 pages

ATFL Lecture 1

This document provides information about the course "Theory of Automata and Formal Languages" to be taught in the ODD/EVEN semester of 2022-23. It will be a 3-credit course taught over 2 lectures and 1 tutorial per week. The course aims to design machines that can solve various problem types by studying different automata like finite state automata, pushdown automata, and Turing machines. It will also cover formal language theory and concepts like regular expressions and grammars. The course outcomes include being able to identify solvable problems, design appropriate machines to solve them, and prove limitations of machine computational power.

Uploaded by

Masti n Chill
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

Course Code: To be Provided

Theory of Automata and Formal Languages

ODD/EVEN SEM 2022-23

A. Senthil, Prof / CSE


Course Information

Instructor Dr. A. Senthil, Professor/CSE

Contact Info Room #C 316, C-Block Third Floor

No of Credits 3

Lectures 2 per week

Tutorials 1 per week (Important)

Pre-requisite Discrete Mathematics

Website https://moodle.kluniversity.in/login/inde
x.php
Course Organization
Text Book:
- J. E. Hopcroft, R. Motwani, J. D. Ullman
Introduction to Automata Theory,
Languages, and Computation, Second Edition,
Addison-Wesley, New York,

- Peter Linz

An Introduction to Formal Languages and Automata

– Evaluation Scheme: To be Updated

A. Senthil, Asst. Prof / CSE


The Subject
• Theory of Computation

• Automata Theory

• Theory of Automata and Formal Languages

• Formal Language theory


Objective
• Design a Machine which solves almost all types
of Problems
Outcomes
Capable of Answering following Questions

• Given a Problem – Can you able to identify


whether it can be solvable or not?

• If it is solvable then, which machine is


capable enough to solve it?
Course Outcomes
Course Outcome—1:To design finite machines, regular expressions for regular
languages and to prove existence of non-regular languages.
Course Outcome—2: To design Context Free Grammars for Context Free Languages
and simplify them
Course Outcome—3: To design Push Down Automata for CFL and to prove existence
of non-Context Free languages
Course Outcome—4: To design a Turing machine for a given problem and to prove
the existence of Non-Turing acceptable languages

A. Senthil, Prof / CSE


What does Automata Theory mean?

• An Open ended computer science


Theoritical

discipline that concerns an abstract


device called “automaton”, which
performs a specific computational or
recognition function.
Identification

• Networks of automata are designed


to mimic human behaviour
What we will do

Automata = abstract computing devices


Turing studied Turing Machines (= computers)
before there were any real computers
We will also look at simpler devices than
Turing machines (Finite State Automata,
Pushdown Automata, . . . ), and specification
means, such as grammars and regular
expressions.
NP-hardness = what cannot be efficiently
computed
Computation

CPU memory
temporary memory

input memory
CPU
output memory

Program memory
3
Example: f ( x) = x

temporary memory

input memory
CPU
output memory
Program memory
compute x*x
2
compute x *x
3
f ( x) = x

temporary memory
input memory
x=2
CPU
output memory
Program memory
compute x*x
2
compute x *x
3
temporary memory f ( x) = x
z = 2*2 = 4
f ( x) = z * 2 = 8
input memory
x=2
CPU
output memory
Program memory
compute x*x
2
compute x *x
3
temporary memory f ( x) = x
z = 2*2 = 4
f ( x) = z * 2 = 8
input memory
x=2
CPU
f ( x) = 8
Program memory output memory
compute x*x
2
compute x *x
Automaton
temporary memory

Automaton
input memory
CPU
output memory

Program memory
Different Kinds of Automata
Automata are distinguished by the temporary memory

• Finite Automata: no temporary memory

• Pushdown Automata: stack

• Turing Machines: random access memory


Finite Automaton

temporary memory

input memory
Finite
Automaton
output memory

Example: Vending Machines


(small computing power)
Pushdown Automaton
Stack Push, Pop

input memory
Pushdown
Automaton
output memory

Example: Compilers for Programming Languages


(medium computing power)
Turing Machine

Random Access Memory

input memory
Turing
Machine
output memory

Examples: Any Algorithm


(highest computing power)
Power of Automata

Finite Pushdown Turing


Automata Automata Machine

Less power More power


Solve more
computational problems

You might also like