a n Autômatos com Pilha: Definição Linguagem Aceita por um AP Notação gráfica para AP APD X APND

Documentos relacionados
a n Autômatos com Pilha: Definição Linguagem Aceita por um AP Notação gráfica para AP APD X APND

Autômatos com Pilha: Reconhecedores de LLCs

Linguagens Livres de Contexto

a n Autômatos com Pilha: Definição Informal e Definição Formal Linguagem Aceita por um ACP ACPDet X ACPND Notação gráfica para ACP

Capítulo 9: Linguagens sensíveis ao contexto e autômatos linearmente limitados.

IV Gramáticas Livres de Contexto

Autômato com pilha. IBM1088 Linguagens Formais e Teoria da Computação. Evandro Eduardo Seron Ruiz

Linguagens livres de contexto e autômatos de pilha

SCC Capítulo 2 Linguagens Livres de Contexto e Autômatos de Pilha (versão 2)

Autómatos de Pilha. Cada transição é caracterizada pelo estado, símbolo que está ser lido e o elemento no topo da pilha. dados de entrada.

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais. Aula 01 - Conceitos Básicos. Prof. Othon Batista Mestre em Informática

Linguagens Livres do Contexto. Adaptado de H. Brandão

Autómatos de pilha e Gramáticas independentes de contexto

Linguagens Livres de Contexto

a n Sistemas de Estados Finitos AF Determinísticos

Marcos Castilho. DInf/UFPR. 5 de abril de 2018

Autómatos de pilha e GIC

Análise Léxica. Fundamentos Teóricos. Autômatos Finitos e Conjuntos Regulares (cap. III da apostila de Linguagens Formais e Compiladores)

Teoria da Computação. Capítulo 1. Máquina de Turing. Prof. Wanderley de Souza Alencar, MSc.

SCC 205 Teoria da Computação e Linguagens Formais

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais

Aula 7: Autômatos com Pilha

LINGUAGENS FORMAIS E AUTÔMATOS

Linguagens Formais e Autômatos P. Blauth Menezes

a n Sistemas de Estados Finitos AF Determinísticos

Autômatos de Pilha (AP)

Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 4. Autômatos Finitos

Reduce: reduz o que está imediatamente à esquerda do foco usando uma produção

AF Não-determinísticos Equivalência entre AFDN e AFD Equivalência entre AF e GR (H&U, 1969 e 1979), (H;M;U, 2001) e (Menezes, 2002) 1

AF Não-determinísticos Equivalência entre AFDN e AFD Equivalência entre AF e GR (H&U, 1969 e 1979), (H;M;U, 2001) e (Menezes, 2002) 1

Gramáticas e Linguagens independentes de contexto

LFA Aula 05. AFND: com e sem movimentos 05/12/2016. Linguagens Formais e Autômatos. Celso Olivete Júnior.

Capítulo II Gramáticas

Autômatos com Pilha. Douglas O. Cardoso docardoso.github.io

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

LINGUAGEM LIVRE DE CONTEXTO GRAMÁTICA LIVRE DE CONTEXTO

Expressões Regulares e Gramáticas Regulares

Gramática regular. IBM1088 Linguagens Formais e Teoria da Computação. Evandro Eduardo Seron Ruiz Universidade de São Paulo

Capítulo 8: O problema da parada. Decidibilidade e computabilidade. José Lucas Rangel Introdução.

AF Não-determinísticos Equivalência entre AFND e AFD

Compiladores - Análise Ascendente

Universidade Federal de Alfenas

Sistemas de Estados Finitos AF Determinísticos. (H&U, 1979) e (H;M;U, 2001)

Compiladores - Análise Ascendente

INE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos

INE5317 Linguagens Formais e Compiladores. AULA 4: Gramáticas

Autómatos de Pilha e Linguagens Livres de Contexto

INE5317 Linguagens Formais e Compiladores AULA 8: Linguagens Livres de Contexto

INE5317 Linguagens Formais e Compiladores AULA 9: Propriedades e Reconhecimento das Linguagens Livres do Contexto

INE5317 Linguagens Formais e Compiladores AULA 6: Propriedades das Linguagens Regulares

Capítulo II Gramáticas

LINGUAGENS FORMAIS E AUTÔMATOS. Prova 2-10/06/ Prof. Marcus Ramos

Gramáticas ( [HMU00], Cap. 5.1)

Gramáticas Livres de Contexto

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

