Você está na página 1de 132

Linguagens Formais e Autmatos

P. Blauth Menezes
blauth@inf.ufrgs.br

Departamento de Informtica Terica Instituto de Informtica / UFRGS

Linguagens Formais e Autmatos - P. Blauth Menezes

Linguagens Formais e Autmatos


P. Blauth Menezes 1 2 3 4 5 6 7 8 9 Introduo e Conceitos Bsicos Linguagens e Gramticas Linguagens Regulares Propriedades das Linguagens Regulares Autmato Finito com Sada Linguagens Livres do Contexto Propriedades e Reconhecimento das Linguagens Livres do Contexto Linguagens Recursivamente Enumerveis e Sensveis ao Contexto Hierarquia de Classes e Linguagens e Concluses

Linguagens Formais e Autmatos - P. Blauth Menezes

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

6 Linguagens Livres do Contexto

Linguagens Formais e Autmatos - P. Blauth Menezes

6 Linguagens Livres do Contexto

Estudo da Classe das Linguagens Livres do Contexto ou Tipo 2 de fundamental importncia


universo mais amplo de linguagens comparativamente com as LR trata, adequadamente, questes tpicas de linguagens de programao parnteses balanceados construes bloco-estruturadas, etc.

Algoritmos reconhecedores e geradores


relativamente simples eficincia razovel

Linguagens Formais e Autmatos - P. Blauth Menezes

Aplicaes tpicas
centradas em linguagens artificiais em especial, nas linguagens de programao analisadores sintticos tradutores de linguagens processadores de texto em geral

Hierarquia de Chomsky
Classe das Linguagens Livres do Contexto contm propriamente a Classe das Linguagens Regulares

Entretanto, uma classe relativamente restrita


fcil definir linguagens que no pertencem a esta classe

Linguagens Formais e Autmatos - P. Blauth Menezes

Abordagens
Gramtica Livre do Contexto (axiomtico ou gerador) restries na forma das regras de produo mais livre que na gramtica regular Autmato com Pilha (operacional ou reconhecedor) anlogo ao autmato finito no-determinstico adicionalmente: memria auxiliar tipo pilha pode ser lida ou gravada

Linguagens Formais e Autmatos - P. Blauth Menezes

Relativamente s GLC
rvore de derivao representa a derivao de uma palavra na forma de rvore parte do smbolo inicial como a raiz termina em smbolos terminais como folhas Gramtica Ambgua pelo menos uma palavra com duas ou mais rvores de derivao Simplificao de Gramtica (produes) sem reduzir o poder de gerao Forma Normal: restries rgidas na forma das produes sem reduzir o poder de gerao da gramtica

Linguagens Formais e Autmatos - P. Blauth Menezes

Autmato com pilha construdo a partir de uma GLC


construo de um reconhecedor a partir de sua gramtica simples e imediata estrutura de pilha suficiente como nica memria pode ser reconhecida por autmato com pilha com um estado estados no so necessrios para "memorizar" o passado

Linguagens Formais e Autmatos - P. Blauth Menezes

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

10

6.1 Gramtica Livre do Contexto


Def: Gramtica Livre do Contexto (GLC)
G = (V, T, P, S) qualquer regra de produo da forma A A varivel de V palavra de (V T)* lado esquerdo = uma varivel

Linguagens Formais e Autmatos - P. Blauth Menezes

11

Def: Linguagem Livre do Contexto (LLC) ou Tipo 2


Linguagem gerada pela gramtica livre do contexto G GERA(G) = { w T* S + w }

Portanto, livre do contexto


qualquer linguagem regular

Linguagens Formais e Autmatos - P. Blauth Menezes

12

Relao entre as classes de linguagens estudadas

Universo de Todas as Linguagens Linguagens Livre do Contexto

Linguagens Regulares

Linguagens Formais e Autmatos - P. Blauth Menezes

13

"Livre do contexto" ???


mais geral classe de linguagens cuja produo da forma A em uma derivao, a varivel A deriva sem depender ("livre") de qualquer anlise dos smbolos que antecedem ou sucedem A (o "contexto") na palavra que est sendo derivada

Linguagens Formais e Autmatos - P. Blauth Menezes

14

Exp: GLC: Duplo Balanceamento


L1 = { anbn n 0 } G1 = ({ S }, { a, b }, P1, S) P1 = { S aSb S } GERA(G1) = L1 Derivao da palavra aabb S aSb aaSbb aabb = aabb

Linguagens Formais e Autmatos - P. Blauth Menezes

15

Importante: Duplo Balanceamento


analogia com estruturas de duplo balanceamento em linguagens de programao linguagens bloco-estruturadas beginn endn e similares linguagens com parnteses balanceados (n )n

Linguagens Formais e Autmatos - P. Blauth Menezes

16

Exp: GLC: Expresses Aritmticas


L2 - expresses aritmticas com colchetes balanceados, dois operadores e um operando G2 = ({ E }, { +, , [, ], x }, P2, E) P2 = { E E+E EE [E] x } Derivao da expresso [x+x]x E EE [E]E [E+E]E [x+E]E [x+x]E [x+x]x existe outra seqncia de derivao? Quantas? quais produes controlam o duplo balanceamento de parnteses?

Linguagens Formais e Autmatos - P. Blauth Menezes

17

Obs: BNF: Backus Naur Form


Maneira usual de representar uma GLC variveis palavras delimitadas pelos smbolos e terminais palavras no-delimitadas representao de uma regra de produo A A ::=

Linguagens Formais e Autmatos - P. Blauth Menezes

18

Exp: BNF: Identificador em Pascal


A varivel identificador o smbolo inicial identificador ::= letra identificadorletra identificadordgito letra ::= a b z dgito ::= 0 1 9

Linguagens Formais e Autmatos - P. Blauth Menezes

19

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

20

6.2 rvore de Derivao

Derivao de palavras na forma de rvore


partindo do smbolo inicial como a raiz terminando em smbolos terminais como folhas

Conveniente em muitas aplicaes


Compiladores processadores de textos

Linguagens Formais e Autmatos - P. Blauth Menezes

21

Def: rvore de Derivao


