Professional Documents
Culture Documents
Overview of E0 222: Automata and Computability: Deepak D'Souza and Viraj Kumar
Overview of E0 222: Automata and Computability: Deepak D'Souza and Viraj Kumar
Overview of
E0 222: Automata and Computability
August 2, 2018
What we study Some results we do Course details
b b ` a a b a b a a a b b
a
a q
` a a b a b a a a b b
Finite-State Automata
Pushdown Automata
Turing Machines q
X
Y
X
X
⊥
` a a b a b a a a [ [
What we study Some results we do Course details
b b ` a a b a b a a a b b
a
e o
a q
` a a b a b a a a b b
Finite-State Automata
Pushdown Automata
Turing Machines q
X
Y
X
X
⊥
` a a b a b a a a [ [
What we study Some results we do Course details
Uses in Verification
Uses in Logic
¬b b
a
Büchi’s result:
A language is regular iff it is definable by a sentence
in this logic.
What we study Some results we do Course details
Examples:
1 ∀x∃y (x < y ).
What we study Some results we do Course details
Examples:
1 ∀x∃y (x < y ).
2 ∀x∃y (y < x).
What we study Some results we do Course details
Examples:
1 ∀x∃y (x < y ).
2 ∀x∃y (y < x).
3 ∃x(∀y (y ≤ x)).
What we study Some results we do Course details
Examples:
1 ∀x∃y (x < y ).
2 ∀x∃y (y < x).
3 ∃x(∀y (y ≤ x)).
4 ∀x∀y ((x < y ) =⇒ ∃z(x < z < y )).
What we study Some results we do Course details
Examples:
1 ∀x∃y (x < y ).
2 ∀x∃y (y < x).
3 ∃x(∀y (y ≤ x)).
4 ∀x∀y ((x < y ) =⇒ ∃z(x < z < y )).
Question: Is there an algorithm to decide if a given FO(N, <)
sentence is true or not?
Büchi used automata to give such an algorithm.
What we study Some results we do Course details
Büchi automata
a
What we study Some results we do Course details
Büchi automata
Presburger Logic
Examples:
1 ∀x∀y ((x < y ) =⇒ ∃z(x < z < y )) (Also in FO(<)).
2 Solutions to a system of linear inequalities:
∃x∃y (x + 2y ≤ 1 ∧ x = y ).
3 “Every number is odd or even”: ∀x∃y (x = 2y ∨ x = 2y + 1).
Studied by Mojzesz Presburger, who gave a sound and
complete axiomatization, as well as a decision procedure for
validity, circa 1929.
What we study Some results we do Course details
Overall idea
{0, 1}2
Automaton for x + 2y − 3z = 1
∀n∃m(m = n + 1).
∀n∃m(n = m + 1).
Myhill-Nerode Theorem
Myhill-Nerode Theorem:
Every regular language has a canonical DFA accepting it.
b b
a
b b
a
a a
a
a
b b
Some consequences:
Any DFA for L is a refinement of its canonical DFA.
“minimal” DFA’s for L are isomorphic.
What we study Some results we do Course details
Pre ∗ (C ) C Post ∗ (C )
Course details