Autômatos a pilha. UFRN/DIMAp/DIM0330 Linguagens formais. David Déharbe. david/enseignement/2003.

Tamanho: px
Começar a partir da página:

Download "Autômatos a pilha. UFRN/DIMAp/DIM0330 Linguagens formais. David Déharbe. http://www.consiste.dimap.ufrn.br/ david/enseignement/2003."

Transcrição

1 UFRN/DIMAp/DIM0330 Linguagens formais david/enseignement/2003.1/dim0330 1/36 Autômatos a pilha David Déharbe UFRN/DIMAp Campus Universitário, Lagoa Nova, Natal, RN, Brasil Copyright 2003, Universidade Federal do Rio Grande do Norte, todos os direitos reservados.

2 Introdução As linguagens livres de contexto podem ser definidas através de gramáticas livres de contexto. Existe alguma classe de autômato que reconhece as linguagens livres de contexto? Os autômatos finitos não podem reconhecer certas linguagens livres de contexto, por exemplo: {a n b n n 0}, onde é necessário contar o número de a (exige um contador); {ww R w Σ }, onde é necessário guardar w (exige armazenar w). A idéia é adicionar ao autômato uma memória que pode ser acessada como uma pilha. 2/36

3 Roteiro Autômato a pilha não determinístico; autômatos a pilha e linguagens livres de contexto; autômatos a pilha e gramáticas livres de contexto. 3/36

4 Roteiro Autômato a pilha não determinístico; autômatos a pilha e linguagens livres de contexto; autômatos a pilha e gramáticas livres de contexto. 4/36

5 Uma visão do autômato a pilha Entrada 5/36 Unidade de controle Grafo de estados Pilha

6 Definição (1/3) Definição 1 (Autômato a pilha não determinístico) Um autômato a pilha não determinístico, ou APN, é uma tupla G = (Q, Σ, Γ, δ, q 0, z, F ) onde Q é um conjunto finito de estados; Σ é um conjunto finito de símbolos, chamado alfabeto de entrada; Γ é um conjunto finito de símbolos, chamado alfabeto da pilha; q 0 Q é o estado inicial; z Γ é o símbolo inicial da pilha; F Q é o conjunto de estados finais; δ : (Q (Σ {ε})) Γ P(Q Γ ) é a função de transição. 6/36

7 Definição (2/3) (q, w) δ(q, s, a) significa que, no estado q, se o símbolo de entrada é s e o símbolo no topo da pilha é a, o autômato lê s, desempilha a, muda para o estado q, e empilha a palavra w. (q, w) δ(q, ε, a) significa que, no estado q, se o símbolo no topo da pilha é a, o autômato desempilha a, muda para o estado q, e empilha a palavra w. É uma transição ε. Se a pilha estiver vazia, nenhum movimento é possível. Se o valor de δ for um par (q, ε), a quantidade de elementos na pilha diminui. 7/36

8 Definição (3/3) Supondo que a função de transição seja tal que 8/36 δ(q 1, a, x) = {(q 2, yz), (q 3, ε)}. Se a unidade de controle estiver na no estado q 1, o símbolo na entrada a, e o símbolo no topo da pilha x, são possíveis as seguintes ações: A unidade de controle passa para o estado q 2, e os símbolos y e z substituem o símbolo x no topo da pilha; A unidade de controle passa para o estado q 3, e o símbolo x é desempilhado.

9 Exemplo Q = {q 0, q 1, q 2, q 3 }; Σ = {a, b}; Γ = {0, 1}; z = 0; F = q 3 ; δ = (q 0, a, 0) {(q 1, 10)} (q 0, ε, 0) {(q 3, ε)} (q 1, a, 1) {(q 1, 11)} (q 1, b, 1) {(q 2, ε)} (q 2, b, 1) {(q 2, ε)} (q 2, ε, 0) {(q 3, ε)} 9/36

10 Alguns atalhos de notação 10/36 Usando uma tabela torna-se mais fácil visualizar a função de transição: a b ε (q 0, 0) (q 1, 10), (q 3, ε) (q 3, ε) (q 0, 1) (q 1, 11) (q 2, ε) (q 2, 1) (q 2, ε) (q 2, 1) (q 3, ε) A tripla (q, w, u), onde a é o estado, w a parte não lida da palavra, e u o conteúdo da pilha é uma descrição instantânea do autômato. A seguinte notação é usada para representar uma transição do autômato (q, aw, bu) (q, w, yu), onde (q, y) δ(q, a, b). e + denotam 0 ou mais, 1 ou mais aplicações de.

11 Linguagem aceita por um APN Definição 2 Seja M = (Q, Σ, Γ, δ, q 0, z, F ) um autômato a pilha não determinístico. A linguagem aceita por M é o conjunto 11/36 L(M) = {w Σ q f F, u Γ (q 0, w, z) (q f, ε, u)}. Uma palavra é reconhecida quando o autômato iniciado no estado inicial, e com a pilha contendo apenas o símbolo inicial, lendo essa palavra, chega a um estado final.

12 Exemplo 1: {a n b n n 0} M = ({q 0, q 1, q 2 }, {a, b}, {0, 1}, δ, q 0, 0, {q 2 }), onde δ é definida como segue: a b ε (q 0, 0) (q 0, 10) (q 2, ε) (q 0, 1) (q 0, 11) (q 1, ε) (q 1, 1) (q 1, ε) (q 1, 0) (q 2, ε) A leitura de a acarreta o empilhamento de 1, a de b o desempilhamento de 1. Execução do APN reconhecendo aabb: (q 0, aabb, 0) (q 0, abb, 10) (q 0, bb, 110) (q 1, b, 10) (q 1, ε, 0) (q 2, ε, ε). 12/36

13 Exemplo 2: {w {a, b} N (a, w) = N (b, w)} M = ({q 0, q 1 }, {a, b}, {0, 1, z}, δ, q 0, 0, {q 1 }), onde δ é definida como segue: a b ε (q 0, z) (q 0, 0z) (q 0, 1z) (q 1, z) (q 0, 0) (q 0, 00) (q 0, ε) (q 0, 1) (q 0, ε) (q 0, 11) O número de 0 (de 1) empilhados é a diferença positiva entre o número de a e o número de b lidos (de b e de a lidos). Execução do APN reconhecendo baab: (q 0, baab, z) (q 0, aab, 1z) (q 0, ab, z) (q 0, b, 0z) (q 0, ε, z) (q 1, ε, z). 13/36

14 Exemplo 3: {wcw R w {a, b} } M = ({q 1, q 2, q 3 }, {a, b, c}, {R, G, B}, δ, q 1, R, {q 3 }), onde δ é tal que a b c ε (q 1, R) (q 1, GR) (q 1, BR) (q 2, R) (q 1, G) (q 1, GG) (q 1, BG) (q 2, G) (q 1, B) (q 1, GB) (q 1, BB) (q 2, B) (q 2, R) (q 3, ε) (q 2, G) (q 2, ε) (q 2, B) (q 2, ε) (q 3, ) Na leitura de w, quando um a (um b) é lido, um G (um B) é empilhado. Na leitura de w R, os símbolos da pilha são removidos, verificando a ordem, até chegar ao marcador (R). 14/36