Raiz: smbolo inicial Vrtices interiores: variveis se A um vrtice interior e X1, X2,,Xn so os "filhos" de A A X1X2Xn uma produo da gramtica X1, X2,,Xn so ordenados da esquerda para a direita Vrtice folha ou folha: terminal ou o smbolo vazio se vazio: nico filho de seu pai (A )

raiz

vrtice interior

...
X1
Linguagens Formais e Autmatos - P. Blauth Menezes

X2

...

a Xn folhas

22

Exp: rvore de Derivao: aabb e [x+x]x


S E

Uma rvore de derivao


pode representar derivaes distintas de uma mesma palavra
23

Linguagens Formais e Autmatos - P. Blauth Menezes

Exp: rvore de Derivao Derivaes: x+xx


E E+E x+E x+EE x+xE x+xx E E+E E+EE E+Ex E+xx x+xx E E+E E+EE x+EE x+xE x+xx etc
E

mais a esquerda mais a direita

x
Linguagens Formais e Autmatos - P. Blauth Menezes

x
24

Def: Derivao mais Esquerda (Direita)


Seqncia de produes aplicada sempre varivel mais esquerda (direita) da palavra

Exp: Derivao mais Esquerda (Direita): x+xx


E E+E x+E x+EE x+xE x+xx E E+E E+EE E+Ex E+xx x+xx
E

mais a esquerda mais a direita

x
Linguagens Formais e Autmatos - P. Blauth Menezes

x
25

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

26

6.3 GLC Ambgua

Gramtica ambgua
uma palavra associada a duas ou mais rvores de derivao

Pode ser desejvel que a gramtica usada seja noambgua


desenvolvimento e otimizao de alguns algoritmos de reconhecimento

Nem sempre possvel eliminar ambigidades


fcil definir linguagens para as quais qualquer GLC ambgua

Linguagens Formais e Autmatos - P. Blauth Menezes

27

Def: Gramtica (Livre do Contexto) Ambgua


Existe pelo menos uma palavra que possui duas ou mais rvores de derivao

Exp: Gramtica Ambgua: x+xx


E E

x
Linguagens Formais e Autmatos - P. Blauth Menezes

x
28

Mais de uma derivao esquerda (direita)


x+xx Derivao mais esquerda E E+E x+E x+EE x+xE x+xx E EE E+EE x+EE x+xE x+xx Derivao mais direita E E+E E+EE E+Ex E+xx x+xx E EE Ex E+Ex E+xx x+xx

Linguagens Formais e Autmatos - P. Blauth Menezes

29

Forma equivalente de definir gramtica ambgua


existe pelo menos uma palavra com duas ou mais derivaes mais esquerda alternativamente, mais direita

Teorema: Gramtica Ambgua


Uma GLC uma Gramtica Ambgua se existe pelo menos uma palavra duas ou mais derivaes mais esquerda ou duas ou mais derivaes mais direita

Linguagens Formais e Autmatos - P. Blauth Menezes

30

Def: Linguagem Inerentemente Ambgua


Qualquer GLC ambgua

Exp: Linguagem Inerentemente Ambgua


{ w w = anbncmd m ou w = anbmcmd n, n 1, m 1 }

Linguagens Formais e Autmatos - P. Blauth Menezes

31

Exp: Linguagem Inerentemente Ambgua: contraexemplo


Expresses aritmticas no-ambgua (exerccio) Correto entendimento da soluo especialmente importante justifica a maneira aparentemente estranha de definir expresses na maioria das gramticas das linguagens de programao

Linguagens Formais e Autmatos - P. Blauth Menezes

32

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto 6.4.1 Smbolos Inteis 6.4.2 Produes Vazias 6.4.3 Produes que Substituem Variveis 6.4.4 Simplificaes Combinadas 6.5 Formas Normais 6.6 Recurso Esquerda 6.7 Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

33

6.4 Simplificao de GLC

Simplificao de alguns tipos de produes


sem reduzir o poder de gerao das GLC

Simplificaes so importantes
construo e otimizao de algoritmos demonstrao de teoremas

Linguagens Formais e Autmatos - P. Blauth Menezes

34

Simplificaes
Smbolos inteis excluso de variveis ou terminais no-usados Produes vazias, da forma A se pertence linguagem: includa produo vazia especfica Produes que substituem variveis, da forma A B substituem uma varivel por outra no adicionam informao de gerao de palavras

Provas omitidas
algoritmos de simplificao atingem os objetivos propostos

Linguagens Formais e Autmatos - P. Blauth Menezes

35

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto 6.4.1 Smbolos Inteis 6.4.2 Produes Vazias 6.4.3 Produes que Substituem Variveis 6.4.4 Simplificaes Combinadas 6.5 Formas Normais 6.6 Recurso Esquerda 6.7 Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

36

6.4.1

Smbolos Inteis

Smbolos inteis
smbolos no-usados na gerao de palavras de terminais

Simplificao exclui
produes que fazem referncia a esses smbolos os prprios smbolos inteis no necessria qualquer modificao adicional

Linguagens Formais e Autmatos - P. Blauth Menezes

37

Algoritmo
Etapa 1: qualquer varivel gera terminais restringe o conjunto de variveis
considera todas as variveis que geram terminais diretamente

(exemplo: A a) adiciona, sucessivamente, variveis que geram terminais indiretamente (exemplo: B Ab) Etapa 2: qualquer smbolo atingvel a partir do smbolo inicial analisa as produes da gramtica a partir do smbolo inicial
considera exclusivamente o smbolo inicial sucessivamente as produes da gramtica so aplicadas:

smbolos referenciados so adicionados aos novos conjuntos


Linguagens Formais e Autmatos - P. Blauth Menezes

38

Def: Algoritmo: Excluso dos Smbolos Inteis


G = (V, T, P, S) Etapa 1: qualquer varivel gera terminais. Gramtica resultante G1 = (V1, T, P1, S) construo de V1 V V1=; repita V1=V1{AAP e (TV1)*} at que o cardinal de V1 no aumente; P1 possui os mesmos elementos que P, excetuando-se produes cujas variveis no pertencem a V1 GLC

Linguagens Formais e Autmatos - P. Blauth Menezes

39

