• No results found

Lecture 16: Minimization and other decision problems

N/A
N/A
Protected

Academic year: 2022

Share "Lecture 16: Minimization and other decision problems"

Copied!
61
0
0

Loading.... (view fulltext now)

Full text

(1)

CS310 : Automata Theory 2020

Lecture 16: Minimization and other decision problems

Instructor: S. Akshay

IIT Bombay, India

17-02-2020

(2)

Recap

I Automata and algebraic models: DFA, NFA,-NFA, regular expressions.

I Regular languages: All these models accept the same class of languages.

I Conversions: from NFA to DFA (Subset construction),-NFA to DFA, Regular expressions to -NFA, DFA to regular expressions

I Applications: text search using automata, regular expressions in GREP, emacs, python etc.

I Properties and limitations of regular languages

I Closure - under union, intersection, complementation, reversal I Pumping lemma.

I Examples of non-regular languages and how to show non-regularity using pumping lemma.

I Myhill-Nerode relations, theorem and its applications

I Algorithms forDecision problems for automata/regular languages

(3)

Recap

I Automata and algebraic models: DFA, NFA,-NFA, regular expressions.

I Regular languages: All these models accept the same class of languages.

I Conversions: from NFA to DFA (Subset construction),-NFA to DFA, Regular expressions to -NFA, DFA to regular expressions

I Applications: text search using automata, regular expressions in GREP, emacs, python etc.

I Properties and limitations of regular languages

I Closure - under union, intersection, complementation, reversal I Pumping lemma.

I Examples of non-regular languages and how to show non-regularity using pumping lemma.

I Myhill-Nerode relations, theorem and its applications

I Algorithms forDecision problems for automata/regular languages

(4)

Recap

I Automata and algebraic models: DFA, NFA,-NFA, regular expressions.

I Regular languages: All these models accept the same class of languages.

I Conversions: from NFA to DFA (Subset construction),-NFA to DFA, Regular expressions to -NFA, DFA to regular expressions

I Applications: text search using automata, regular expressions in GREP, emacs, python etc.

I Properties and limitations of regular languages

I Closure - under union, intersection, complementation, reversal I Pumping lemma.

I Examples of non-regular languages and how to show non-regularity using pumping lemma.

I

(5)

Checking equivalence of states

Equivalent states

In a DFA (Q,Σ, δ,q0,F), statesp,q are called equivalent if for each wordw, δ(p,ˆ w) is accepting iff ˆδ(q,w) is accepting.

Distinguishable

GivenA= (Q,Σ, δ,q0,F), two states p,q ∈Q are called distinguishableif they are not equivalent, i.e., there exists a wordw such that ˆδ(p,w)∈Lbut ˆδ(q,w)6∈L.

Asaturation algorithm for identifying all distinguishable states: I base case: p,q are distinguishable ifp ∈F but q6∈F.

I recursive step; p,q are distinguishable if on reading someletter they take us to an already distinguishable pair of states!

Algorithm for checking equivalence ofp,q I Run the above algorithm until saturation.

I If at end, p,q are still not marked distinguishable, then they are equivalent!

(6)

Checking equivalence of states

Equivalent states

In a DFA (Q,Σ, δ,q0,F), statesp,q are called equivalent if for each wordw, δ(p,ˆ w) is accepting iff ˆδ(q,w) is accepting.

Distinguishable

Given A= (Q,Σ, δ,q0,F), two statesp,q ∈Q are called distinguishableif they are not equivalent, i.e., there exists a word w such that ˆδ(p,w)∈Lbut δ(q,ˆ w)6∈L.

Asaturation algorithm for identifying all distinguishable states: I base case: p,q are distinguishable ifp ∈F but q6∈F.

I recursive step; p,q are distinguishable if on reading someletter they take us to an already distinguishable pair of states!

Algorithm for checking equivalence ofp,q I Run the above algorithm until saturation.

I If at end, p,q are still not marked distinguishable, then they are equivalent!

(7)

Checking equivalence of states

Equivalent states

In a DFA (Q,Σ, δ,q0,F), statesp,q are called equivalent if for each wordw, δ(p,ˆ w) is accepting iff ˆδ(q,w) is accepting.

Distinguishable

Given A= (Q,Σ, δ,q0,F), two statesp,q ∈Q are called distinguishableif they are not equivalent, i.e., there exists a word w such that ˆδ(p,w)∈Lbut δ(q,ˆ w)6∈L.

