SlideShare a Scribd company logo
1
Introduction to Automata Theory
What is Automata Theory?
2
Study of abstract computing devices, or
“machines”
Automaton = an abstract computing device
 Note: A “device” need not even be a physical hardware!
A fundamental question in computer science:
 Find out what different models of machines can do and
cannot do
 The theory of computation
Computability vs. Complexity
Alan Turing (1912-1954)
3
Father of Modern Computer
Science
English mathematician
Studied abstract machines called
Turing machines even before
computers existed
Heard of the Turing test?
(A pioneer of automata theory)
Theory of Computation: A Historical Perspective
4
1930s • Alan Turing studies Turing machines
• Decidability
• Halting problem
1940-1950s • “Finite automata” machines studied
• Noam Chomsky proposes the
“Chomsky Hierarchy” for formal
languages
1969 Cook introduces “intractable” problems
or “NP-Hard” problems
1970- Modern computer science: compilers,
computational & complexity theory evolve
Languages & Grammars
 Languages: “A language is a
collection of sentences of
finite length all constructed
from a finite alphabet of
symbols”
 Grammars: “A grammar can
be regarded as a device that
enumerates the sentences of
a language” - nothing more,
nothing less
 N. Chomsky, Information
and Control, Vol 2, 1959
5
Or “words”
Image source: Nowak et al. Nature, vol 417, 2002
The Chomsky Hierachy
6
Regular
(DFA)
Context-
free
(PDA)
Context-
sensitive
(LBA)
Recursively-
enumerable
(TM)
• A containment hierarchy of classes of formal languages
7
The Central Concepts of
Automata Theory
Alphabet
8
An alphabet is a finite, non-empty set of symbols
We use the symbol ∑ (sigma) to denote an
alphabet
Examples:
 Binary: ∑ = {0,1}
 All lower case letters: ∑ = {a,b,c,..z}
 Alphanumeric: ∑ = {a-z, A-Z, 0-9}
 DNA molecule letters: ∑ = {a,c,g,t}
 …
Strings
9
A string or word is a finite sequence of symbols
chosen from ∑
Empty string is ε (or “epsilon”)
Length of a string w, denoted by “|w|”, is equal to
the number of (non- ε) characters in the string
 E.g., x = 010100 |x| = 6
 x = 01 ε 0 ε 1 ε 00 ε |x| = ?
 xy = concatentation of two strings x and y
Powers of an alphabet
10
Let ∑ be an alphabet.
 ∑k
= the set of all strings of length k
 ∑* = ∑0
U ∑1
U ∑2
U …
 ∑+
= ∑1
U ∑2
U ∑3
U …
Languages
11
L is a said to be a language over alphabet ∑, only if L ⊆ ∑*
 this is because ∑* is the set of all strings (of all possible length
including 0) over the given alphabet ∑
Examples:
1. Let L be the language of all strings consisting of n 0’s followed by n
1’s:
L = {ε,01,0011,000111,…}
2. Let L be the language of all strings of with equal number of 0’s and
1’s:
L = {ε,01,10,0011,1100,0101,1010,1001,…}
Definition: Ø denotes the Empty language
 Let L = {ε}; Is L=Ø?
NO
Canonical ordering of strings in the language
The Membership Problem
12
Given a string w ∈∑*and a language L over ∑, decide
whether or not w ∈L.
Example:
Let w = 100011
Q) Is w ∈ the language of strings with equal number
of 0s and 1s?
Finite Automata
13
Some Applications
 Software for designing and checking the behavior of
digital circuits
 Lexical analyzer of a typical compiler
 Software for scanning large bodies of text (e.g., web
pages) for pattern finding
 Software for verifying systems of all types that have a
finite number of states (e.g., stock market transaction,
communication/network protocol)
Finite Automata : Examples
14
On/Off switch
Modeling recognition of the word “then”
Start state Final stateTransition Intermediate
state
action
state
Structural expressions
15
Grammars
Regular expressions
 E.g., unix style to capture city names such as “Palo Alto CA”:
 [A-Z][a-z]*([ ][A-Z][a-z]*)*[ ][A-Z][A-Z]
Start with a letter
A string of other
letters (possibly
empty)
Other space delimited words
(part of city name)
Should end w/ 2-letter state code
16
Formal Proofs
Deductive Proofs
17
From the given statement(s) to a conclusion
statement (what we want to prove)
Logical progression by direct implications
Example for parsing a statement:
“If y≥4, then 2y
≥y2
.”
(there are other ways of writing this).
given conclusion
Example: Deductive proof
18
Let Claim 1: If y≥4, then 2y
≥y2
.
Let x be any number which is obtained by adding the squares
of 4 positive integers.
Claim 2:
Given x and assuming that Claim 1 is true, prove that 2x
≥x2
 Proof:
 Given: x = a2
