Mostre que {xy ∣ | x | = | y |, x ≠ y} é livre de contexto


43

Lembro-me de me deparar com a seguinte pergunta sobre uma linguagem que supostamente é livre de contexto, mas não consegui encontrar uma prova do fato. Talvez eu tenha se lembrado errado da pergunta?

Enfim, aqui está a pergunta:

Mostre que o idioma é livre de contexto.L={xy∣|x|=|y|,x≠y}


5
Oh, essa é boa! <3
— Raphael

Respostas:


35

Reivindicação : é livre de contexto.L

Ideia de prova : deve haver pelo menos uma diferença entre a primeira e a segunda metade; damos uma gramática que gera uma e deixa o resto arbitrário.

Prova : por uma questão de simplicidade, assuma um alfabeto binário . A prova se estende facilmente para outros tamanhos. Considere a gramática G :Σ={a,b}G

S→AB∣BAA→a∣aAa∣aAb∣bAa∣bAbB→b∣aBa∣aBb∣bBa∣bBb

É bastante claro que gera

L(G)={w1⏟kxw2v1⏟k+lyv2⏟l∣|w1|=|w2|=k,|v1|=|v2|=l,x≠y}⊆Σ∗;

kl(x,y)w2v1w2v1xyL(G)=LG não impõe outras restrições ao seu idioma.


O leitor interessado pode ter dois problemas de acompanhamento:

L

{xyz∣|x|=|y|=|z|,x≠y∨y≠z∨x≠z}


S→AB A→a B→bBa,thenB→b

abba∈Lx=aby=ba
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.