UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

Documentos relacionados
Autômato com Pilha. Autômato com Pilha. Autômato com Pilha

Aula 7: Autômatos com Pilha

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

Transformação de AP para GLC

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

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

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

SCC 205 Teoria da Computação e Linguagens Formais

Autômatos de Pilha (AP)

Linguagens Livres de Contexto

Linguagens Livres de Contexto

Linguagens Formais e Autômatos (LFA)

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

Gramática. Prof. Yandre Maldonado e Gomes da Costa. Prof. Yandre Maldonado - 1

Gramática. Gramática. Gramática

Linguagens Formais e Autômatos P. Blauth Menezes

Máquina de Turing Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente

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

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. Autômatos Finitos Determinísticos (AFD)

Linguagens Formais e Autômatos. Linguagens Regulares Prof. Anderson Belgamo

Linguagens livres de contexto e autômatos de pilha

Linguagens Formais e Autômatos P. Blauth Menezes

Autômatos com Pilha: Reconhecedores de LLCs

Máquinas de Turing (MT)

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

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

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

Gramáticas Livres de Contexto Parte 1

Linguagens Regulares. Prof. Daniel Oliveira

Linguaguens recursivamente enumeráveis e recursivas

Teoria da Computação. Máquinas Universais Máquina com Pilhas

Máquinas Universais. Máquina de Turing. Celso Olivete Júnior.

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

Teoria da Computação

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

Linguagens Formais e Autômatos

Linguagens Formais e Autômatos

Teoria da Computação. Unidade 3 Máquinas Universais. Referência Teoria da Computação (Divério, 2000)

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

Propriedades de Linguagens Livres de Contexto. Propriedades de Linguagens Livres de Contexto. Propriedades de Linguagens Livres de Contexto

Linguaguens recursivamente enumeráveis

LINGUAGEM LIVRE DE CONTEXTO GRAMÁTICA LIVRE DE CONTEXTO

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

Variações de Máquinas de Turing

BCC242. Auômato Finito Determinístico

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

Licenciatura em Engenharia Informática DEI/ISEP Linguagens de Programação 2006/07

Análise sintática. Análise sintática. Top-down ou descendente. Com retrocesso: por tentativa e erro. Preditiva: para gramáticas LL(1) 09/04/2012

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

1. Uma linguagem de uma máquina de Turing

Modelos Universais de Computação

Máquina de Turing. Teoria da Computação. Teoria da Computação. Histórico da Computação:

Linguagens recursivamente enumeráveis

Autómatos de Pilha e Linguagens Livres de Contexto

Como construir um compilador utilizando ferramentas Java

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

INE5317 Linguagens Formais e Compiladores AULA 6: Autômatos Finitos Com S aída

Linguagens Formais e Autômatos P. Blauth Menezes

Expressões Regulares e Gramáticas Regulares

Universidade Federal de Alfenas

Autômatos Finitos Não Determinís5cos (AFN)

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

Gramática Livre de Contexto

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

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

Linguagens Formais e Autômatos 02/2015. LFA Aula 02. introdução 28/09/2015. Celso Olivete Júnior.

Autómatos de pilha e GIC

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

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

UNIVERSIDADE DA BEIRA INTERIOR

LINGUAGENS SENSÍVEIS AO CONTEXTO E AUTÔMA- TOS LIMITADOS LINEARMENTE

Linguagens Formais e Autômatos P. Blauth Menezes

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

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

Teoria da Computação. Máquinas Universais Máquina de Turing

Curso de Engenharia de Computação - UTFPR Teoria da Computação - Prof. Celso Kaestner Lista de exercícios

Linguagens Formais e Autômatos P. Blauth Menezes

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

Teoria da Computação Gramáticas, Linguagens Algébricas e Autómatos de Pilha

Computação efectiva. Que linguagens podem ser reconhecidas por algum tipo de autómato?

Introdução Definição Conceitos Básicos de Linguagem

Aula 3: Autômatos Finitos

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

Teoria da Computação Aula 02 Introdução

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

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

