Teoria da Computação. Exercícios. 1 Máquinas de Registos Ilimitados 2013/2014

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

Download "Teoria da Computação. Exercícios. 1 Máquinas de Registos Ilimitados 2013/2014"

Transcrição

1 Teoria da Computação 2013/2014 Exercícios 1 Máquinas de Registos Ilimitados 1. Construa programas URM sem módulos que calculem as seguintes funções (a) quatro(x) = 4 (b) sg(x) retorna 0 se x > 0, 1 no caso contrário (c) halfd(x) devolve metade de x se x for par, diverge se x for ímpar (d) max(x, y) devolve o máximo dos dois argumentos (e) qt(x, y) devolve o quociente da divisão inteira de x por y (f) raiz(x) devolve a raiz quadrada de x se x é um quadrado perfeito, diverge caso contrário (g) A função característica do predicado x é igual a 2 (h) A função característica do predicado x é maior que y (i) A função característica do predicado o resto da divisão de x por 3 é 1 (j) A função característica do predicado x é quadrado perfeito 2. Construa programas URM para calcular as funções com assinatura Z Z (a) f(x) = x (b) f(x) = 2x (c) A função característica de x < 0 (d) A função característica de x é ímpar 3. Utilizando os programas que fez como módulos, construa programas URM que calculem as seguintes funções (a) f(x, y, z) = x + y + z (b) f(x, y, z) = max(x, y) + z (c) Função característica do predicado x é primo (d) Função característica do predicado x é cubo perfeito (e) p(x) devolve o x-ésimo primo 4. Faça a expansão dos seguintes programas com módulos (a) Considere que o programa tem dois argumentos. J(1, 2, 4) Soma[1, 2 1] J(1, 1, 5) Dois[ 1]

2 (b) Considere que o programa tem dois argumentos. J(1, 2, 4) S(1) Xyz = Foo[ 1] Foo = S(1) Abc = Abc[1, 2 1] S(1) Z(2) S(3) J(1, 3, 1) T(2, 1) 5. Codique os seguintes programas URM. Seguem algumas funções úteis. Codicação de N 2 : Inversas de Π: Π : N 2 N (m, n) 2 n (2m + 1) 1 Π 1 : N N x (x + 1) 1 expoente do número 2 na factorização prima de x. (a) Soma = [J(3, 2, 5), S(1), S(3), J(1, 1, 1)] (b) Eq = [J(1, 2, 4), Z(1), J(1, 1, 6), Z(1), S(1)] Π 2 : N N x 1 2 ( x + 1 1) 2Π1(x) 6. Encontre os programas que estão associados aos números (a) dec(64) (b) dec(256) (c) dec(225) (d) dec(523) 7. O modelo URM pode ser denido unicamente à custa das instruções Z(n), S(n) e J(n, m, q). (a) Como programaria a instrução T(n, m) usando as três instruções anteriores? (b) Como caria a codicação de programas URM restritos a estas três instruções? 8. Considere o programa Soma = [J(3, 2, 5), S(1), S(3), J(1, 1, 1)]. Apresente 3 conjuntos de programas de cardinalidade igual ao conjunto N. Sugestão: considere suxos ao programa Soma compostos unicamente por instruções Z(n), S(n) e T(n, m). Page 2

3 2 Funções Parciais Recursivas 1. Considere as seguintes funções f : N 2 N g : N 3 N h : N 4 N Diga para cada uma das expressões seguintes se estão correctas e se sim qual a aridade (número de argumentos) da expressão resultante. (a) C[g; P 2 1, P 2 2, P 2 1 ] (b) C[f; P 2 1, P 2 2, P 2 1 ] (c) C[h; P 4 1, P 3 1, P 2 1 ] (d) R[f; h] (e) R[2; f] (f) R[g; P 5 3 ] (g) R[P 2 1 ; g] (h) z<y f(x, y) (i) z<y f(x, y) 2. Prove por via axiomática, a computabilidade das seguintes funções: (a) quatro(x) = 4 (b) dobro(x) = 2x (c) triplo(x) = 3x (d) exp2(x) = x 2 (e) exp(x, y) = x y (f) max(x, y) devolve o máximo dos dois argumentos (g) sg(x) retorna 0 se x > 0, 1 no caso contrário (h) halfd(x) devolve metade de x se x for par, diverge se x for ímpar (i) qt(x, y) devolve o quociente da divisão inteira de x por y (j) raiz(x) devolve a raiz quadrada de x se x é um quadrado perfeito, diverge caso contrário (k) A função característica do predicado x é quadrado perfeito (l) (x) 1 retorna o valor do primeiro expoente da expansão prima de x. A expansão prima de um número é igual ao produto de potências de números primos: 2 x 3 y 5 z. (m) D(x), devolve o número de divisores de x. (n) primo(x), função característica do predicado x é número primo. (o) A função característica do predicado x > y. (p) A função característica do predicado x y, ou seja x é divisor de y. 3. Para cada uma das funções seguintes obtenha o Page 3

