Notes on Kleene's Theorem,

The Pumping Lemma,

and

Generalized Nodeterministic Finite Automata

A Historical Note:

That finite-state machines and regular expressions define the same class of languages is generally know as Kleene's Theorem. Its importance lies in the fact both descriptions provide important insights into the nature of these languages. Regular expressions have practical applications in computer science and finite-state machines allow us to answer general questions about the structure of these languages.

___________________________________________________________________

String Notation:

  1. Given a finite symbol set MATH we let MATH be the set of strings in MATH .

  2. Given a string MATH , we write MATH where s is the concatination of MATH

  3. We write MATH for MATH.

  4. In this Notation, for MATH MATH MATH MATH , where MATH for $\QTR{Large}{i=1}$ and MATH for $\QTR{Large}{j=n}$.

    Finally,

  5. Let MATH be a DFA . We can extend MATH to MATH by setting MATH if

  6. In this notation, the definition $\QTR{Large}{M}$ recognizes $\QTR{Large}{A}$ can be written " MATH if and only if MATH and MATH is an accepting state MATH

_______________________________

Lemma: The set of Regular Languages in MATH are closed under the laws of Boolean Algebra.

Proof:

Let MATH be recognized by MATH Let MATH It is immediate that MATH recognizes MATH

since MATH if and only if MATH and MATH MATHand MATH if and only if MATH and MATH MATH

Thus if MATH and MATH are Regular so are MATH and MATH. As is MATH $\QTR{Large}{\cup }$ MATH from an earlier discussion, , as is MATH $\QTR{Large}{\cup }$ MATH $\QTR{Large}{\cap }$ MATH.

_______________________________________________

The Pumping Lemma:

states that if $\QTR{Large}{A}$ is a regular language then there is a number $\QTR{Large}{p=|Q|}$ the number of states in $\QTR{Large}{Q}$,such that if $\QTR{Large}{s} $ is any string in $\QTR{Large}{A\ }$with MATH then $\QTR{Large}{s=xyz}$, the concatination of three strings, such that

  1. MATH

  2. MATH is in $\QTR{Large}{A}$ for all $\QTR{Large}{k>0}$

The proof is a simple counting argument. Let MATH be a DFA that recognizes $\QTR{Large}{A}$ .

Let MATH be recognized by $\QTR{Large}{M}$ and let $\QTR{Large}{n>p.}$ Either

  1. MATH MATH for some $\QTR{Large}{1}$ MATH

    or

  2. there must be an $\QTR{Large}{i}$ and a $\QTR{Large}{j}$ with $\QTR{Large}{2}$ MATHsuch that MATH MATH

Let

To complete the argument, setting MATH MATH by assumption MATH MATH.MATH . But, also by assumption, MATHis an accepting state so

MATHis an accepting state.

___________________________________________________________________

Notes on the definition of a Generalized Nondeterministic Finite Automaton MATH

  1. The important generalization is that transitions are by any regular expression, not only members of MATH or MATH. The definition in the text is however tecnically not a generalization of a NDFA since it is limited to a single accepting state, not equal to the start state. NDFAs may have more than one accept state. The definition in the book has been called a "Reduced Generalized Nonderministic Finite Automaton."

  2. It is also the case that the transition function does not take values in the set of states $\QTR{Large}{Q}$ . Rather it takes values in MATH the set of Regular Expressions over the alphabet MATHHence the definion of recognition must be appropriately modified. In particular, MATH is recognized if we can write MATH where the MATH are strings, and find MATH such that MATH An understanding of this definition is at the hearth of an understanding of the "State Ripping" proceedure that is used to reduce any GNFA to one with two states.

  3. Note that MATH requires that there is a unique Regular expression transition between any pair of states in

    MATH including self-transitions MATH

  4. This diagram which was "ripped" from Van Dam's notes is at the heart of the reduction process.

  5. This diagram is from the text. Homework: Due Sept 20 Problem 1.21 (b)