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

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

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

Transcrição

1 Curso de Engenharia de Computação - UTFPR Teoria da Computação - Prof. Celso Kaestner Lista de exercícios 1. Escreva a expressão regular para as seguintes linguagens sobre o alfabeto {0, 1}: strings começando com 0 e terminando com 1; strings que contém exatamente uma ocorrência de 010 como subcadeia; strings que não contém 11 e contém 00; strings que têm um número par de 0 s. 2. Verifique se são verdadeiras as afirmações: baab L(a b a b ); b a a b = a b a b b c = abcd (a(cd) b) 3. Escreva uma expressão regular para representar os números telefônicos australianos, que têm os seguintes exemplos: , (07) , e Sejam os autômatos finitos abaixo: M = ({q 0, q 1, q 2, q 3 }, {0, 1}, δ, q 0, {q 2 }), onde δ é dada por: q 0 0 q 1 q 2 0 q 2 q 0 1 q 0 q 2 1 q 3 q 1 0 q 2 q 3 0 q 3 q 1 1 q 3 q 3 1 q 3 M = ({q 0, q 1, q 2, q 3, q 4 }, {0, 1}, δ, q 0, {q 1, q 4 }), onde δ é dada por: q 0 0 q 3 q 2 1 q 4 q 0 1 q 1 q 3 0 q 3 q 1 0 q 2 q 3 1 q 3 q 1 1 q 1 q 4 0 q 2 q 2 0 q 3 q 4 1 q 3 Indique se w L(M) para os strings: 1

2 w = 1000; w = 11001; w = 11101; w = Indique as linguagens reconhecidas em cada caso. 5. Encontre o autômato finito determinista correspondente ao autômato M = ({q 0, q 1, q 2, q 3, q 4 }, {0, 1}, δ, q 0, {q 3, q 4 }), onde δ é dada por: q 0 0 q 2 q 2 0 q 2 q 0 1 q 1 q 2 1 q 3 q 1 ε q 3 q 3 1 q 4 q 1 1 q 4 q 4 0 q 4 q 2 ε q 3 q 4 1 q 3 6. Encontre os autômatos finitos associados às expressões regulares: (ab) b (ba) a; (ab) (ba) ; (aba) a (b(ab) ). 7. Escreva as expressões regulares associadas aos autômatos do exercício Encontre o autômato finito mínimo correspondentes ao autômato M = ({q 0, q 1, q 2, q 3 }, {a, b}, δ, q 0, {q 1, q 3 }), onde δ é dada por: q 0 a q 1 q 2 a q 2 q 0 b q 2 q 2 b q 2 q 1 a q 3 q 3 a q 2 q 1 b q 0 q 3 b q 2 9. Para as gramáticas G e strings w abaixo, indique uma derivação mais à esquerda e desenhe a árvore de parsing correspondente: G = ({S, A, B, a, b}, {a, b}, R, S) onde R = {S ABA, A aaa, A λ, B bb, B b} e w = aabbbaa; 2

3 G = ({S, A, B, a, b}, {a, b}, R, S) onde R = {S ABA, A Aa, A a, B bb, B b} e w = aabbaaa. 10. Para as gramáticas G e strings w abaixo, escreva o autômato de pilha M tal que L(M) = L(G), pelos processos top-down e bottom-up, e simule o reconhecimento de w por M: G = ({S, A, a, b}, {a, b}, R, S) onde R = {S asa, S A, A ba, A λ} e w = aabbbaa. G = ({S, A, B, a, b}, {a, b}, R, S) onde R = {S ABA, A Aa, A λ, B Bb, B λ} e w = abbaaa. 11. Seja E uma expressão regular sobre um alfabeto Σ. Dado a Σ, o residual a 1 [E] é outra expressão expressão regular, calculada da seguinte forma: a 1 [a] = λ e a 1 [b] = para a b; a 1 [E 1 E 2 ] = a 1 [E 1 ] a 1 [E 2 ]; a 1 [E 1 E 2 ] = (a 1 [E 1 ])E 2 se λ / E 1 e (a 1 [E 1 ])E 2 a 1 [E 2 ] se λ E 1 ; a 1 [E ] = (a 1 [E])E. Se considerarmos as linguagens associadas, a linguagem associada à expressão regular a 1 [E] é formada pelos strings que compõem E dos quais se retira o símbolo a do início do string; assim, se L(E) = {a, ab, abb, abbb,...} a linguagem L(a 1 [E]) é L(a 1 [E]) = {λ, b, bb, bbb,...}, e L(b 1 [E]) =. A partir da expressão regular E = (a + b) ab encontre TODOS os residuais das expressões obtidas a partir de E, usando as regras acima (isto é, calcule a 1 [E], b 1 [E], a 1 [a 1 [E]], a 1 [b 1 [E]]...) 1 Seja o autômato finito M obtido da seguinte forma: 1 Por exemplo, a 1 [E] = a 1 [(a + b) ab] = a 1 [(a + b) ]ab a 1 [ab] = a 1 [(a + b)](a + b) ab a 1 [a]b = (a 1 [a] a 1 [b])(a + b) ab λb = (λ )(a + b) ab b = (a + b) ab b. 3

4 cada residual obtido corresponde a um estado de M; há um arco rotulado por a do estado E para o estado a 1 [E]; E é o estado inicial de M; e os estados finais de M são as expressões F tais que λ F. Mostre que M é um autômato finito determinista que reconhece L(E) Construa Máquinas de Turing para os seguintes problemas: Subtrair 4 de um número unário maior que 4 dado. Receber como entrada um string composto de símbolos 0 e 1, e remover todos os símbolos 1 deste string. Adicionar 1 a um número binário dado. Decidir a linguagem L = {w {a, b} tem aba como substring }. Semidecidir a linguagem L = {w {a, b} termina com ba}. Semidecidir a linguagem L = {w {a, b} tem um número par de b s }. Converter um número escrito na fita em base decimal (o alfabeto de entrada da máquina é dado por {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}) para a representação unária desse número. Receber como entrada um string contendo uma sequência de símbolos a, apagar todos estes símbolos e escrever como saída um número binário que represente o número de símbolos a dados como entrada Construa máquinas de Turing de acesso aleatório (RAM) para os seguintes problemas: Dados três números naturais, verificar se a soma de dois primeiros é igual ao terceiro número dado; Calcular o resto da divisão entre dois números naturais dados; Verificar se um string dado é um palíndromo, considerando o alfabeto {a, b}. 2 Na verdade, este é o autômato finito determinista mínimo associado a E, e este procedimento é chamado de Algoritmo de Bzozowski. 3 Dica: Crie uma fita inicializada com o símbolo 0 e utilize a máquina do exercício anterior para adicionar 1 nessa fita a cada vez que um símbolo for apagado. 4

5 14. Mostre que o sistemas de correspondência de Post {(a, ab), (ba, baa), (aa, b)} não tem solução. 15. Calcule o número de passos e indique a complexidade O para a máquina de Turing: que aceita ab ; que aceita ww R ; que aceita ab a. 16. Mostre que f = O(n 2 ) para a função f(n) = n Mostre que f = O(n 3 ) para a função f(n) = n 2 + 2n Dê as definições gerais de problema de otimização e de problema de decisão, e explique como é possível passar problemas do 1 o tipo para o 2 o tipo. 19. Defina as classes de complexidade P, N P,N P-completo e EX P, e indique o relacionamento entre elas. 20. Considere a redução do problema 3SAT para o problema CONJUNTO-INDEPENDENTE. Mostre como se aplica esta redução para a instância do problema em que o conjunto inicial de cláusulas é {x y z, x z, x y z}, indicando no grafo gerado todos os conjuntos independentes e os correspondentes valores-verdade para as variáveis x, y e z. Com esta redução pode-se concluir qual relacionamento entre a complexidade destes problemas? 21. Exercício adicional: escreva na linguagem de programação de sua preferência um programa que simule a execução de uma máquina de acesso aleatório (RAM, baseada no livro Lewis e Papadimitriou). A máquina deve ler o programa de um arquivo texto, e apresentar os valores de seus registradores, fita, etc, a cada passo. máquinas desenvolvidas no exercício 13 neste simulador. Execute as 5

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

Autómatos de Pilha e Linguagens Livres de Contexto

Autómatos de Pilha e Linguagens Livres de Contexto Folha Prática Autómatos de Pilha e Linguagens Livres de Contexto 1 Autómatos de Pilha e Linguagens Livres de Contexto Autómatos de Pilha Não Determinísticos (APND) 1. Considere a seguinte tabela de transição

Leia mais

Lista de exercícios 1

Lista de exercícios 1 UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO DE CIÊNCIAS AGRÁRIAS CCA/ UFES Departamento de Engenharia Rural Lista de exercícios 1 Disciplina: Linguagens Formais e Autômatos Professora: Juliana Pinheiro

Leia mais

Conceitos básicos de Teoria da Computação

Conceitos básicos de Teoria da Computação Folha Prática Conceitos básicos de 1 Conceitos básicos de Métodos de Prova 1. Provar por indução matemática que para todo o número natural n: a) 1 + 2 + 2 2 + + 2 n = 2 n+1 1, para n 0 b) 1 2 + 2 2 + 3

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

SCC 205 Teoria da Computação e Linguagens Formais