Etapa 2: qualquer smbolo atingvel a partir do smbolo inicial Gramtica resultante G2 = (V2, T2, P2, S) T2=; V2={S}; repita V2=V2{AXAP1, XV2}; T2=T2{aXaP1, XV2} at que os cardinais de V2 e T2 no aumentem; P2 possui os mesmos elementos que P1, excetuando-se produes cujos smbolos no pertencem a V2 ou T2

Linguagens Formais e Autmatos - P. Blauth Menezes

40

Se as etapas forem executadas em ordem inversa (Etapa 2 antes da Etapa 1)


pode no atingir o resultado esperado demonstrao: apresentar um contra-exemplo (exerccio)

Linguagens Formais e Autmatos - P. Blauth Menezes

41

Exp: Excluso dos Smbolos Inteis


G = ({ S, A, B, C }, { a, b, c }, P, S) P = { S aAa bBb, A a S, C c } Etapa 1: qualquer varivel gera terminais Iterao Variveis incio 1 2 3 { A, C } { A, C, S } { A, C, S }

S bBb excluda: B no pertence ao novo conjunto de variveis


Linguagens Formais e Autmatos - P. Blauth Menezes

42

gramtica resultante da etapa 1 G1 = ({ A, C, S }, { a }, { S aAa, A a S, C c }, S) Etapa 2: qualquer smbolo atingvel a partir do smbolo inicial Iterao Variveis Terminais incio 1 2 {S} { S, A } { S, A } {a} {a}

C c excluda: C e c no pertencem aos novos conjuntos gramtica resultante da etapa 2 G2 = ({ S, A }, { a }, { S aAa, A a S }, S)


Linguagens Formais e Autmatos - P. Blauth Menezes

43

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto 6.4.1 Smbolos Inteis 6.4.2 Produes Vazias 6.4.3 Produes que Substituem Variveis 6.4.4 Simplificaes Combinadas 6.5 Formas Normais 6.6 Recurso Esquerda 6.7 Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

44

6.4.2

Produes Vazias

Excluso de produes vazias (da forma A )


pode determinar modificaes diversas nas produes

Algoritmo
Etapa 1: variveis que constituem produes vazias A : variveis que geram diretamente B A: sucessivamente, variveis que indiretamente geram Etapa 2: excluso de produes vazias considera apenas as produes no-vazias cada produo cujo lado direito possui uma varivel que gera , determina uma produo adicional, sem essa varivel Etapa 3: gerao da palavra vazia, se necessrio

Linguagens Formais e Autmatos - P. Blauth Menezes

45

Def: Algoritmo: Excluso das Produes Vazias


G = (V, T, P, S) Etapa 1: variveis que constituem produes vazias V, conjunto das variveis que geram V = { A A } ; repita V=V{XXX1XnP tal que X1,,XnV} at que o cardinal de V no aumente; GLC

Linguagens Formais e Autmatos - P. Blauth Menezes

46

Etapa 2: excluso de produes vazias Gramtica resultante G1 = (V, T, P1, S) construo de P1 P1={A}; repita para toda AP1, XV tal que =1X2, 12 faa P1=P1{A12} at que o cardinal de P1 no aumente;

Linguagens Formais e Autmatos - P. Blauth Menezes

47

Etapa 3: gerao da palavra vazia, se necessrio se pertence linguagem introduz a produo S gramtica resultante G2 = (V, T, P2, S)
P2 = P1 { S }

Linguagens Formais e Autmatos - P. Blauth Menezes

48

Exp: Excluso das Produes Vazias


G = ({ S, X, Y }, { a, b }, P, S) P = { S aXa bXb , X a b Y, Y }

Etapa 1: variveis que constituem produes vazia

Iterao incio 1 2

V { S, Y } { S, Y, X } { S, Y, X }

Linguagens Formais e Autmatos - P. Blauth Menezes

49

Etapa 2: excluso de produes vazias

Iterao incio 1 2

Produes { S aXa bXb, X a b Y } { S aXa bXb aa bb, X a b Y } { S aXa bXb aa bb, X a b Y }

Gramtica resultante G1 = ({ S, X, Y }, { a, b }, { S aXa bXb aa bb, X a b Y }, S) Etapa 3: gerao da palavra vazia, se necessrio. palavra vazia pertence linguagem: S includa
Linguagens Formais e Autmatos - P. Blauth Menezes

50

Gramtica resultante G2 = ({ S, X, Y }, P2, S) P2 = { a, b }, { S aXa bXb aa bb , X a b Y }

Observe
Y, originalmente um smbolo til, resultou em um smbolo intil excluso de produes vazias gerou smbolo intil

Concluso
no qualquer combinao de simplificaes de gramtica que atinge o resultado desejado

Linguagens Formais e Autmatos - P. Blauth Menezes

51

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto 6.4.1 Smbolos Inteis 6.4.2 Produes Vazias 6.4.3 Produes que Substituem Variveis 6.4.4 Simplificaes Combinadas 6.5 Formas Normais 6.6 Recurso Esquerda 6.7 Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

52

6.4.3

Produes que Substituem Variveis

Produo que substitui uma varivel por outra


tipo A B no adiciona informao em termos de gerao de palavras se B , ento A B pode ser substituda por A generalizao da idia: algoritmo proposto

Linguagens Formais e Autmatos - P. Blauth Menezes

53

Algoritmo
Etapa 1: fecho transitivo de cada varivel
conjunto de variveis que podem substitu-la transitivamente ex: se A B e B C, ento B e C pertencem ao fecho de A

Etapa 2: excluso das produes que substituem variveis


se atingvel a partir de A atravs de seu fecho substitui A B por A

Linguagens Formais e Autmatos - P. Blauth Menezes

54

Def: Algoritmo: Excluso das Produes que Substituem Variveis


G = (V, T, P, S) Etapa 1: fecho transitivo de cada varivel para toda AV faa FECHO-A={BAB e A+B usando exclusivamente produes de P da forma XY}; GLC

Linguagens Formais e Autmatos - P. Blauth Menezes

55

Etapa 2: excluso das produes que substituem variveis Gramtica resultante G1 = (V, T, P1, S) construo de P1 P1={AAP e V}; para toda AV e BFECHO-A faa se BP e V ento P1=P1{A};

Linguagens Formais e Autmatos - P. Blauth Menezes

56

Exp: Excluso das Produes que Substituem Variveis


