Esercizi pumping lemma

Esercizio pumping lemma

pumping lemmaEsercizio pumping lemma

Dato il linguaggio, stabilire il suo tipo e definire una grammatica G tale che L(G) = L*

L = {anbnck | n, k ∈ N}

Sia G una grammatica tale che L(G) = L

G = (X,V,S,P) con X = {a,b,c} e V = {S,A,C}

P = {

S -> AC
A -> aAb | ϵ
C -> cC | ϵ

}

L è almeno di tipo 2 perchè generato da una grammatica libera da contesto.

Supponiamo per assurdo che L sia regolare, quindi vale il pumping lemma per i linguaggi regolari. Per il pumping lemma:

∃p ∈ N tale che ∀z ∈ L, |z| >= p

allora

z = uvw con
1) |uv| <= p
2) |v| > 0
3) uviw∈ L, ∀i >= 0
Consideriamo

z = uvw = apbp ∈ L, |z| = p + p >= p  quindi per il pumping lemma  z = uvw

v può essere così composta:

  • di sole a: v = aj con 1<= j <= p

v non può essere composta da sole b o a cavallo tra le a e le b perchè risulterebbe |uv| > p e non è ammesso dal pumping lemma.

z = uvw = ap-j aj bp

Consideriamo la stringa gonfiata uv2w

uv2w = ap-j (aj)2 bp = ap-j b2j bp = ap+j bp

uv2w ∉ L

Per assurdo L non è un linguaggio regolare, L è al più di tipo 2

/ 5
Grazie per aver votato!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *