Presentation on theme: "Automata Theory CS 3313 Chapter 5 Properties of Regular Sets."— Presentation transcript:
Automata Theory CS 3313 Chapter 5 Properties of Regular Sets
There are several questions one can ask concerning regular sets. One important question is: given a language L specified in some manner, is L a regular set? We also might want to know whether the regular sets denoted by different regular expressions are the same, or find the finite automaton with fewest states, that denotes the same language as a given FA. This section of notes will try to discuss the tools to deal with questions such as these regarding regular sets. We prove a "pumping lemma" to show that certain languages are non-regular.
The Pumping Lemma for Regular Sets: Pumping lemma, is a powerful tool for proving certain languages non-regular. It is also useful in the development of algorithms to answer certain questions concerning finite automata, such as whether the language accepted by a given FA is finite or infinite. If a language is regular, it is accepted by a DFA M = (Q, Σ, δ, q 0, F) with some particular number of states, say n. Consider an input of n or more symbols a 1, a 2, … a m m n, and for i = 1, 2, …, m let δ(q 0, a 1, a 2, …, a i ) = q i It is not possible for each of the n + 1 states q 0, q 1, …, q n to be distinct, since there are only n different states.
The Pumping Lemma for Regular Sets: Thus there are tow integers j and k, 0 j < k n, such that q j = q k. The path labeled a 1, a 2, … a m in the transition diagram of M is illustrated in figure-3.1 [page 56 of the text book.] Since j < k, the string a j+1 …, a k is of length at least 1, and since k n, its length is no more than n. Proof of figure from book. LEMMA-3.1: Let L be a regular set. Then there is a constant n such that if z is any word in L, and |z| n, we may write z = u v w, in such a way that |u v| n, |v| 1, and for all i 1, and for all i 0, u v i w is in L.
Lemma 3.1 contd… Furthermore, n is no greater than the number of states of the smallest FA accepting L. Proof: See the discussion preceding the statement of the lemma. There, z is a 1, a 2, … a m, u = a 1, a 2, … a j, v = a j+1, …, a k, and w = a k+1 …, a m Note that the pumping lemma states that if a regular set contains a long string z, then it contains an infinite set of strings of the from u v i w. The lemma does not state that every sufficiently long string in a regular set is of the form u v i w for some large i. In fact, (0 + 1) * contains arbitrarily long strings in which no sub-string appears three times consecutively. (The proof is left as an assignment)
Applications of the Pumping Lemma. Assignment: [Example-3.1, page 57 of the text book.] [Example-3.2, page 57 of the text book.]
Closure Properties of Regular Sets: There are many operations on languages that preserve regular sets, in the sense that the operations applied to regular sets result in regular sets. For example, the union of two regular sets is a regular set, since if r 1 and r 2 are regular expressions denoting regular sets L 1 and L 2, then r 1 + r 2 denotes L 1 U L 2, so L 1 U L 2 is also regular. Similarly, the concatenation of regular sets is a regular set and the Kleene closure of a regular set is regular. [Reading assignment: Theorem-3.1, Theorem-3.2 and Theorem-3.3 on page 59, of the text book.] Example:3.3, on page 60 of the text book. [Assignment: Theorem-3.4, on page 60 of the text book.] Example:3.4, on page 61 of the text book.
The MYHILL-NERODE Theorem and Minimization of Finite Automata: [Reading assignment: Theorem-3.9, page 65 of the text book.] Example-3.7 [Reading assignment: Minimizing finite automata, theorem-3.10 on page 67 of the text book.] Example-3.8