Linguagens Regulares. Prof. Daniel Oliveira

Draft-v0.1. Máquinas de Turing Máquinas de Turing

Problemas decidíveis para LICs

As linguagens regulares são I.C Proposição Qualquer linguagem regular é independente de contexto.

Decidibilidade. Mário S. Alvim Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02)

Apostila 05 Assunto: Linguagens dos tipos 0 e 1

SCC Capítulo 1 Linguagens Regulares e Autômatos Finitos

AF Não-determinísticos Equivalência entre AFND e AFD AFs e GRs Implementação de AFs

Linguagens Formais e Autômatos 02/2016. LFA Aula 04 16/11/2016. Celso Olivete Júnior.

COMPILADORES. Revisão Linguagens formais Parte 01. Geovane Griesang

Gramáticas Livres de Contexto Parte 1

Análise sintática. Prof. Thiago A. S. Pardo. Análise sintática ascendente

Gramáticas Sensíveis ao Contexto (GSC) Linguagens Sensíveis ao Contexto (LSC) Autômatos Linearmente Limitados (ALL)

a * Minimização de AFD AFD equivalente, com o menor número de estados possível

COMPILADORES. Análise sintática. Prof. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática

Definições Hierarquia de Chomsky Exemplos de gramáticas. Gramáticas. Objetivo de ensinar o inglês pelo computador e conseguir um tradutor de línguas

Linguagens Formais e Autômatos P. Blauth Menezes

Autómatos determísticos de k-pilhas

Problemas decidíveis para LICs

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação

Problemas Computáveis

7.1. Autómatos de pilha não-determinísticos (NPDA) 7.3. Autómatos de pilha determinísticos e linguagens livres de contexto determinísticas.

Compiladores Aula 4. Celso Olivete Júnior.

Exemplo preliminar. Considere a linguagem dos Palíndromos Lpal:

Melhores momentos AULA PASSADA. Complexidade Computacional p. 136

Lema do Bombeamento Operações Fechadas sobre LR s Aplicações

LINGUAGENS FORMAIS Modelos Determinísticos e Não Determinísticos. Usam-se modelos matemáticos para representar eventos (fenômenos) do mundo real.

AFNs, Operações Regulares e Expressões Regulares

Máquina de Turing. Controle finito

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND)

Compiladores. Análise lexical. Plano da aula. Motivação para análise lexical. Vocabulário básico. Estrutura de um compilador

Teoria da Computação

Analisadores Sintáticos LR

Linguagens Livres de Contexto

Apostila 02. Objetivos: Estudar os autômatos finitos Estudar as expressões regulares Estudar as gramáticas regulares Estudar as linguagens regulares

LFA Aula 09. Gramáticas e Linguagens Livres de Contexto 18/01/2016. Linguagens Formais e Autômatos. Celso Olivete Júnior.

SCC Capítulo 2 Linguagens Livres de Contexto e Autômatos de Pilha

Modelos de Computação Folha de trabalho n. 8

Concurso Público para provimento de cargo efetivo de Docentes. Edital 20/2015 CIÊNCIA DA COMPUTAÇÃO II Campus Rio Pomba

UNIVERSIDADE DA BEIRA INTERIOR

Linguagens, Reconhecedores e Gramáticas

SCC Capítulo 3 Linguagens Sensíveis ao Contexto e Autômatos Limitados Linearmente

LFA Aula 07. Equivalência entre AFD e AFND. Equivalência entre ER s e AF s Equivalência entre GR s e AF s. Linguagens Formais e Autômatos

Construção de Compiladores Aula 16 - Análise Sintática

Transcrição:

a n Autômatos com Pilha: Definição Linguagem Aceita por um AP Notação gráfica para AP APD X APND 1

Autômatos com Pilha (AP) Definições alternativas para Linguagens Livres de Contexto Extensão de AFND-ε com uma pilha, que pode ser lida, aumentada e diminuída apenas no topo. 2 variações de AP: Aceita cadeias por estados de aceitação Aceita cadeias por pilha vazia As 2 variações aceitam exatamente as LLC (GLC AP) APDeterminísticos: aceitam todas as LR e parte das LLC 2

AP Definição Informal A pilha permite memorizar uma quantidade infinita de informações. Ao contrário de um computador, que também pode armazenar quantidade arbitrária de informações, o AP tem a restrição do comportamento da pilha (FIFO). entrada AFND- ε Aceita/Rejeita Portanto, existem linguagens que poderiam ser reconhecida or algum programa de computador, mas que não sã conhecidas por qualquer AP. 3