Pontifícia Universidade Católica de Campinas Centro de Ciências Exatas, Ambientais e de Tecnologias Faculdade de Engenharia de Computação

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

Apostila 05 Assunto: Linguagens dos tipos 0 e 1

IV Gramáticas Livres de Contexto

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

Lema do Bombeamento. Aplicação para Linguagens Regulares e Livres de Contexto. Maria Adriana Vidigal de Lima. Abril

Autômatos finitos não-determinísticos

Máquina de Turing. Controle finito

Máquinas de Turing - Computabilidade

Capítulo A máquina de Turing (TM) padrão Combinações de máquinas de Turing A Tese de Turing. ADC/TC/Cap.9/ /LEI/DEIFCTUC 375

Aula 3: Autômatos Finitos

Gramática Livre de Contexto

Transcrição:

UNIVERIDDE ETDUL DE MRINGÁ DEPRTMENTO DE INFORMÁTIC utômato com Pilha Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa

Prof. Yandre Maldonado - 2 utômato com Pilha - P ão formalismos (máquinas) capazes de reconhecer as Linguagens Livres de Contexto; Maior poder que os utômatos Finitos, pois possuem um espaço de armazenamento extra que é utilizado durante o processamento de uma cadeia; Possui uma pilha que caracteriza uma memória auxiliar onde pode-se inserir e remover informações; Mesmo poder de reconhecimento das GLC s;

Prof. Yandre Maldonado - 3 Exemplo de LLC: {a n b n n 0} Um F não é capaz de reconhecer este tipo de linguagem devido à sua incapacidade de recordar (memorizar) informação sobre a cadeia analisada; utômatos com Pilha (P) possuem uma pilha para armazenar informação, adicionando poder aos F s.

Prof. Yandre Maldonado - 4 Definição: P é uma sextupla <Σ,Γ,, 0,δ,B>, onde: Σ é o alfabeto de entrada do P; Γ é o alfabeto da pilha; é o conjunto finito não vazio de estados do P; 0 é o estado inicial, 0 ; δ é a função de transição de estados, δ: (Σ {λ}) Γ conjunto de subconjuntos finitos de Γ * B é o símbolo da base da pilha, B Γ.

Pilha: Leitura/Escrita Fita de Entrada: Leitura Prof. Yandre Maldonado - 5 bstração de um P como reconhecedor de cadeias (DELMRO, 1998).

Prof. Yandre Maldonado - 6 o contrário da fita de entrada, a pilha pode ser lida e alterada durante um processamento; O autômato verifica o conteúdo do topo da pilha, retira-o e substitui por uma cadeia α Γ *. e α =, e Γ, então o símbolo do topo é substituído por e a cabeça de leitura escrita continua posicionada no mesmo lugar; e α = 1 2... n, n>1 então o símbolo do topo da pilha é retirado, sendo n colocado em seu lugar, n-1 na posição seguinte, e assim por diante. cabeça é deslocada para a posição ocupada por 1 que é então o novo topo da pilha; e α = λ então o símbolo do topo da pilha é retirado, fazendo a pilha decrescer.

Prof. Yandre Maldonado - 7 função de transição δ, é função do estado corrente, da letra corrente na fita de entrada e do símbolo no topo da pilha; lém disso, esta função determina não só o próximo estado que o P assume, mas também como o topo da pilha deve ser substituído; O P inicia sua operação num estado inicial especial denotado por 0 e com um único símbolo na pilha, denotado por B.

Prof. Yandre Maldonado - 8 configuração de um P é dada por uma tripla <s, x, α> onde s é o estado corrente, x é a cadeia da fita que falta ser processada e α é o conteúdo da pilha, com o topo no início de α; O P anda ou move-se de uma configuração para outra através da aplicação de uma função de transição.

Prof. Yandre Maldonado - 9 e o P está na configuração <s,ay,β> e temos que δ(s,a,)=<t,γ>, então o P move-se para a configuração <t,y, γβ> e denota-se <s,ay,β> <t,y, γβ>. e o P move-se de uma configuração <s 1,x 1,α 1 > para uma configuração <s 2,x 2,α 2 > por meio de um número finito de movimentos, denotamos <s 1,x 1,α 1 > * <s 2,x 2,α 2 > e o valor de δ para uma determinada configuração for o P pára.