SCC 205 Teoria da Computação e Linguagens Formais 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 com pilha Lista 3 1. Dê um

Leia mais

Expressões e Gramáticas Regulares e Autómatos Finitos

Expressões e Gramáticas Regulares e Autómatos Finitos Folha Prática Expressões e Gramáticas Regulares e Autómatos Finitos 1 Expressões e Gramáticas Regulares e Autómatos Finitos Expressões Regulares e Autómatos Finitos 1. Determine e implemente computacionalmente

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

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

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação SCC-0505 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO Lista de Exercícios do Capítulo 3 Gramáticas

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 Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Curso de Ciências de Computação SCC-205 TEORIA DA COMPUTAÇÃO E LINGUAGENS FORMAIS Turma 1 2º. Semestre de 2012 Prof. João Luís

Leia mais

Autómatos Finitos Determinísticos (AFD)

Autómatos Finitos Determinísticos (AFD) Folha Prática Autómatos Finitos 1 Autómatos Finitos Determinísticos (AFD) 1. Determine e implemente computacionalmente um AFD que aceita todas as cadeias de cada uma das seguintes linguagens sobre o alfabeto

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

Lista de Exercícios CT-200 Primeiro Bimestre Carlos Henrique Quartucci Forster Estagiário: Wesley Telles. Revisão de Teoria de Conjuntos

Lista de Exercícios CT-200 Primeiro Bimestre Carlos Henrique Quartucci Forster Estagiário: Wesley Telles. Revisão de Teoria de Conjuntos Lista de Exercícios CT-200 Primeiro Bimestre 2010 Carlos Henrique Quartucci Forster Estagiário: Wesley Telles Revisão de Teoria de Conjuntos 1. Sejam A = {1,2 } e B = { x, y, z}. Quais os elementos dos

Leia mais

LINGUAGENS FORMAIS E AUTÔMATOS. Prova 2-10/06/ Prof. Marcus Ramos

LINGUAGENS FORMAIS E AUTÔMATOS. Prova 2-10/06/ Prof. Marcus Ramos LINGUAGENS FORMAIS E AUTÔMATOS Prova 2-10/06/2011 - Prof. Marcus Ramos NOME: _ Colocar seu nome no espaço acima; A prova pode ser feita à lápis ou caneta; A duração é de três horas; As questões da parte

Leia mais

Aula 8: Gramáticas Livres de Contexto

Aula 8: Gramáticas Livres de Contexto Teoria da Computação Primeiro Semestre, 2015 Aula 8: Gramáticas Livres de Contexto DAINF-UTFPR Prof. Ricardo Dutra da Silva Veremos agora maneira de gerar as strings de um tipo específico de linguagem,

Leia mais

Linguagens Formais e Problemas de Decisão

Linguagens Formais e Problemas de Decisão Linguagens Formais e Problemas de Decisão Mário S. Alvim (msalvim@dcc.ufmg.br) Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Mário S. Alvim (msalvim@dcc.ufmg.br) Linguagens Formais e Problemas

Leia mais

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

Teoria da Computação Aula 02 Introdução Teoria da Computação Aula 02 Introdução Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional Alfabeto Um alfabeto é um conjunto finito de símbolos ou caracteres, representado pela letra sigma ( ). Portanto:

Leia mais

Modelos Universais de Computação

Modelos Universais de Computação Modelos Universais de Computação 1 Equivalência entre Variantes de TM TM s definem naturalmente uma classe. Toda variante razoável de TM define a mesma classe de linguagens. (reforça a Tese Church-Turing)

Leia mais

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND)

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND) DEP. INFORMÁTICA - UNIVERSIDADE DA BEIRA INTERIOR Teoria da Computação Eng. Informática 1º Semestre Exame 2ª chamada - Resolução 2h + 30min 07/Fev/2011 Pergunta A.1 A.2 A.3 B.1 B.2 B.3a B.3b C.1 C.2 D.1

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

Complexidade de Tempo

Complexidade de Tempo Complexidade de Tempo 1 Complexidade de Tempo Quando um problema é decidível, ele pode não ser solúvel na prática se a solução requer uma quantidade excessiva de tempo ou memória Medindo a complexidade

Leia mais

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

Teoria da Computação Gramáticas, Linguagens Algébricas e Autómatos de Pilha Teoria da Computação Gramáticas, Linguagens Algébricas e Autómatos de Pilha Simão Melo de Sousa 12 de Outubro de 2011 Conteúdo 1 Gramáticas e Definições básicas 1 2 Gramáticas e Linguagens 4 2.1 Gramáticas

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 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

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND)

A. (Autómatos finitos determinísticos e não determinísticos AFD e AFND) DEP. INFORMÁTICA - UNIVERSIDADE DA BEIRA INTERIOR Teoria da Computação Eng. Informática 1º Semestre Exame 1ª chamada - Resolução 2h + 30min 31/Jan/2011 Pergunta A.1 A.2 A.3 B.1 B.2 B.3a B.3b C.1 C.2 D.1

Leia mais

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

Modelos de Computação Folha de trabalho n. 8 Modelos de Computação Folha de trabalho n. 8 Nota: Os exercícios obrigatórios marcados de A a D constituem os problemas que devem ser resolvidos individualmente. A resolução em papel deverá ser depositada

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

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

UNIVERSIDADE DA BEIRA INTERIOR

UNIVERSIDADE DA BEIRA INTERIOR UNIVERIDADE DA EIRA INTERIOR Teoria da Computação Eng. Informática 2º emestre Frequência 2 (7 valores) Resolução 30/maio/2017 A. Expressões regulares e autómatos finitos 1. [1.25] Usando o método de eliminação

Leia mais

Fundamentos da Teoria da Computação

Fundamentos da Teoria da Computação Fundamentos da Teoria da Computação Primeira Lista de Exercícios - Aula sobre dúvidas da lista Sérgio Mariano Dias 1 1 UFMG/ICEx/DCC Entrega da 1 a lista: 31/03/2009 Sérgio Mariano Dias (UFMG) Fundamentos

Leia mais

Segunda Lista de Exercícios 2004/2...

Segunda Lista de Exercícios 2004/2... + + UFLA Universidade Federal de Lavras Departamento de Ciência da Computação COM162 Linguagens Formais e Autômatos Prof. Rudini Sampaio Monitor: Rodrigo Pereira dos Santos Segunda Lista de Exercícios

Leia mais

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

Construção de Compiladores Aula 16 - Análise Sintática Construção de Compiladores Aula 16 - Análise Sintática Bruno Müller Junior Departamento de Informática UFPR 25 de Setembro de 2014 1 Introdução Hierarquia de Chomsky Reconhecedores Linguagens Livres de

Leia mais

Fundamentos da Teoria da Computação

Fundamentos da Teoria da Computação Fundamentos da Teoria da Computação Primeira Lista de Exercícios - Aula sobre dúvidas Sérgio Mariano Dias 1 1 Doutorando em Ciência da Computação Estagiário em docência II Departamento de Ciência da Computação

Leia mais

Alfabeto, Cadeias, Operações e Linguagens

Alfabeto, Cadeias, Operações e Linguagens Linguagens de Programação e Compiladores - Aula 3 1 Alfabeto, Cadeias, Operações e Linguagens 1.Conjuntos Para representar um determinado conjunto é necessário buscar uma notação para representá-lo e ter

Leia mais

Linguagens Livres de Contexto

Linguagens Livres de Contexto Linguagens Livres de Contexto 1 Roteiro Gramáticas livres de contexto Representação de linguagens livres de contexto Formas normais para gramáticas livres de contexto Gramáticas ambíguas Autômatos de Pilha

Leia mais

Apostila 05 Assunto: Linguagens dos tipos 0 e 1

Apostila 05 Assunto: Linguagens dos tipos 0 e 1 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

Teoria de Linguagens 2 o semestre de 2017 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 19/9/2017 Valor: 10 pontos

Teoria de Linguagens 2 o semestre de 2017 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 19/9/2017 Valor: 10 pontos Departamento de Ciência da Computação ICEx/UFMG Teoria de Linguagens o semestre de 7 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 9/9/7 Valor: pontos. Uma versão do problema

Leia mais

Marcos Castilho. DInf/UFPR. 21 de março de 2019

Marcos Castilho. DInf/UFPR. 21 de março de 2019 21 de março de 2019 Análise sintática: introdução Dada uma gramática G e uma palavra w Σ, como saber se w L(G)? Isto é, como saber se S = G w? Derivações à esquerda e ambiguidade w L(G) se S = G w; Sabemos

Leia mais

Linguagens, Reconhecedores e Gramáticas

Linguagens, Reconhecedores e Gramáticas Linguagens, Reconhecedores e Gramáticas Já vimos que Linguagem é um conjunto de cadeias de símbolos sobre um alfabeto/vocabulário, V. É um subconjunto específico de V*. Estas cadeias são denominadas sentenças

Leia mais

Gramáticas ( [HMU00], Cap. 5.1)

Gramáticas ( [HMU00], Cap. 5.1) Gramáticas ( [HMU00], Cap. 5.1) Vimos que a seguinte linguagem não é regular L = {0 n 1 n n 0} Contudo podemos fácilmente dar uma definição indutiva das suas palavras: 1. ɛ L 2. Se x L então 0x1 L L é

Leia mais

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