AP O AP decide a mudança de estado baseado no símbolo atual da entrada, no estado atual, e no símbolo do topo da pilha. Ele pode, alternativamente, fazer uma transição espontânea, usando ε como entrada. Em uma transição, o AP: Consome da entrada o símbolo que ele utiliza na transição Se ε for usado, nenhum símbolo da entrada é consumido. Vai para um novo estado, que pode ou não ser o mesmo estado anterior. Substitui o símbolo do topo da pilha por qualquer cadeia. A cadeia pode ser ε (eliminação na pilha); pode ser o mesmo símbolo do topo (nenhuma alteração), ou um ou mais símbolos distintos (eliminação + inserção). 4

Exemplo L wwr = {ww r w está em (0+1)*} palíndromos de comprimento par sobre {0,1}. GLC: P -> 0P0 1P1 ε Projetando um AP para L wwr 1. Começamos em um estado qo que representa um palpite de que ainda não vimos o meio. Enquanto estamos em qo, lemos símbolos e os armazenamos na pilha. 2. Em qualquer momento, podemos supor que chegamos ao meio, então w estará na pilha, com a extremidade direita no topo. Nessa hora, vamos para q1. Como AP é não determinístico, optamos também por ficar em qo. 3. Em q1, comparamos os símbolos da entrada com os da pilha. Se coincidirem, consumimos o da entrada e extraímos o da pilha, e prosseguimos. Se não coincidirem, nosso palpite foi errado. Essa ramificação falha, mas outras podem eventualmente ter sucesso. 4. Se esvaziamos a pilha, então vimos alguma entrada w seguida por seu

m AP M é uma sétupla (K, Σ, Γ, δ, qo, Zo,F) onde:. K é um conjunto finito de estados. Σ (sigma) é um alfabeto finito chamado alfabeto de entrada. Γ (gama) é um alfabeto da pilha finito. qo K é o estado inicial. A máquina começa nele.. Zo Γé o símbolo inicial da pilha. Aparece inicialmente na pilha.. F é o conjunto de estados finais F K. δ (delta) é um mapeamento de K X (Σ {ε}) X Γ subconjuntos de K X Γ* (topo) resultado da aplicação de δ é um conjunto finito de pares (p,γ) onde p é o novo estado e γ é a cadeia de símbolos da pilha que substitui o topo da pilha. Se γ é ε, o topo é eliminado; se γ = YZ, o topo é substituído por Z e Y é o 6

= ({qo, q1,q2}, {0,1}, {0,1, Zo},δ, qo,zo, {q2}) δ(qo,0,zo) = {(qo,0zo)} e δ(qo,1,zo) = {(qo,1zo)}. Uma dessas regras se aplica inicialmente. Empilhamos o primeiro símbolo. δ(qo,0,0) = {(qo,00)} e δ(qo,0,1) = {(qo,01)} e δ(qo,1,0) = {(qo,10)} e δ(qo,1,1) = {(qo,11)}. Essas regras nos pemitem ficar no estado qo e apenas empilhar a entrada.. δ(qo, ε, Zo) = {(q1,zo)}, δ(qo, ε,0) = {(q1,0)} e δ(qo,ε,1)={(q1,1)}. Essas regras permitem fazer uma transição espontânea de qo para q1, deixando a pilha inalterada.. δ(q1,0,0) = {(q1, ε)} e δ(q1,1) = {(q1, ε)}. Em q1, comparamos a entrada com o topo. Se coincidirem, desempilhamos.. δ(q1, ε,zo) = {(q2,zo)}. Se encontrarmos a base da pilha e estivermos em q1, então encontramos wwr e vamos para o estamos de aceitação q2. 7

Notação gráfica para AP O diagrama de transição para APs que aceitam a linguagem por estado final segue: Os nós correspondem aos estados do AP Existem o estado inicial e os finais Um arco rotulado com a,x/α do estado q para p significa que δ(q,a,x) contém o par (p, α) entre os pares. Convencionalmente, Zo é o símbolo da pilha (no JFLAP é Z). Leia-se: símbolo, topo_antigo/novo_topo 8