4 3 Indecibilidade 1. Considere um alfabeto A = {a 1, a 2,..., a n }. (a) Apresente uma função computável que codique A. (b) Apresente uma função computável que descodique A. 2. Sejam L A e L B linguagens recursivas. Prove as seguintes armações: (a) L A é uma linguagem recursiva (b) L A L B é uma linguagem recursiva (c) L A L B é uma linguagem recursiva (d) L A \ L B é uma linguagem recursiva 3. Prove que as seguintes linguagens são decidíveis: (a) (b) L A AF D = { M, u M é um AFD e aceita u} L V AF D = { M M é um AFD L(M) = } 4. Prove a indecibilidade das seguintes linguagens: (a) Linguagem da aceitação L A = { M, u M aceita u} (b) Linguagem da paragem L H = { M, u Mtermina comu} (c) Conjunto das linguagens que reconhecem linguagens regulares. L R = { M M gera uma linguagem regular } (d) Conjunto das linguagens que reconhecem linguagens independentes de contexto. L IC = { M M gera uma linguagem independente de contexto } (e) Conjunto das linguagens que reconhecem uma palavra e a sua inversa. L P 1 = { M w L(M) w R L(M) } w R representa a palavra w invertida. 5. Considere o problema em que as instâncias representam triplos (P, u, i) em que P é um programa URM, u um argumento do argumento e i um índice de instrução de P. As instâncias positivas são os triplos em que o programa executa a i-ésima instrução. Se i > P considera-se que a computação P (u) termina. Mostre que este problema é indecidível. 6. Considere o problema em que as instâncias representam tuplos (P, u, r, v) em que P é um programa URM, u um argumento do argumento, r um índice de registo e v um número natural. As instâncias positivas são os triplos em que durante a computação do programa ou após o seu término o registo r tem o valor v. Mostre que este problema é indecidível. Page 4

5 7. Considere o modelo de computação R 1 URM que representa uma restrição do modelo URM em que os registos só têm k-bits. (a) Mostre que a linguagem da aceitação restrita a este modelo é decidível. L A R1URM = { P, u P é um R 1 URM P (u) 1 } (b) Mostre que a linguagem vazio restrita a este modelo é decidível. L V R1URM = { P L(P ) = } 8. Mostre que o problema da Correspondência de Post restrito ao alfabeto {0} é decidível. 4 Complexidade 1. Dê uma denição para a relação ser O de e mostre que (a) 1/2n 2 3n é O(n 2 ) (b) 6n 3 não é O(n 2 ) (c) (n + a) b é O(n b ) (d) n n não é O(n) (e) 200n 2 + n é O(n 2 ) 2. De um modo geral, para podermos tratar computacionalmente um problema temos que converter instâncias de um problema em números naturais. É preciso uma função que codique instâncias em números naturais f : I N (a) Apresente uma função que codique instâncias do problema 3SAT. representa conjuntos nitos de cláusulas com três literais. Uma instância (b) Apresente uma função que codique instâncias do problema CFC. Uma instância representa conjuntos nitos de cláusulas. (c) Apresente uma função que codique instâncias do problema SAT. Uma instância representa uma fórmula conjuntiva. (d) Apresente uma função que codique instâncias do problema COBV. Uma instância é um par (G, k) em que G é um grafo e k um número natural. 3. Para cada um dos seguintes problemas mostre que pertencem à classe NP. (a) Uma clique é um grafo não direccionado em que todos os vértices estão ligados a todos os outros. Um grafo pode conter um sub-grafo que forma uma clique. Uma k-clique é um grafo clique com exactamente k vértices. O problema clique é determinar se um grafo contém uma clique de um determinado tamanho. L CLIQUE = { G, k G é um grafo não direccionado e contém uma k-clique } (b) Dado um conjunto de números X = {x 1, x 2,..., x n } e um valor t queremos saber se existe um subconjunto de X tal que a soma dos números é t. L SUBSET SUM = { X, t X = {x 1, x 2,..., x n } {y 1, y 2,..., y l } X i y i = t } Page 5

6 4. O que caracteriza as linguagens da classe de complexidade temporal P? E as da classe NP? Considere as frases seguintes; diga, JUSTIFICANDO, se são verdadeiras, falsas, ou se nada pode concluir acerca da sua veracidade: (a) P NP (b) P NP (c) NP P 5. Explique de forma clara e concisa o que tem que fazer se quiser provar que uma dada linguagem L é NP-completa. Que outra forma tem de provar que uma linguagem é NPcompleta? 6. Para além do tempo e do espaço existem outros recursos que são usados para classicar as linguagens. Um desses recursos é o acesso a números aleatórios. Um algoritmo probabilístico utiliza o resultado de um processo aleatório. Que acrescentos são necessários fazer ao modelo BURM para podermos estudar este tipo de algoritmos e classes de complexidade? 7. No contexto do Teorema de Cook, apresente as fórmulas conjuntivas que descrevem o transição das instruções BURM. 8. Mostre que a linguagem COBV é NP-completa. Page 6

Exercícios de Teoria da Computação Computabilidade

Exercícios de Teoria da Computação Computabilidade Licenciatura em Engenharia Informática e de Computadores - LEIC Licenciatura em Engenharia de Redes de Comunicação e Informação -LERCI Exercícios de Teoria da Computação Computabilidade Paula Gouveia Secção

Leia mais

Exercícios de Teoria da Computação Computabilidade

Exercícios de Teoria da Computação Computabilidade Licenciatura em Engenharia Informática e de Computadores - LEIC Licenciatura em Engenharia de Redes de Comunicação e Informação -LERCI Exercícios de Teoria da Computação Computabilidade Secção Ciência

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