A saturation algorithm for identifying all distinguishable states:

I base case: p,q are distinguishable ifp ∈F but q6∈F.

I recursive step; p,q are distinguishable if on reading someletter they take us to an already distinguishable pair of states!

Algorithm for checking equivalence ofp,q I Run the above algorithm until saturation.

I If at end, p,q are still not marked distinguishable, then they are equivalent!

(8)

Checking equivalence of states

Equivalent states

In a DFA (Q,Σ, δ,q0,F), statesp,q are called equivalent if for each wordw, δ(p,ˆ w) is accepting iff ˆδ(q,w) is accepting.

Distinguishable

Given A= (Q,Σ, δ,q0,F), two statesp,q ∈Q are called distinguishableif they are not equivalent, i.e., there exists a word w such that ˆδ(p,w)∈Lbut δ(q,ˆ w)6∈L.

A saturation algorithm for identifying all distinguishable states:

I base case: p,q are distinguishable ifp ∈F but q6∈F.

I recursive step; p,q are distinguishable if on reading someletter they take us to an already distinguishable pair of states!

Algorithm for checking equivalence of p,q

(9)

Example: A table filling view of the algorithm

q0

start q1 q2 q3

q4 q5 q6 q7

0 1

1 0

1 0

0 1

0 1

0 1 1

0 0

1

q1

*

q2

* *

q3

* * *

q4

* * *

q5

* * * *

q6

* * * * * *

* * * * * *

Distinguishing words I

I 0 I 1 I 01

(10)

Example: A table filling view of the algorithm

q0

start q1 q2 q3

q4 q5 q6 q7

0 1

1 0

1 0

0 1

0 1

0 1 1

0 0

1

q1

*

q2 * * q3

* *

* q4

*

*

*

* * *

* * * * *

* * * * *

Distinguishing words I

I 0 I 1 I 01

(11)

Example: A table filling view of the algorithm

q0

start q1 q2 q3

q4 q5 q6 q7

0 1

1 0

1 0

0 1

0 1

0 1 1

0 0

1

q1

*

q2 * * q3 * * * q4

*

* *

q5 * * * *

q6

* *

* *

*

*

* * *

Distinguishing words I

I 0

I 1 I 01

(12)

Example: A table filling view of the algorithm

q0

start q1 q2 q3

q4 q5 q6 q7

0 1

1 0

1 0

0 1

0 1

0 1 1

0 0

1

q1 * q2 * * q3 * * *

q4 * * *

* *

Distinguishing words I

I 01

(13)

Example: A table filling view of the algorithm

q0

start q1 q2 q3

q4 q5 q6 q7

0 1

1 0

1 0

0 1

0 1

0 1 1

0 0

1

q1 * q2 * * q3 * * *

q4 * * *

q5 * * * *

q6 * * * * * *

Distinguishing words I

I 0 I 1

(14)

Checking equivalence of states

Theorem

If two states are not distinguished by the table-filling algorithm, then they are equivalent.

Exercise: Prove this! Hint:

I Suppose not. There must be a pair of states that are distinguishable but not found by algorithm.

I Over all suchbadpairs, consider theshortest string that distinguishes a bad pair (p,q).

I Let w =a1. . .an. The pair of states reached after a1 can be distinguished! (Canw =?)

I Can this pair of states be a bad pair? Reason about this and finish proof!

(15)

Checking equivalence of states

Theorem

If two states are not distinguished by the table-filling algorithm, then they are equivalent.

Exercise: Prove this!

Hint:

I Suppose not. There must be a pair of states that are distinguishable but not found by algorithm.

I Over all suchbadpairs, consider theshortest string that distinguishes a bad pair (p,q).

I Let w =a1. . .an. The pair of states reached after a1 can be distinguished! (Canw =?)

I Can this pair of states be a bad pair? Reason about this and finish proof!

(16)

Checking equivalence of states

Theorem

If two states are not distinguished by the table-filling algorithm, then they are equivalent.

Exercise: Prove this! Hint:

I Suppose not. There must be a pair of states that are distinguishable but not found by algorithm.

I Over all suchbadpairs, consider theshortest string that distinguishes a bad pair (p,q).

I Let w =a1. . .an. The pair of states reached after a1 can be distinguished! (Canw =?)