SCC Capítulo 3 Linguagens Sensíveis ao Contexto e Autômatos Limitados Linearmente SCC-505 - Capítulo 3 Linguagens Sensíveis ao Contexto e João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação - Universidade de São Paulo http://www.icmc.usp.br/~joaoluis

Leia mais

Linguagens Formais - Preliminares

Linguagens Formais - Preliminares Linguagens Formais - Preliminares Regivan H. N. Santiago DIMAp-UFRN 25 de fevereiro de 2007 Regivan H. N. Santiago (DIMAp-UFRN) Linguagens Formais - Preliminares 25 de fevereiro de 2007 1 / 26 Algumas

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 Matemática Discreta para Ciência da Computação - P. Blauth Menezes

Leia mais

Automata e Linguagens Formais

Automata e Linguagens Formais Automata e Linguagens Formais 6 Prof. Carlos H. C. Ribeiro carlos@ita.br Análise Sintática (Parsing) GLCs ambíguas Grafos de GLCs Estratégias para parsing Exemplos de parsers Análise Sintática (Parsing)

Leia mais

Teoria de Linguagens 2 o semestre de 2015 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 15/9.

Teoria de Linguagens 2 o semestre de 2015 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 15/9. Pós-Graduação em Ciência da Computação DCC/ICEx/UFMG Teoria de Linguagens 2 o semestre de 2015 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 15/9. Observações: Pontos

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

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

LFA Aula 05. AFND: com e sem movimentos 05/12/2016. Linguagens Formais e Autômatos. Celso Olivete Júnior. LFA Aula 05 AFND: com e sem movimentos vazios 05/12/2016 Celso Olivete Júnior olivete@fct.unesp.br www.fct.unesp.br/docentes/dmec/olivete/lfa 1 Na aula passada... Reconhecedores genéricos Autômatos finitos

Leia mais

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

Linguagens Livres do Contexto. Adaptado de H. Brandão Linguagens Livres do Contexto Adaptado de H. Brandão Linguagens Livres do Contexto Para as LLC, temos as Gramáticas Livres do Contexto; Linguagens Livres do Contexto Para as LLC, temos as Gramáticas Livres

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

LINGUAGEM LIVRE DE CONTEXTO GRAMÁTICA LIVRE DE CONTEXTO

LINGUAGEM LIVRE DE CONTEXTO GRAMÁTICA LIVRE DE CONTEXTO LINGUAGEM LIVRE DE CONTEXTO As Linguagens Livres de Contexto é um reconhecedor de linguagens, capaz de aceitar palavras corretas (cadeia, sentenças) da linguagem. Por exemplo, os autômatos. Um gerador

Leia mais

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

Introdução Definição Conceitos Básicos de Linguagem Introdução Definição Conceitos Básicos de Linguagem Introdução Desenvolvida originalmente em 1950 Objetivo: Desenvolver teorias relacionadas com a Linguagem natural Logo verificou-se a importância para

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

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

Licenciatura em Engenharia Informática DEI/ISEP Linguagens de Programação 2006/07 Licenciatura em Engenharia Informática DEI/ISEP Linguagens de Programação 2006/07 Ficha 3 Autómatos Finitos Objectivos: Introdução ao conceito de Autómato Finito e notações utilizadas na sua representação;

Leia mais

Teoria de Linguagens 1 o semestre de 2018 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 17/4/2018 Valor: 10 pontos

Teoria de Linguagens 1 o semestre de 2018 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 17/4/2018 Valor: 10 pontos Departamento de Ciência da Computação ICEx/UFMG Teoria de Linguagens o semestre de 8 Professor: Newton José Vieira Primeira Lista de Exercícios Data de entrega: 7/4/8 Valor: pontos. Uma versão do problema

Leia mais

Problema A Codificação Símbolos Dado um inteiro n, n é N representação de inteiros 0,1,...,b - 1 numa base b Dado um grafo G, G é conexo?

Problema A Codificação Símbolos Dado um inteiro n, n é N representação de inteiros 0,1,...,b - 1 numa base b Dado um grafo G, G é conexo? 2 Linguagens Uma linguagem de programação, ou uma língua natural como o Português ou o Inglês, pode ser vista como um conjunto de sequências de símbolos, pertencentes a um conjunto finito. Em Português

Leia mais

Máquinas de Turing 3

Máquinas de Turing 3 Máquinas de Turing 3 Exercícios Máquinas de Turing com Múltiplas Fitas Máquinas de Turing Não-deterministicas A Tese/Hipótese de Church-Turing Linguagens decidíveis por Máquinas de Turing (Recursivas)

Leia mais

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO 2. Linguagens Livres-do-Contexto Referência: SIPSER, M. Introdução à Teoria da Computação. 2ª edição, Ed. Thomson Prof. Marcelo S. Lauretto marcelolauretto@usp.br