Exercícios de Teoria da Computação Computabilidade

Exercícios de Teoria da Computação Computabilidade Licenciatura em Engenharia Informática e de Computadores - LEIC Licenciatura em Engenharia de Redes de Computadores -LERC Exercícios de Teoria da Computação Computabilidade Secção de Lógica e Computação

Leia mais

Matemática Computacional

Matemática Computacional folha de exercícios 5 :: página 1/5 exercício 5.1. Defina a função f : R R, f(x) = 4x 4 3x 3 + 2x 2 + x. Calcule f(0), f( 1), f(4/3) e f(2.88923). exercício 5.2. Defina a função g : R R R, g(x, y) = x

Leia mais

Análise e Projeto de Algoritmos

Análise e Projeto de Algoritmos Análise e Projeto de Algoritmos 2018.2 Classes P e NP P São os problemas que podem ser resolvidos em tempo polinomial por uma Máquina de Turing Determinística. NP São os problemas que podem ser decididos

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

A = B, isto é, todo elemento de A é também um elemento de B e todo elemento de B é também um elemento de A, ou usando o item anterior, A B e B A.

A = B, isto é, todo elemento de A é também um elemento de B e todo elemento de B é também um elemento de A, ou usando o item anterior, A B e B A. Capítulo 1 Números Reais 1.1 Conjuntos Numéricos Um conjunto é uma coleção de elementos. A relação básica entre um objeto e o conjunto é a relação de pertinência: quando um objeto x é um dos elementos

Leia mais

Teoria da Computação. Engenharia Informática pós-laboral. Pedro Mariano. Ano Lectivo 2013/2014

Teoria da Computação. Engenharia Informática pós-laboral. Pedro Mariano. Ano Lectivo 2013/2014 Teoria da Computação Engenharia Informática pós-laboral Pedro Mariano Departamento de Informática Faculdade de Ciências Universidade de Lisboa Ano Lectivo 2013/2014 Introdução 1 Apresentação 2 Programa

Leia mais

Análise e Síntese de Algoritmos. Problemas NP-Completos CLRS, Cap. 34

Análise e Síntese de Algoritmos. Problemas NP-Completos CLRS, Cap. 34 Análise e Síntese de Algoritmos Problemas NP-Completos CLRS, Cap. 34 Contexto Revisões [CLRS, Cap. 1-10] Algoritmos em Grafos [CLRS, Cap. 22-26] Algoritmos elementares Árvores abrangentes Caminhos mais

Leia mais

Redutibilidade. Mário S. Alvim Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02)

Redutibilidade. Mário S. Alvim Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Redutibilidade 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) Redutibilidade DCC-UFMG (2018/02) 1 / 46 Redutibilidade:

Leia mais

Noção de Computabilidade

Noção de Computabilidade Noção de Computabilidade 1 Procedimento X Algoritmo Procedimento: sequência finita de instruções, que são operações claramente descritas, e que podem ser executadas mecanicamente, em tempo finito. claramente

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

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

Complexidade de Algoritmos

Complexidade de Algoritmos Compleidade de Algoritmos Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Prof. Cristiano Damiani Vasconcellos cristiano.vasconcellos@udesc.br Reduções de Problemas X NP-Completo

Leia mais

Análise e Síntese de Algoritmos

Análise e Síntese de Algoritmos Análise e Síntese de Algoritmos Problemas NP-Completos CLRS, Cap. 34 Contexto Algoritmos em Grafos Estruturas de Dados para Conjuntos Disjuntos Programação Linear Programação Dinâmica Algoritmos Greedy

Leia mais

2. Geração de Funções Computáveis

2. Geração de Funções Computáveis 2. Geração de Funções Computáveis 2.1 As funções básicas 2.2 Concatenação de programas 2.3 Substituição 2.5 Minimização Teresa Galvão LEIC - Teoria da Computação I 2.1 2.1 As funções básicas Métodos que

Leia mais

Departamento de Matemática da Universidade de Aveiro Matemática Discreta. A prova consta de 4 questões cada uma cotada com 5 valores.

