235k views
3 votes
Pumping Lemma: Prove that the following is not a regular language:

ℒ = 0^1^0^

please explain in as much detail as possible (this is a study guide question and I need as much explanation before the test please!)

User Spex
by
6.9k points

1 Answer

7 votes

Final answer:

The language ℓ = 0i1j0k cannot be regular because it violates the Pumping Lemma for regular languages. Assuming it's regular, a string from the language can't be pumped without breaking the language's condition, leading to the conclusion that the language is not regular.

Step-by-step explanation:

The student has asked to prove that the language ℓ = i + k = j is not a regular language using the Pumping Lemma. Here is a detailed explanation:

First, recall that the Pumping Lemma for regular languages states that for any regular language, there exists some integer p (the pumping length) such that any string s in the language with |s| ≥ p can be divided into three parts, xyz, fulfilling the following conditions:

  • |xy| ≤ p
  • |y| > 0
  • For any integer n ≥ 0, the string xynz is still in the language.

To use the Pumping Lemma, assume for contradiction that ℓ is regular. Let p be the pumping length given by the lemma. Consider the string s = 0p12p0p, which is in ℓ and satisfies |s| ≥ p. By the Pumping Lemma, we can split this string into xyz where |y| > 0 and |xy| ≤ p. Since |xy| is less than or equal to p, y consists of only 0's (since the first p characters of s are 0's).

Now, consider pumping y by repeating it. Let's replace y with y2 to obtain xyyz. This new string is of the form 0p+k12p0p for some k > 0 (since y consists of one or more 0's). However, this string breaks the condition that i + k = j because now the number of 0's before the 1's and after the 1's sums up to more than twice the number of 1's, hence xyyz ∈ ℓ. This contradiction shows that ℓ cannot be regular.

User Domfz
by
7.6k points