1 / 11

Lema da Bomba ( Pumping Lemma ) para linguagens livre de contexto

Lema da Bomba ( Pumping Lemma ) para linguagens livre de contexto. Este lema é útil para mostrar que uma dada linguagem não é uma linguagem livre de contexto. Seu uso é análogo àquele visto para linguagens regulares. D. S. P. P’. A. D. . . . . A. . v. y. x.

anneke
Download Presentation

Lema da Bomba ( Pumping Lemma ) para linguagens livre de contexto

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lema da Bomba (Pumping Lemma) para linguagens livre de contexto • Este lema é útil para mostrar que uma dada linguagem não é uma linguagem livre de contexto. • Seu uso é análogo àquele visto para linguagens regulares.

  2. D S P P’ A D     A  v y x • Suponha G na FNC e seja m=2k+1, onde k=|V|. • se |w|  m, então uma àrvore de derivação para w em G tem altura mínima > k w= =vxy S*D*A*vAy*vxy S*vAy*vvAvy *viAyi

  3. Teorema. Seja L uma linguagem livre de contexto infinita. Então existe algum inteiro positivo m tal que para qualquer w  L com |w|  m ela pode ser decomposta como w = uvxyz (1) com |vxy|  m (2) e |vy|  1 (3) tal que, para todo i =0,1,2,…: uvixyiz  L

  4. EXEMPLO: Mostre que L = {anbncn : n 0} não é livre de contexto. SOLUÇÃO: (dos diabos :-) 1. O diabo escolhe m; 2. tomamos a cadeia ambmcm em L. 3. O diabo tem várias escolhas.

  5. 3a. Se ele escolhe vxy contendo somente a’s, então o bombeamento acarreta obviamente que a cadeia não está em L. 3b. Se ele escolhe uma cadeia contendo número igual de a’s e b’s então a cadeia bombeada akbkck com km pode ser gerada, e não está em L.

  6. De fato, a única maneira do diabo tentar nos impedir de vencer é tomar vxy tal que vy tenha o mesmo número de a’s, b’s e c’s. Mas isto não é possível pela restrição (2): |vxy|  m. Portanto, L não é livre de contexto.

  7. Mais Exemplo L={ww|w{a,b}*} não é LC. • Considere a cadeia ambm ambm; • uma possível escolha para uvxyz: • u= am-l, v=al, x=bm-(n+p), y=bn, z=bpambm • mas com i (do lema) igual a zero: • ak bjambm, com k,j<m, e não está em L • outras escolhas são análogas.

  8. Ainda mais Exemplo! L={anbj|n=j2} não é LC. • Seja m, do lema e am2bm. • De todas as escolhas possíveis aquelas que requerem mais cuida-do tem a forma geral: • u=am2-(k1+p), v=ak1, x=apbm-(k2+q), y=bk2 e z=bq. • bombeando i vezes obteremos m2+(i-1)k1 a’s e m+(i-1)k2 b’s

  9. para termos |vy|>1: • se k1=0 então k2>1 e uma cadeia com m2 a’s e m-k2 b’s (i=0) não está em L; • se k2=0 então k1>1 e uma cadeia com m2-k1 a’s e m b’s (i=0) também não está em L; • se k1,k2>0, com i=0: (m-k2)2 ≤ (m-1)2 = m2 - 2m + 1 < m2 - k1 • e a cadeia obtida não está em L.

  10. Propriedades das LLCs • É fechada sobre união, concatenação, fecho de Kleene e homomorfismo; • mas não é fechada sob interseção nem complementação! • L1={anbncm|n,m≥0} • L2={anbmcm|n,m≥0} • L1L2={anbncn|n≥0} • L1L2=(L1  L2)

  11. Propriedades de Decidibilidade • Existe algoritmo para decidir se: • L é vazia ou não; • L é infinita ou não; • xL; • Não existe para: • L(G)=* • L(G1)L(G2) • L(G1)=L(G2) • L(G) é regular • L(G1)L(G2)=

More Related