AP de Lww r 0, Zo/0 Zo 1, Zo/1 Zo 0, 0/0 0 0, 0/0 1 1, 0/1 0 1, 1/1 1 0, 0/ε 1, 1/ε qo q1 q2 ε, Zo/Zo ε, 0/0 ε, 1/1 ε, Zo/Zo 9

Descrição Instantânea (DI) de um AP Para um AF, a DI é o estado atual. Num AP, usamos a dedução para indicar mudanças no estado, na entrada e na pilha. Seja P = (K, Σ, Γ, δ, qo, Zo,F) um AP. Suponha que δ(q,a,x) contém (p, α). Então, para todas as cadeias w em Σ* e β em Γ*: (q, aw, Xβ) - (p,w, αβ) Esse movimento reflete a idéia de que, consumindo a e substituindo o topo X por α, podemos ir do estado q para o estado p. Repare que o que fica na entrada (w) e o que está abaixo do topo (β) não influenciam a ação do AP. -* representa zero ou mais movimentos do AP. 10

Exemplo: derivação de 1111 de Lww r (q2, ε, Zo) (qo, 1111, Zo) (qo, 111, 1Zo) (q1, 1111, Zo) (q2, 1111, Zo) (qo, 11, 11Zo) (q1, 111, 1Zo) (q1, 11, Zo) (qo, 1, 111Zo) (q1, 11, 11Zo) (q2, 11, Zo) (qo, ε, 1111, Zo) (q1, 1, 111Zo) (q1, 1, 1Zo) (q1, ε, 1111Zo) (q1, ε, 11Zo) (q1, ε, Zo)

Exercício Seja P=({p,q}, {0,1}, {Zo,X}, δ, q, Zo, {p}) e : 1. δ(q, 0, Zo) = {(q, XZo)} 2. δ(q, 0, X) = {(q, XX)} 3. δ(q, 1, X) = {(q, X)} 4. δ(q, ε, X) = {(p, ε)} 5. δ(p, ε, X) = {(p, ε)} 6. δ(p, 1, X) = {(p, XX)} 7. δ(q, 1, Zo) = {(p, ε)} A partir da DI inicial (q, w, Zo), mostre todas as DIs acessíveis quando a entrada é: (a) 01 (b) 0011 (c) 010 12

Linguagem aceita por um AP. Aceitação por Estado Final: (Similar a AF) Conjunto de todas as cadeias para as quais alguma sequência de movimentos faz o AP entrar num estado final Linguagem aceita por estado final, L(P) = {w (qo, w, Zo) -* (q, ε, α); q F }. Aceitação por Pilha Vazia: Conjunto de todas as cadeias para as quais alguma seqüência de movimentos, a partir do inicial, faz com que a pilha fique vazia Linguagem aceita por Pilha vazia N(P) = {w (qo, w, Zo) -* (q, ε, ε)} OBS: quando aceitamos por pilha vazia o conjunto de estados finais é irrelevante. Os dois métodos acima são equivalentes. 13

Equivalência entre os dois tipos de aceitação Teorema 1: Se L = N(PN) para algum AP PN = (K, Σ, Γ, δn, qo, Zo), existe um AP PF tal que L=L(PF). Seja Xo um símbolo especial de Idéia: início de cadeia e pilha ε, Xo/ε ε, Xo/ZoXo PN ε, Xo/ε po qo pf Se PF vê Xo (um símbolo especial da pilha), ele sabe que PN esvaziaria sua pilha, então vai para um estado final, pf. ε, Xo/ε ε, Xo/ε 14

Teorema 2: Se L = L(PF) para algum AP PF = (K, Σ, Γ, δf, qo, Zo, F), existe um AP PN tal que L=N(PN). Idéia: Seja Xo um símbolo especial de início de cadeia e pilha ε, qualquer / ε, qualquer / ε ε, Xo/ZoXo PF po qo p PN simula PF e esvazia sua pilha quando e somente quando PN entra em um estado de aceitação. ε, qualquer / ε 15

Exercício (para casa) Faça um AP que reconhece L = {ww R w {0,1}*} por pilha vazia Vejam que o AP deve aceitar a cadeia vazia. Procure fazer diretamente e também a partir do AP por estado final já construído. 16

Faça Encontre um AP M que reconheça o conjunto L = { w w {0,1}* e w tem igual número de 0 e 1}, por pilha vazia. Mostre as configurações do AP com a entrada 0101 Dica: associar 0 com Z e 1 com U; Z,U Γ matar 0 com 1 e 1 com 0 fazer regra para aceitar cadeia vazia 17