Leia mais

COMPILADORES. Revisão Linguagens formais Parte 01. Geovane Griesang

COMPILADORES. Revisão Linguagens formais Parte 01. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Revisão Linguagens formais Parte 01 geovanegriesang@unisc.br Legenda: = sigma (somatório) = delta ε = épsilon λ = lambda

Leia mais

Folha 2 Autómatos e respectivas linguagens

Folha 2 Autómatos e respectivas linguagens Folha 2 Autómatos e respectivas linguagens 1. Considere a linguagem L formada por todas as sequências sobre o alfabeto { 0, 1, 2 } cujo somatório seja divisível por 3. Construa um autómato finito A que

Leia mais

LFA Aula 09. Gramáticas e Linguagens Livres de Contexto 18/01/2016. Linguagens Formais e Autômatos. Celso Olivete Júnior.

LFA Aula 09. Gramáticas e Linguagens Livres de Contexto 18/01/2016. Linguagens Formais e Autômatos. Celso Olivete Júnior. LFA Aula 09 Gramáticas e Linguagens Livres de Contexto (Hopcroft, 2002) 18/01/2016 Celso Olivete Júnior olivete@fct.unesp.br www.fct.unesp.br/docentes/dmec/olivete/lfa 1 Classes Gramaticais Linguagens

Leia mais

Aula 3: Autômatos Finitos

Aula 3: Autômatos Finitos Teoria da Computação Segundo Semestre, 24 Aula 3: Autômatos Finitos DAINF-UTFPR Prof. Ricardo Dutra da Silva Um procedimento ue determina se uma string de entrada pertence à uma linguagem é um reconhecedor

Leia mais

Compiladores Aula 4. Celso Olivete Júnior.

Compiladores Aula 4. Celso Olivete Júnior. Aula 4 Celso Olivete Júnior olivete@fct.unesp.br Na aula de hoje... Revisão: gramáticas Relações em uma gramática: Cabeça, Último, Primeiro (First) e Seguinte (Follow) Capítulo 4 (seção 4.4.2) do livro

Leia mais

Faculdade de Computação

Faculdade de Computação UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Disciplina : Teoria da Computação - 1 0 Semestre 007 Professora : Sandra Aparecida de Amo Solução da Lista de Exercícios n o 1 Exercícios de Revisão

Leia mais

a n Sistemas de Estados Finitos AF Determinísticos

a n Sistemas de Estados Finitos AF Determinísticos a n Sistemas de Estados Finitos AF Determinísticos 1 Relembrando Uma representação finita de uma linguagem L qualquer pode ser: 1. Um conjunto finito de cadeias (se L for finita); 2. Uma expressão de um

Leia mais

Universidade Federal do Rio de Janeiro Departamento de Ciência da Computação

Universidade Federal do Rio de Janeiro Departamento de Ciência da Computação Universidade Federal do Rio de Janeiro Departamento de Ciência da Computação Não são aceitas respostas sem justificativa. Explique tudo o que você fizer. Linguagens Formais o semestre de 999 Primeira Prova

Leia mais

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE CIÊNCIAS EXATAS E NATURAIS FACULDADE DE COMPUTAÇÃO CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof.

Leia mais

Linguagens recursivamente enumeráveis

Linguagens recursivamente enumeráveis Linguagens recursivamente enumeráveis Uma palavra x Σ é aceite por uma máquina de Turing M ( x L(M)) se M iniciando com a palavra x na fita e no estado inicial, pára num estado final. Caso contrário, M

Leia mais

SIMULAÇÃO DE MÁQUINA DE REGISTRADORES COM MÁQUINA DE TURING MULTIFITA

SIMULAÇÃO DE MÁQUINA DE REGISTRADORES COM MÁQUINA DE TURING MULTIFITA SIMULAÇÃO DE MÁQUINA DE REGISTRADORES COM MÁQUINA DE TURING MULTIFITA Neste trabalho você deverá construir e testar, com a ferramenta JFLAP, uma MT multifita que simula o funcionamento de um computador

Leia mais

1 INTRODUÇÃO E CONCEITOS BÁSICOS

1 INTRODUÇÃO E CONCEITOS BÁSICOS 1 INTRODUÇÃO E CONCEITOS BÁSICOS Inicia com uma breve história do surgimento e do desenvolvimento dos conceitos, resultados e formalismos nos quais a Teoria da Computação é baseada. Formalização dos conceitos

Leia mais

Máquina de Turing. Controle finito

Máquina de Turing. Controle finito Máquinas de Turing Máquinas de Turing podem fazer tudo o que um computador real faz. Porém, mesmo uma Máquina de Turing não pode resolver certos problemas. Estes problemas estão além dos limites teóricos