G = ({ S, X }, { a, b }, P, S) P = { S aXa bXb, X a b S } Etapa 1: fecho transitivo da cada varivel FECHO-S = FECHO-X = { S } GLC

Linguagens Formais e Autmatos - P. Blauth Menezes

57

Etapa 2: excluso das produes da forma A B

Iterao inicial S X

Produes { S aXa bXb, X a b } { S aXa bXb, X a b } { S aXa bXb, X a b aXa bXb }

Gramtica resultante G1 = ({ S, X }, { a, b }, P1, S) P1 = { S aXa bXb, X a b aXa bXb }, S)

Linguagens Formais e Autmatos - P. Blauth Menezes

58

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto 6.4.1 Smbolos Inteis 6.4.2 Produes Vazias 6.4.3 Produes que Substituem Variveis 6.4.4 Simplificaes Combinadas 6.5 Formas Normais 6.6 Recurso Esquerda 6.7 Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

59

6.4.4

Simplificaes Combinadas

No qualquer combinao de simplificaes de GLC


que atinge o resultado desejado

Exemplo: gramtica sem smbolos inteis, mas com produes que substituem variveis
algoritmo para excluir produes que substituem variveis pode gerar smbolos inteis (por qu?)

Seqncia de simplificao recomendada


Excluso das produes vazias Excluso das produes que substituem variveis Excluso dos smbolos inteis

Linguagens Formais e Autmatos - P. Blauth Menezes

60

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais 6.5.1 Forma Normal de Chomsky 6.5.2 Forma Normal de Greibach 6.6 Recurso Esquerda 6.7 Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

61

6.5 Formas Normais

Formas normais
restries rgidas na forma das produes sem reduzir o poder de gerao das GLC excetuando-se a gerao da palavra vazia

Aplicaes
desenvolvimento de algoritmos destaque para reconhecedores de linguagens prova de teoremas

Linguagens Formais e Autmatos - P. Blauth Menezes

62

Forma Normal de Chomsky: produes so da forma


A BC ou Aa

Forma Normal de Greibach: produes so da forma


A a palavra de variveis

Algoritmos de converso
provas omitidas de que os algoritmos atingem os objetivos propostos

Linguagens Formais e Autmatos - P. Blauth Menezes

63

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais 6.5.1 Forma Normal de Chomsky 6.5.2 Forma Normal de Greibach 6.6 Recurso Esquerda 6.7 Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

64

6.5.1

Forma Normal de Chomsky


G = (V, T, P, S) GLC

Def: Forma Normal de Chomsky (FNC)

Todas produes so da forma A BC

(A, B e C so variveis, a terminal) ou Aa

Palavra vazia
no pertence linguagem gerada por uma gramtica na FNC

Linguagens Formais e Autmatos - P. Blauth Menezes

65

Algoritmo: trs etapas


Etapa 1: simplificao da gramtica A linguagem no possui AB um smbolo no lado direito: terminal smbolos inteis opcional Etapa 2: variveis no lado direito das produes lado direito de comprimento 2: exclusivamente variveis se for um terminal? Etapa 3: exatamente duas variveis no lado direito das produes como transformar produes da forma A B1B2Bn (n 2) ?

Linguagens Formais e Autmatos - P. Blauth Menezes

66

Def: Algoritmo - Forma Normal de Chomsky


G = (V, T, P, S) Etapa 1: simplificao da gramtica G1 = (V1, T1, P1, S) simplificaes combinadas produes vazias produes que substituem variveis smbolos inteis (opcional) gramtica resultante (algoritmos estudados) GLC tal que GERA(G)

Linguagens Formais e Autmatos - P. Blauth Menezes

67

Etapa 2: transformao do lado direito das produes de comprimento maior ou igual a dois G2 = (V2, T1, P2, S) construo de V2 e P2 gramtica resultante

(para cada varivel a, suponha Ca V2)

V2=V1; P2=P1; para toda AX1X2XnP2 tal que n 2 faa se para r{1,,n}, Xr um smbolo terminal ento (suponha Xr=a) V2=V2{Ca}; substitui a por Ca em AX1X2XnP2; P2=P2{Caa};
Linguagens Formais e Autmatos - P. Blauth Menezes

68

Etapa 3: transformao do lado direito das produes de comprimento maior ou igual a trs em produes com exatamente duas variveis G3 = (V3, T1, P3, S) gramtica resultante

construo de V3 e P3 a cada ciclo, suponha D1 V3,,Dn-2 V3) V3=V2; P3=P2; para toda AB1B2BnP3 tal que n3 faa P3=P3{AB1B2Bn}; V3=V3{D1,,Dn-2}; P3=P3{AB1D1, D1B2D2,, Dn-3Bn-2Dn-2, Dn-2Bn-1Bn};

Linguagens Formais e Autmatos - P. Blauth Menezes

69

Exp: Algoritmo: Forma Normal de Chomsky


G = ({ E }, { +, , [, ], x }, P, E) P = { E E+E EE [E] x } Etapa 1: simplificao da gramtica j est simplificada expr. aritmticas

Etapa 2: lado direito das produes de comprimento 2 E x est OK demais produes E E C+ E E C E C[ E C] C+ + C C[ [ C] ]


Linguagens Formais e Autmatos - P. Blauth Menezes

70

Etapa 3: exatamente duas variveis no lado direito das produes produes E E C+ E E C E C[ E C] substitudas por E E D1 E D2 C[ D3 D1 C+ E D2 C E D3 E C]

Linguagens Formais e Autmatos - P. Blauth Menezes

71

Gramtica resultante, na Forma Normal de Chomsky GFNC = ({ E, C+, C, C[, C], D1, D2, D3 }, { +, , [, ], x }, PFNC, E) Produes de PFNC E E D1 E D2 C[ D3 x, D1 C+ E D2 C E D3 E C], C+ + C C[ [ C] ]

Linguagens Formais e Autmatos - P. Blauth Menezes

72

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais 6.5.1 Forma Normal de Chomsky 6.5.2 Forma Normal de Greibach 6.6 Recurso Esquerda 6.7 Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

73

6.5.2

Forma Normal de Greibach


G = (V, T, P, S) GLC ( uma palavra de V*)

Def: Forma Normal de Greibach (FNG)

