Carregar apresentação
A apresentação está carregando. Por favor, espere
1
FAPE - Curso de Ciência da Computação
Aspectos Teóricos da Computação Professor: Gleifer Vaz Alves Quinta Aula /1
2
Conteúdo Parte III: Linguagens Livre de Contexto
Gramáticas Livre de Contexto Autômato de Pilha FAPE ATC-05
3
Linguagens Livre de Contexto
Essa classe de linguagens é de fundamental relevância para computação: Trata questões como, parênteses balanceados, estruturas de linguagens de programação. Aplicações: analisadores sintáticos, tradutores de linguagens, processadores de texto. FAPE ATC-05
4
Linguagens Livre de Contexto
As linguagens livre de contexto possuem dois formalismos: Gerador gramática Reconhecedor autômato FAPE ATC-05
5
Gramáticas Livre de Contexto
Gramática Livre de Contexto (GLC): É uma gramática G = (N,T,P,S) com a restrição de que quaisquer regras de produção em P é da forma A , Portanto, em uma GLC o lado esquerdo das produções possui exatamente uma variável. FAPE ATC-05
6
LLC e GLC Uma linguagem é livre de contexto se for gerada por uma gramática livre de contexto (GLC). FAPE ATC-05
7
Exemplos - LLC Exemplos fundamentais para LP´s.
L = {anbn | n 0} é gerada pela seguinte GLC: G = ({S}, {a,b}, P, S) P = { S aSb | } gerando a palavra: aabb S aSb aaSbb aabb aabb FAPE ATC-05
8
Exemplos - LLC A linguagem é composta por expressões aritméticas.
G = ( {E}, {+, *, (, ), x}, P, E ) P = { E E + E | E * E | ( E ) | x } expressão: ( x+x ) * x E E*E (E)*E (E+E)*E (x+E)*E (x+x)*E (x+x)*x FAPE ATC-05
9
Autômato de Pilha – AP Mecanismo reconhecedor de LLC.
O AP é similar ao AF, adicionalmente ele possui uma estrutura auxiliar de uma pilha. A pilha é independente da fita de entrada e possui capacidade de empilhamento infinita. FAPE ATC-05
10
Autômato de Pilha – AP A pilha é uma estrutura do tipo último a entrar, primeiro a sair. A pilha funciona como uma memória auxiliar. FAPE ATC-05
11
Autômato de Pilha – AP Um AP tem quatro partes: Fita de entrada
Pilha: memória auxiliar que pode ser usada para leitura e gravação. Unidade de controle: agora precisa gerenciar a pilha também. Função de transição: adicionalmente lida com a pilha. FAPE ATC-05
12
Autômato de Pilha – AP fita alfabeto da fita pilha alfabeto da pilha
FAPE ATC-05
13
Autômato de Pilha - AP Pilha: é dividida em células capazes de armazenar um único símbolo do alfabeto auxiliar, as operações de leitura/gravação ocorrem sempre no topo, a pilha não tem tamanho fixo nem máximo. (memória ilimitada) FAPE ATC-05
14
Autômato de Pilha - AP Definição: um AP não-determinístico é definido por uma sêxtupla: M = ( ,Q, , q0, F, V) onde: - alfabeto de símbolos de entrada Q – conjunto finito de estados - função de transição :(Q, , V) (Q,V) q0 - estado inicial F - conjunto de estados terminais, F Q V – alfabeto auxiliar (ou alfabeto da pilha) FAPE ATC-05
15
Autômato de Pilha - AP Características da transições em um AP:
É possível testar se a pilha está vazia ($), O símbolo representa movimento vazio da fita ou da pilha. O símbolo na gravação indica que nenhuma palavra é gravada na pilha. (p,$,) = (q,) FAPE ATC-05
16
Autômato de Pilha - AP (q1,a,A) = (q2,B)
Formato da transição em um AP: (q1,a,A) = (q2,B) novo estado estado símbolo da fita pop(A) push(B) FAPE ATC-05
17
Autômato de Pilha - AP Um AP pode:
Parar e aceitar ou rejeitar uma palavra Ou não parar e ficar em loop. ACEITA(M) ou L(M) REJEITA(M) LOOP(M) FAPE ATC-05
18
Exemplos - AP AP M1 = ({a,b}, {q0 , q1, qf}, 1, q0, {qf}, {B,$, })
Reconhece a linguagem L1 = {anbn | n 0} FAPE ATC-05
19
Exemplos – AP - transições
1 (q0, a, ) {(q0,B)} 1 (q0, b, B) {(q1,)} 1 (q0, $, $) {(qf,)} 1 (q1, b, B) 1 (q1, $, $) FAPE ATC-05
20
Tarefa: lista de exercícios 5
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.