15 Exemplo 4: {ww R w {a, b} } M = ({q 0, q 1, q 2 }, {a, b}, {a, b, z}, δ, q 0, z, {q 2 }), onde δ é tal que a b ε (q 0, z) (q 0, az) (q 0, bz) (q 0, a) (q 0, aa) (q 0, ba) (q 1, a) (q 0, b) (q 0, ab) (q 0, bb) (q 1, b) (q 1, a) (q 1, ε) (q 1, b) (q 1, ε) (q 1, z) (q 2, ε) q 0 : leitura de w; q 1 : leitura de w R. A um determinado ponto, o AP não determinístico passa do estado q 0 a q 1. Execução do APN reconhecendo abba: (q 0, abba, z) (q 0, bba, az) (q 0, ba, baz) (q 1, ba, baz) (q 1, a, az) (q 1, ε, z) (q 2, ε, ε). 15/36

16 Exercícios Para cada uma das LLC seguintes, construir um APN correspondente: a linguagem dos paĺındromas sobre {a, b}; a linguagem das parênteses bem balanceadas: 16/36 {ε, (), ()(), (()), ()(()),...} a linguagem das palavras sobre {a, b} tendo exatamente duas vezes mais a que b; a linguagem das palavras sobre {a, b,., +,, (, ), ε, } que formam expressões regulares sobre {a, b}.

17 Roteiro Autômato a pilha não determinístico; autômatos a pilha e linguagens livres de contexto; autômatos a pilha e gramáticas livres de contexto. 17/36

18 Autômatos a pilha e linguagens livres de contexto Objetivo: Mostrar que, para qualquer linguagem livre de contexto, existe um autômato a pilha não-determinístico equivalente. Construiremos o APN que calcula a derivação mais a esquerda de qualquer palavra da linguagem. Supomos dada uma gramática G = (V, T, P, S), na forma normal de Greibach, que gere a linguagem. O APN terá T como alfabeto de entrada, e V {z} como alfabeto de pilha, onde z é um novo símbolo. Para simular a aplicação da regra de produção A aα, devemos ter o não terminal A no topo da pilha, e o terminal a como símbolo de entrada. A é removido, a lido, e α empilhado. 18/36

19 Exemplo (1/2) S asa a, A bb, B b. O autômato tem três estados: {q 0, q 1, q 2 }, q 0 é inicial, q 2 é final; O símbolo inicial da gramática é inicialmente empilhado: (q 0, ε, z) (q 1, Sz). As regras de produções são simuladas como segue: S asa : (q 1, a, Sw) (q 1, SAw) S a : (q 1, a, Sw) (q 1, w) A bb : (q 1, b, Aw) (q 1, Bw) B b : (q 1, b, Bw) (q 1, w) A aparição do símbolo especial z no topo da pilha indica que uma palavra foi reconhecida: (q 1, ε, z) (q 2, ε). 19/36

20 Exemplo (2/2) M = ({q 0, q 1, q 2 }, {a, b}, {S, A, B, z}, δ, q 0, z, {q 2 }), onde δ é tal que a b ε (q 0, z) (q 1, Sz) (q 1, S) (q 1, SA), (q 1, ε) (q 1, A) (q 1, B) (q 1, B) (q 1, ε) (q 1, z) (q 2, ε) A metodologia dada para este exemplo aplica-se a qualquer gramática na forma normal de Greibach. 20/36