Departamento de Matemática da Universidade de Aveiro Matemática Discreta. A prova consta de 4 questões cada uma cotada com 5 valores. Departamento de Matemática da Universidade de Aveiro Matemática Discreta Exame Final ( 2 a Chamada: 22/0/2007 Licenciatura em Matemática (8220 Mest. Int. Eng. Computadores e Telemática (8240 Informações

Leia mais

Apostila 06. Objetivos: Estudar a Computabilidade Estudar a Decidibilidade Estudar a Redutibilidade

Apostila 06. Objetivos: Estudar a Computabilidade Estudar a Decidibilidade Estudar a Redutibilidade 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

Reduções de Problemas Difíceis

Reduções de Problemas Difíceis Reduções de Problemas Difíceis André Vignatti DINF- UFPR Reduções de Problemas Difíceis Na figura abaixo, esquema das reduções que vamos (tentar) ver. Todos problemas NP CIRCUIT SAT SAT 3SAT INDEPENDENT

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Primeiro Teste 6 de Novembro de 200 09:00 0:30 SOLUÇÃO. (.0) Escolha a única afirmação incorrecta. Uma resposta certa vale valor e uma resposta errada desconta 0.4 valores. A.

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

Lógica Computacional (CC2003)

Lógica Computacional (CC2003) Lógica Computacional (CC2003) Nelma Moreira Lógica Computacional 21 Conteúdo 1 Mais Teorias (decidíveis) 1 1.1 Resolução para a lógica proposicional................ 4 1.2 Cláusulas...............................

Leia mais

printing problem: dado um programa e um valor arbitrários, o problema de determinar se sim ou não se vai obter como output do programa esse valor;

printing problem: dado um programa e um valor arbitrários, o problema de determinar se sim ou não se vai obter como output do programa esse valor; 1 Introdução 1 No texto que se segue vão ser apresentados resultados sobre não decidibilidade de alguns predicados (sobre os naturais). Para certos predicados vai ser apresentada uma prova de que não é

Leia mais

1 Postulado de Church-Turing 1

1 Postulado de Church-Turing 1 1 Postulado de Church-Turing 1 Alguns modelos alternativos no estudo da computabilidade Turing: Máquina de Turing Gödel-Kleene: Funções recursivas Church: Cáluculo λ (funções definidas por termos λ) Post:

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

COMPUTABILIDADE 2. Indecidibilidade

COMPUTABILIDADE 2. Indecidibilidade Licenciatura em Ciências da Computação COMPUTABILIDADE 2. Indecidibilidade José Carlos Costa Dep. Matemática e Aplicações Universidade do Minho 15 de Novembro de 2011 José Carlos Costa DMA-UMinho 15 de

Leia mais

Slides de apoio: Funções I

Slides de apoio: Funções I Pré-Cálculo ECT2101 Slides de apoio: Funções I Prof. Ronaldo Carlotto Batista 10 de março de 2017 Produto Cartesiano Denição Sejam dois conjuntos não vazios A e B, o produto cartesiano entre A e B é dado

Leia mais

Universidade da Madeira Ano lectivo 2006/07-2º semestre Responsável: Prof. José Carmo

Universidade da Madeira Ano lectivo 2006/07-2º semestre Responsável: Prof. José Carmo TEORIA DA COMPUTABILIDADE E COMPLEXIDADE Licenciatura em Engenharia Informática (2ª ano) Licenciatura em Ensino da Informática (2ª ano) Licenciatura em Matemática (2ª ano) Universidade da Madeira Ano lectivo

Leia mais

Busca e Decisão. Problemas de Otimização. Kakuro. P e NP. Pode-se resolver o Kakuro somente resolvendo problemas de decisão?

Busca e Decisão. Problemas de Otimização. Kakuro. P e NP. Pode-se resolver o Kakuro somente resolvendo problemas de decisão? Busca e Decisão Universidade Federal de Ouro Preto Departamento de Computação P e NP Decisão: Respostas SIM ou NÃO Eiste uma clique de tamanho k no grafo? Eiste um preenchimento da mochila com lucro z?

Leia mais

Aulas Práticas. 1ª Aula Prática Perguntas sobre a Implementação de Funções Simples na Máquina URM...1

Aulas Práticas. 1ª Aula Prática Perguntas sobre a Implementação de Funções Simples na Máquina URM...1 Aulas Práticas 1ª Aula Prática Perguntas sobre a Implementação de Funções Simples na Máquina URM...1 2ª Aula Prática Perguntas sobre a Implementação de Funções Recursivas na Máquina URM...2 3ª Aula Prática

Leia mais

livro_mat_disc 2018/11/30 9:20 page i #1 PREFÁCIO 1 O PRINCÍPIO DE INDUÇÃO 1

livro_mat_disc 2018/11/30 9:20 page i #1 PREFÁCIO 1 O PRINCÍPIO DE INDUÇÃO 1 livro_mat_disc 2018/11/30 9:20 page i #1 PREFÁCIO ix 1 O PRINCÍPIO DE INDUÇÃO 1 1.1 Princípio de indução 3 1.1.1 Desafio ao leitor 17 1.2 Binómio de Newton 23 1.2.1 Desafio ao leitor 27 1.3 Bibliografia

Leia mais

Linguagens Formais e Autômatos Decidibilidade

Linguagens Formais e Autômatos Decidibilidade Linguagens Formais e Autômatos Decidibilidade Andrei Rimsa Álvares Sumário Introdução A tese de Church-Turing Máquinas de Turing e problemas de decisão Máquina de Turing Universal O problema da parada

Leia mais

Complexidade de Algoritmos. Edson Prestes

Complexidade de Algoritmos. Edson Prestes Edson Prestes A classe P consiste nos problemas que podem ser resolvidos em tempo Polinomial (Problemas tratáveis) A classe NP consiste nos problemas que podem ser verificados em tempo polinomial (Problemas

Leia mais

(Ciência de Computadores) 2005/ Diga quais dos conjuntos seguintes satisfazem o Princípio de Boa Ordenação

(Ciência de Computadores) 2005/ Diga quais dos conjuntos seguintes satisfazem o Princípio de Boa Ordenação Álgebra (Ciência de Computadores) 2005/2006 Números inteiros 1. Diga quais dos conjuntos seguintes satisfazem o Princípio de Boa Ordenação (a) {inteiros positivos impares}; (b) {inteiros negativos pares};

Leia mais

Análise de Algoritmos. Slides de Paulo Feofiloff

Análise de Algoritmos. Slides de Paulo Feofiloff Análise de Algoritmos Slides de Paulo Feofiloff [com erros do coelho e agora também da cris] Algoritmos p. 1 Redução polinomial Permite comparar o grau de complexidade de problemas diferentes. Uma redução

Leia mais

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO. 5 a Lista de Exercícios

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO. 5 a Lista de Exercícios UNIVERSIDADE FEDERAL DO RIO DE JANEIRO DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO MATEMÁTICA COMBINATÓRIA 5 a Lista de Exercícios 1. O grafo de intersecção de uma coleção de conjuntos A 1,..., A n é o grafo

Leia mais

Tópicos de Matemática Elementar

Tópicos de Matemática Elementar Tópicos de Matemática Elementar 2 a série de exercícios 2004/05. A seguinte prova por indução parece correcta, mas para n = 6 o lado esquerdo é igual a 2 + 6 + 2 + 20 + 30 = 5 6, enquanto o direito é igual

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

Fábio Protti - UFF Loana T. Nogueira - UFF Sulamita Klein UFRJ

Fábio Protti - UFF Loana T. Nogueira - UFF Sulamita Klein UFRJ Fábio Protti - UFF Loana T. Nogueira - UFF Sulamita Klein UFRJ Suponha que temos um grupo de pessoas (funcionário de uma empresa) que serão submetidos a um treinamento. Queremos identificar os grupos de

Leia mais

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

Curso de Engenharia de Computação - UTFPR Teoria da Computação - Prof. Celso Kaestner Lista de exercícios 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

Leia mais

Redução polinomial. Permite comparar o grau de complexidade de problemas diferentes.

Redução polinomial. Permite comparar o grau de complexidade de problemas diferentes. Redução polinomial Permite comparar o grau de complexidade de problemas diferentes. Uma redução de um problema Π a um problema Π é um algoritmo ALG que resolve Π usando uma subrotina hipotética ALG que

Leia mais

Programação imperativa

Programação imperativa Capítulo 8 Programação imperativa 8.1 Exercícios de revisão 1. Distinga entre programação imperativa e programação funcional. 2. Explique a necessidade da introdução do operador de atribuição. 3. Diga

Leia mais

Capítulo 2: Procedimentos e algoritmos

Capítulo 2: Procedimentos e algoritmos Capítulo 2: Procedimentos e algoritmos Para estudar o processo de computação de um ponto de vista teórico, com a finalidade de caracterizar o que é ou não é computável, é necessário introduzir um modelo

Leia mais

TEORIA DE COMPLEXIDADE

TEORIA DE COMPLEXIDADE TEORIA DE COMPLEXIDADE Fundamentos: classes P e N P Mauricio Ayala-Rincón Grupo de Teoria da Computaç~ao http://ayala.mat.unb.br/tcgroup Instituto de Ciências Exatas Universidade de Brasília, Brasília

Leia mais

Problemas Computáveis

Problemas Computáveis Indecidibilidade Problemas Computáveis Máquinas de Turing ou Problemas Computáveis ou Linguagens Recursivamente Enumeráveis LER (*) podem ser divididas em 2 classes: as MT que sempre param (Algoritmos),

Leia mais

1. Prove que (a+b) c = a c+b c para todo a, b, c em ZZ /mzz. (Explique cada passo).

1. Prove que (a+b) c = a c+b c para todo a, b, c em ZZ /mzz. (Explique cada passo). 1 a Lista de Exercícios de Álgebra II - MAT 231 1. Prove que (a+b) c = a c+b c para todo a, b, c em ZZ /mzz. (Explique cada passo). 2. Seja A um anel associativo. Dado a A, como você definiria a m, m IN?

Leia mais

Computabilidade e Complexidade (ENG10014)

Computabilidade e Complexidade (ENG10014) Sistemas de Informação Computabilidade e Complexidade (ENG10014) Profa. Juliana Pinheiro Campos E-mail: jupcampos@gmail.com Decidibilidade O estudo da decidibilidade objetiva determinar a solucionabilidade

Leia mais

Fundamentos da Programação

Fundamentos da Programação Fundamentos da Programação Solução da Repescagem do Primeiro Teste 31 de Janeiro de 2013 09:00 10:30 1. De um modo sucinto, (a) (0.5) Diga o que é um processo computacional. Um processo computacional é

Leia mais

Análise e Projeto de Algoritmos

Análise e Projeto de Algoritmos Análise e Projeto de Algoritmos 2018.2 Classes P e NP P São os problemas que podem ser resolvidos em tempo polinomial por uma Máquina de Turing Determinística. NP São os problemas que podem ser decididos

Leia mais

Projeto e Análise de Algoritmos NP Completude Parte 2. Prof. Humberto Brandão

Projeto e Análise de Algoritmos NP Completude Parte 2. Prof. Humberto Brandão Projeto e Análise de Algoritmos NP Completude Parte 2 Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Universidade Federal de Alfenas Departamento de Ciências Exatas versão da aula: 0.2 Última aula

Leia mais

1. Múltiplos e divisores

1. Múltiplos e divisores Escola Básica de Santa Marinha Matemática 2009/2010 7º Ano Síntese dos conteúdos Números e operações 1 Múltiplos e divisores Múltiplo de um número é todo o número que se obtém multiplicando o número dado

Leia mais

Problemas Intratáveis ou computação eficiente X computação ineficiente

Problemas Intratáveis ou computação eficiente X computação ineficiente Problemas Intratáveis ou computação eficiente X computação ineficiente Problemas Tratáveis Os problemas que podem ser resolvidos em tempo polinomial em um computador típico são exatamente os mesmos problemas

Leia mais

Matemática A - 10 o Ano

Matemática A - 10 o Ano Matemática A - 10 o Ano Resolução da Ficha de Trabalho Álgebra - Divisão Inteira de Polinómios Grupo I 1. Considerando os polinómios p e b no enunciado temos que o termo de maior grau de p b é a nx n b

Leia mais

ECO026 TEORIA DA COMPUTAÇÃO. Prof: Rafael Santos Site:

ECO026 TEORIA DA COMPUTAÇÃO. Prof: Rafael Santos   Site: ECO026 TEORIA DA COMPUTAÇÃO Prof: Rafael Santos Email: rafafic@gmail.com Site: http://sites.google.com/site/rafafic Máquinas de Turing Uma linguagem Turing-reconhecível (Linguagem recursivamente enumeravel),

Leia mais

Denominamos equação polinomial ou equação algébrica de grau n a toda equação da forma:

Denominamos equação polinomial ou equação algébrica de grau n a toda equação da forma: EQUAÇÕES POLINOMIAIS. EQUAÇÃO POLINOMIAL OU ALGÉBRICA Denominamos equação polinomial ou equação algébrica de grau n a toda equação da forma: p(x) = a n x n + a n x n +a n x n +... + a x + a 0 = 0 onde

Leia mais

Aulas 10 e 11 / 18 e 20 de abril

Aulas 10 e 11 / 18 e 20 de abril 1 Conjuntos Aulas 10 e 11 / 18 e 20 de abril Um conjunto é uma coleção de objetos. Estes objetos são chamados de elementos do conjunto. A única restrição é que em geral um mesmo elemento não pode contar

Leia mais

Teoria da Computação. Computabilidade e complexidade computacional

Teoria da Computação. Computabilidade e complexidade computacional Teoria da Computação Computabilidade e complexidade computacional 1 Computabilidade e Complexidade Computabilidade: verifica a existência de algoritmos que resolva uma classe de linguagens trata a possibilidade

Leia mais

Aula 10: Tratabilidade

Aula 10: Tratabilidade Teoria da Computação DAINF-UTFPR Aula 10: Tratabilidade Prof. Ricardo Dutra da Silva Na aula anterior discutimos problemas que podem e que não podem ser computados. Nesta aula vamos considerar apenas problemas

Leia mais

Aula 10: Decidibilidade

Aula 10: Decidibilidade Teoria da Computação Segundo Semestre, 2014 Aula 10: Decidibilidade DAINF-UTFPR Prof. Ricardo Dutra da Silva Definição 10.1. Um problema de decisão P é um conjunto de questões para as quais as respostas

Leia mais

Procedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens

Procedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens Procedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens 1 Introdução Estudar computação do ponto de vista teórico é sinônimo de caracterizar

Leia mais

Decidibilidade. Mário S. Alvim Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02)

Decidibilidade. Mário S. Alvim Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Decidibilidade Mário S Alvim (msalvim@dccufmgbr) Fundamentos de Teoria da Computação (FTC) DCC-UFMG (2018/02) Mário S Alvim (msalvim@dccufmgbr) Decidibilidade DCC-UFMG (2018/02) 1 / 45 Decidibilidade:

Leia mais

Lista de Exercícios Estrutura de Repetição

Lista de Exercícios Estrutura de Repetição Universidade Federal Fluminense Instituto de Computação Programação de Computadores III Luciana Brugiolo Gonçalves Lista de Exercícios Estrutura de Repetição E15. Desenvolva um algoritmo para exibir todos

Leia mais

Exercícios: Árvores. Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de estrutura de dados em linguagem C

Exercícios: Árvores. Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de estrutura de dados em linguagem C Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de estrutura de dados em linguagem C Exercícios: Árvores 1. Utilizando os conceitos de grafos, defina uma árvore.

Leia mais

Melhores momentos AULA 24. Algoritmos p.906/953

Melhores momentos AULA 24. Algoritmos p.906/953 Melhores momentos AULA 24 Algoritmos p.906/953 Problemas polinomiais Analise de um algoritmo em um determinado modelo de computação estima o seu consumo de tempo e quantidade de espaço como uma função

Leia mais

Complexidade de Algoritmos. Edson Prestes

Complexidade de Algoritmos. Edson Prestes Edson Prestes O limite superior de complexidade de um problema refere-se ao melhor algoritmo que o resolve. nlog 2 n é um limite superior para o problema de classificação. O limite inferior de um problema

Leia mais

Marcos Castilho. DInf/UFPR. 16 de maio de 2019

Marcos Castilho. DInf/UFPR. 16 de maio de 2019 16 de maio de 2019 Motivação Quais são os limites da computação? O que é um Problema de decisão? Um problema de decisão é um conjunto de perguntas, cada uma das quais tem um SIM ou um NÃO como resposta.

Leia mais

Matemática Discreta. Fundamentos e Conceitos da Teoria dos Números. Universidade do Estado de Mato Grosso. 4 de setembro de 2017

Matemática Discreta. Fundamentos e Conceitos da Teoria dos Números. Universidade do Estado de Mato Grosso. 4 de setembro de 2017 Matemática Discreta Fundamentos e Conceitos da Teoria dos Números Professora Dr. a Donizete Ritter Universidade do Estado de Mato Grosso 4 de setembro de 2017 Ritter, D. (UNEMAT) Matemática Discreta 4

Leia mais

Universidade Federal de Uberlândia Mestrado em Ciência da Computação

Universidade Federal de Uberlândia Mestrado em Ciência da Computação Universidade Federal de Uberlândia Mestrado em Ciência da Computação Solução da 1 a Prova de Teoria da Computação - 05/05/2010 Questão 1 (Valor = 7 pontos) Um número real é dito algébrico se é raiz de

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

Lógica de Predicados

Lógica de Predicados Lógica de Predicados Slides da disciplina Lógica para Computação ministrada pelo Prof. Celso Antônio Alves Kaestner, Dr. Eng. (kaestner@dainf.ct.utfpr.edu.br) entre 2007 e 2008. Alterações feitas em 2009

Leia mais

Técnicas de Extensão de MT

Técnicas de Extensão de MT Máquinas de Turing Técnicas de Extensão de MT Permanecer parada após a leitura (STILL) Máquinas de Turing com Múltiplas Fitas e Cabeças Máquinas de Turing Não-deterministicas A Tese/Hipótese de Church-Turing

Leia mais

Teoria da Computação. Computabilidade e complexidade computacional

Teoria da Computação. Computabilidade e complexidade computacional Teoria da Computação Computabilidade e complexidade computacional 1 Computabilidade e Complexidade Computabilidade: verifica a existência de algoritmos que resolva uma classe de linguagens trata a possibilidade

Leia mais

FICHA DE TRABALHO N.º 2 MATEMÁTICA A - 10.º ANO CONJUNTOS E CONDIÇÕES

FICHA DE TRABALHO N.º 2 MATEMÁTICA A - 10.º ANO CONJUNTOS E CONDIÇÕES FICHA DE TRABALHO N.º MATEMÁTICA A - 10.º ANO CONJUNTOS E CONDIÇÕES Conhece a Matemática e dominarás o Mundo. Galileu Galilei GRUPO I ITENS DE ESCOLHA MÚLTIPLA 1. Considere a condição px : x é um número

Leia mais

Módulo de Números Naturais. Divisibilidade e Teorema da Divisão Euclideana. 8 ano E.F.

Módulo de Números Naturais. Divisibilidade e Teorema da Divisão Euclideana. 8 ano E.F. Módulo de Números Naturais. Divisibilidade e Teorema da Divisão Euclideana. 8 ano E.F. Módulo de Números Naturais. Divisibilidade e Teorema da Divisão Euclideana. 1 Exercícios Introdutórios Exercício 1.

Leia mais

Aula de hoje Aula passada

Aula de hoje Aula passada Aula 2 Aula passada Logística, programação, regras do jogo Três problemas Monte Carlo to the rescue História das origens Monte Carlo na Computação Aula de hoje Espaço amostral Probabilidade Eventos Independência

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos Complexidade de Algoritmos Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Prof. Cristiano Damiani Vasconcellos cristiano.vasconcellos@udesc.br Estudo da Tratabilidade de Problemas

Leia mais

INTRATABILIDADE e NP-COMPLETUDE

INTRATABILIDADE e NP-COMPLETUDE INTRATABILIDADE e NP-COMPLETUDE Sandro Santos Andrade Doutorado Multiinstitucional em Ciência da Computação UFBA/UNIFACS/UEFS Junho/2008 Grafos e Análise de Algoritmos Introdução Para alguns problemas

Leia mais

Aula 1: Introdução ao curso

Aula 1: Introdução ao curso Aula 1: Introdução ao curso MCTA027-17 - Teoria dos Grafos Profa. Carla Negri Lintzmayer carla.negri@ufabc.edu.br Centro de Matemática, Computação e Cognição Universidade Federal do ABC 1 Grafos Grafos

Leia mais

Funções - Primeira Lista de Exercícios

Funções - Primeira Lista de Exercícios Funções - Primeira Lista de Exercícios Vers~ao de 0/03/00 Recomendações Não é necessário o uso de teoremas ou resultados complicados nas resoluções. Basta que você tente desenvolver suas idéias. Faltando

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

14.1 Linguagens decidíveis ou Turing reconhecíveis

14.1 Linguagens decidíveis ou Turing reconhecíveis Linguagens decidíveis ou Turing reconhecíveis Problemas decidíveis para Linguagens Regulares Teorema Seja A linguagem A DFA é decidível A DFA = {A : A é um DFA e aceita } Dem Basta mostrar como construir

Leia mais

COMPLEXIDADE PARAMETRIZADA PARTE 1. Rafael Coelho.

COMPLEXIDADE PARAMETRIZADA PARTE 1. Rafael Coelho. UMA BREVE INTRODUÇÃO À TEORIA DE COMPLEXIDADE PARAMETRIZADA PARTE 1 Rafael Coelho rcoelho@ime.usp.br Instituto de Matemática e Estatística Universidade de São Paulo Seminários de Teoria da Computação,

Leia mais

Instruções de repetição

Instruções de repetição Folha Prática Instruções de repetição 1 Instruções de repetição Repetição (e componentes associadas a qualquer repetição: inicialização, teste da condição de paragem e actualização) Repetição com teste

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Primeiro Teste 16 de Abril de 2011 09:00 10:30 Nome: Número: Esta prova, individual e sem consulta, tem 7 páginas com 9 perguntas. A cotação de cada pergunta está assinalada

Leia mais

Teoria de Conjuntos. Matemática Discreta I. Rodrigo Ribeiro. 6 de janeiro de 2013

Teoria de Conjuntos. Matemática Discreta I. Rodrigo Ribeiro. 6 de janeiro de 2013 Teoria de Conjuntos Matemática Discreta I Rodrigo Ribeiro Departamento de Ciências Exatas e Aplicadas Universidade de Federal de Ouro Preto 6 de janeiro de 2013 Motivação (I) Porque estudar Teoria de Conjuntos?

Leia mais

Autômatos Finitos Não Determinís5cos (AFN)

Autômatos Finitos Não Determinís5cos (AFN) Linguagens Formais e Autômatos Autômatos Finitos Não Determinís5cos (AFN) Andrei Rimsa Álvares Material extraído do livro e slides do Prof. Newton Vieira (hdp://dcc.ufmg.br/~nvieira) Sumário Introdução

Leia mais

MATEMÁTICA 1 MÓDULO 2. Divisibilidade. Professor Matheus Secco

MATEMÁTICA 1 MÓDULO 2. Divisibilidade. Professor Matheus Secco MATEMÁTICA 1 Professor Matheus Secco MÓDULO 2 Divisibilidade 1. DIVISIBILIDADE 1.1 DEFINIÇÃO: Dizemos que o inteiro a é divisível pelo inteiro b (ou ainda que a é múltiplo de b) se existe um inteiro c

Leia mais

Teoria da Complexidade Computacional

Teoria da Complexidade Computacional Teoria da Complexidade Computacional 25 de novembro de 2011 Enquanto a teoria de análise de algoritmos estuda a análise de complexidade de algoritmos, a teoria da complexidade estuda a classificação de

Leia mais

Matemática para Ciência de Computadores

Matemática para Ciência de Computadores Matemática para Ciência de Computadores 1 o Ano - LCC & ERSI Luís Antunes lfa@ncc.up.pt DCC-FCUP Complexidade 2002/03 1 Inteiros e divisão Definição: Se a e b são inteiros com a 0, dizemos que a divide

Leia mais

Computabilidade. da Computação que estudam, formalmente, as capacidades e as limitações da computação.

Computabilidade. da Computação que estudam, formalmente, as capacidades e as limitações da computação. Computabilidade Universidade dos Açores Departamento de Matemática www.uac.pt/~hguerra!! A Computabilidade e a Complexidade são áreas nucleares da Ciência da Computação que estudam, formalmente, as capacidades

Leia mais

Aula 10: Decidibilidade

Aula 10: Decidibilidade Teoria da Computação Aula 10: Decidibilidade DAINF-UTFPR Prof. Ricardo Dutra da Silva Definição 10.1. Um problema de decisão P é um conjunto de questões para as quais as respostas são sim ou não. Exemplo

Leia mais

t 2 se t 0 Determine a expansão em série de potências para a função F (x) = ( 1) n y2n (2n)!, ( 1) n t4n (2n)! (2n)! ( 1) n t4n 2 dt = ( 1) n t 4n 2 )

t 2 se t 0 Determine a expansão em série de potências para a função F (x) = ( 1) n y2n (2n)!, ( 1) n t4n (2n)! (2n)! ( 1) n t4n 2 dt = ( 1) n t 4n 2 ) MAT456 - Cálculo Diferencial e Integral IV para Engenharia Escola Politecnica - a. Prova - 8// Turma A a Questão (,) a) Seja cos (t ) f(t) = t se t se t = Determine a expansão em série de potências para

Leia mais

Códigos Corretores de Erros e Cliques de Grafos

Códigos Corretores de Erros e Cliques de Grafos Códigos Corretores de Erros e Cliques de Grafos Natália Pedroza Jayme Szwarcfiter Paulo Eustáquio UFRJ/UERJ 2016 Natália Pedroza (UFRJ/UERJ) Códigos Corretores 2016 1 / 32 Apresentação Códigos corretores

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Solução do Segundo Teste 23 de Janeiro de 2012 09:00 10:30 Nome: Número: 1. (1.0) Explique em que consiste a abstracção de dados, usando os termos barreiras de abstracção, encapsulação

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

Máquinas de Turing - Computabilidade

Máquinas de Turing - Computabilidade BCC244-Teoria da Computação Prof. Lucília Figueiredo Lista de Exercícios 03 DECOM ICEB - UFOP Máquinas de Turing - Computabilidade 1. Seja L uma linguagem não livre de contexto. Mostre que: (a) Se X uma

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

Errata da lista 1: Na página 4 (respostas), a resposta da letra e da questão 13 é {2, 3, 5, 7, 11, 13, 17} (faltou o número 17)

Errata da lista 1: Na página 4 (respostas), a resposta da letra e da questão 13 é {2, 3, 5, 7, 11, 13, 17} (faltou o número 17) Errata da lista 1: Na página 4 (respostas), a resposta da letra e da questão 13 é {2, 3, 5, 7, 11, 13, 17} (faltou o número 17) Lista 1 - Bases Matemáticas Elementos de Lógica e Linguagem Matemática 1

Leia mais