Prof. Yandre Maldonado e Gomes da Costa

Slides:



Advertisements
Apresentações semelhantes
Decidibilidade e Indecidibilidade
Advertisements

Linguagens Livre-de-contexto
TEORIA DA COMPUTAÇÃO Parte I  Introdução  Linguagens Regulares
FAPE - Curso de Ciência da Computação
FAPE - Curso de Ciência da Computação
ESTRUTURA DE DADOS Professor: Marcelo Mendes Turma: MBI-1
Variantes de Máquina de Turing
Linguagem Fabrício Dias
Teoria da Computação MÁQUINA DE TURING (Continuação) Fabrício Dias
I - Noções dum compilador
I - Noções dum compilador
Universidade Federal de Campina Grande – UFCG Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação – DSC Máquina de.
Pilhas e Filas CONTEÚDO (1) Pilhas (2) Filas.
Sistema para Criação e Testes de Modelos Formais
Prof. Yandre Maldonado e Gomes da Costa
Prof. Yandre Maldonado e Gomes da Costa
LFA - Ambiguidade - Equivalência de gramáticas - Hierarquia de Chomsky
Linguagens Formais e Autômatos
TEORIA DA COMPUTAÇÃO Parte II  Linguagens Livres de Contexto
TEORIA DA COMPUTAÇÃO Parte III  Máquina de Turing
Análise Léxica (Parte 2)
TEORIA DOS AUTÓMATOS FINITOS E DAS SUAS LINGUAGENS
3 AUTÓMATOS FINITOS.
Ling. Formais e Autômatos Autômatos finitos
Teoria da Computação Sandra de Amo
Complexidade de Linguagens Influência do Modelo de Computação
Strings, Linguagens, Autômatos
esquerda p/ direita,read only
Linguagens e Máquinas WILSON ROSA DE OLIVEIRA DEPARTAMENTO DE INFORMÁTICA UFPE
Máquina de Turing e Computabilidade
Linguagem de Prog. e Programas
Construção de Compiladores
Construção de Compiladores
Construção de Compiladores
Alfabetos, Palavras e Linguagens
T ÓPICOS DE I.A. Métodos de Busca Busca em Espaços de Estado Prof. Mário Dantas.
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Compiladores, Aula Nº 5 João M. P. Cardoso
Lema do Bombeamento Linguagens Livres de Contexto
Gramáticas Livres de Contexto
Erick Vagner Cabral Igor Lucena Vitor Baptista
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Ling. Formais e Autômatos AFN-ε
Teoria da Computação Aula 1 Prof. Fabiano Sabha.
Autómatos de Pilha. UM NOVO MODELO PARA OS AUTÓMATOS FINITOS As linguagens regulares são aceites por autómatos finitos. E as linguagens não regulares?
Inteligência Artificial
Máquina de Turing Universal
Capítulo V – Comandos de Entrada e Saída 5.1 – Equipamentos de entrada e saída 5.2 – Saída no vídeo-texto 5.3 – Entrada pelo teclado 5.4 – Entrada e saída.
Máquinas de Turing.
Linguagens Formais e Compiladores
LFA: Unidade 03 – Parte B Engenharia/Ciência da Computação
Exercícios de Pilha e Fila
Redução.
Prof. André Luis Roland Tancredo Engenheiro da Computação e Pesquisador em Desenvolvimento Tecnológico para Semicondutores pelo CNPq Especialista em Microeletrônica.
MÁQUINAS DE TURING Acadêmicos: Karen Juliani Tosta Tomaz RA – 47566
Tese de Church-Turing.
Aula 6 1 Análise Lexical Compiladores, Aula Nº 6 João M. P. Cardoso.
Estrutura de dados Pilhas e filas
Informática Teórica Arthur Ramos David Hulak
Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação. Autômatos Com Pilha São como autômatos finitos não-determinísticos mas com uma pilha. São como autômatos.
Transcrição da apresentação:

Prof. Yandre Maldonado e Gomes da Costa Autômato com Pilha Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - 1

Prof. Yandre Maldonado - 2 Autômato com Pilha São os formalismos (máquinas) capazes de reconhecer as Linguagens Livres de Contexto; Maior poder que os Autô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 - 2