+ b2
+ c2
+ d2
 Given: a≥1, b≥1, c≥1, d≥1
  a2
≥1, b2
≥1, c2
≥1, d2
≥1 (by 2)
  x ≥ 4 (by 1 & 3)
  2x
≥ x2
(by 4 and Claim 1)
“implies” or “follows”
On Theorems, Lemmas and Corollaries
19
We typically refer to:
 A major result as a “theorem”
 An intermediate result that we show to prove a larger result as a
“lemma”
 A result that follows from an already proven result as a
“corollary”
An example:
Theorem: The height of an n-node binary
tree is at least floor(lg n)
Lemma: Level i of a perfect binary tree has
2i
nodes.
Corollary: A perfect binary tree of height h
has 2h+1
-1 nodes.
Quantifiers
20
“For all” or “For every”
 Universal proofs
 Notation*
=?
“There exists”
 Used in existential proofs
 Notation*
=?
Implication is denoted by =>
 E.g., “IF A THEN B” can also be written as “A=>B”
*
I wasn’t able to locate the symbol for these notation in powerpoint. Sorry! Please follow the standard notation
for these quantifiers. These will be presented in class.
Proving techniques
21
By contradiction
 Start with the statement contradictory to the given statement
 E.g., To prove (A => B), we start with:
 (A and ~B)
 … and then show that could never happen
What if you want to prove that “(A and B => C or D)”?
By induction
 (3 steps) Basis, inductive hypothesis, inductive step
By contrapositive statement
 If A then B ≡ If ~B then ~A
Proving techniques…
22
By counter-example
 Show an example that disproves the claim
Note: There is no such thing called a
“proof by example”!
 So when asked to prove a claim, an example that satisfied
that claim is not a proof
Different ways of saying the same thing
23
 “If H then C”:
i. H implies C
ii. H => C
iii. C if H
iv. H only if C
v. Whenever H holds, C follows
“If-and-Only-If” statements
24
“A if and only if B” (A <==> B)
 (if part) if B then A ( <= )
 (only if part) A only if B ( => )
(same as “if A then B”)
“If and only if” is abbreviated as “iff”
 i.e., “A iff B”
 Example:
 Theorem: Let x be a real number. Then floor of x =
ceiling of x if and only if x is an integer.
Proofs for iff have two parts
 One for the “if part” & another for the “only if part”
Summary
25
 Automata theory & a historical perspective
 Chomsky hierarchy
 Finite automata
 Alphabets, strings/words/sentences, languages
 Membership problem
 Proofs:
 Deductive, induction, contrapositive, contradiction, counterexample
 If and only if
 Read chapter 1 for more examples and exercises

More Related Content

PPT
Lecture 7
PDF
Natural Language Processing NLP (Transformers)
PPTX
Introducing ClassPoint - LAC PPT Resource.pptx
PDF
Python programming : List and tuples
DOC
AUTOMATA THEORY - SHORT NOTES
PPTX
Object oriented programming
PDF
Automata theory
PDF
Lecture: Automata
Lecture 7
Natural Language Processing NLP (Transformers)
Introducing ClassPoint - LAC PPT Resource.pptx
Python programming : List and tuples
AUTOMATA THEORY - SHORT NOTES
Object oriented programming
Automata theory
Lecture: Automata

What's hot (20)

PPTX
Introduction TO Finite Automata
PDF
TOC 1 | Introduction to Theory of Computation
PPTX
Propositional logic
PPTX
Theory of automata and formal language
PPTX
Artificial Intelligence Searching Techniques
PPT
Turing Machine
PPTX
Knowledge representation In Artificial Intelligence
PPT
AI Lecture 3 (solving problems by searching)
PDF
Deterministic Finite Automata (DFA)
PPT
First order logic
PPTX
Unification and Lifting
PPT
Chomsky Hierarchy.ppt
PPT
Turing Machine
PPT
Lecture 1,2
PPTX
Turing machine
PPTX
Dijkstra's Algorithm
PPTX
First order logic
PPTX
Performance analysis(Time & Space Complexity)
PPTX
Theory of Computation
PDF
Stuart russell and peter norvig artificial intelligence - a modern approach...
Introduction TO Finite Automata
TOC 1 | Introduction to Theory of Computation
Propositional logic
Theory of automata and formal language
Artificial Intelligence Searching Techniques
Turing Machine
Knowledge representation In Artificial Intelligence
AI Lecture 3 (solving problems by searching)
Deterministic Finite Automata (DFA)
First order logic
Unification and Lifting
Chomsky Hierarchy.ppt
Turing Machine
Lecture 1,2
Turing machine
Dijkstra's Algorithm
First order logic
Performance analysis(Time & Space Complexity)
Theory of Computation
Stuart russell and peter norvig artificial intelligence - a modern approach...
Ad