I Can this pair of states be a bad pair? Reason about this and finish proof!

(17)

Checking equivalence of states

Theorem

If two states are not distinguished by the table-filling algorithm, then they are equivalent.

Exercise: Prove this! Hint:

I Suppose not. There must be a pair of states that are distinguishable but not found by algorithm.

I Over all suchbadpairs, consider theshortest string that distinguishes a bad pair (p,q).

I Let w =a1. . .an. The pair of states reached after a1 can be distinguished! (Canw =?)

I Can this pair of states be a bad pair? Reason about this and finish proof!

(18)

Checking equivalence of states

Theorem

If two states are not distinguished by the table-filling algorithm, then they are equivalent.

Exercise: Prove this! Hint:

I Suppose not. There must be a pair of states that are distinguishable but not found by algorithm.

I Over all suchbadpairs, consider theshortest string that distinguishes a bad pair (p,q).

I Let w =a1. . .an. The pair of states reached after a1 can be distinguished! (Canw =?)

I Can this pair of states be a bad pair? Reason about this and finish proof!

(19)

Checking equivalence of states

Theorem

If two states are not distinguished by the table-filling algorithm, then they are equivalent.

Exercise: Prove this! Hint:

I Suppose not. There must be a pair of states that are distinguishable but not found by algorithm.

I Over all suchbadpairs, consider theshortest string that distinguishes a bad pair (p,q).

I Let w =a1. . .an. The pair of states reached after a1 can be distinguished! (Canw =?)

I Can this pair of states be a bad pair? Reason about this and finish proof!

(20)

Other Decision problems

I Is a language empty?

I Is a word belongs to a language?

I Does a language contain another language?

Difficulty of the question depends on the representation of the language.

(21)

Other Decision problems

I Is a language empty?

I Is a word belongs to a language?

I Does a language contain another language?

Difficulty of the question depends on the representation of the language.

(22)

Other Decision problems

I Is a language empty?

I Is a word belongs to a language?

I Does a language contain another language?

Difficulty of the question depends on the representation of the language.

(23)

Other Decision problems

I Is a language empty?

I Is a word belongs to a language?

I Does a language contain another language?

Difficulty of the question depends on the representation of the language.

(24)

Is L empty?

L is given as I DFAor NFA

I Check if reachable states from the initial state include any accepting state I Cost of finding reachable statesO(n2), wherenis the number of states

I RE

Traverse RE bottom up and apply the following rules. I is empty.

I andaare notempty.

I L1+L2is empty ifbothL1 andL2 are empty. I L1L2 is empty ifeitherL1 orL2are empty. I L1 is notempty.(why?)

Cost of deciding the emptiness O(n), n is the size of RE.

(25)

Is L empty?

L is given as I DFAor NFA

I Check if reachable states from the initial state include any accepting state I Cost of finding reachable statesO(n2), wherenis the number of states I RE

Traverse RE bottom up and apply the following rules. I is empty.

I andaare notempty.

I L1+L2is empty ifbothL1 andL2 are empty. I L1L2 is empty ifeitherL1 orL2are empty. I L1 is notempty.(why?)

Cost of deciding the emptiness O(n), n is the size of RE.

(26)

Is L empty?

L is given as I DFAor NFA

I Check if reachable states from the initial state include any accepting state I Cost of finding reachable statesO(n2), wherenis the number of states I RE

Traverse RE bottom up and apply the following rules.

I is empty.

I andaare notempty.

I L1+L2is empty ifbothL1 andL2 are empty. I L1L2 is empty ifeitherL1 orL2are empty. I L1 is notempty.(why?)

Cost of deciding the emptiness O(n), n is the size of RE.

(27)

Is L empty?

L is given as I DFAor NFA

I Check if reachable states from the initial state include any accepting state I Cost of finding reachable statesO(n2), wherenis the number of states I RE

Traverse RE bottom up and apply the following rules.

I is empty.

I andaare notempty.

I L1+L2is empty ifbothL1 andL2 are empty. I L1L2 is empty ifeitherL1 orL2are empty. I L1 is notempty.(why?)

Cost of deciding the emptiness O(n), n is the size of RE.

(28)

Is L empty?

L is given as I DFAor NFA

I Check if reachable states from the initial state include any accepting state I Cost of finding reachable statesO(n2), wherenis the number of states I RE

Traverse RE bottom up and apply the following rules.

