Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Like this presentation? Why not share!

- MELJUN CORTES Automata Theory (Auto... by MELJUN CORTES 264 views
- MELJUN CORTES Automata Theory (Auto... by MELJUN CORTES 268 views
- MELJUN CORTES automata theory by MELJUN CORTES 455 views
- Intro automata theory by Rajendran 348 views
- Embedded system by mangal das 2193 views
- Properties of cfg by lavishka_anuj 1791 views

195 views

Published on

MELJUN CORTES Automata Theory (Automata5)

Published in:
Technology

No Downloads

Total views

195

On SlideShare

0

From Embeds

0

Number of Embeds

3

Shares

0

Downloads

14

Comments

0

Likes

1

No embeds

No notes for slide

- 1. MELJUN P. CORTES, MBA,MPA,BSCS,ACS CSC 3130: Automata theory and formal languages Limitations of finite automata MELJUN CORTES
- 2. Many examples of regular languages 0 q0 1 1 q1 0 ((0 + 1)0 + (0 + 1)(0 + 1)(0 + 1))* 0, 1 q0 1 q1 0 q2 1 q3 all strings not containing pattern 010 followed by 101 Is every language regular?
- 3. Which are regular? L1 = {0n1m: n, m ≥ 0} Σ = {0, 1} L2 = {0n1n: n ≥ 0} L3 = {1n: n is divisible by 3} Σ = {1} L4 = {1n: n is prime} L5 = {x: x has same number of 0s and 1s} L6 = {x: x has same number of patterns 01 and 10} Σ = {0, 1}
- 4. Which are regular? L1 = {0n1m: n, m ≥ 0} = 0*1*, so regular • How about: L2 = {0n1n: n ≥ 0} = {ε, 01, 0011, 000111, …} • Let’s try to design a DFA for it … it appears that we need infinitely many states!
- 5. A non-regular language • Theorem The language L2 = {0n1n: n ≥ 0} is not regular. • To prove this, we argue by contradiction: – Suppose we have managed to construct a DFA M for L2 – We show something must be wrong with this DFA – In particular, M must accept some strings not in L2
- 6. A non-regular language imaginary DFA for L2 with n states x M • What happens when we run M on input x = 0n+11n+1? – M better accept, because x ∈ L2
- 7. A non-regular language 0 x 0 0 0 M 0 0r1n+1 • What happens when we run M on input x = 0n+11n+1? – M better accept, because x ∈ L2 – But since M has n states, it must revisit at least one of its states while reading 0n+1
- 8. Pigeonhole principle Suppose you are tossing n + 1 balls into n bins. Then two balls end up in the same bin. • Here, balls are 0s, bins are states: If you have a DFA with n states and it reads n + 1 consecutive 0s, then it must end up in the same state twice.
- 9. A non-regular language 0 x 0 0 0 M 0 0r1n+1 • What happens when we run M on input x = 0n+11n+1? – M better accept, because x ∈ L2 – But since M has n states, it must revisit at least one of its states while reading 0n+1 – But then the DFA must contain a loop with 0s
- 10. A non-regular language 0 0 0 0 M 0 0r1n+1 • The DFA will then also accept strings that go around the loop multiple times • But such strings have more 0s than 1s, so they are not in L2!
- 11. General method for showing non-regularity • Every regular language L has a property: an z a1 … ak ak+1 … an-1 an+1…am • For every sufficiently long input z in L, there is a “middle part” in z that, even if repeated several times, keeps the input inside L
- 12. Pumping lemma for regular languages • Theorem: For every regular language L There exists a number n such that for every string z in L, we can write z = u v w where |uv| ≤ n |v| ≥ 1 For every i ≥ 0, the string u vi w is in L. z … u v … w
- 13. Proving non-regularity • If L is regular, then: There exists n such that for every z in L, we can write z = u v w where |uv| ≤ n, |v| ≥ 1 and For every i ≥ 0, the string u vi w is in L. • So to prove L is not regular, it is enough to show: For every n there exists z in L, such that for every way of writing z = u v w where |uv| ≤ n and |v| ≥ 1, the string u vi w is not in L for some i ≥ 0.
- 14. Proving non regularity For every n there exists z in L, such that for every way of writing z = u v w where |uv| ≤ n and |v| ≥ 1, the string u vi w is not in L for some i ≥ 0. • This is a game between you and an imagined adversary adversary 1 2 you choose n write z = uvw (|uv| ≤ n,|v| ≥ 1) choose z ∈ L choose i you win if uviw ∉ L
- 15. Proving non-regularity • You need to give a strategy that, regardless of what the adversary does, always wins you the game adversary 1 2 you choose n write z = uvw (|uv| ≤ n,|v| ≥ 1) choose z ∈ L choose i you win if uviw ∉ L
- 16. Example adversary you choose n 2 write z = uvw (|uv| ≤ n,|v| ≥ 1) 1 choose z ∈ L choose i you win if uviw ∉ L Σ = {0, 1} • L2 = {0n1n: n ≥ 0} adversary 1 2 you choose n write z = uvw (|uv| ≤ n,|v| ≥ 1) z = 0n+11n+1 i=2 u = 0, v = 0 , w = 01 j+k+l=n+1 j k l n+1 uviw ∉L = 0j+2k+l1n+1 = 0n+1+k1n+1
- 17. More examples L3 = {1n: n is divisible by 3} Σ = {1} L4 = {1n: n is prime} L5 = {x: x has same number of 0s and 1s} L6 = {x: x has same number of patterns 01 and 10} L7 = {x: x has more 0s than 1s} L8 = {x: x has different number of 0s and 1s} Σ = {0, 1}

No public clipboards found for this slide

×
### Save the most important slides with Clipping

Clipping is a handy way to collect and organize the most important slides from a presentation. You can keep your great finds in clipboards organized around topics.

Be the first to comment