Prof. Yandre Maldonado - 10 Note que, segundo esta definição, P s não possuem estados finais como os F s; ssim, uma cadeia x é aceita se, ao chegar ao final do processamento da mesma, a pilha estiver vazia, independentemente do estado em que o P se encontra;

Prof. Yandre Maldonado - 11 Formalmente temos: Dado o P P = <Σ,Γ,, 0,δ,B> e a cadeia x sobre Σ, diz-se que x é aceita por P sse existe s tal que < 0,x,B> * <s,λ, λ >. Caso contrário, x é rejeitada. Dado o P P = <Σ,Γ,, 0,δ,B>, a linguagem L(P) definida por P é {x Σ * s < 0,x,B> * <s,λ, λ >}

Exemplo de P para a LLC {a n b n n 0}: <b,>/ λ Prof. Yandre Maldonado - 12 δ(,a,b) = {<,>} δ(,a,) = {<,>} δ(,b,) = {<R,λ>} δ(r,b,) = {<R, λ>} δ(,λ,b) = {<, λ>} <a,b>/ <a,>/ <λ,b>/ λ R <b,>/ λ

Exemplo: processamento da cadeia aaabbb <b,>/ λ R Prof. Yandre Maldonado - 13 <a,b>/ <a,>/ <λ,b>/ λ <b,>/ λ B PILH

Exemplo: processamento da cadeia aaabbb <b,>/ λ R Prof. Yandre Maldonado - 14 <a,b>/ <a,>/ <λ,b>/ λ <b,>/ λ PILH

Exemplo: processamento da cadeia aaabbb <b,>/ λ R Prof. Yandre Maldonado - 15 <a,b>/ <a,>/ <λ,b>/ λ <b,>/ λ PILH

Exemplo: processamento da cadeia aaabbb <b,>/ λ R Prof. Yandre Maldonado - 16 <a,b>/ <a,>/ <λ,b>/ λ <b,>/ λ PILH

Exemplo: processamento da cadeia aaabbb <b,>/ λ R Prof. Yandre Maldonado - 17 <a,b>/ <a,>/ <λ,b>/ λ <b,>/ λ PILH

Exemplo: processamento da cadeia aaabbb <b,>/ λ R Prof. Yandre Maldonado - 18 <a,b>/ <a,>/ <λ,b>/ λ <b,>/ λ PILH

Exemplo: processamento da cadeia aaabbb <b,>/ λ R Prof. Yandre Maldonado - 19 <a,b>/ <a,>/ <λ,b>/ λ <b,>/ λ CDEI CEIT PILH

P para {x {a,b} * x a = x b }: Prof. Yandre Maldonado - 20 Está correto? <a,c>/ <b,c>/b <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb

Prof. Yandre Maldonado - 21 Um P definitivo para {x {a,b} * x a = x b }: δ(,a,c) = {<,C>} δ(,b,c) = {<,BC>} δ(,λ,c) = {<,λ>} δ(,a,) = {<,>} δ(,b,) = {<,λ>} δ(,a,b) = {<,λ>} δ(,b,b) = {<,BB>} <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 22 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb BE D PILH: C C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 23 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 24 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 25 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 26 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 27 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 28 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 29 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 30 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 31 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 32 <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb C PILH

Exemplo: processamento da cadeia aaaabbabbb Prof. Yandre Maldonado - 33 CDEI CEIT <a,c>/c <b,c>/bc <λ,c>/λ <a,>/ <b,>/λ <a,b>/λ <b,b>/bb PILH

Descreva um P para a linguagem {a n b m a n n 0 m>0}. Prof. Yandre Maldonado - 34 0 1 2 <a,b>/ <a,>/ <b,b>/b <b,>/ <λ,b>/λ <b,b>/b <b,>/ <a,>/λ <a,>/λ

Bibliografia DELMRO, Márcio Eduardo. Linguagens Formais e utômatos. UEM, 1998. Prof. Yandre Maldonado - 35