I is empty.

I andaare notempty.

I L1+L2is empty ifbothL1 andL2 are empty.

I L1L2 is empty ifeitherL1 orL2are empty. I L1 is notempty.(why?)

Cost of deciding the emptiness O(n), n is the size of RE.

(29)

Is L empty?

L is given as I DFAor NFA

I Check if reachable states from the initial state include any accepting state I Cost of finding reachable statesO(n2), wherenis the number of states I RE

Traverse RE bottom up and apply the following rules.

I is empty.

I andaare notempty.

I L1+L2is empty ifbothL1 andL2 are empty.

I L1L2 is empty ifeitherL1 orL2are empty.

I L1 is notempty.(why?)

Cost of deciding the emptiness O(n), n is the size of RE.

(30)

Is L empty?

L is given as I DFAor NFA

I Check if reachable states from the initial state include any accepting state I Cost of finding reachable statesO(n2), wherenis the number of states I RE

Traverse RE bottom up and apply the following rules.

I is empty.

I andaare notempty.

I L1+L2is empty ifbothL1 andL2 are empty.

I L1L2 is empty ifeitherL1 orL2are empty.

I L1 is notempty.(why?)

Cost of deciding the emptiness O(n), n is the size of RE.

(31)

Is L empty?

L is given as I DFAor NFA

I Check if reachable states from the initial state include any accepting state I Cost of finding reachable statesO(n2), wherenis the number of states I RE

Traverse RE bottom up and apply the following rules.

I is empty.

I andaare notempty.

I L1+L2is empty ifbothL1 andL2 are empty.

I L1L2 is empty ifeitherL1 orL2are empty.

I L1 is notempty.(why?)

Cost of deciding the emptiness O(n), n is the size of RE.

(32)

Is w ∈ L?

Language is given as I DFA

I run it onw and check if an accepting state is reached I Cost or running DFAO(|w|)

I NFA

I compute reachable states onw

I Cost or running NFAO(|w|n2), where nis the number of states

Exercise 1

What is the cost of checking membership ifL is given asRE? Exercise 2

For regular languagesL1 and L2, how do we checkL1 =L2?

(33)

Is w ∈ L?

Language is given as I DFA

I run it onw and check if an accepting state is reached I Cost or running DFAO(|w|)

I NFA

I compute reachable states onw

I Cost or running NFAO(|w|n2), where nis the number of states

Exercise 1

What is the cost of checking membership ifL is given asRE? Exercise 2

For regular languagesL1 and L2, how do we checkL1 =L2?

(34)

Is w ∈ L?

Language is given as I DFA

I run it onw and check if an accepting state is reached I Cost or running DFAO(|w|)

I NFA

I compute reachable states onw

I Cost or running NFAO(|w|n2), where nis the number of states

Exercise 1

What is the cost of checking membership ifL is given asRE? Exercise 2

For regular languagesL1 and L2, how do we checkL1 =L2?

(35)

Is w ∈ L?

Language is given as I DFA

I run it onw and check if an accepting state is reached I Cost or running DFAO(|w|)

I NFA

I compute reachable states onw

I Cost or running NFAO(|w|n2), where nis the number of states

Exercise 1

What is the cost of checking membership if L is given asRE?

Exercise 2

For regular languagesL1 and L2, how do we checkL1 =L2?

(36)

Is w ∈ L?

Language is given as I DFA

I run it onw and check if an accepting state is reached I Cost or running DFAO(|w|)

I NFA

I compute reachable states onw

I Cost or running NFAO(|w|n2), where nis the number of states

Exercise 1

What is the cost of checking membership if L is given asRE?

(37)

Regular language equivalence checking

Decision problem

Given two regular languages L1 andL2, decide if L1=L2.

1. Convert them into DFAA1 andA2 respectively.

2. Run the table-filling algorithm on the automata as if they were one. Theorem

The initial states ofA1 andA2 are equivalent iffL1 =L2.

(38)

Regular language equivalence checking

Decision problem

Given two regular languages L1 andL2, decide if L1=L2. 1. Convert them into DFAA1 andA2 respectively.

2. Run the table-filling algorithm on the automata as if they were one. Theorem

The initial states ofA1 andA2 are equivalent iffL1 =L2.

(39)

Regular language equivalence checking

Decision problem

Given two regular languages L1 andL2, decide if L1=L2. 1. Convert them into DFAA1 andA2 respectively.