Todas as suas produes so da forma A a

Palavra vazia
no pertence linguagem gerada por uma gramtica na FNG

Linguagens Formais e Autmatos - P. Blauth Menezes

74

Algoritmo (etapas)

Etapa 1: simplificao da gramtica. Anloga FNC A AB smbolos inteis linguagem no possui primeiro smbolo no lado direito: terminal opcional

Etapa 2: renomeao das variveis em uma ordem crescente exemplo: A1, A2,, An diferentes critrios de renomeao diferentes gramticas na FNG todas equivalentes (geram a mesma linguagem) # V = n

Linguagens Formais e Autmatos - P. Blauth Menezes

75

Etapa 3: produes na forma Ar As , em que r s Ar As tais que r > s so modificadas substitui As pelas suas produes (As 1 m) resulta em Ar 1 m e assim sucessivamente conjunto de variveis finito: limite para produes crescentes gerao de terminal Ar a gerao de recurso Ar Ar

Linguagens Formais e Autmatos - P. Blauth Menezes

76

Etapa 4: excluso das recurses da forma Ar Ar podem existir originalmente na gramtica ou serem geradas pela etapa anterior eliminao da recurso esquerda introduz variveis auxiliares inclui recurso direita

Br Br

Linguagens Formais e Autmatos - P. Blauth Menezes

77

Etapa 5: um terminal no incio do lado direito de cada produo produes da forma Ar As so tais que r < s portanto, produes da maior varivel An obrigatoriamente iniciam por terminal no lado direito An-1 An: substitu An pelas suas produes (An a) lado direito das produes de An-1 tambm inicia por terminal exemplo: An-1 a repetio para An-2,,A1 resulta em produes exclusivamente da forma Ar a Etapa 6: produes na forma A a, palavra de variveis anloga correspondente etapa do algoritmo relativo FNC
Linguagens Formais e Autmatos - P. Blauth Menezes

78

Def: Algoritmo: Forma Normal de Greibach


G = (V, T, P, S) Etapa 1: simplificao da gramtica G1 = (V1, T1, P1, S) simplificaes combinadas produes vazias produes que substituem variveis smbolos inteis (opcional) gramtica resultante (algoritmos estudados) GLC tq GERA(G)

Linguagens Formais e Autmatos - P. Blauth Menezes

79

Etapa 2: renomeao das variveis em uma ordem crescente qualquer. G2 = (V2, T1, P2, Ai) gramtica resultante

suponha que Ai corresponde renomeao de S

Etapas 3 e 4: transformao de produes para a forma Ar As , na qual r s e excluso das recurses da forma Ar Ar G3 = (V3, T1, P3, Ai) construo de V3 e P3 supondo cardinal de V2 n a cada ciclo, Br V3 gramtica resultante

Linguagens Formais e Autmatos - P. Blauth Menezes

80

P3=P2 para r variando de 1 at n faa para s variando de 1 at r-1 Etapa 3 faa para toda ArAs P3 faa excluir ArAs de P3; para toda As P3 faa P3=P3{Ar} para toda ArArP3 Etapa 4 faa excluir ArAr de P3; V3=V3{Br}; P3=P3{Br}{BrBr}; para toda ArP3 tq no inicia por Ar e alguma ArAr foi excluda faa P3=P3{ArBr};
Linguagens Formais e Autmatos - P. Blauth Menezes

81

Etapa 5: um terminal no incio do lado direito de cada produo G4 = (V3, T1, P4, Ai) construo de P4 P4=P3; para r variando de n-1 at 1 e toda ArAs P4 faa excluir ArAs de P4; para toda As de P4 faa P4=P4{Ar}; gramtica resultante

Linguagens Formais e Autmatos - P. Blauth Menezes

82

produes relativas s variveis auxiliares Br iniciam por um terminal do lado direito para faa toda BrAs r excluir BrAs r de P4; para toda As a faa P4=P4{Brar};

Etapa 6: produes na forma A a, palavra de variveis anloga correspondente etapa da Forma Normal de Chomsky

Linguagens Formais e Autmatos - P. Blauth Menezes

83

Exp: Algoritmo: Forma Normal de Greibach


G = ({ S, A }, { a, b }, P, S) P = { S AA a, A SS b } Etapa 1: simplificao da gramtica j est simplificada Etapa 2: renomeao das variveis em uma ordem crescente qualquer S e A so renomeadas para A1 e A2 A1 A2A2 a A2 A1A1 b GLC

Linguagens Formais e Autmatos - P. Blauth Menezes

84

Etapas 3 e 4: transformao de produes para a forma Ar As , na qual r s e excluso das recurses da forma Ar Ar A2 A1A1 necessita ser modificada, resultando em A1 A2A2 a A2 A2A2A1 aA1 b A2 A2A2A1 contm recurso A1 A2A2 a A2 aA1 b aA1B bB B A2A1 A2A1B (varivel auxiliar B)

Linguagens Formais e Autmatos - P. Blauth Menezes

85

Etapa 5: um terminal no incio do lado direito de cada produo lado direito das produes da maior varivel A2 inicia por um terminal substitui A2 em A1 A2A2 pelas correspondentes derivaes A1 aA1A2 bA2 aA1BA2 bBA2 a A2 aA1 b aA1B bB B A2A1 A2A1B produes referentes varivel B B aA1A1 bA1 aA1BA1 bBA1 aA1A1B bA1B aA1BA1B bBA1B

Linguagens Formais e Autmatos - P. Blauth Menezes

86

Etapa 6: produes na forma A a, composta por variveis produes j esto nessa forma Gramtica resultante, na Forma Normal de Greibach PFNG = { A1 aA1A2 bA2 aA1BA2 bBA2 a, A2 aA1 b aA1B bB, B aA1A1 bA1 aA1BA1 bBA1 aA1A1B bA1B aA1BA1B bBA1B } GFNG = ({ A1, A2, B }, { a, b }, PFNG, A1),

Linguagens Formais e Autmatos - P. Blauth Menezes

87

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha

Linguagens Formais e Autmatos - P. Blauth Menezes

88

6.6 Recurso Esquerda

Recurso esquerda
A + A

Freqentemente desejvel que a gramtica no seja recursiva esquerda


exemplo: desenvolvimento de algoritmos reconhecedores

