A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

FAPE - Curso de Ciência da Computação

Apresentações semelhantes


Apresentação em tema: "FAPE - Curso de Ciência da Computação"— Transcrição da apresentação:

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  aabb  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


Carregar ppt "FAPE - Curso de Ciência da Computação"

Apresentações semelhantes


Anúncios Google