Pokaż, że {xy ∣ | x | = | y |, x ≠ y} jest pozbawione kontekstu


43

Pamiętam, że natrafiłem na następujące pytanie dotyczące języka, który podobno jest pozbawiony kontekstu, ale nie mogłem znaleźć dowodu na to. Czy może źle zapamiętałem pytanie?

Tak czy inaczej, oto pytanie:

Pokaż, że język jest wolne od kontekstu.L={xy|x|=|y|,xy}


5
Och, to dobrze! <3
Raphael

Odpowiedzi:


35

Twierdzenie : jest pozbawione kontekstu.L

Dowód na pomysł : musi istnieć co najmniej jedna różnica między pierwszą a drugą połową; podajemy gramatykę, która upewni się, że ją wygenerujemy, a resztę pozostawi dowolną.

Dowód : dla uproszczenia załóż binarny alfabet . Dowód łatwo rozciąga się na inne rozmiary. Rozważ gramatykę :Σ={a,b}G

SABBAAaaAaaAbbAabAbBbaBaaBbbBabBb

Jest całkiem jasne, że generuje

L(G)={w1kxw2v1k+lyv2l|w1|=|w2|=k,|v1|=|v2|=l,xy}Σ;

podejrzany może wykonać zagnieżdżoną indukcję w stosunku do i z rozróżnieniem wielkości liter w parach . Teraz i dojeżdżają do pracy (intuicyjnie, i mogą wymieniać symbole, ponieważ oba zawierają symbole wybrane niezależnie od reszty słowa). Dlatego też, i mają tę samą pozycję (w odpowiednich pół), co oznacza, , ponieważ nie nakłada żadnych ograniczeń innych jego języka.kl(x,y)w2v1w2v1xyL(G)=LG


Zainteresowanym czytelnikom mogą spodobać się dwa problemy:

Ćwiczenie 1 : Wymyśl PDA dla !L

Ćwiczenie 2 : Co z ?{xyz|x|=|y|=|z|,xyyzxz}


Jeśli użyjemy tej gramatyki, możemy wygenerować ciąg taki jak: Następnie otrzymujemy S as abba! To nie jest równe surowemu językowi L, czy jest tu błąd? SAB Aa BbBa,thenBb
George.Zhao

@ George.Zhao Nie podążam. Czy jest jasne, przy i ? abbaLx=aby=ba
Raphael
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.