Algoritmo
quatro primeiras etapas do algoritmo Forma Normal de Greibach

Linguagens Formais e Autmatos - P. Blauth Menezes

89

Def: Algoritmo: Gramtica sem Recurses Esquerda


G = (V, T, P, S) GLC

Etapa 1: simplificao da gramtica Etapa 2: renomeao das variveis em uma ordem crescente qualquer Etapa 3: produes na forma Ar As , na qual r s Etapa 4: excluso das recurses da forma Ar Ar

Linguagens Formais e Autmatos - P. Blauth Menezes

90

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha 6.7.1 Definio do Autmato com Pilha 6.7.2 Autmato com Pilha e Linguagens Livres do Contexto 6.7.3 Nmero de Pilhas e o Poder Computacional
91

Linguagens Formais e Autmatos - P. Blauth Menezes

6.7 Autmato com Pilha

Classe das Linguagens Livres do Contexto


pode ser associada a um formalismo do tipo autmato Autmato com Pilha

Autmato com pilha


anlogo ao autmato finito incluindo uma pilha como memria auxiliar no-determinismo

Linguagens Formais e Autmatos - P. Blauth Menezes

92

Pilha
independente da fita de entrada no possui limite mximo de tamanho to grande quanto se queira baseada na noo de conjunto infinitamente contvel

Linguagens Formais e Autmatos - P. Blauth Menezes

93

Estrutura de uma pilha


ltimo smbolo gravado o primeiro a ser lido base: fixa e define o seu incio topo: varivel e define a posio do ltimo smbolo gravado
gravao leitura

topo sentido de crescimento base


Linguagens Formais e Autmatos - P. Blauth Menezes

94

No-determinismo: importante e necessrio


aumenta o poder computacional dos AP exemplo { wwr w palavra sobre { a, b } }
reconhecimento s possvel por um AP No-Determinstico

Linguagens Formais e Autmatos - P. Blauth Menezes

95

AP Nmero de estados
qualquer LLC pode ser reconhecida por um AP com somente um estado (ou trs estados, dependendo da definio) pilha suficiente como nica memria estados no so necessrios para "memorizar" informaes passadas estados no AP poderiam ser excludos sem se reduzir o poder computacional como a pilha no possui tamanho mximo AP pode assumir tantos estados quanto se queira

Linguagens Formais e Autmatos - P. Blauth Menezes

96

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha 6.7.1 Definio do Autmato com Pilha 6.7.2 Autmato com Pilha e Linguagens Livres do Contexto 6.7.3 Nmero de Pilhas e o Poder Computacional
97

Linguagens Formais e Autmatos - P. Blauth Menezes

6.7.1

Definio do Autmato com Pilha

Duas definies universalmente aceitas


estados finais pra aceitando ao atingir um estado final inicialmente a pilha vazia pilha vazia pra aceitando quando a pilha estiver vazia inicialmente, a pilha um smbolo inicial da pilha no existem estados finais definies equivalentes (possuem o mesmo poder computacional) adotada a definio que usa estados finais

Linguagens Formais e Autmatos - P. Blauth Menezes

98

AP No-Determinstico ou simplesmente AP
Fita anloga do autmato finito Pilha memria auxiliar pode ser usada para leitura e gravao Unidade de Controle reflete o estado corrente da mquina possui: cabea de fita e cabea de pilha Programa, Funo Programa ou Funo de Transio comanda leitura da fita leitura e gravao da pilha define o estado da mquina

Linguagens Formais e Autmatos - P. Blauth Menezes

99

Pilha
cada clula armazena um smbolo do alfabeto auxiliar pode ser igual ao alfabeto de entrada leitura ou gravao sempre no topo no possui tamanho fixo, nem mximo tamanho corrente: tamanho da palavra armazenada valor inicial: vazio (palavra vazia)

Linguagens Formais e Autmatos - P. Blauth Menezes

100

Unidade de controle
nmero finito e predefinido de estados Cabea da Fita unidade de leitura: acessa uma clula da fita de cada vez move exclusivamente para a direita pode testar se a entrada foi completamente lida Cabea da Pilha unidade de leitura e gravao

Linguagens Formais e Autmatos - P. Blauth Menezes

101

Cabea da Pilha: leitura e gravao


Leitura move para a direita ("para baixo") ao ler um smbolo acessa um smbolo de cada vez, sempre do topo exclui o smbolo lido pode testar se a pilha est vazia Gravao move para a esquerda ("para cima") ao gravar pode gravar uma palavra composta por mais de um smbolo smbolo do topo o mais esquerda da palavra gravada

Linguagens Formais e Autmatos - P. Blauth Menezes

102

Controle Finito?
Unidade de controle: nmero finito e predefinido de estados Mas no dita de controle finito (em oposio aos autmatos finitos) contedo da pilha tambm caracteriza o estado do sistema

Linguagens Formais e Autmatos - P. Blauth Menezes

103

Programa uma funo parcial


dependendo estado corrente smbolo lido da fita smbolo lido da pilha determina novo estado palavra a ser gravada (na pilha) possui a facilidade de movimento vazio permite mudar de estado sem ler da fita

Linguagens Formais e Autmatos - P. Blauth Menezes

104

Def: Autmato com Pilha (No-Determinstico)


M = (, Q, , q0, F, V) - alfabeto de smbolos) de entrada Q - conjunto de estados possveis o qual finito - (funo) programa ou funo de transio funo parcial : Q ( { , ? }) (V { , ? }) 2QV* (p, x, y) = { (q1, v1),,(qn, vn) } q 0 - elemento distinguido de Q: estado inicial F - subconjunto de Q: conjunto de estados finais V - alfabeto auxiliar ou alfabeto da pilha transio

Linguagens Formais e Autmatos - P. Blauth Menezes

105

Caractersticas da funo programa


funo parcial "?" indica teste de pilha vazia toda palavra de entrada lida leitura de indica movimento vazio da fita ou pilha (no l, nem move a cabea) no-determinstico: basta que o movimento seja vazio na fita gravao de nenhuma gravao realizada na pilha (e no move a cabea)

Linguagens Formais e Autmatos - P. Blauth Menezes

106

Exemplo: (p, ?, ) = { (q, ) }