Viewers also liked (20)

PPTX
Deciability (automata presentation)
PDF
Introduction
PDF
Pumping lemma (1)
PPT
WMJ&GMBwosc08-Effective Learning & Production Via Modelling
PPTX
Automata
PPT
Finite automata intro
PDF
Introduction to-automata-theo
PPTX
Introduction to automata
PPTX
REGULAR EXPRESSION TO N.F.A
PPT
Regular expressions-Theory of computation
PDF
Formal language & automata theory
PDF
Automata languages and computation
PPT
Theory of computing
PPT
Regular expression with DFA
PDF
DOCX
Introduction to Computer theory (Automata Theory) 2nd Edition By Denial I.A. ...
PDF
Lecture: Regular Expressions and Regular Languages
PPT
Introduction to fa and dfa
PPT
Introduction to Natural Language Processing
PDF
Natural language processing
Deciability (automata presentation)
Introduction
Pumping lemma (1)
WMJ&GMBwosc08-Effective Learning & Production Via Modelling
Automata
Finite automata intro
Introduction to-automata-theo
Introduction to automata
REGULAR EXPRESSION TO N.F.A
Regular expressions-Theory of computation
Formal language & automata theory
Automata languages and computation
Theory of computing
Regular expression with DFA
Introduction to Computer theory (Automata Theory) 2nd Edition By Denial I.A. ...
Lecture: Regular Expressions and Regular Languages
Introduction to fa and dfa
Introduction to Natural Language Processing
Natural language processing
Ad

Similar to Intro automata theory (20)

PPTX
IntroToAutomataTheory.pptx
PPTX
Automata2(Chapter1)uses as module in college.pptx
PPT
Introduction to the computing theory in automata
PPTX
Theory of Computation Unit 1 lecture 1.pptx
PPTX
automata theory and formal languages Automata2Chapter1.pptx
PPT
Theory of computing
PPTX
FOrmalLanguage and Automata -undecidability.pptx
PDF
theory of computation chapter 2 notes pdf
PPTX
AUTOMATA AUTOMATA Automata10Chapter-8-and-9.pptx
PPT
knowledge representation in artificial intellegence.ppt
PPTX
Formal Languages of Automata theory: Undecidability
PPT
01bkb04p.ppt
PPTX
Undecidability.pptx
PDF
Automata
PDF
Automata
PDF
Data Complexity in EL Family of Description Logics
PPT
Godels First Incompleteness Theorem
PDF
Unit i
PDF
Theory of Computation Lecture Notes
PPTX
Statistics Coursework Help
IntroToAutomataTheory.pptx
Automata2(Chapter1)uses as module in college.pptx
Introduction to the computing theory in automata
Theory of Computation Unit 1 lecture 1.pptx
automata theory and formal languages Automata2Chapter1.pptx
Theory of computing
FOrmalLanguage and Automata -undecidability.pptx
theory of computation chapter 2 notes pdf
AUTOMATA AUTOMATA Automata10Chapter-8-and-9.pptx
knowledge representation in artificial intellegence.ppt
Formal Languages of Automata theory: Undecidability
01bkb04p.ppt
Undecidability.pptx
Automata
Automata
Data Complexity in EL Family of Description Logics
Godels First Incompleteness Theorem
Unit i
Theory of Computation Lecture Notes
Statistics Coursework Help

More from Rajendran (20)

PPT
Element distinctness lower bounds
PPT
Scheduling with Startup and Holding Costs
PPT
Divide and conquer surfing lower bounds
PPT
Red black tree
PPT
Hash table
PPT
Medians and order statistics
PPT
Proof master theorem
PPT
Recursion tree method
PPT
Recurrence theorem
PPT
Master method
PPT
Master method theorem
PPT
Hash tables
PPT
Lower bound
PPT
Master method theorem
PPT
Greedy algorithms
PPT
Longest common subsequences in Algorithm Analysis
PPT
Dynamic programming in Algorithm Analysis
PPT
Average case Analysis of Quicksort
PPT
Np completeness
PPT
computer languages
Element distinctness lower bounds
Scheduling with Startup and Holding Costs
Divide and conquer surfing lower bounds
Red black tree
Hash table
Medians and order statistics
Proof master theorem
Recursion tree method
Recurrence theorem
Master method
Master method theorem
Hash tables
Lower bound
Master method theorem
Greedy algorithms
Longest common subsequences in Algorithm Analysis
Dynamic programming in Algorithm Analysis
Average case Analysis of Quicksort
Np completeness
computer languages