21 21/36 Teorema Teorema 1 Para qualquer linguagem livre de contexto L, tal que ε L, existe um APN M tal que L(M) = L. Prova: A linguagem L possui uma GLC G = (V, T, P, S) na forma normal de Greibach; M = ({q 0, q 1, q 2 }, T, V {z}, δ, q 0, z, {q 2 }), onde δ é tal que: δ(q 0, ε, z = {(q 1, Sz)}, A aα P (q 1, α) δ(q 1, a, A), δ(q 1, z, ε) = {(q 2, ε)}.

22 Exemplo (1/2) Considere a GLC (na forma normal de Greibach) seguinte: S aa, A aabc bb a, B b, C c. M = ({q 0, q 1, q 2 }, {a, b, c}, {S, A, B, C, z}, δ, q 0, z, {q 2 }), onde δ é tal que: a b c ε (q 0, z) (q 1, Sz) (q 1, S) (q 1, A) (q 1, A) (q 1, ABC), (q 1, ε) (q 1, B) (q 1, B) (q 1, ε) (q 1, C) (q 1, ε) (q 1, z) (q 2, ε) 22/36

23 Exemplo (2/2) O rocessamento pelo APN da palavra aaabc é: (q 0, aaabc, z) (q 1, aaabc, Sz) (q 1, aaabc, Sz) (q 1, aabc, Az) (q 1, abc, ABCz) (q 1, bc, BCz) (q 1, c, Cz) (q 1, ε, z) (q 2, ε, ε), correspondendo a seguinte derivação mais a esquerda: S = aa = aaabc = aaabc = aaabc = aaabc. 23/36

24 Exercícios Construir um APN que reconhece as seguintes linguagens: 1. S aabb aaa, A abb a, B b. 2. S AA a, A SA b. 24/36

25 Roteiro Autômato a pilha não determinístico; autômatos a pilha e linguagens livres de contexto; autômatos a pilha e gramáticas livres de contexto. 25/36

26 26/36 A gramática livre de contexto de um APN Problema: Supondo dado um APN M, determinar uma gramática que descreve L(M). Iremos construir uma gramática que simule os movimentos do autômato. Trabalharemos com as seguintes hipóteses: M tem um único estado final, no qual entre com a pilha vazia. M todas as transições tem a forma δ(q i, a, A) = {C 1, C 2,... C n }, onde C k = (q j, ε) (1) C k = (q j, BC) (2) ou seja, as transições adicionam ou removem um símbolo da pilha.

27 Construção da gramática (1/2) 27/36 Os não terminais da gramática correspondem a triplas (q i, A, q j ): onde q i e q j são estados e A um símbolo, são denotadas q i Aq j, e são tais que q i Aq j = w sse M, lendo a palavra w, passo do estado q i ao estado q j, apagando A (ou a palavra pela qual pode ser trocado) da pilha.

28 Construção da gramática (2/2) 28/36 Para as transições tais que (q j, ε) δ(q i, a, A), teremos uma regra q i Aq j a. A leitura de a no estado q i com A na pilha leva o autômato no estado q j, e remove A da pilha. Para as transições tais que (q j, BC) δ(q i, a, A), teremos uma regra q i Aq l a q j Bq k q k Cq l, onde q k e q l têm todos os valores possíveis. A leitura de a no estado q i com A na pilha leva o autômato no estado q j, e substitui A por BC na pilha. Em seguida ambos B e C devem ser removidos. Remover B leva o autômato num estado q k, e remover C levá-lo num estado q l.

29 Exemplo (1/6) Seja o APN com a função de transição seguinte: 29/36 δ(q 0, a, z) = {(q 0, Az)}, δ(q 0, a, A) = {(q 0, A)}, δ(q 0, b, A) = {(q 1, ε)}, δ(q 1, ε, z) = {(q 2, ε)}. O estado inicial é q 0 e o estado final é q 2. A primeira condição sobre APN é satisfeita (único estado inicial e final). A segunda condição sobre APN não é satisfeita por δ(q 0, a, A) = {(q 0, A)}.

30 Exemplo (2/6) Introduzimos um novo estado intermediário q 3 e transições correspondentes satisfazendo as condições. δ(q 0, a, z) = {(q 0, Az)}, δ(q 0, a, A) = {(q 3, ε)}, δ(q 3, ε, z) = {q 0, Az}, δ(q 0, b, A) = {(q 1, ε)}, δ(q 1, ε, z) = {(q 2, ε)}. 30/36

31 Exemplo (3/6) Selecionamos as regras eliminando um símbolo da pilha: 31/36 δ(q 0, a, A) = {(q 3, ε)}, δ(q 0, b, A) = {(q 1, ε)}, δ(q 1, ε, z) = {(q 2, ε)}. As regras de produção correspondnetes são: q 0 Aq 3 a, q 0 Aq 1 b, q 1 Aq 2 z,

32 32/36 Exemplo (4/6) Para a primeira transição remanescente δ(q 0, a, z) = {(q 0, Az)}, temos as seguintes produções: q 0 zq 0 a q 0 Aq 0 q 0 zq 0 a q 0 Aq 1 q 1 zq 0 a q 0 Aq 2 q 2 zq 0 a q 0 Aq 3 q 3 zq 0, q 0 zq 1 a q 0 Aq 0 q 0 zq 1 a q 0 Aq 1 q 1 zq 1 a q 0 Aq 2 q 2 zq 1 a q 0 Aq 3 q 3 zq 1, q 0 zq 2 a q 0 Aq 0 q 0 zq 2 a q 0 Aq 1 q 1 zq 2 a q 0 Aq 2 q 2 zq 2 a q 0 Aq 3 q 3 zq 2, q 0 zq 3 a q 0 Aq 0 q 0 zq 3 a q 0 Aq 1 q 1 zq 3 a q 0 Aq 2 q 2 zq 3 a q 0 Aq 3 q 3 zq 3.

33 33/36 Exemplo (5/6) Para a última transição remanescente δ(q 3, ε, z) = {q 0, Az}, temos as seguintes produções: q 3 zq 0 q 0 Aq 0 q 0 zq 0 q 0 Aq 1 q 1 zq 0 q 0 Aq 2 q 2 zq 0 q 0 Aq 3 q 3 zq 0, q 3 zq 1 q 0 Aq 0 q 0 zq 1 q 0 Aq 1 q 1 zq 1 q 0 Aq 2 q 2 zq 1 q 0 Aq 3 q 3 zq 1, q 3 zq 2 q 0 Aq 0 q 0 zq 2 q 0 Aq 1 q 1 zq 2 q 0 Aq 2 q 2 zq 2 q 0 Aq 3 q 3 zq 2, q 3 zq 3 q 0 Aq 0 q 0 zq 3 q 0 Aq 1 q 1 zq 3 q 0 Aq 2 q 2 zq 3 q 0 Aq 3 q 3 zq 3.

34 Exemplo (6/6) Colocamos aqui em paralelo o reconhecimento (a esquerda) e a produção (a direita) da palavra aab. (q 0, aab, z) (q 0, ab, Az) q 0 zq 2 = a q 0 Aq 3 q 3 zq 2 (q 3, b, z) = aa q 3 zq 2 (q 0, b, Az) = aa q 0 Aq 1 q 1 zq 2 (q 1, ε, z) = aab q 1 zq 2 (q 2, ε, ε). = aab. 34/36

35 Exercício 35/36 Calcule uma GLC que gere a linguagem aceita pelo APN ({q 0, q 1, q 2 }, {a, b}, {A, z onde δ é especificada pela seguinte tabela: a b ε (q 0, z) (q 0, Az) (q 0, A) (q 1, ε) (q 0, AA) (q 1, A) (q 2, ε)

36 Conclusões Um autômato a pilha pode ser visto como um autômato finito combinado com uma memória (infinita), acessível como uma pilha. Os autômatos a pilha não-determinísticos são os reconhecedores das linguagens livres de contexto. Existem procedimentos efetivos para construir o APN reconhecedor de uma dada GLC em formal normal de Greibach, e para calcular a gramática geradora de uma LLC gerada por um APN que satisfaz certas condições. 36/36

6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto

6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto Capítulo 6. Autômatos com Pilha 6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto Nos exemplos da seção anterior, vimos que os autômatos com pilha existem para

Leia mais

Apostila 03 Linguagens Livres de Contexto

Apostila 03 Linguagens Livres de Contexto Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e

Leia mais

Linguagens Livres de Contexto e Autômatos a Pilha (Push- Down) Um Modelo de Computação de Força Intermediária. Gramática Livre de Contexto

Linguagens Livres de Contexto e Autômatos a Pilha (Push- Down) Um Modelo de Computação de Força Intermediária. Gramática Livre de Contexto LFA - PARTE 2 Linguagens Livres de Contexto e Autômatos a Pilha (Push- Down) Um Modelo de Computação de Força Intermediária João Luís Garcia Rosa LFA-FEC-PUC-Campinas 2002 R. Gregory Taylor: http://starbase.cs.trincoll.edu/~rtaylor/thcomp/

Leia mais

Teoria da Computação Linguagens e Expressões Regulares, Autómatos de Estados Finitos

Teoria da Computação Linguagens e Expressões Regulares, Autómatos de Estados Finitos Teoria da Computação Linguagens e Expressões Regulares, Autómatos de Estados Finitos Simão Melo de Sousa 12 de Outubro de 2011 Conteúdo 1 Linguagens e Expressões Regulares 2 2 Autómatos de Estados Finitos

Leia mais

Aula 7: Autômatos com Pilha

Aula 7: Autômatos com Pilha Teoria da Computação Segundo Semestre, 2014 Aula 7: Autômatos com Pilha DAINF-UTFPR Prof. Ricardo Dutra da Silva Vamos adicionar um memória do tipo pilha ao nossos autômatos para que seja possível aceitar

Leia mais

Linguagens, Gramáticas e Máquinas

Linguagens, Gramáticas e Máquinas Linguagens, Gramáticas e Máquinas 1 INTRODUÇÃO Pode-se olhar um computador como uma máquina M que tem as propriedades descritas a seguir. A cada instante, M tem um "estado interno", M lê alguma "entrada",

Leia mais

Gramáticas Livres de Contexto

Gramáticas Livres de Contexto Gramáticas Livres de Contexto 25 de novembro de 2011 Definição 1 Uma Regra (ou produção) é um elemento do conjunto V (V Σ). Sendo que V é um conjunto finito de elementos chamados de variáveis e Σ um conjunto

Leia mais

Outras Máquinas de Turing

Outras Máquinas de Turing Capítulo 10 Outras Máquinas de Turing 10.1. Pequenas variações da TM padrão 10.2. MT s com dispositivos de armazenamento mais complexos 10.3. MT s não-determinísticas 10.4. A Máquina de Turing Universal

Leia mais

Teoria da Computação Linguagens Formais e Autômatos

Teoria da Computação Linguagens Formais e Autômatos 1 Prof. Diógenes Furlan Teoria da Comutação Linguagens Formais e Autômatos Módulo 2 2015 2 Autômato de Pilha Modelo reconhecedor de alavras ara LLCs. Modelo da Máuina fita de entrada cabeça de leitura

Leia mais

Apostila 03 - Linguagens Livres de Contexto Exercícios

Apostila 03 - Linguagens Livres de Contexto Exercícios Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e

Leia mais

Linguagens Livres de Contexto

Linguagens Livres de Contexto Universidade Católica de Pelotas Centro Politécnico Bacharelado em Ciência da Computação 364018 Linguagens Formais e Autômatos TEXTO 4 Linguagens Livres de Contexto Prof. Luiz A M Palazzo Maio de 2011

Leia mais

Expressões Regulares e Gramáticas Regulares

Expressões Regulares e Gramáticas Regulares Universidade Católica de Pelotas Escola de informática 053212 Linguagens Formais e Autômatos TEXTO 2 Expressões Regulares e Gramáticas Regulares Prof. Luiz A M Palazzo Março de 2007 Definição de Expressão

Leia mais

Roteiro da Aula 3. Sintaxe. 2 Exemplos. 4 Propriedades de Fechamento. Teoria da. 116360 Aula 3. Roteiro

Roteiro da Aula 3. Sintaxe. 2 Exemplos. 4 Propriedades de Fechamento. Teoria da. 116360 Aula 3. Roteiro 636 da Finitos Nãoterminísticos Finitos Não-terminísticos Sintaxe Semântica 2 3 4 5 636 Finitos Nãoterminísticos Sintaxe Semântica Não-terminismo Determinístico Exatamente uma trajetória sobre uma w Σ.

Leia mais

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

Compiladores. Análise léxica. Plano da aula. Vocabulário básico. Motivação para análise léxica. Estrutura de um compilador Estrutura de um compilador Compiladores Análise lexical (1) Expressões Regulares 1 2 Plano da aula 1. Motivação do uso de E.R. e definições Linguagens, tokens, lexemas... 2. Regras de formação e exemplos

Leia mais

Definição 2.2 (Palavra) As sequências finitas de letras são designadas por palavras sobre o alfabeto V.

Definição 2.2 (Palavra) As sequências finitas de letras são designadas por palavras sobre o alfabeto V. Capítulo 2 Definição de Linguagens 2.1 Linguagens Formais Definição 2.1 (Alfabeto) Um conjunto finito e não vazio de símbolos arbitrários é designado por um alfabeto, e é denotado por V. Os elementos de

Leia mais

Capítulo 5. Linguagens livres de contexto

Capítulo 5. Linguagens livres de contexto Capítulo 5 Linguagens livres de contexto 5.1. Gramáticas livres de contexto 5.2. Parsing e ambiguidade 5.3. CFG e linguagens de programação 221 5.1. 1Gramáticas ái livres de contexto na parte esquerda

Leia mais

1 Autómatos finitos deterministas

1 Autómatos finitos deterministas 1 Autómatos finitos deterministas 1.1 Autómato finito determinista Um alfabeto é um conjunto finito. Uma linguagem sobre um alfabeto I é um subconjunto de I. Usa-se simplesmente a designação linguagem

Leia mais

TEORIA DAS LINGUAGENS 3. GRAMÁTICAS INDEPENDENTES DE CONTEXTO

TEORIA DAS LINGUAGENS 3. GRAMÁTICAS INDEPENDENTES DE CONTEXTO LICENCIATURA EM CIÊNCIAS DA COMPUTAÇÃO TEORIA DAS LINGUAGENS 3. GRAMÁTICAS INDEPENDENTES DE CONTEXTO José Carlos Costa Dep. Matemática e Aplicações Universidade do Minho Braga, Portugal 31 de Maio de 2010

Leia mais

Alfabeto e palavras. Alfabeto conjunto finito de símbolos (Σ).

Alfabeto e palavras. Alfabeto conjunto finito de símbolos (Σ). Alfabeto e palavras Alfabeto conjunto finito de símbolos (Σ). {A,...,Z}, {α, β,... }, {a,b}, {0,1}, ASCII Palavra de Σ sequência finita de símbolos do alfabeto Σ Σ = {a, b} aabba a aaaaaaaa Comprimento

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Linguagens Formais e Autômatos - P. Blauth Menezes 1 Linguagens

Leia mais

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

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação Universiae e São Paulo Instituto e Ciências Matemáticas e e Computação Curso e Ciências e Computação SCC-205 TEORIA DA COMPUTAÇÃO E LINGUAGENS FORMAIS Turma A 2º. Semestre e 2010 Prof. João Luís Lista

Leia mais

Lista n 0 1 de Exercícios de Teoria da Computação

Lista n 0 1 de Exercícios de Teoria da Computação Lista n 0 1 de Exercícios de Teoria da Computação UFU-Curso de Bacharelado em Ciência da Computação - 7 0 período Profa. Sandra de Amo Exercícios de Revisão : Autômatos e Gramáticas 1. Mostre que a linguagem

Leia mais

Linguagens Formais e Autômatos. Alfabetos, Palavras, Linguagens e Gramáticas

Linguagens Formais e Autômatos. Alfabetos, Palavras, Linguagens e Gramáticas Linguagens Formais e Autômatos Alfabetos, Palavras, Linguagens e Gramáticas Cristiano Lehrer, M.Sc. Introdução (1/3) A Teoria das Linguagens Formais foi originariamente desenvolvida na década de 1950 com

Leia mais

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.

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. Capítulo 7 Autómatos de pilha 7.1. Autómatos de pilha não-determinísticos (NPDA) 7.2. Autómatos de pilha e linguagens livres de contexto 7.3. Autómatos de pilha determinísticos e linguagens livres de contexto

Leia mais

Introdução às Máquinas de Turing (TM)

Introdução às Máquinas de Turing (TM) Comparação com computadores: Introdução às Máquinas de Turing (TM) um modelo matemático simples de um computador Semelhanças: lê e escreve em posições arbitrarias de memoria Diferenças: sem limite no tamanho

Leia mais

Linguagens Formais e Compilação Ficha de exercícios

Linguagens Formais e Compilação Ficha de exercícios Linguagens Formais e Compilação Ficha de exercícios Simão Melo de Sousa 1 Linguagens Formais: Construir Frases Exercício 1 Para cada uma das gramáticas G seguintes, (a) descreva a linguagem L(G) gerada

Leia mais

Autômatos com Pilha: Reconhecedores de LLCs

Autômatos com Pilha: Reconhecedores de LLCs Autômatos com Pilha: Reconhecedores de LLCs 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

Leia mais

Linguagens Formais e Autômatos P. Blauth Menezes

Linguagens Formais e Autômatos P. Blauth Menezes Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Linguagens Formais e Autômatos - P. Blauth Menezes 1 Linguagens

Leia mais

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

INE5317 Linguagens Formais e Compiladores AULA 8: Linguagens Livres de Contexto INE5317 Linguagens Formais e Compiladores AULA 8: Linguagens Livres de Contexto baseado em material produzido pelo prof Paulo B auth Menezes e pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira

Leia mais

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO. Seção 5.1 Problemas indecidíveis. Slides originais gentilmente cedidos pela Profa. Ariane Machado Lima

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO. Seção 5.1 Problemas indecidíveis. Slides originais gentilmente cedidos pela Profa. Ariane Machado Lima ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO Seção 5.1 Problemas indecidíveis Slides originais gentilmente cedidos pela Profa. Ariane Machado Lima 1 Na aula passada... A MT é indecidível (usando diagonalização)

Leia mais

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

INE5317 Linguagens Formais e Compiladores AULA 9: Propriedades e Reconhecimento das Linguagens Livres do Contexto INE5317 Linguagens Formais e Compiladores AULA 9: Propriedades e Reconhecimento das Linguagens Livres do Contexto baseado em material produzido pelo prof Paulo Bauth Menezes e pelo prof Olinto José Varela

Leia mais

Estruturas de Dados Pilhas, Filas e Deques

Estruturas de Dados Pilhas, Filas e Deques Estruturas de Dados Pilhas, Filas e Deques Prof. Eduardo Alchieri Estruturas de Dados Pilhas Pilhas Lista LIFO (Last In, First Out) Os elementos são colocados na estrutura (pilha) e retirados em ordem

Leia mais

Resumo. Sistemas e Sinais Máquinas de Estados Finitos. Máquina de Estados Finitos. Esta Aula

Resumo. Sistemas e Sinais Máquinas de Estados Finitos. Máquina de Estados Finitos. Esta Aula Resumo Sistemas e Sinais Máquinas de Estados Finitos lco@ist.utl.pt Estrutura das máquinas de estados finitos. Diagrama de estados. Tabela de actualização. Máquinas não-determinísticas. Simulação e bi-simulação.

Leia mais

Aula 9: Máquinas de Turing

Aula 9: Máquinas de Turing Teoria da Computação Aula 9: Máquinas de Turing DAINF-UTFPR Prof. Ricardo Dutra da Silva Uma máquina de Turing é uma máquina de estados finitos que pode mover o cabeçote em qualquer direção, ler e manipular

Leia mais

UMA PROPOSTA DE ENSINO DA DISCIPLINA DE LINGUAGENS FORMAIS E AUTÔMATOS PARA UM CURSO DE ENGENHARIA DA COMPUTAÇÃO

UMA PROPOSTA DE ENSINO DA DISCIPLINA DE LINGUAGENS FORMAIS E AUTÔMATOS PARA UM CURSO DE ENGENHARIA DA COMPUTAÇÃO UMA PROPOSTA DE ENSINO DA DISCIPLINA DE LINGUAGENS FORMAIS E AUTÔMATOS PARA UM CURSO DE ENGENHARIA DA COMPUTAÇÃO Thiago Carvalho Pedrazzi 1 - thiago.pedrazzi@poli.usp.br Ivone Penque Matsuno 1,2 - ivone.matsuno@poli.usp.br

Leia mais

Linguagens Regulares. Prof. Daniel Oliveira

Linguagens Regulares. Prof. Daniel Oliveira Linguagens Regulares Prof. Daniel Oliveira Linguagens Regulares Linguagens Regulares ou Tipo 3 Hierarquia de Chomsky Linguagens Regulares Aborda-se os seguintes formalismos: Autômatos Finitos Expressões

Leia mais

Hierarquia de Chomsky Exemplos de gramáticas

Hierarquia de Chomsky Exemplos de gramáticas Hierarquia de Chomsky Exemplos de gramáticas 1 Formalmente, as gramáticas são caracterizadas como quádruplas ordenadas G = ( Vn, Vt, P, S) onde: Vn representa o vocabulário não terminal da gramática. Este

Leia mais

Exercícios de Teoria da Computação Autómatos finitos não deterministas

Exercícios de Teoria da Computação Autómatos finitos não deterministas Licenciatura em Engenharia Informática e de Computadores - LEIC Licenciatura em Engenharia de Redes de Comunicações - LERC Exercícios de Teoria da Computação Autómatos finitos não deterministas Secção

Leia mais

Definições Hierarquia de Chomsky Exemplos de gramáticas

Definições Hierarquia de Chomsky Exemplos de gramáticas Definições Hierarquia de Chomsky Exemplos de gramáticas 1 Formalmente, as gramáticas são caracterizadas como quádruplas ordenadas G = ( Vn, Vt, P, S) onde: Vn representa o vocabulário não terminal da gramática.

Leia mais

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

INE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos INE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: silveira@inf.ufsc.br URL: www.inf.ufsc.br/~silveira As Linguagens e os formalismos representacionais

Leia mais

Máquinas de Turing. Juliana Kaizer Vizzotto. Disciplina de Teoria da Computação. Universidade Federal de Santa Maria

Máquinas de Turing. Juliana Kaizer Vizzotto. Disciplina de Teoria da Computação. Universidade Federal de Santa Maria Universidade Federal de Santa Maria Disciplina de Teoria da Computação Roteiro Definição Formal de Máquina de Turing Mais exemplos Definição Formal de Máquina de Turing Uma máquina de Turing é uma 7-upla,

Leia mais

Compiladores Aula 5. Celso Olivete Júnior. olivete@fct.unesp.br

Compiladores Aula 5. Celso Olivete Júnior. olivete@fct.unesp.br Aula 5 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Conjuntos Primeiro(First) e Seguidor(Follow) 2 Na aula de hoje Análise Sintática Análise Sintática Descendente Recursividade Fatoração 3

Leia mais

Autómatos finitos não determinísticos (AFND)

Autómatos finitos não determinísticos (AFND) Autómatos finitos não determinísticos (AFND) [HMU00](Cap 2.3) Computações não determinísticas: o estado seguinte não é univocamente determinado pelo estado actual.num autómato finito (não-determínistico):

Leia mais

Analisadores Ascendentes ou Empilha-Reduz. Mais um exemplo... Mais um exemplo... Top-Down x Bottom Up. Conteúdo da aula. Analisadores Ascendentes

Analisadores Ascendentes ou Empilha-Reduz. Mais um exemplo... Mais um exemplo... Top-Down x Bottom Up. Conteúdo da aula. Analisadores Ascendentes Conteúdo da aula Analisadores Ascendentes ou mpilha-reduz Marcelo Johann Analisadores Ascendentes uncionamento Analisadores de Precedência de Operadores Analisadores LR(k) SLR - Simple LR (estudaremos

Leia mais

Casamento de Cadeias. Introdução. Introdução. Estrutura de Dados. Cadeia de caracteres: sequência de elementos denominados caracteres.

Casamento de Cadeias. Introdução. Introdução. Estrutura de Dados. Cadeia de caracteres: sequência de elementos denominados caracteres. Introdução de Cadeias Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM 1 Cadeia

Leia mais

O que queremos. Processamento Estatístico da Linguagem Natural. Parsing Morfológico. Regras Simples. Adicionando palavras. Regras Derivacionais

O que queremos. Processamento Estatístico da Linguagem Natural. Parsing Morfológico. Regras Simples. Adicionando palavras. Regras Derivacionais Processamento Estatístico da Linguagem Natural Aula 5 Professora Bianca (Sala 302 Bloco E) bianca@ic.uff.br http://www.ic.uff.br/~bianca/peln/ O que queremos Algo que faça automaticamente um mapeamento

Leia mais

Estrutura de Dados. Unidade VI. -Tabela Hash -Grafos. Prof. Ms. Amilton Souza Martha

Estrutura de Dados. Unidade VI. -Tabela Hash -Grafos. Prof. Ms. Amilton Souza Martha Estrutura de Dados Unidade VI -Tabela Hash -Grafos Prof. Ms. Amilton Souza Martha Tabela Hash - Conceitos Um dos maiores problemas encontrados, quando se estuda a alocação de estruturas de dados, é o tempo

Leia mais

Plano da aula. Compiladores. Top-Down x Bottom Up. Redução Exemplo 1. Redução Exemplo 1. Redução Exemplo 1. A Abc b B d.

Plano da aula. Compiladores. Top-Down x Bottom Up. Redução Exemplo 1. Redução Exemplo 1. Redução Exemplo 1. A Abc b B d. Plano da aula Compiladores Análise bottom-up AKA: Analisador ascendente Analisador empilhar/reduzir Análise sintática (4) Análise Bottom-Up Autômatos mpilhar/reduzir xemplos Handle Operações básicas IQuestões

Leia mais

Linguagem (formal) de alfabeto Σ

Linguagem (formal) de alfabeto Σ Linguagem (formal) de alfabeto Σ Linguagem é qualquer subconjunto de Σ, i.e. qualquer conjunto de palavras de Σ Σ = {a, b} {aa, ab, ba, bb} ou {x x {a, b} e x = 2} {a, aa, ab, ba, aaa, aab, aba,...} ou

Leia mais

Notas de Aula - Álgebra de Boole Parte 1

Notas de Aula - Álgebra de Boole Parte 1 Universidade de Brasília Departamento de Engenharia Elétrica Sistemas Digitais 1 Prof. Dr. Alexandre Romariz Revisado em 27/4/06 Notas de Aula - Álgebra de Boole Parte 1 1 Introdução Fundamentos, Teoremas

Leia mais

Autómatos Finitos Determinísticos

Autómatos Finitos Determinísticos Ficha 2 Autómatos Finitos Determinísticos 2.1 Introdução Se olharmos, de forma simplificada, para um computador encontramos três componentes principais: a) A unidade de processamento central b) As unidades

Leia mais

Lema do Bombeamento Linguagens Livres de Contexto

Lema do Bombeamento Linguagens Livres de Contexto Lema do Bombeamento Linguagens Livres de Contexto Bombeando FA s 0 0 x y z 1 1 1 0 Strings de comprimento 3 ou mais no DFA acima podem ser bombeados, pois tais strings correspondem a caminhos de comprimento

Leia mais

Erros. Número Aproximado. Erros Absolutos erelativos. Erro Absoluto

Erros. Número Aproximado. Erros Absolutos erelativos. Erro Absoluto Erros Nenhum resultado obtido através de cálculos eletrônicos ou métodos numéricos tem valor se não tivermos conhecimento e controle sobre os possíveis erros envolvidos no processo. A análise dos resultados

Leia mais

Avaliação de Expressões

Avaliação de Expressões valiação de Expressões valiação de Expressões - Como efetuar o cálculo de uma expressão em um computador? Exemplo: / B C D + E Regras usuais da matemática. Os parênteses alteram a ordem das expressões:

Leia mais

COMPUTABILIDADE. 1. Máquinas de Turing

COMPUTABILIDADE. 1. Máquinas de Turing Licenciatura em Ciências da Computação COMPUTABILIDADE 1. Máquinas de Turing Ano letivo 2011/2012 José Carlos Costa Departamento de Matemática e Aplicações Universidade do Minho Definição de máquina de

Leia mais

ESTRUTURA DE DADOS PILHA

ESTRUTURA DE DADOS PILHA ESTRUTURA DE DADOS PILHA CONCEITO DE PILHAS - Pilhas são listas lineares onde a inserção de um novo item ou a remoção de um item já existente se dá em uma única extremidade, no topo. Pilha vazia Insere(A)

Leia mais

Projeto de Compiladores. FIR Faculdade Integrada do Recife João Ferreira joaoferreira@fir.br 5 e 6 de março de 2007

Projeto de Compiladores. FIR Faculdade Integrada do Recife João Ferreira joaoferreira@fir.br 5 e 6 de março de 2007 Projeto de Compiladores FIR Faculdade Integrada do Recife João Ferreira joaoferreira@fir.br 5 e 6 de março de 2007 Agenda da Aula Resposta exercício da aula passada Revisão As Fases de Um Compilador Analisador

Leia mais

IMPORTAÇÃO DO CADASTRO DE PESSOAS

IMPORTAÇÃO DO CADASTRO DE PESSOAS IMPORTAÇÃO DO CADASTRO DE PESSOAS 1. Objetivo: 1. Esta rotina permite importar para o banco de dados do ibisoft Empresa o cadastro de pessoas gerado por outro aplicativo. 2. O cadastro de pessoas pode

Leia mais

Linguagens Formais e Autómatos. Vasco Pedro

Linguagens Formais e Autómatos. Vasco Pedro Linguagens Formais e Autómatos Vasco Pedro Departamento de Informática Universidade de Évora 2008/2009 Alfabeto, Palavra alfabeto conjunto finito de símbolos (Σ, T ) (elementos a, b, c, d, e) Exemplos:

Leia mais

Apostila 01 Fundamentação da Teoria da Computação e Linguagens Formais

Apostila 01 Fundamentação da Teoria da Computação e Linguagens Formais Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e

Leia mais

Linguagens Formais e Autômatos (LFA)

Linguagens Formais e Autômatos (LFA) INF1626 Linguagens Formais e Autômatos (2013- Linguagens Formais e Autômatos (LFA) Aula de 30/10/2013 Autômatos de Pilha Modelo Conceitual; JFLAP Modelos de Implementação: Ruby Clarisse S. de Souza, 2013

Leia mais

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

Linguagens Formais. Aula 01 - Conceitos Básicos. Prof. Othon Batista Mestre em Informática Linguagens Formais Aula 01 - Conceitos Básicos Prof. Othon Batista Mestre em Informática Sumário Introdução à Linguagem Alfabeto Cadeias de Símbolos, Palavras Tamanho de Palavra Prefixo, Sufixo ou Subpalavra

Leia mais

Portas Lógicas Básicas Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 2h/60h

Portas Lógicas Básicas Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 2h/60h Portas Lógicas Básicas Prof. Rômulo Calado Pantaleão Camara Carga Horária: 2h/60h Colegiado de Engenharia da Computação CECOMP Introdução à Algebra de Boole Em lógica tradicional, uma decisão é tomada

Leia mais

Sergio da Silva Aguiar Universidade Estadual do Sudoeste da Bahia - I Seemat

Sergio da Silva Aguiar Universidade Estadual do Sudoeste da Bahia - I Seemat Introdução à Lógica Matemática Sergio da Silva Aguiar Universidade Estadual do Sudoeste da Bahia - I Seemat 1 Introdução O que é a Lógica? O que signi ca estudar Lógica? Qual a sua de nição? Ao iniciar

Leia mais

Linguagens livres de contexto e autômatos de pilha

Linguagens livres de contexto e autômatos de pilha Capítulo 6: Linguagens livres de contexto e autômatos de pilha José Lucas Rangel, maio 1999 6.1 - Introdução. Os aceitadores, ou reconhecedores, das linguagens livres de contexto são os chamados autômatos

Leia mais

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

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 02 Introdução à Teoria da Computação Prof.ª Danielle Casillo Linguagem: é uma forma precisa de expressar

Leia mais

Conceitos Básicos. Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem

Conceitos Básicos. Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem Conceitos Básicos Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem Alfabeto ou Vocabulário: Conjunto finito não vazio de símbolos. Símbolo é um elemento qualquer de um alfabeto.

Leia mais

Matemática Discreta para Ciência da Computação

Matemática Discreta para Ciência da Computação Matemática Discreta para Ciência da Computação P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação

Leia mais

$XWyPDWRV)LQLWRV'HWHUPLQLVWDV$)' A= (Q, È, G,q 0,F)

$XWyPDWRV)LQLWRV'HWHUPLQLVWDV$)' A= (Q, È, G,q 0,F) &DStWXOR,,$XWyPDWRV)LQLWRV $XWyPDWRV)LQLWRV'HWHUPLQLVWDV$)' 'HILQLomR: Um $XWyPDWR)LQLWR'HWHUPLQLVWD é um quíntuplo ordenado, onde: A= (Q, È, G,q 0,F) Q é um conjunto finito, não vazio, de HVWDGRV, È é