2. Run the table-filling algorithm on the automata as if they were one.

Theorem

The initial states of A1 andA2 are equivalent iffL1=L2.

(40)

Example : language equivalence checking

Example 16.1

Run the Table-filling algorithm on the following automata as if they are one.

q0

start q1 start q2 q3

q4

0

1 0

1

0 1

0

1 1

0

We obtain the followingD set q1 *

q2 *

q3 *

q4 * * *

D q0 q1 q2 q3

Sinceq0andq2are not distinguishable, the automata have same language.

(41)

Example : language equivalence checking

Example 16.1

Run the Table-filling algorithm on the following automata as if they are one.

q0

start q1 start q2 q3

q4

0

1 0

1

0 1

0

1 1

0 We obtain the following D set

q1 *

q2 *

q3 *

q * * *

Sinceq0andq2are not distinguishable, the automata have same language.

(42)

Example : language equivalence checking

Example 16.1

Run the Table-filling algorithm on the following automata as if they are one.

q0

start q1 start q2 q3

q4

0

1 0

1

0 1

0

1 1

0 We obtain the following D set

q1 *

(43)

Minimization

Given a DFA, how do we get the one with minimum number of states which accepts the same language?

Algorithm for minimization

I Identify equivalent states using the table-filling algo.

I collapse them and remove redundant states I At end we will obtain a minimal automaton.

I In fact, we “obtain” the Myhill-Nerode construction upto renaming of states

(44)

Minimization

Given a DFA, how do we get the one with minimum number of states which accepts the same language?

Algorithm for minimization

I Identify equivalent states using the table-filling algo.

I collapse them and remove redundant states

I At end we will obtain a minimal automaton.

I In fact, we “obtain” the Myhill-Nerode construction upto renaming of states

(45)

Minimization

Given a DFA, how do we get the one with minimum number of states which accepts the same language?

Algorithm for minimization

I Identify equivalent states using the table-filling algo.

I collapse them and remove redundant states I At end we will obtain a minimal automaton.

I In fact, we “obtain” the Myhill-Nerode construction upto renaming of states

(46)

Example : DFA minimization

Example 16.2

After applying the minimization, we obtain.

B0

start B1 B2

B5 B6 0

1

1 0

1 0

0 1 1

0

(47)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFAA0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial statesq0 andq00 of Aand A0 respectively are equivalent. claim: All states of Aare equivalent to some state ofA0.

We know all states ofA are reachable from its initial state(why?). Letq be a state inA.

Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q andq0 must be equivalent. Otherwise,q0 andq00 are not equivalent.(why?)

q0

start start q00

A A0

q w

q0 w

...

(48)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFA A0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial statesq0 andq00 of Aand A0 respectively are equivalent. claim: All states of Aare equivalent to some state ofA0.

We know all states ofA are reachable from its initial state(why?). Letq be a state inA.

Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q andq0 must be equivalent. Otherwise,q0 andq00 are not equivalent.(why?)

q0

start start q00

A A0

q w

q0 w

...

(49)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFA A0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial states q0 andq00 of Aand A0 respectively are equivalent.

claim: All states of Aare equivalent to some state ofA0.

We know all states ofA are reachable from its initial state(why?). Letq be a state inA.

Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q and q0 must be equivalent. Otherwise, q0 andq00 are not equivalent.(why?)

q0

start start q00

A A0

q w

q0 w

(50)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFA A0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial states q0 andq00 of Aand A0 respectively are equivalent.

claim: All states of Aare equivalent to some state ofA0.

We know all states ofA are reachable from its initial state(why?). Letq be a state inA.

Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q and q0 must be equivalent. Otherwise, q0 andq00 are not equivalent.(why?)

start q start q0

q w

q0 w

(51)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFA A0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial states q0 andq00 of Aand A0 respectively are equivalent.

claim: All states of Aare equivalent to some state ofA0.

We know all states ofAare reachable from its initial state(why?).

Letq be a state inA. Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q and q0 must be equivalent. Otherwise, q0 andq00 are not equivalent.(why?)

q0

start start q00

A A0

q w

q0 w

(52)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFA A0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial states q0 andq00 of Aand A0 respectively are equivalent.

claim: All states of Aare equivalent to some state ofA0.