Recently uploaded (20)

PDF
Open folder Downloads.pdf yes yes ges yes
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PDF
01-Introduction-to-Information-Management.pdf
PPTX
master seminar digital applications in india
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Business Ethics Teaching Materials for college
PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Introduction-to-Social-Work-by-Leonora-Serafeca-De-Guzman-Group-2.pdf
PPTX
PPH.pptx obstetrics and gynecology in nursing
PPTX
Open Quiz Monsoon Mind Game Final Set.pptx
PDF
Pre independence Education in Inndia.pdf
PPTX
Cardiovascular Pharmacology for pharmacy students.pptx
PDF
TR - Agricultural Crops Production NC III.pdf
Open folder Downloads.pdf yes yes ges yes
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
01-Introduction-to-Information-Management.pdf
master seminar digital applications in india
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Renaissance Architecture: A Journey from Faith to Humanism
Business Ethics Teaching Materials for college
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
102 student loan defaulters named and shamed – Is someone you know on the list?
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
O7-L3 Supply Chain Operations - ICLT Program
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Introduction-to-Social-Work-by-Leonora-Serafeca-De-Guzman-Group-2.pdf
PPH.pptx obstetrics and gynecology in nursing
Open Quiz Monsoon Mind Game Final Set.pptx
Pre independence Education in Inndia.pdf
Cardiovascular Pharmacology for pharmacy students.pptx
TR - Agricultural Crops Production NC III.pdf