Leia mais

Universidade Estadual de Mato Grosso do Sul - Curso de Ciência da Computação Disciplina: Estruturas de Dados Profª. Raquel Marcia Müller

Universidade Estadual de Mato Grosso do Sul - Curso de Ciência da Computação Disciplina: Estruturas de Dados Profª. Raquel Marcia Müller 1 Listas Lineares Dentre as estruturas de dados não primitivas, as listas lineares são as de manipulação mais simples. Uma lista linear agrupa informações referentes a um conjunto de elementos que, de

Leia mais

4.2 Produto Vetorial. Orientação sobre uma reta r

4.2 Produto Vetorial. Orientação sobre uma reta r 94 4. Produto Vetorial Dados dois vetores u e v no espaço, vamos definir um novo vetor, ortogonal a u e v, denotado por u v (ou u v, em outros textos) e denominado produto vetorial de u e v. Mas antes,

Leia mais

Elementos de Matemática Discreta

Elementos de Matemática Discreta Elementos de Matemática Discreta Prof. Marcus Vinícius Midena Ramos Universidade Federal do Vale do São Francisco 9 de junho de 2013 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos Marcus

Leia mais

Fundamentos de Teoria da Computação

Fundamentos de Teoria da Computação Fundamentos de Teoria da Computação (Versão preliminar em constante modificação) Prof. Celso Antônio Alves Kaestner, Dr. Eng. Universidade Tecnológica Federal do Paraná celsokaestner@utfpr.edu.br 28 de