We know all states ofAare reachable from its initial state(why?). Letq be a state inA.

Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q and q0 must be equivalent. Otherwise, q0 andq00 are not equivalent.(why?)

start q q start q0

w

q0 w

(53)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFA A0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial states q0 andq00 of Aand A0 respectively are equivalent.

claim: All states of Aare equivalent to some state ofA0.

We know all states ofAare reachable from its initial state(why?). Letq be a state inA.

Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q and q0 must be equivalent. Otherwise, q0 andq00 are not equivalent.(why?)

q0

start start q00

A A0

q w

q0 w

(54)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFA A0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial states q0 andq00 of Aand A0 respectively are equivalent.

claim: All states of Aare equivalent to some state ofA0.

We know all states ofAare reachable from its initial state(why?). Letq be a state inA.

Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q and q0 must be equivalent. Otherwise, q0 andq00 are not equivalent.(why?)

start q w q start q0

q0 w

(55)

Unique minimum DFA

Theorem 16.1

Let A be a minimized DFA. No DFA smaller than A recognizes L(A).

Proof.

Assume a DFA A0 such that A0 has fewer states than AandL(A) =L(A0).

Therefore, initial states q0 andq00 of Aand A0 respectively are equivalent.

claim: All states of Aare equivalent to some state ofA0.

We know all states ofAare reachable from its initial state(why?). Letq be a state inA.

Let wordw takeAto q.

Let wordw takeA0 to some state q0.

q and q0 must be equivalent. Otherwise, q0 andq00 are not equivalent.(why?) q0

start start q00

A A0

q w

q0 w

(56)

Unique minimization DFA

Proof(Contd.)

Due to the pigeonhole principle, there are statesq1 andq2 of Asuch that they are equivalent to the same state of A0.

Therefore,q1 andq2 are equivalent.

SinceAis minimized, no two states ofA are equivalent. Contradiction. In fact, the minimized DFA is unique up to renaming of states. What is its link to the Myhill-Nerode theorem?

(57)

Unique minimization DFA

Proof(Contd.)

Due to the pigeonhole principle, there are statesq1 andq2 of Asuch that they are equivalent to the same state of A0.

Therefore, q1 andq2 are equivalent.

SinceAis minimized, no two states ofA are equivalent. Contradiction. In fact, the minimized DFA is unique up to renaming of states. What is its link to the Myhill-Nerode theorem?

(58)

Unique minimization DFA

Proof(Contd.)

Due to the pigeonhole principle, there are statesq1 andq2 of Asuch that they are equivalent to the same state of A0.

Therefore, q1 andq2 are equivalent.

Since Ais minimized, no two states ofA are equivalent. Contradiction.

In fact, the minimized DFA is unique up to renaming of states. What is its link to the Myhill-Nerode theorem?

(59)

Unique minimization DFA

Proof(Contd.)

Due to the pigeonhole principle, there are statesq1 andq2 of Asuch that they are equivalent to the same state of A0.

Therefore, q1 andq2 are equivalent.

Since Ais minimized, no two states ofA are equivalent. Contradiction.

In fact, the minimized DFA is unique up to renaming of states. What is its link to the Myhill-Nerode theorem?

(60)

Moving on

If we wish to add expressive power to DFA, what must be do?

Suggestions?

(61)

Moving on

If we wish to add expressive power to DFA, what must be do?

Suggestions?

References

Related documents

z On no bank should the cannibals outnumber the missionaries.. Algorithmics of Search Algorithmics of Search.. , not already on either OPEN or CLOSED ) Add these members of M to. OPEN

– Nondeterministic finite state automata (also with ε-transitions) – Kleene’s regular expressions, also appeared as Type-3 languages in.. Chomsky’s

– Nondeterministic finite state automata (also with ε-transitions) – Kleene’s regular expressions, also appeared as Type-3 languages in!. Chomsky’s

We have seen above two different automata based techniques for reasoning about heap manipulating programs: regular model checking, and Hoare-style reasoning using a logic called SAL

We have seen above two different automata based techniques for reasoning about heap manipulating programs: regular model checking, and Hoare-style reasoning using a logic called

I Non-deterministic finite state automata (NFA): the Subset construction, worst-case exponential blowup.. I Applications 1: text search

Regular expressions in emacs and lexical analyzers I Search function takes regular expressions.. I Try search

cbna CS310 : Automata Theory 2019 Instructor: Ashutosh Gupta IITB, India 2..