no estado p, se a entrada foi completamente lida, no l da pilha assume o estado q e no grava na pilha

Programa como diagrama: (p, x, y) = { (q, v) }


p (x, y, v) q

estado anterior smbolo lido da fita

novo estado palavra gravada na pilha

smbolo lido da pilha


Linguagens Formais e Autmatos - P. Blauth Menezes

107

Computao de um AP
sucessiva aplicao da funo programa para cada smbolo da entrada (da esquerda para a direita) at ocorrer uma condio de parada possvel que nunca atinja uma condio de parada processa indefinidamente (loop infinito) exemplo: empilha e desempilha um mesmo smbolo indefinidamente, sem ler da fita definio formal estende a definio da funo programa argumento: um estado e uma palavra exerccio

Linguagens Formais e Autmatos - P. Blauth Menezes

108

Parada de um AP
Aceita pelo menos um dos caminhos alternativos atinge um estado final no importa se leu ou no toda a entrada Rejeita todos os caminhos alternativos rejeitam a entrada a funo programa indefinida para cada caso Loop pelo menos um caminho alternativo est em loop infinito demais: rejeitam ou tambm esto em loop infinito

Linguagens Formais e Autmatos - P. Blauth Menezes

109

Def: Linguagem Aceita, Rejeitada, Loop


M = (, Q, , q0, F, V) autmato com pilha Linguagem Aceita ou Linguagem Reconhecida: ACEITA(M) ou L(M) todas as palavras de * aceitas por M, a partir de q0 Linguagem Rejeitada: REJEITA(M) todas as palavras de * rejeitadas por M, a partir de q0 Linguagem Loop: LOOP(M) todas as palavras de * para as quais M fica processando indefinidamente a partir de q0

Linguagens Formais e Autmatos - P. Blauth Menezes

110

Partio de * induzida por um AP M

*
ACEITA(M) REJEITA(M) LOOP(M)

algum conjunto vazio? partio induzida contm um conjuntos a menos uma classe de equivalncia no pode ser vazia

Linguagens Formais e Autmatos - P. Blauth Menezes

111

Exp: Autmato com Pilha: Duplo Balanceamento


M1 = ({ a, b }, { q0, q1, qf }, 1, q0, { qf }, { B })

(a, , B)

q0

(b, B, )

q1

(b, B, )

(?, ?, ) qf

(?, ?, )

Linguagens Formais e Autmatos - P. Blauth Menezes

112

Exp: Autmato com Pilha: Duplo Balanceamento


M1 = ({ a, b }, { q0, q1, qf }, 1, q0, { qf }, { B }) AP determinstico ACEITA(M1) = L1 LOOP(M1) vazio? 1 1 1 1 1 (q0, a, ) = { (q0, B) } (q0, b, B) = { (q1, ) } (q0, ?, ?) = { (qf, ) } (q1, b, B) = { (q1, ) } (q1, ?, ?) = { (qf, ) }

Linguagens Formais e Autmatos - P. Blauth Menezes

113

Exp: Autmato com Pilha: Palavra e sua Reversa


L3 = { wwr w pertence a { a, b }* } ACEITA(M3) = L3 LOOP(M3) vazio? AP no-determinstico (por qu?)

q0

(, , )

q1

(?, ?, )

qf

(a, , a) (b, , b)
Linguagens Formais e Autmatos - P. Blauth Menezes

(a, a, ) (b, b, )
114

Exp: Autmato com Pilha: anb m an+m


L4 = { anbman+m n 0, m 0 } ACEITA(M4) = L4 LOOP(M4) vazio? AP no-determinstico (por qu?)

q0

(, , )

q1

(, , )

q2

(?, ?, )

qf

(a, , X)

(b, , X)

(a, X, )

Linguagens Formais e Autmatos - P. Blauth Menezes

115

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha 6.7.1 Definio do Autmato com Pilha 6.7.2 Autmato com Pilha e Linguagens Livres do Contexto 6.7.3 Nmero de Pilhas e o Poder Computacional
116

Linguagens Formais e Autmatos - P. Blauth Menezes

6.7.2

AP e Linguagens Livres do Contexto

Classe linguagens aceitas por AP = Classe LLC


classe das linguagens geradas pelas GLC

Construo de um AP a partir de uma GLC qualquer, permite concluir


construo de um reconhecedor para uma LLC a partir de sua gramtica simples e imediata qualquer LLC pode ser aceita por um AP com somente um estado estados no aumentam o poder computacional

Linguagens Formais e Autmatos - P. Blauth Menezes

117

Teorema: GLC AP
Se L uma LLC, ento existe M, AP M tal que ACEITA(M) = L

Prova: Suponha que L


Construo de um AP a partir da gramtica na FNG produes da forma A a, palavra de variveis AP resultante simula a derivao mais esquerda l o smbolo a da fita l o smbolo A da pilha empilha a palavra de variveis AP M a partir da gramtica G = (V, T, P, S)

Linguagens Formais e Autmatos - P. Blauth Menezes

118

GFNG = (VFNG, TFNG, PFNG, S), G na Forma Normal de Greibach M = (TFNG, { q0, q1, qf }, , q0, { qf }, VFNG) (q0, , ) = { (q1, S) } (q1, a, A) = { (q1, ) A a PFNG } (q1, ?, ?) = { (qf, ) }

q0

(, , S)

q1

(?, ?, )

qf

(a1, A1, 1) ... (an, An, n)


Linguagens Formais e Autmatos - P. Blauth Menezes

119

A demonstrao de que ACEITA(M) = GERA(GFNG) induo no nmero de movimentos de M (ou derivaes de GFNG) exerccio como o AP pode ser modificado para tratar a palavra vazia?

Linguagens Formais e Autmatos - P. Blauth Menezes

120

Exp: GLC AP: L5 = { anb n n 1 }


Gramtica na Forma Normal de Greibach G5 = ({ S, B }, { a, b }, P5, S) P5 = { S aB aSB, B b } Correspondete AP M5 = ({ a, b }, { q0, q, qf }, 5, q0, { qf }, { S, B })
q0 (, , S) q1 (?, ?, ) qf

(a, S, B) (a, S, SB) (b, B, )


Linguagens Formais e Autmatos - P. Blauth Menezes