Leia mais

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

Apostila 02. Objetivos: Estudar os autômatos finitos Estudar as expressões regulares Estudar as gramáticas regulares Estudar as linguagens regulares Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e

Leia mais

Máquinas de Turing 1

Máquinas de Turing 1 Máquinas de Turing 1 Agenda Máquinas de Turing (TM) Alan Turing Motivação Tese de Church-Turing Definições Computação Configuração de TM Reconhecedores vs. Decisores 2 Alan Turing Alan Turing é um dos

Leia mais

Computabilidade 2012/2013. Sabine Broda Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto

Computabilidade 2012/2013. Sabine Broda Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto Computabilidade 2012/2013 Sabine Broda Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto Capítulo 1 Computabilidade 1.1 A noção de computabilidade Um processo de computação

Leia mais

Manual do utilizador

Manual do utilizador Manual do utilizador Índice Acerca da nova impressora......................................................................5 Introdução.....................................................................................5

Leia mais

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar

Leia mais

2 Máquinas de Estados em Jogos Eletrônicos

2 Máquinas de Estados em Jogos Eletrônicos 2 Máquinas de Estados em Jogos Eletrônicos Máquinas de Estados são um conceito importante em várias áreas da ciência. Em particular, a engenharia e a computação utilizam Máquinas de Estados como ferramentas

