Treść Lematy Rozwiązanie

Transkrypt

Treść Lematy Rozwiązanie
Praca Domowa JAiO
Paweł Bedyński 239764
Treść
Niech
P
=
P =
{a, b}
pn∗ + pp∗
pn∗ =
{wawR |w ∈
pp∗ =
{wwR |w ∈
Zbadać regularność
P+
P+
,a ∈
P
}
}
P ∗ , pn∗ , pp∗
Lematy
• Lemat o Pompowaniu
P
Niech A = ( , Q, I, δ, F ) będzie automatem skończonym, |Q| = n. Jeśli automat
akceptuje słowo w o długości |w| > n, to istnieją słowa w0 , v, w00 , takie że w =
w0 vw00 , |w0 v| ≤ n, v 6= , oraz dla każdego m = 1, 2, 3, ..., w0 v m w00 ∈ L(A)
• Rozszerzenie Lematu o pompowaniu
z ćwiczeń: wystarczy że znajdziemy w słowie w dowolny ciąg n kolejnych liter i do
nich zastosujemy lemat o pompowaniu (tzn to nie musi być pierwsze n liter).
Rozwiązanie
• pp∗
Załóżmy że język pp* jest językiem regularnym. Wtedy jest on akceptowalny przez
pewien automat A o n stanach. Rozpatrzmy słowo ba2n+1 bbbba2n+1 b. Należy ono
do języka pp∗ . Wtedy z rozszerzonego lematu o pompowaniu słowo v (pompujemy
wewnątrz pierwszego ciągu liter ”a”) może być:
1. nieparzystej długości
Wtedy dla m = 0 mamy słowo, które jest nieparzystej długości więc z definicji
nie należy do pp∗ (bo nie może składac się ze słów parzystej długości)
2. parzystej długości (ale niezerowej!)
Wtedy v = a2k dla pewnego 2k ≤ n, k ∈ N . Dla m = 0 mamy słowo postaci ba2(n−k)+1 bbbba2n+1 b, a to słowo nie może należeć do pp∗ bo idąc od lewej
pierwszy palindrom parzystej długości musiałby ”zahaczyć” o drugi ciąg liter ”a”
(ten pierwszy jest nieparzystej długości, a pierwszy palindrom MUSIAŁBY zawierać cały ten ciąg). Ponieważ jednak pierwszy ciąg liter ”a” jest innej długości
niż drugi, to pierwszy od lewej palindrom parzystej dlugości musiałby zawierać oba te ciągi w całości. A zatem widać już, że nie można podzielić słowa
ba2(n−k)+1 bbbba2n+1 b na palindromy parzystej długości
pp∗ jest zatem nieregularny.
• pn∗
Załóżmy że język pn* jest językiem regularnym. Wtedy jest on akceptowalny przez
pewien automat A o n stanach. Rozpatrzmy słowo ba2n+1 bbba2n+1 b. Należy ono do
języka pn∗ . Wtedy z rozszerzonego lematu o pompowaniu słowo v (pompujemy wewnątrz pierwszego ciągu liter ”a”) jest postaci al , l ∈ N . Rozpatrzmy dla m = 0 słowo
ba2n+1−l bbba2n+1 b.
Patrząc od lewej pierwszy palindrom nieparzystej długości (długości większej niż 2)
zawiera pierwsze z lewej ”b”, a zatem musi zawierać też drugie ”b” (a zatem zawiera
cały pierwszy ciąg liter ”a”). Mamy teraz dwa przypadki:
1. l jest parzyste
Wtedy pierwszy z lewej palindrom wygląda tak: ba2n+1−l b. Nie może on być dłuższy ponieważ jeśli wydłużyłby się o jedną litere (tu ”b”) to musiałby wydłużyć
się na całe słowo ba2n+1 bbba2n+1 b a to słowo nie jest palindromem. Mamy zatem
od lewej palindrom ba2n+1−l b i pozostałe do podziału słowo bba2n+1 b. Pierwszy
palindrom nieparzystej długości tego słowa (od lewej) musi wchłonąć dwie pierwsze litery ”b” a zatem musi kończyć sie na ”b”. Więc nie może być krótszy niż
całe to słowo .. ale bba2n+1 b nie jest palindromem.
2. l jest nieparzyste
Wtedy pierwszy z lewej palindrom musi wchłonąc dwie pierwsze litery (”b” i ”a”)
więc musi kończyć się na ”b”, a co za tym idzie musi wchłonąć cały pierwszy ciąg
liter ”a”. Słowo ba2n+1−l b dla l nieparzystego nie jest słowem nieparzystej długości więc pierwszy palindrom od lewej musi wchłonąć jeszcze jedno ”b”. Ponieważ
ani ba2n+1−l bb ani ba2n+1−l bbb nie sa palindromami (a nasz pierwszy palindrom
musi konczyć się na ”b”) to pierwszy palindrom musiałby być całym słowem
ba2n+1 bbba2n+1 b. Ale to nie jest palindrom.
pn∗ jest zatem nieregularny.
• P∗
Załóżmy że język P* jest językiem regularnym. Wtedy jest on akceptowalny przez
pewien automat A, o n stanach. Rozpatrzmy słowo ba2n+1 baba2n+1 b. Należy ono
do języka P ∗ . Wtedy z rozszerzonego lematu o pompowaniu słowo v (pompujemy
wewnątrz pierwszego ciągu liter ”a”) jest postaci al , l ∈ N . Rozpatrzmy dla m = 0
słowo ba2n+1−l baba2n+1 b. To słowo nie należy do P* (*). Wtedy pierwszy palindrom
(należący do P*) musi zawierać pierwsze z lewej ”b” a zatem musi zawierać słowo
ba2n+1−l b (to słowo należy do P* (**)).
Co więcej ogon - czyli aba2n+1 b - nie jest palindromem z P* i nie dzieli sie na palindromy z P*. Dowód tego ostatniego faktu jest prosty: patrząc od końca pierwszy z
prawej palindrom musi zawierac ba2n+1 b a ponieważ słowo”a” nie należy do P* wiec
jedynym możliwym podziałem słowa aba2n+1 b na podsłowa należące do P* byłby podział gdzie jedynym podsłowem jest całe to słowo .. ale ono nie należy do P* co widać
(wszak na początku jest ”a” a na końcu jest ”b”).
z uwagi na (**) pierwszy z lewej palindrom (należący do P*) słowa ba2n+1 baba2n+1 b
nie może się kończyć na ostatnim ”b” z ba2n+1 b.
Pierwszym z lewej palindromem (należący do P*) słowa ba2n+1−l baba2n+1 b musi zatem być ba2n+1−l bab (bo musi kończyć się na ”b” a z (*) to nie może być całe słowo).
Jednak nawet jeśli to jest palindrom należący do P* to i tak ogon - czyli a2n+1 b - nie
jest palindromem z P* i nie dzieli sie na palindromy z P*.
P ∗ jest zatem nieregularny.
FIN