Prof. Yandre Maldonado - 3 Autômato com Pilha Exemplo de LLC: {anbn | n0} Um AF não é capaz de reconhecer este tipo de linguagem devido à sua incapacidade de “recordar” (memorizar) informação sobre a cadeia analisada; Autômatos com Pilha (AP) possuem uma pilha para armazenar informação, adicionando poder aos AF’s. Prof. Yandre Maldonado - 3

Prof. Yandre Maldonado - 4 Autômato com Pilha Definição: AP é uma sextupla <,,S,S0,,B>, onde:  é o alfabeto de entrada do AP;  é o alfabeto da pilha; S é o conjunto finito não vazio de estados do AP; S0 é o estado inicial, S0  S;  é a função de transição de estados, : S  ({})    conjunto de subconjuntos finitos de S  * B é o símbolo da base da pilha, B  . Prof. Yandre Maldonado - 4

Prof. Yandre Maldonado - 5 Autômato com Pilha Ao 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   *. Se  = A, e A  , então o símbolo do topo é substituído por A e a cabeça de leitura escrita continua posicionada no mesmo lugar; Se  = A1A2...Na, n>1 então o símbolo do topo da pilha é retirado, sendo An colocado em seu lugar, An-1 na posição seguinte, e assim por diante. A cabeça é deslocada para a posição ocupada por A1 que é então o novo topo da pilha; Se  =  então o símbolo do topo da pilha é retirado, fazendo a pilha decrescer. Prof. Yandre Maldonado - 5

Prof. Yandre Maldonado - 6 Autômato com Pilha A 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; Além disso, esta função determina não só o próximo estado que o AP assume, mas também como o topo da pilha deve ser substituído; O AP inicia sua operação num estado inicial especial denotado por S0 e com um único símbolo na pilha, denotado por B. Prof. Yandre Maldonado - 6

Prof. Yandre Maldonado - 7 Autômato com Pilha A configuração de um AP é dade 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 AP 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 - 7

Autômato com Pilha Se o AP está na configuração <s,ay,A> e temos que (s,a,A)=<t,>, então o AP move-se para a configuração <t,y, > e denota-se <s,ay,A> |— <t,y, >. Se o AP move-se de uma configuração <s1,x1,1> para uma configuração <s2,x2,2> por meio de um número finito de movimentos, denotamos <s1,x1,1>|—*<s2,x2,2> Se o valor de  para uma determinada configuração for  o AP pára. Prof. Yandre Maldonado - 8

Prof. Yandre Maldonado - 9 Autômato com Pilha Note que AP’s não possuem estados finais como os AF’s; Assim, um string x é aceito se, ao chegar ao final da cadeia de entrada, a pilha estiver vazia, independentemente do estado em que o AP se encontra; Prof. Yandre Maldonado - 9

Prof. Yandre Maldonado - 10 Autômato com Pilha Formalmente temos: Dado o AP P = <,,S,S0,,B> e o string x sobre , diz-se que x é aceito por P sse existe s  S tal que <S0,x,B>|—*<s,,  >. Caso contrário, x é rejeitado. Dado o AP P = <,,S,S0,,B>, a linguagem L(P) definida por P é {x  *|  sS  <S0,x,B> |—*<s,,  >} Prof. Yandre Maldonado - 10

Prof. Yandre Maldonado - 11 Autômato com Pilha Exemplo de AP para a LLC {anbn | n0}: (S,a,B) = {<S,A>} (S,a,A) = {<S,AA>} (S,b,A) = {<R,>} (R,b,A) = {<R, >} (S,,B) = {<S, >} S R <a,B>/A <a,A>/AA <,B>/  <b,A>/  Prof. Yandre Maldonado - 11

Prof. Yandre Maldonado - 12 Autômato com Pilha Exemplo de AP para {x{a,b}*| |x|a=|x|b}: (S,a,C) = {<S,AC>} (S,b,C) = {<S,BC>} (S,,C) = {<S,>} (S,a,A) = {<S,AA>} (S,b,A) = {<S,>} (S,a,B) = {<S,>} (S,b,B) = {<S,BB>} S <a,C>/AC <b,C>/BC <,C>/ <a,A>/AA <b,A>/ <a,B>/ <b,B>/BB Prof. Yandre Maldonado - 12