The pumping lemma
Theorem 313.1(Pumping Lemma, Kozen (1997) 11.2).
Let be a regular language. Then, there exists such that for any strings with and , there exist strings such that , , and for all , the string .
The pumping lemma is often used to show that certain languages are nonregular. For this purpose, we usually use it in its contrapositive form: For all there exist strings such that , , and for all with and , there exists an such that .
Ultimate periodicity of regular languages
is said to be ultimately periodic if there exist integers and such that for all , iff . is called the period of ,
Theorem 313.2(Kozen (1997) 12.3).
fffe51Let . Then is regular iff the set is ultimately periodic.
Corollary 313.3.
Let be any regular set over any finite alphabet , not necessarily consisting of a single letter. Then the set of lengths of strings in is ultimately periodic.
Proof.
Define a homomorphism by for all . Then, . Since preserves lengths, . Also, homomorphisms preserve regularity, so is regular. From Theorem 2, it follows that is ultimately periodic.□
Fooling sets
Definition 313.4.
For words in a language , is said to be a distinguishing suffix if and or vice versa.
It should be clear that if for , then and do not have a distinguishing suffix. Taking the contrapositive, we have if and have a distinguishing suffix, then .
Definition 313.5.
For a language , a set of strings such that and have a distinguishing suffix for all is called a Fooling set of .
If is a fooling set of a language , and is a DFA recognizing , then we have for all : must have at least states.
Proposition 313.6.
If is a fooling set of al language , any automaton recognizing has at least states.
Thus, to prove that a language is nonregular, it is sufficient to provide an infinite fooling set.