patternMajor
Pumping lemma for simple finite regular languages
Viewed 0 times
simplefinitelanguagesregularpumpingforlemma
Problem
Wikipedia has the following definition of the pumping lemma for regular langauges...
Let $L$ be a regular language. Then there exists an integer $p$ ≥ 1
depending only on $L$ such that every string $w$ in $L$ of length at
least $p$ ($p$ is called the "pumping length") can be written as $w$ =
$xyz$ (i.e., $w$ can be divided into three substrings), satisfying the
following conditions:
I do not see how this is satisfied for a simple finite regular language. If I have an alphabet of {$a,b$} and regular expression $ab$ then $L$ consists of just the one word which is $a$ followed by $b$. I now want to see if my regular language satisfies the pumping lemma...
As nothing repeats in my regular expression the value of $y$ must be empty so that condition 3 is satisifed for all $i$. But if so then it fails condition 1 which says $y$ must be at least 1 in length!
If instead I let $y$ be either $a$, $b$ or $ab$ then it will satisfy condition 1 but fail condition 3 because it never actually repeats itself.
I am obviously missing something mind blowingly obvious. Which is?
Let $L$ be a regular language. Then there exists an integer $p$ ≥ 1
depending only on $L$ such that every string $w$ in $L$ of length at
least $p$ ($p$ is called the "pumping length") can be written as $w$ =
$xyz$ (i.e., $w$ can be divided into three substrings), satisfying the
following conditions:
- |$y$| ≥ 1
- |$xy$| ≤ $p$
- for all $i$ ≥ 0, $xy^iz$ ∈ $L$
I do not see how this is satisfied for a simple finite regular language. If I have an alphabet of {$a,b$} and regular expression $ab$ then $L$ consists of just the one word which is $a$ followed by $b$. I now want to see if my regular language satisfies the pumping lemma...
As nothing repeats in my regular expression the value of $y$ must be empty so that condition 3 is satisifed for all $i$. But if so then it fails condition 1 which says $y$ must be at least 1 in length!
If instead I let $y$ be either $a$, $b$ or $ab$ then it will satisfy condition 1 but fail condition 3 because it never actually repeats itself.
I am obviously missing something mind blowingly obvious. Which is?
Solution
You are right - we cannot allow "pumping" words of a finite $L$. The thing you are missing is that the lemma says there exists a number $p$, but does not tell us the number.
All words longer than $p$ can be pumped, by the lemma. For a finite $L$, it happens so that $p$ is larger than the length of the longest word in $L$. Thus, the lemma only holds vacuously, and cannot be applied to any word in $L$, i.e., any word in $L$ does not satisfy the condition of "having length at least $p$" as the lemma requires.
A corollary: if $L$ has pumping length $p$, and there exists some word $w\in L$ of length at least $p$, then $L$ is infinite.
All words longer than $p$ can be pumped, by the lemma. For a finite $L$, it happens so that $p$ is larger than the length of the longest word in $L$. Thus, the lemma only holds vacuously, and cannot be applied to any word in $L$, i.e., any word in $L$ does not satisfy the condition of "having length at least $p$" as the lemma requires.
A corollary: if $L$ has pumping length $p$, and there exists some word $w\in L$ of length at least $p$, then $L$ is infinite.
Context
StackExchange Computer Science Q#1847, answer score: 46
Revisions (0)
No revisions yet.