M = ({q1},{0,1},{b,z,u}, δ, q1,b, ) 1. δ(q1, 0,B) = {(q1,zb)} empilha primeiro 0 2. δ(q1, 1,B) = {(q1,ub)} empilha primeiro 1 3. δ(q1, 0,Z) = {(q1,zz)} empilha 0 consecutivos 4. δ(q1, 1,U) = {(q1,uu)} empilha 1 consecutivos 5. δ(q1, 1,Z) = {(q1, ε)} desempilha se 1 com 0 6. δ(q1, 0,U) = {(q1, ε)} desempilha se 0 com 1 7. δ(q1, ε,b) = {(q1, ε)} desempilha no fim da cadeia 18

Configurações para 0101 Entrada Configuração (q1,b) 0 (q1,zb) 01 (q1,b) 010 (q1,zb) 0101 (q1,b) ε (q1, ε ) 19

Exercício 2 (para casa) Encontre um AP M que reconheça o conjunto L = { 0 n 1 n n > 0} por pilha vazia. 20

Equivalência de AP e Gramática Livre de Contexto já mostramos a equivalência entre: APN APF

Equivalência de AP e Gramática Livre de Contexto agora vamos mostrar que: 1 APF APN GLC 2

1. De GLC para AP Idéia: fazer o AP simular a sequência de formas sentenciais à esquerda usada para gerar uma dada cadeia w. O AP tem apenas um estado, e empilhamos as formas sentenciais de acordo com as regras da GLC. Num determinado instante, se x é o prefixo de w já reconhecido, então o AP estará numa DI = (q, y, Aα) representando a forma sentencial à esquerda xaα. Se w=xy, então Aα deve gerar y nos próximos passos. Se A->β, então o AP passará a (q, y, βα). Os terminais que porventura estiverem no topo da pilha (prefixo de βα) são comparados com a entrada e desempilhados até que o próximo não terminal (mais a esquerda) esteja na pilha, ou essa se esvazie. A aceitação é por pilha vazia.

1. De GLC para AP Seja G= (Vn, Vt, Q, S) uma GLC. Construímos um AP PN que aceite L(G) por pilha vazia, da seguinte forma: PN=({q}, Vt, VnUVt, δ, q, S) F = vocab. entrada vocab. pilha estado inicial símbolo inicial pilha onde δ é definida por: 1. Para cada não terminal A, δ(q, ε, A) = {(q, β) A-> β é uma produção de G} (aplica regra e não consome entrada) 2. Para cada terminal a, δ(q, a, a) = {(q, ε)} (consome entrada e desempilha)

Exemplo Seja G: 1. E -> I E + E E * E (E) 2. I -> a b Ia Ib I0 I1 Então Σ = {a, b, 0, 1, (, ), +, *} Γ = Σ U {I,E} e δ(q, ε, I) = {(q,a), (q,b), (q,ia), (q, Ib), (q, I0), (q, I1)} δ(q, ε, E) = {(q,i), (q, E+E), (q, E*E), (q, (E))} δ(q, a,a) = {(q, ε)}... δ(q, *,*) = {(q, ε)} Faça as DIs para w= a0+b*b1

Teorema (1) Se o AP é construído a partir da GLC pela construção anterior, então N(P) = L(G). demonstração: (A,U&M, 2003 pt), p.256

2. De AP para GLC Teorema (2): Seja P = (K, Σ, Γ, δ, qo, Zo) um AP. Então, existe uma gramática livre de contexto G tal que L(G) = N(P). A prova desse teorema é por construção de G a partir de P. Ao contrário do Teorema (1), que tem também um lado funcional (de construir analisadores sintáticos, p.ex.), o valor do Teorema (2) é apenas teórico, e não vamos demonstrá-lo aqui. demonstração: (A,U&M, 2003 pt), p.256

Exercício (para casa) Converta a gramática S -> 0S1 A A -> 1A0 S ε em um AP que aceite a mesma linguagem por pilha vazia.

AP Determinísticos (APD) or definição, os AP podem ser não-determinísticos, a classe de AP determinísticos são especiais: embora limitada, a classe de linguagens reconhecidas por eles é interessante no contexto de linguagens de programação.

