Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 7 1 Lecture 7 UofH - COSC 3340 - Dr. Verma Are all languages regular? Ans: No. How do we know this? – Let C(DFA) = {M | M is a DFA}. – C(DFA) is a countable set. Why? Let AL = { L | L is a subset of *}. – 2 Ans: Cardinality arguments. AL is uncountable. Lecture 7 UofH - COSC 3340 - Dr. Verma Cardinality Def: A set is countable if it is (i) finite or (ii) countably infinite. Def: A set S is countable infinite if there is a bijection from N to S. – Def: A set that is not countable is uncountable. – 3 Note: Instead of N to S we can also say S to N. N = {0, 1, 2, 3, ...} -- the set of natural numbers. Or, any infinite set with no bijection from N to itself. Lecture 7 UofH - COSC 3340 - Dr. Verma Examples 1. The set of chairs in this classroom is finite. 2. The set of even numbers is countably infinite. 3. The set of all subsets of N is uncountable. – 4 Notation: 2N Lecture 7 UofH - COSC 3340 - Dr. Verma Exercises What is the cardinality of? 1. Z - the set of integers. 2. N X N = {(a,b) | a, b in N}. 3. R - the set of real numbers. 5 Lecture 7 UofH - COSC 3340 - Dr. Verma Pumping Lemma 6 First technique to show that specific given languages are not regular. Cardinality arguments show existence of languages that are not regular. There is a big difference between the two! Lecture 7 UofH - COSC 3340 - Dr. Verma Statement of Pumping Lemma If A is a regular language, then there is a number p (the pumping length) 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, xyiz A, 2. |y| > 0, and 3. |xy| p. 7 Lecture 7 UofH - COSC 3340 - Dr. Verma Proof of pumping lemma Idea: If a string w of length m is accepted by a DFA with n states, and n < m, then there is a cycle (repeated state) on the directed path from s to a final state labeled w. – – 8 Recall: directed path is denoted by *(s,w). Uses: Pigeon-hole principle Lecture 7 UofH - COSC 3340 - Dr. Verma Pigeon-hole principle 4 pigeons 3 pigeonholes 9 Lecture 7 UofH - COSC 3340 - Dr. Verma Pigeon-hole principle (contd.) A pigeonhole must have two pigeons 10 Lecture 7 UofH - COSC 3340 - Dr. Verma Pigeon-hole principle (contd.) nm n ........... m pigeonholes ........... 11 Lecture 7 UofH - COSC 3340 - Dr. Verma Details of Proof of Pumping Lemma. Consider L - any infinite regular language. 1. L regular there is a DFA M with L(M) = L. 2. Let DFA have p states (say). 3. Let w in L be of length more than p. Why does w exist? Ans: because L is infinite. 4. *(s,w) = f (some final state) must be *(s, w = xyz) = *(q,yz) = *(q,z) = f 5. So xynz in L for n = 0, 1, 2, 3, .... since *(s, xynz) = *(q, ynz) = *(q, y{n-1}z) = ... = *(q,z) = f. 12 Lecture 7 UofH - COSC 3340 - Dr. Verma Describing the pumping lemma Take an infinite regular language L DFA that accepts L m states 13 Lecture 7 UofH - COSC 3340 - Dr. Verma Describing the pumping lemma (contd.) Take string with w w L There is a walk with label: w ......... 14 Lecture 7 UofH - COSC 3340 - Dr. Verma Describing the pumping lemma (contd.) If string w has length | w| m number of states Then, from the pigeonhole principle: A state q is repeated in the walk ...... 15 Lecture 7 q w ...... UofH - COSC 3340 - Dr. Verma Describing the pumping lemma (contd.) y Write w x y z ...... x 16 Lecture 7 q ...... z UofH - COSC 3340 - Dr. Verma Describing the pumping lemma (contd.) x y| m length | y | 1 Observations : length | number of states y ...... x 17 Lecture 7 q ...... z UofH - COSC 3340 - Dr. Verma Describing the pumping lemma (contd.) Observation: The string x z is accepted y ...... x 18 Lecture 7 q ...... z UofH - COSC 3340 - Dr. Verma Describing the pumping lemma (contd.) Observation: The string x is accepted yyz y ...... x 19 Lecture 7 q ...... z UofH - COSC 3340 - Dr. Verma Describing the pumping lemma (contd.) Observation: The string x is accepted yyyz y ...... x 20 Lecture 7 q ...... z UofH - COSC 3340 - Dr. Verma Describing the pumping lemma (contd.) In General: The string x is accepted i y z i 0, 1, 2, ... y ...... x 21 Lecture 7 q ...... z UofH - COSC 3340 - Dr. Verma Some Applications of Pumping Lemma The following languages are not regular. 1. {anbn | n 0 }. 2. {w = wR | w in {a,b}* } (language of palindromes). 3. {wwR | w in {a,b}*}. 4. {a{n2} | n 0}. 22 Lecture 7 UofH - COSC 3340 - Dr. Verma Tips of the trade -- Do not forget! Closure properties can be used effectively for: (1) shortening cumbersome Pumping lemma arguments. Example: {w in {a, b}* | w has equal a's and b's}. (2) for showing that certain languages are regular. 23 Example: {w in {a, b}* | w begins with a and w contains a b}. Lecture 7 UofH - COSC 3340 - Dr. Verma References Pigeonhole Principle & Pumping Lema Description – www.cs.rpi.edu/courses/fall00/modcomp3/class8.ppt 24 Author: Costas Busch, Rensselaer Polytechnic Institute, NY Lecture 7 UofH - COSC 3340 - Dr. Verma