Leia mais

I.2 Introdução a Teoria da Computação

I.2 Introdução a Teoria da Computação I.2 Introdução a Teoria da Computação O que é? Fundamento da Ciência da Computação Tratamento Matemático da Ciência da Computação Estudo Matemático da Transformação da Informação Qual sua importância?

Leia mais

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO 2. Linguagens Livres-do-Contexto Referência: SIPSER, M. Introdução à Teoria da Computação. 2ª edição, Ed. Thomson Prof. Marcelo S. Lauretto marcelolauretto@usp.br

Leia mais

Exercícios: Recursão

Exercícios: Recursão Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Recursão 1. Faça uma função recursiva que calcule e retorne o fatorial

Leia mais

Variedades Adicionais das Máquinas de Turing

Variedades Adicionais das Máquinas de Turing LFA - PARTE 5 Variedades Adicionais das Máquinas de Turing 1 Máquinas de Turing com uma Fita Infinita de um Sentido A fita da máquina é infinita apenas à direita O quadrado da fita mais à esquerda contém

Leia mais

Linguagens e Gramáticas Livres de Contexto

Linguagens e Gramáticas Livres de Contexto Foha Prática Linguagens e Gramáticas Livres de ontexto 1 Linguagens e Gramáticas Livres de ontexto 1. onsidere a gramática ivre de contexto G = (V, T,, P), em que V = {,, }, T = { a, b } e P é o seguinte

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

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

Modelos de Computação Folha de trabalho n. 10 Modelos de Computação Folha de trabalho n. 10 Nota: Os exercícios obrigatórios marcados de A a D constituem os problemas que devem ser resolvidos individualmente. A resolução em papel deverá ser depositada

Leia mais

Gramáticas Livres de Contexto Parte 1

Gramáticas Livres de Contexto Parte 1 Universidade Estadual de Feira de Santana Engenharia de Computação Gramáticas Livres de Contexto Parte 1 EXA 817 Compiladores Prof. Matheus Giovanni Pires O papel do Analisador Sintático É responsável

Leia mais

Prof. Dr. Marcos Castilho. Departamento de Informática/UFPR. 22 de Fevereiro de 2018

Prof. Dr. Marcos Castilho. Departamento de Informática/UFPR. 22 de Fevereiro de 2018 22 de Fevereiro de 2018 Motivação O que é um computador? O que é um algoritmo? Para que serve um algoritmo? Quando um algoritmo é bom? A análise de um algoritmo depende do computador? Motivação Em teoria

Leia mais

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

Capítulo 9: Linguagens sensíveis ao contexto e autômatos linearmente limitados. Capítulo 9: Linguagens sensíveis ao contexto e autômatos linearmente limitados. José Lucas Rangel 9.1 - Introdução. Como já vimos anteriormente, a classe das linguagens sensíveis ao contexto (lsc) é uma

Leia mais

Aula 3: Autômatos Finitos

Aula 3: Autômatos Finitos Teoria da Computação Primeiro Semestre, 25 Aula 3: Autômatos Finitos DAINF-UTFPR Prof. Ricardo Dutra da Silva Um procedimento ue determina se uma string de entrada pertence à uma linguagem é um reconhecedor

Leia mais

Gramáticas e Linguagens Independentes de Contexto

Gramáticas e Linguagens Independentes de Contexto Gramáticas e Linguagens Independentes de Contexto 6.1 Responde às uestões seguintes considerando a gramática independente de contexto G = (V, {a, b}, P, R), onde o conjunto de regras P é: R XRX S S at

Leia mais

V Análise Sintática. V.1.1 Gramáticas Livres de Contexto Definições de GLC

V Análise Sintática. V.1.1 Gramáticas Livres de Contexto Definições de GLC V Análise Sintática V.1 Fundamentos Teóricos V.1.1 G.L.C V.1.2 Teoria de Parsing V.2 Especificação Sintática de Ling. de Prog. V.3 - Implementação de PARSER s V.4 - Especificação Sintática da Linguagem

Leia mais

Gramáticas e Linguagens independentes de contexto

Gramáticas e Linguagens independentes de contexto Capítulo 6 Gramáticas e Linguagens independentes de contexto 6.1 Gramáticas Nesta secção vamos introduzir gramáticas formais para caracterização das linguagens, estudando fundamentalmente as gramáticas

Leia mais

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

LINGUAGENS SENSÍVEIS AO CONTEXTO E AUTÔMA- TOS LIMITADOS LINEARMENTE III. LINGUAGENS SENSÍVEIS AO CONTEXTO E AUTÔMA- TOS LIMITADOS LINEARMENTE 3.1. Gramáticas e Linguagens Sensíveis ao Contexto Como uma generalização das regras livres de contexto, introduzimos agora regras

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