121

Corolrio : AP Nmero de Estados


Se L uma LLC, ento existe M AP com controle de aceitao por estados finais, com trs estados, tal que ACEITA(M) = L AP com controle de aceitao por pilha vazia, com um estado tal que ACEITA(M) = L

Corolrio : Existncia de um AP que Sempre Pra


Se L uma LLC, ento existe M, AP, tal que ACEITA(M) = L REJEITA(M) = * - L LOOP(M) =
Linguagens Formais e Autmatos - P. Blauth Menezes

122

Teorema: AP GLC
Se L aceita por um AP, ento L LLC demonstrao omitida

Obs: Estados Poder Computacional dos AP


A combinao dos resultados: Corolrio: AP Nmero de Estados Corolrio: Existncia de um AP que Sempre Pra Teorema: AP GLC comprovam que o uso dos estados como "memria" no aumenta o poder de reconhecimento do AP

Linguagens Formais e Autmatos - P. Blauth Menezes

123

6 Linguagens Livres do Contexto


6.1 6.2 6.3 6.4 6.5 6.6 6.7 Gramtica Livre do Contexto rvore de Derivao Gramtica Livre do Contexto Ambgua Simplificao de Gramtica Livre do Contexto Formas Normais Recurso Esquerda Autmato com Pilha 6.7.1 Definio do Autmato com Pilha 6.7.2 Autmato com Pilha e Linguagens Livres do Contexto 6.7.3 Nmero de Pilhas e o Poder Computacional
124

Linguagens Formais e Autmatos - P. Blauth Menezes

6.7.3

Nmero de Pilhas e o Poder Computacional


125

Linguagens Formais e Autmatos - P. Blauth Menezes

Modelo autmato com pilha


Adequado para estudos aplicados e formais pilha adequada para implementao em computadores poucas modificaes na definio determinam significativas alteraes no poder computacional principais estudos de linguagens e computabilidade podem ser desenvolvidos usando-se exclusivamente AP variando o nmero de pilhas com ou sem no-determinismo

Linguagens Formais e Autmatos - P. Blauth Menezes

126

Autmato com Pilha, sem usar a estrutura de pilha estados: nica forma de memorizar informaes passadas muito semelhante ao autmato finito AP, sem usar a pilha, com ou sem no-determinismo reconhecem a Classe das Linguagens Regulares

Linguagens Formais e Autmatos - P. Blauth Menezes

127

Autmato com Pilha Determinstico aceita a Classe das Linguagens Livres do Contexto Determinsticas importante subconjunto prprio da Classe das LLC implementao de um AP determinstico simples e eficiente facilita o desenvolvimento de analisadores sintticos algumas propriedades da Classe das LLC Determinsticas existe um tipo de gramtica que gera exatamente tal classe (exerccio de pesquisa) fechada para a operao de complemento no fechada para as operaes de unio, interseco e concatenao

Linguagens Formais e Autmatos - P. Blauth Menezes

128

Autmato com (uma) Pilha No-Determinstico aceitam exatamente a Classe das LLC Autmato com Duas Pilhas mesmo poder computacional da Mquina de Turing considerada o dispositivo mais geral de computao se existe um algoritmo para resolver um problema pode ser expresso como um autmato com duas pilhas no-determinismo no aumenta o poder computacional

Linguagens Formais e Autmatos - P. Blauth Menezes

129

Autmato com Mltiplas Pilhas poder computacional de um autmato com mais de duas pilhas equivalente ao do autmato com duas pilhas se um problema solucionado por um autmato com mltiplas pilhas pode ser solucionado por um autmato com duas pilhas

Linguagens Formais e Autmatos - P. Blauth Menezes

130

Linguagens Formais e Autmatos


P. Blauth Menezes 1 2 3 4 5 6 7 8 9 Introduo e Conceitos Bsicos Linguagens e Gramticas Linguagens Regulares Propriedades das Linguagens Regulares Autmato Finito com Sada Linguagens Livres do Contexto Propriedades e Reconhecimento das Linguagens Livres do Contexto Linguagens Recursivamente Enumerveis e Sensveis ao Contexto Hierarquia de Classes e Linguagens e Concluses
131

Linguagens Formais e Autmatos - P. Blauth Menezes

Linguagens Formais e Autmatos


P. Blauth Menezes
blauth@inf.ufrgs.br

Departamento de Informtica Terica Instituto de Informtica / UFRGS

Linguagens Formais e Autmatos - P. Blauth Menezes

132

Você também pode gostar

  • 0 IHM Apres
    0 IHM Apres
    Documento6 páginas
    0 IHM Apres
    Maxwell de Almeida
    Ainda não há avaliações
  • Apresentacao
    Apresentacao
    Documento13 páginas
    Apresentacao
    Maxwell de Almeida
    Ainda não há avaliações
  • Aula 9
    Aula 9
    Documento29 páginas
    Aula 9
    Maxwell de Almeida
    Ainda não há avaliações
  • Linguagem Automata
    Linguagem Automata
    Documento89 páginas
    Linguagem Automata
    Roger Pereira Guerra
    Ainda não há avaliações
  • Aula 7
    Aula 7
    Documento58 páginas
    Aula 7
    Rafael Almeida
    Ainda não há avaliações
  • Aula 5 - Automatos Finitos Com Saida
    Aula 5 - Automatos Finitos Com Saida
    Documento60 páginas
    Aula 5 - Automatos Finitos Com Saida
    Leonardo Rodrigues
    Ainda não há avaliações
  • Aula 4
    Aula 4
    Documento62 páginas
    Aula 4
    Maxwell de Almeida
    Ainda não há avaliações
  • Aula 1
    Aula 1
    Documento21 páginas
    Aula 1
    Ana Paula Freitas Vilela
    Ainda não há avaliações
  • Manual PG Eel Tex
    Manual PG Eel Tex
    Documento11 páginas
    Manual PG Eel Tex
    Maxwell de Almeida
    Ainda não há avaliações
  • Aula 3
    Aula 3
    Documento140 páginas
    Aula 3
    Maxwell de Almeida
    Ainda não há avaliações
  • Alfabeto
    Alfabeto
    Documento37 páginas
    Alfabeto
    Josane Souza
    Ainda não há avaliações