Intro automata theory

  • 2. What is Automata Theory? 2 Study of abstract computing devices, or “machines” Automaton = an abstract computing device  Note: A “device” need not even be a physical hardware! A fundamental question in computer science:  Find out what different models of machines can do and cannot do  The theory of computation Computability vs. Complexity
  • 3. Alan Turing (1912-1954) 3 Father of Modern Computer Science English mathematician Studied abstract machines called Turing machines even before computers existed Heard of the Turing test? (A pioneer of automata theory)
  • 4. Theory of Computation: A Historical Perspective 4 1930s • Alan Turing studies Turing machines • Decidability • Halting problem 1940-1950s • “Finite automata” machines studied • Noam Chomsky proposes the “Chomsky Hierarchy” for formal languages 1969 Cook introduces “intractable” problems or “NP-Hard” problems 1970- Modern computer science: compilers, computational & complexity theory evolve
  • 5. Languages & Grammars  Languages: “A language is a collection of sentences of finite length all constructed from a finite alphabet of symbols”  Grammars: “A grammar can be regarded as a device that enumerates the sentences of a language” - nothing more, nothing less  N. Chomsky, Information and Control, Vol 2, 1959 5 Or “words” Image source: Nowak et al. Nature, vol 417, 2002
  • 7. 7 The Central Concepts of Automata Theory
  • 8. Alphabet 8 An alphabet is a finite, non-empty set of symbols We use the symbol ∑ (sigma) to denote an alphabet Examples:  Binary: ∑ = {0,1}  All lower case letters: ∑ = {a,b,c,..z}  Alphanumeric: ∑ = {a-z, A-Z, 0-9}  DNA molecule letters: ∑ = {a,c,g,t}  …
  • 9. Strings 9 A string or word is a finite sequence of symbols chosen from ∑ Empty string is ε (or “epsilon”) Length of a string w, denoted by “|w|”, is equal to the number of (non- ε) characters in the string  E.g., x = 010100 |x| = 6  x = 01 ε 0 ε 1 ε 00 ε |x| = ?  xy = concatentation of two strings x and y
  • 10. Powers of an alphabet 10 Let ∑ be an alphabet.  ∑k = the set of all strings of length k  ∑* = ∑0 U ∑1 U ∑2 U …  ∑+ = ∑1 U ∑2 U ∑3 U …
  • 11. Languages 11 L is a said to be a language over alphabet ∑, only if L ⊆ ∑*  this is because ∑* is the set of all strings (of all possible length including 0) over the given alphabet ∑ Examples: 1. Let L be the language of all strings consisting of n 0’s followed by n 1’s: L = {ε,01,0011,000111,…} 2. Let L be the language of all strings of with equal number of 0’s and 1’s: L = {ε,01,10,0011,1100,0101,1010,1001,…} Definition: Ø denotes the Empty language  Let L = {ε}; Is L=Ø? NO Canonical ordering of strings in the language
  • 12. The Membership Problem 12 Given a string w ∈∑*and a language L over ∑, decide whether or not w ∈L. Example: Let w = 100011 Q) Is w ∈ the language of strings with equal number of 0s and 1s?
  • 13. Finite Automata 13 Some Applications  Software for designing and checking the behavior of digital circuits  Lexical analyzer of a typical compiler  Software for scanning large bodies of text (e.g., web pages) for pattern finding  Software for verifying systems of all types that have a finite number of states (e.g., stock market transaction, communication/network protocol)
  • 14. Finite Automata : Examples 14 On/Off switch Modeling recognition of the word “then” Start state Final stateTransition Intermediate state action state
  • 15. Structural expressions 15 Grammars Regular expressions  E.g., unix style to capture city names such as “Palo Alto CA”:  [A-Z][a-z]*([ ][A-Z][a-z]*)*[ ][A-Z][A-Z] Start with a letter A string of other letters (possibly empty) Other space delimited words (part of city name) Should end w/ 2-letter state code
  • 17. Deductive Proofs 17 From the given statement(s) to a conclusion statement (what we want to prove) Logical progression by direct implications Example for parsing a statement: “If y≥4, then 2y ≥y2 .” (there are other ways of writing this). given conclusion
  • 18. Example: Deductive proof 18 Let Claim 1: If y≥4, then 2y ≥y2 . Let x be any number which is obtained by adding the squares of 4 positive integers. Claim 2: Given x and assuming that Claim 1 is true, prove that 2x ≥x2  Proof:  Given: x = a2 + b2 + c2 + d2  Given: a≥1, b≥1, c≥1, d≥1   a2 ≥1, b2 ≥1, c2 ≥1, d2 ≥1 (by 2)   x ≥ 4 (by 1 & 3)   2x ≥ x2 (by 4 and Claim 1) “implies” or “follows”
  • 19. On Theorems, Lemmas and Corollaries 19 We typically refer to:  A major result as a “theorem”  An intermediate result that we show to prove a larger result as a “lemma”  A result that follows from an already proven result as a “corollary” An example: Theorem: The height of an n-node binary tree is at least floor(lg n) Lemma: Level i of a perfect binary tree has 2i nodes. Corollary: A perfect binary tree of height h has 2h+1 -1 nodes.
  • 20. Quantifiers 20 “For all” or “For every”  Universal proofs  Notation* =? “There exists”  Used in existential proofs  Notation* =? Implication is denoted by =>  E.g., “IF A THEN B” can also be written as “A=>B” * I wasn’t able to locate the symbol for these notation in powerpoint. Sorry! Please follow the standard notation for these quantifiers. These will be presented in class.
  • 21. Proving techniques 21 By contradiction  Start with the statement contradictory to the given statement  E.g., To prove (A => B), we start with:  (A and ~B)  … and then show that could never happen What if you want to prove that “(A and B => C or D)”? By induction  (3 steps) Basis, inductive hypothesis, inductive step By contrapositive statement  If A then B ≡ If ~B then ~A
  • 22. Proving techniques… 22 By counter-example  Show an example that disproves the claim Note: There is no such thing called a “proof by example”!  So when asked to prove a claim, an example that satisfied that claim is not a proof
  • 23. Different ways of saying the same thing 23  “If H then C”: i. H implies C ii. H => C iii. C if H iv. H only if C v. Whenever H holds, C follows
  • 24. “If-and-Only-If” statements 24 “A if and only if B” (A <==> B)  (if part) if B then A ( <= )  (only if part) A only if B ( => ) (same as “if A then B”) “If and only if” is abbreviated as “iff”  i.e., “A iff B”  Example:  Theorem: Let x be a real number. Then floor of x = ceiling of x if and only if x is an integer. Proofs for iff have two parts  One for the “if part” & another for the “only if part”
  • 25. Summary 25  Automata theory & a historical perspective  Chomsky hierarchy  Finite automata  Alphabets, strings/words/sentences, languages  Membership problem  Proofs:  Deductive, induction, contrapositive, contradiction, counterexample  If and only if  Read chapter 1 for more examples and exercises