Leia mais

Databases. Dependências Funcionais

Databases. Dependências Funcionais Databases Dependências Funcionais P. Serendero, 2011-13 Referências e exemplos tirados de diversas fontes, excetuando aqueles relacionados com embarcações Dependências Funcionais (DF) Uma Base de Dados,

Leia mais

Álgebra Linear. Mauri C. Nascimento Departamento de Matemática UNESP/Bauru. 19 de fevereiro de 2013

Álgebra Linear. Mauri C. Nascimento Departamento de Matemática UNESP/Bauru. 19 de fevereiro de 2013 Álgebra Linear Mauri C. Nascimento Departamento de Matemática UNESP/Bauru 19 de fevereiro de 2013 Sumário 1 Matrizes e Determinantes 3 1.1 Matrizes............................................ 3 1.2 Determinante

Leia mais

Faculdade de Computação

Faculdade de Computação UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Disciplina : Teoria da Computação Professora : Sandra Aparecida de Amo Lista de Exercícios n o 2 Exercícios sobre Modelos de Máquinas de Turing

Leia mais

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

Linguagens Formais e Autômatos 02/2015. LFA Aula 02. introdução 28/09/2015. Celso Olivete Júnior. LFA Aula 02 Linguagens regulares - introdução 28/09/2015 Celso Olivete Júnior olivete@fct.unesp.br 1 Na aula passada... Visão geral Linguagens regulares expressões regulares autômatos finitos gramáticas

