Part 1: Automata and Languages

Chapter 1: Regular Languages

ITEC 420 - Section 1.4 - Non-Regular Languages


Regular Expressions



Pumping Lemma: Purpose



Pumping Lemma for Regular Languages: Introduction



Pumping Lemma for Regular Languages: Theorem 1.70



Pumping Lemma for Regular Languages: In Different Words



Negating the Pumping Lemma Conditions



Pumping Lemma Conditions: What they mean

  1. s can be divided in 3 substrings, x, y, z

  2. for each i ≥ 0, xyizA: pumping the loop produces strings that are in the language

  3. |y| > 0: the pumped section is not empty (ie, if y = ε, then the Lemma is meaningless))

  4. |xy| ≤ p: a loop must appear within the first p states in a computation


Pumping Lemma: Proof



Using the Pumping Lemma to show a language is Non-Regular



Pumping Lemma Examples



Pumping Lemma Example: 0 n1 n



The Pumping Lemma Game



Pumping Lemma Example 2: equal number of 0's and 1's



Pumping Lemma Example 3: ww



Pumping Lemma Example 4: 1n for square n



Pumping Lemma Example 5: 0i1j with i > j



Pumping Lemma Example 5a: 0i1j with i < j



Pumping Lemma Example 6: number of 0's < number of 1's



Pumping Lemma Example 7: (01)n0k, n>k



Pumping Lemma Logic



Pumping Lemma Logic Summary



A Language with Pumpable Strings that is NOT Regular



Parting Thought



Parting Thought Two


















ITEC 420 Course Page,
Last modified on