APD izemos que um AP M = (K, Σ, Γ, δ, qo, Zo,F) é determinístico se: δ(q,a,z) tem no máximo um elemento para q K, a Σ {ε}, Z Γ m cada transição, há no máximo uma alternativa de mudança). Se δ(q,a,z) é não vazio para algum a Σ, então δ(q, ε,z) deve ser vazio. mpede a possibilidade de escolha entre um mov- ε e um outro que consome um símbolo de entrada) 30

APD Não existe um APD que reconheça L wwr = {ww r w está em (0+1)*} palíndromos de comprimento par sobre {0,1}. Mas, se inserirmos um marcador de centro c, tornamos a linguagem reconhecível por um APD: L wwr = {wcw r w está em (0+1)*} Estratégia: empilhar 0s e 1s até encontrar c. Então muda de estado em que compara cada novo símbolo com o topo da pilha, desempilhando se forem iguais, até encontrar Zo no topo; caso contrário, pára num estado não final.

APD para L wwr = {wcw r w está em (0+1)*} 0, Zo/0 Zo 1, Zo/1 Zo 0, 0/0 0 0, 0/0 1 1, 0/1 0 1, 1/1 1 0, 0/ε 1, 1/ε qo q1 q2 c, Zo/Zo c, 0/0 c, 1/1 ε, Zo/Zo

APD e Linguagens Regulares s APD aceitam uma classe de linguagens que estão entre as LR e as LLC. Teorema 1: Se L é uma LR, então L=L(P) para algum APD PF (por estado final). rova: Um APD pode simular um AFD, simplesmente ignorando a pilha. eja um AFD A = (Q, Σ, δ A, qo, F) onstruímos um APD P = (Q, Σ, {Zo}, δ P, qo, Zo,F), definindo δ P (q,a,zo) = {(p, Zo)} para todos os estados p e q em Q, tais que δ A (q, a)=p. ostre, por indução sobre w, que: o,w,zo) -* P (p, ε, Zo) se e somente se δ A (qo,w)=p

APD por estado final e as LLC As linguagens aceitas por APDs por estado final incluem as LRs, mas estão incluídas nas LLC. Ou seja, há LLCs para as quais não existe um APD que as reconhece (há apenas APND). Ex. L wwr -

Observação D. Knuth definiu, em 1965, as gramáticas LR(k), a subclasse das GLC que geram exatamente as linguagens reconhecidas por APDs. As gramáticas LR(k) formam a base para o YACC (yet another compiler compiler) do Unix, que gera um programa em C, que é um analisador sintático para a linguagem definida por uma LR(k), dada como entrada. 35

APD e Gramáticas Ambíguas Teorema: Se L = N(P) para algum APD P (por pilha vazia), então L tem uma GLC não-ambígua. Teorema: Se L = L(P) para algum APD P (por estado final) então L tem uma GLC não-ambígua. (isso nos indica que as linguagens inerentemente ambíguas só podem ser reconhecidas por 36 APND)

Resumo Autômato com pilha: um AP é um AFND acoplado a uma pilha que pode ser usada para armazenar uma cadeia de comprimento arbitrário. Aceitação por AP: existem dois modos pelos quais o AP pode indicar aceitação. Um deles é entrar em um estado final; o outro é esvaziar sua pilha. Esses modos são equivalentes, no sentido de que qualquer linguagem aceita por um modo é aceita (por algum outro AP) pelo outro modo. 37

Resumo Descrição instantânea: usamos uma DI que consiste no estado, na entrada restante e no conteúdo da pilha para descrever a condição atual de um AP. Uma função de transição - entre DIs representa movimentos isolados de um AP. APs e Gramáticas: as linguagens aceitas por APs pelo estado final ou por pilha vazia são exatamente as LLCs. AP determinístico: é aquele que nunca tem mais de uma opção de movimento para um dado estado, um símbolo de entrada (inclusive ε) e um símbolo de pilha. Além disso, ele nunca tem uma escolha entre um ε- movimento e consumir um símbolo da entrada. 38

Resumo Aceitação por APD: os dois modos estado final e pilha vazia não são os mesmos para APDs. As linguagens aceitas por pilha vazia são um subconjunto das aceitas por estado final (aquelas que têm a propriedade de prefixo: nenhuma cadeia da linguagem é um prefixo de outra cadeia da linguagem). Linguagens aceitas por APD: todas as linguagens regulares são aceitas (por estado final) por APDs e existem linguagens não regulares aceitas por APDs. As linguagens de APDs são LLC e, de fato, são linguagens que têm GLC nãoambíguas. 39