Leia mais

INSTITUTO TECNOLÓGICO

INSTITUTO TECNOLÓGICO PAC - PROGRAMA DE APRIMORAMENTO DE CONTEÚDOS. ATIVIDADES DE NIVELAMENTO BÁSICO. DISCIPLINAS: MATEMÁTICA & ESTATÍSTICA. PROFº.: PROF. DR. AUSTER RUZANTE 1ª SEMANA DE ATIVIDADES DOS CURSOS DE TECNOLOGIA

Leia mais

Conjuntos numéricos. Notasdeaula. Fonte: Leithold 1 e Cálculo A - Flemming. Dr. Régis Quadros

Conjuntos numéricos. Notasdeaula. Fonte: Leithold 1 e Cálculo A - Flemming. Dr. Régis Quadros Conjuntos numéricos Notasdeaula Fonte: Leithold 1 e Cálculo A - Flemming Dr. Régis Quadros Conjuntos numéricos Os primeiros conjuntos numéricos conhecidos pela humanidade são os chamados inteiros positivos

Leia mais

UNIVERSIDADE DO VALE DO ITAJAÍ PAULO ROBERTO LIMA

UNIVERSIDADE DO VALE DO ITAJAÍ PAULO ROBERTO LIMA UNIVERSIDADE DO VALE DO ITAJAÍ PAULO ROBERTO LIMA UM SOFTWARE EDUCACIONAL PARA CONSTRUÇÃO E VALIDAÇÃO DE FORMALISMOS UTILIZADOS NA GERAÇÃO E RECONHECIMENTO DE SENTENÇAS DE UMA LINGUAGEM REGULAR São José