Número: Nome: 1. (3.0 val.) Considere um analisador lexical contendo a sequência ordenada de

Número: Nome: 1. (3.0 val.) Considere um analisador lexical contendo a sequência ordenada de Compiladores, LEIC Alameda Compiladores, LEIC Alameda 1/6 Ano Lectivo 2010/2011, 2º Semestre Ano Lectivo 2010/2011, 2º Semestre Teste 1, 2011/04/02, 09:00, 90 minutos Teste 1 (2011/04/02, 09:00, 90 minutos)

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 3: Introdução a Teoria da Computação

INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação bas eado em material produzido pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: silveira@inf.ufsc.br

Leia mais

Capítulo Métodos para transformar gramáticas ái Duas formas Normais (Chomsky e Greibach) ADC/TC/Cap.6/ /LEI/DEIFCTUC 268

Capítulo Métodos para transformar gramáticas ái Duas formas Normais (Chomsky e Greibach) ADC/TC/Cap.6/ /LEI/DEIFCTUC 268 Capítulo 6 Simplificação de gramáticas livres de contexto e Formas Normais 61 6.1. Métodos para transformar gramáticas ái 62 6.2. Duas formas Normais (Chomsky e Greibach) 268 6.1. Métodos para transformar

Leia mais

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

INE5317 Linguagens Formais e Compiladores. AULA 4: Gramáticas INE5317 Linguagens Formais e Compiladores AULA 4: Gramáticas bas eado em material produzido pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: silveira@inf.ufsc.br URL:

Leia mais

Linguagens e Programação Gramáticas. Paulo Proença

Linguagens e Programação Gramáticas. Paulo Proença Linguagens e Programação Gramáticas Gramáticas Ferramenta para a descrição e análise de linguagens; Baseada num conjunto de regras que especificam o modo de construção das frases válidas na linguagem;

Leia mais

Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 3. Autômatos Finitos

Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 3. Autômatos Finitos Curso: Ciência da Computação Turma: 6ª Série Aula 3 Autômatos Finitos Alfabeto Alfabeto Conjunto finito de símbolos; Normalmente descrito por ; Exemplos: ={a, b} ={1, 2, 3} ={00, 11} Ø Alfabeto romano

Leia mais

IV Gramáticas Livres de Contexto

IV Gramáticas Livres de Contexto IV Gramáticas Livres de Contexto Introdução Definições de GLC 1 G = (Vn, Vt, P, S) onde P = {A α A Vn α (Vn Vt) + } 2 GLC ε - LIVRE : S ε pode pertencer a P, desde que: S seja o símbolo inicial de G S

Leia mais

BCC242. Auômato Finito Determinístico

BCC242. Auômato Finito Determinístico BCC242 Auômato Finito Determinístico Máquinas de Estados Finitos As máquinas de estados finitos são máquinas abstratas que capturam partes essenciais de algumas máquinas concretas. Tipos Tradutores máquinas

Leia mais

Linguagens Formais e Autômatos (LFA)

Linguagens Formais e Autômatos (LFA) INF1626 Linguagens Formais e Autômatos (2013-2) Informática PUC-Rio Linguagens Formais e Autômatos (LFA) Aula de 06/11/2013 LSC s processadas por Máquinas de Turing de Fita Limitada Clarisse S. de Souza,

Leia mais

Variações de Máquinas de Turing

Variações de Máquinas de Turing Linguagens Formais e Autômatos Variações de Máquinas de Turing Andrei Rimsa Álvares Material extraído do livro e slides do Prof. Newton Vieira (hdp://dcc.ufmg.br/~nvieira) Sumário Variações de Máquinas

Leia mais

Teoria da Computação

Teoria da Computação Ciência da Computação Teoria da Computação (ENG10395) Profa. Juliana Pinheiro Campos E-mail: jupcampos@gmail.com Máquinas Universais Máquinas Universais podem ser entendidas de duas formas: Se é capaz

Leia mais

IBM1088 Linguagens Formais e Teoria da

IBM1088 Linguagens Formais e Teoria da IBM1088 Linguagens Formais e Teoria da Computação Linguagens e Gramáticas Evandro Eduardo Seron Ruiz evandro@usp.br Universidade de São Paulo E.E.S. Ruiz (USP) LFA 1 / 47 Frase do dia Sofremos muito com

Leia mais

LINGUAGENS FORMAIS Definições. Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam

LINGUAGENS FORMAIS Definições. Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam Linguagens Naturais LINGUAGENS FORMAIS Definições Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam São muito ricas, mas também ambíguas e imprecisas. Ex.: João

Leia mais