Download presentation

Presentation is loading. Please wait.

Published byNorman Hill Modified over 5 years ago

1
CSCI 2670 Introduction to Theory of Computing September 15, 2004

2
Agenda Yesterday –Pumping lemma review Today –Prove the pumping lemma –Introduce context-free grammars

3
Announcement Quiz tomorrow –CGF parse trees & interpretation –Pumping lemma

4
Nonregular languages There are many nonregular languages –{0 n 1 n | n 0} –{101,101001,1010010001,…} –{w | w has the same number of 0s and 1s} All regular languages can be generated by finite automata States must be reused if the length of a string is greater than the number of states –If states are reused, there will be repetition

5
The pumping lemma Theorem: If A is a regular language, then there is a number p where, if s is any string in A of length at least p, then s may be divided into three pieces, s = xyz, satisfying the following conditions 1.for each i 0, xy i z is in A 2.|y| > 0, and 3.|xy| p p is called the pumping length

6
Proof idea Pumping length is equal to the number of states in the DFA whose language is A –p = |Q| If A accepts a word w with |w| > p, then some state must be entered twice while processing w –Pigeonhole principle

7
Proof idea 1.for each i 0, xy i z is in A 2.|y| > 0, and 3.|xy| p x y z

8
Proof Let A be any regular language Find DFA M=(Q, , ,q 0,F) with L(M)=A Let p=|Q| Let s=s 1 s 2 s 3 …s n be any string in A with |s| = n p –What if no such s is in A?

9
Proof (cont.) Let r 1, r 2, r 3, …, r n+1 be the sequence of states entered while processing s –r 1 = q 0 –r n+1 F –r i+1 = (r i, s i )

10
Proof (cont.) Consider the first p+1 elements of this sequence –p+1 states must contain a repeated state Let r k be the first state to be repeated and let r t be the second occurance of this state –t p+1

11
Proof (cont.) Let x=s 1 s 2 …s k-1, y=s k s k+1 …s t-1, z=s t s t+1 …s n There is an error in the proof on page 79 of Sipser (y is incorrectly defined) –x takes M from r 1 to r k –y takes M from r k to r t –z takes M from r t to r n+1, which is an accept state Since r k and r t are the same state, M must accept xy i z for any i=0, 1, 2, …

12
Proof (cont.) Have we satisfied the conditions of the theorem? 1.for each i 0, xy i z is in A 2.|y| > 0, and 3.|xy| p Have we satisfied the conditions of the theorem? 1.for each i 0, xy i z is in A Yes 2.|y| > 0, and Yes since t > k and y=s k s k+1 …s t-1 3.|xy| p Yes since t p+1 and xy = s 1 s 2 …s t-1

13
Regular languages -- Summary Let R be any language. The following are equivalent 1.R is a regular language 2.R = L(M) for some finite automata M, where M is a DFA, an NFA, or a GNFA 3.R is describe by some regular expression 4.R has a pumping length of p If R can be shown not to have a finite pumping length, then R is not regular

14
Context-free grammars The shortcoming of finite automata is that each state has very limited meaning –You have no memory of where you’ve been – only knowledge of where you are Context-free grammars are a more powerful method of describing languages –Example: {0 n 1 n | n 0} is a CFG

15
Example CFG Context-free grammars use substitution to maintain knowledge S (S) S SS S () All possible legal parenthesis pairings can be expressed by consecutive applications of these rules Is this a regular language?

16
Example S (S) | SS | () (()())(()) S SS (S)(S) (SS)(()) (()())(()) This sequence of substitutions is called a derivation

17
Parse tree S (S) | SS | () S SS SS () S )( S ()

18
Example 2 S Sb | Bb B aBb | aCb C ε Derivation for aaabbbbb S Sb Bbb aaBbbbb aaaεbbbbb aBbbb aaaCbbbbb

19
Example 2 parse tree S ε S b B b B ab B ab ba C

20
Example 2 S Sb | Bb B aBb | aCb C ε Question 1: What language does this grammar accept? Answer: {a n b m | m > n > 0} Question 2: Can this CFG be simplified? Answer: yes. Replace B aCb with B ab and remove C ε

21
Other languages described by CFG’s The foxtrot –http://linus.socs.uts.edu.au/~don/pubs/foxtrot.htmlhttp://linus.socs.uts.edu.au/~don/pubs/foxtrot.html A type of Tamil poetry called Venpa Ancient language of Sanscrit –http://en.wikipedia.org/wiki/Context-free_grammarhttp://en.wikipedia.org/wiki/Context-free_grammar

22
Tomorrow Formal definition for CFG Designing CFG’s

Similar presentations

© 2020 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google