Leia mais

Soluções das Questões de Matemática do Processo Seletivo de Admissão ao Colégio Naval PSACN

Soluções das Questões de Matemática do Processo Seletivo de Admissão ao Colégio Naval PSACN Soluções das Questões de Matemática do Processo Seletivo de Admissão ao Colégio Naval PSACN Questão Concurso 00 Seja ABC um triângulo com lados AB 5, AC e BC 8. Seja P um ponto sobre o lado AC, tal que

Leia mais

Def. 1: Seja a quádrupla (V, K, +, ) onde V é um conjunto, K = IR ou K = IC,

Def. 1: Seja a quádrupla (V, K, +, ) onde V é um conjunto, K = IR ou K = IC, ESPAÇO VETORIAL Def. 1: Seja a quádrupla (V, K, +, ) onde V é um conjunto, K = IR ou K = IC, + é a operação (função) soma + : V V V, que a cada par (u, v) V V, associa um único elemento de V, denotado

Leia mais

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

Teoria da Computação. Unidade 3 Máquinas Universais. Referência Teoria da Computação (Divério, 2000) Teoria da Computação Referência Teoria da Computação (Divério, 2000) 1 L={(0,1)*00} de forma que você pode usar uma Máquina de Turing que não altera os símbolos da fita e sempre move a direita. MT_(0,1)*00=({0,1},{q

Leia mais

Capítulo 1: Alfabetos, cadeias, linguagens

Capítulo 1: Alfabetos, cadeias, linguagens Capítulo 1: Alfabetos, cadeias, linguagens Símbolos e alfabetos. Um alfabeto é, para os nossos fins, um conjunto finito não vazio cujos elementos são chamados de símbolos. Dessa maneira, os conceitos de

Leia mais

Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel.

Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel. Matemática Essencial Equações do Primeiro grau Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel.br/matessencial/ Resumo: Notas de

Leia mais

Universidade Federal do Rio de Janeiro. Princípios de Instrumentação Biomédica. Módulo 4

Universidade Federal do Rio de Janeiro. Princípios de Instrumentação Biomédica. Módulo 4 Universidade Federal do Rio de Janeiro Princípios de Instrumentação Biomédica Módulo 4 Faraday Lenz Henry Weber Maxwell Oersted Conteúdo 4 - Capacitores e Indutores...1 4.1 - Capacitores...1 4.2 - Capacitor

Leia mais

O modelo do computador

O modelo do computador O modelo do computador Objetivos: Mostrar como é o funcionamento dos computadores modernos Mostrar as limitações a que estamos sujeitos quando programamos Histórico Os primeiros computadores são da década

Leia mais

ÁLGEBRA BOOLEANA. Foi um modelo formulado por George Boole, por volta de 1850.

ÁLGEBRA BOOLEANA. Foi um modelo formulado por George Boole, por volta de 1850. ÁLGEBRA BOOLEANA Foi um modelo formulado por George Boole, por volta de 1850. Observando a lógica proposicional e a teoria de conjuntos verificamos que elas possuem propriedades em comum. Lógica Proposicional

Leia mais

Compiladores. A seção das regras. Especificação (F)lex. Plano da aula. Escolha das regras. Compilação típica com FLEX

Compiladores. A seção das regras. Especificação (F)lex. Plano da aula. Escolha das regras. Compilação típica com FLEX Compilação típica com FLX Compiladores Análise sintática (1) Noções sobre Gramáticas Livres de conteto dição do teto de especificação No arquivo minhas_regras.l 3 partes: Declarações Regras (Rs -> Ação)

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal

Leia mais

Analisadores Sintáticos LR

Analisadores Sintáticos LR FACULDADE ANGLO AMERICANO FOZ DO IGUAÇU Curso de Ciência da Computação 7º Periodo Disciplina: Compiladores Prof. Erinaldo Sanches Nascimento Analisadores Sintáticos LR SLR LR Canônicos LALR Analisadores

Leia mais

Análise de Arredondamento em Ponto Flutuante

Análise de Arredondamento em Ponto Flutuante Capítulo 2 Análise de Arredondamento em Ponto Flutuante 2.1 Introdução Neste capítulo, chamamos atenção para o fato de que o conjunto dos números representáveis em qualquer máquina é finito, e portanto

Leia mais

GERENCIANDO SUA BIBLIOTECA

GERENCIANDO SUA BIBLIOTECA GERENCIANDO SUA BIBLIOTECA ORGANIZANDO SUA BIBLIOTECA Os livros da sua biblioteca são ordenados alfabeticamente pelo título. Clique em ORDENAR POR, na parte superior da página, para alterar a forma como

Leia mais

SECUNDÁRIA DE CAMARATE DIGIT@L. Plataforma Office 365. Operações sobre documentos e pastas

SECUNDÁRIA DE CAMARATE DIGIT@L. Plataforma Office 365. Operações sobre documentos e pastas SECUNDÁRIA DE CAMARATE DIGIT@L Plataforma Office 365 Operações sobre documentos e pastas Conteúdo Operações sobre documentos e pastas... 2 Criar uma nova pasta... 2 Criar um novo documento diretamente

Leia mais