Universidade da Madeira Ano lectivo 2006/07-2º semestre Responsável: Prof. José Carmo
|
|
- Benedita Cavalheiro Deluca
- 7 Há anos
- Visualizações:
Transcrição
1 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 2006/07-2º semestre Responsável: Prof. José Carmo Exame Frequência final (2/4/07) (Duração 3h + 30m de tolerância; Cotação: 20 valores) I (3 valores) Especifique uma máquina de Turing que calcule a função f : Ν 0 Ν 0 assim definida: f(n) = 0 se n é par; f(n) = n se n é ímpar. Pretende-se especificar uma máquina de Turing que calcule a função: 0, se né par f (n) = n, se né ímpar Configuração inicial da fita para o cálculo de f(n): n+ uns consecutivos e tudo o resto em branco... β... β... Estado inicial: q O resultado da função calculada é dado pelo número de uns na fita quando a computação pára (sendo indefinido se esta não parar). Ideia (Há sempre outras soluções):. Começar por determinar se o número representado é par, guardando em cada momento (no estado) a informação sobre se o número lido até ao momento é par; 2. Se o número representado na fita for par, apagar todos os uns (para o que são precisos dois estados); 3. Se o número representado na fita for ímpar, apagar um (pois há na fita n+ uns). Significado dos estados considerados (Há outras alternativas): q : estado inicial (ainda não foi processado qualquer ) q 2 : o número (já) lido até ao momento é par (sem contar com o símbolo de leitura) q 3 : o número (já) lido até ao momento é ímpar q 4 : apagar o símbolo em leitura se este for (e mudar de estado para avançar uma casa para a esquerda) q 5 : avançar uma casa para a esquerda (para continuar a apagar uns) q 6 : apagar um e um só q 7 : parar (desnecessário)
2 Especificação da máquina de Turing (onde _ significa casa em branco): (q,, R, q 2 ) (q 2,, R, q 3 ) (q 2, β, L, q 4 ) (q 3,, R, q 2 ) (q 3, β, L, q 6 ) (q 4,, β, q 5 ) (q 5, β, L, q 4 ) (q 4, β, β, q 7 ) (q 6,, β, q 7 ) OU (q,, R, q 2 ) (q 2,, R, q 3 ) (q 2, β, L, q 4 ) (q 3,, R, q 2 ) (q 3, β, L, q 6 ) (q 4,, β, q 5 ) (q 5, β, L, q 4 ) (q 6,, β, q 6 ) II (6.5 valores) ) Construa um programa URM (sem instruções de chamadas de outros programas) que calcule a função característica parcial do predicado x<y. Pretende-se construir um programa URM que calcule a seguinte função:, se x < y f ( x, y) =, se x y (indefinida) Configuração Inicial: x y 0 2 Por exemplo, o programa URM a seguir calcula f. (a) I : S() (a) I 2 : J(, 2, 4) I 3 : J(,, ) I 4 : Z() I 5 : S() 2) O programa Mathematica qpq, a seguir, testa se um número natural x é um quadrado perfeito, começando por calcular a raiz quadrada inteira de x (onde a raiz quadrada inteira de um natural x é o maior número natural cujo quadrado é x), e depois testando se o seu quadrado é igual a x. qpq = Function[x, Module[ {i}, i = 0 ; While[ (i+)^2 <= x, i = i+ ] ; If[ i^2 ==x,, 0] ]] ; 2
3 Sabendo que C é um programa URM que calcula a função característica do predicado, e que P é um programa URM que calcula a função produto (de dois naturais), indique como obter um programa URM generalizado (podendo envolver sub-programas - instruções de chamada de outros programas) que que emule o programa qpq. (Sugestão: aconselha-se a que mantenham/guardem os valores de i, de i+ e de (i+)^2 em três células de memória distintas.) Seja m = máximo{2, ρ(c), ρ(p)} número máximo de argumentos da função a calcular e das funções relevantes calculadas pelos programas C e P Configuração Inicial: x 0 Reservaremos as células: R m+ para guardar o valor inicial de x R m+2 para guardar o valor de i R m+3 para guardar o valor de i+ R m+4 para guardar o valor de (i+) 2 e usaremos a célula R m+5, guardando o valor zero, para os testes. Configuração típica :?...? x i i+ m m+ m+2 m+3 m+4 m+5 O seguinte programa URM generalizado emula o programa Mathematica em causa: I : T(, m+) (podíamos fazer aqui Z(m+2), mas não é necessário) I 2 : S(m+3) I 3 : call P[m+3, m+3 m+4] I 4 : call C[m+4, m+ ] (a) I 5 : J(, m+5, 8) I 6 : S(m+2) OU I 7 : J(,, 2) (a) I 8 : call P[m+2, m+2 ] (b) I 9 : J(, m+, 2 ) I 0 : Z() parar I : J(,, 4 ) (b) I 2 : Z() I 3 : S() (i+) S(m+2) S(m+3) call P[m+3, m+3 m+4] J(,, 4) 3
4 3) Considere o programa URM P = ( J(,2,3), J(,,4), S(2), T(2,) ). a) Diga a que é igual ρ(p). ρ(p) = 2 (pois ρ(p) = máximo{,2,,,2,2,}) b) Supondo que a é o código de P (isto é, a = γ(p)), diga a que é igual: φa (), Wa () e Ea (). () Sendo a = γ (P), então φ a é a função unária calculada pelo programa Configuração Inicial: P = ( J(,2,3), J(,,4), S(2), T(2,) ) x Tem-se: φ (), se x = 0 a (x) = 0, se x 0 Wa () = dom( φ a () ) = IN0 Ea () = cod( φ a () ) = {0,} III (5 valores) Neste grupo pode usar (se tal lhe for útil), sem demonstrar, o facto de serem recursivas primitivas as funções constantes, de qualquer aridade, bem como as seguintes funções: 2 soma: Ν 0 Ν 0, com soma(x,y) = x+y prod: Ν 2 0 Ν 0, com prod(x,y) = x*y ant: Ν 0 Ν 0, com ant(n)=if[n>0, n-, 0] dif: Ν 2 0 Ν 0, com dif(x,y) = If[x y, x-y, 0] = If[x > y, x-y, 0] sg: Ν 0 Ν 0, com sg(n) = If[n,, 0] (isto é, sg(0)=0, e sg(n)=, se n ) sg: Ν 0 Ν 0, com sg(n) = If[n, 0, ] (isto é, sg(0)=, e sg(n)=0, se n ) ) Mostre que a função f (x, y) = x y! é recursiva primitiva. A função factorial, que a seguir designaremos de fact, é recursiva primitiva, pois pode ser definida, por recursão, à custa de funções recursivas primitivas (mais precisamente, à custa da constante, e das funções sucessor e produto), como se segue: fact( 0 ) = fact( k+ ) = ( k+ ) * k! = prod( k+, fact(k) ) suc(k) 4
5 ( Tecnicamente o factorial é definido recursivamente à custa da constante e da função g, como se segue: fact ( 0 ) = fact ( k+ ) = g ( k, fact(k) ) com g ( x, y ) = prod ( suc(x), y ) = prod ( suc(x), Id(y) ) sendo g recursiva primitiva, pois obtém-se por substituição à custa da função recursiva primitiva prod e das funções básicas suc e Id = U ) A função potência, a seguir designada por pot, é recursiva primitiva, pois pode ser definida, por recursão, à custa de funções recursivas primitivas (mais precisamente, à custa da função unária constantemente igual a e da função prod), como se segue: pot (x, 0) = x 0 = ( = (x) ) pot (x, k+) = x k+ = x k x = prod ( x, pot(x, k) ) Assim, a função f é recursiva primitiva, pois pode ser definida, por substituição, à custa das funções recursivas primitivas pot e fact, como se segue: f (x, y) = pot ( x, fact( y ) ) ( = Id(x) ou = U 2 ( x, ) ) y 2) Mostre que a função característica do predicado x>y é recursiva primitiva. A função característica de x > y é dada por:, se x > y, se x y > 0 f ( x, y) = = 0, se x y 0, se x y 0 Assim, f pode ser definida como se segue: f ( x, y ) = sg ( dif( x, y) ) Logo f define-se, por substituição, à custa das funções sg e dif. Como estas funções são recursivas primitivas, f também o é. 3) Justifique a seguinte afirmação (sem recorrer ao postulado de Church): a função f : Ν 0 Ν 0 assim definida: f(x) = menor inteiro cujo factorial é superior a x, é computável. Considere-se o predicado M ( n, x ) = n! > x 5
6 A função característica de M:, se n!> x C M (n, x) = 0, se n! x pode ser definida, por substituição, à custa de C > e de fact, como se segue: C M ( n, x ) = C > ( n!, x ) = C > ( fact(n), x ) Assim, como C > e fact são recursivas primitivas, C M também o é e, portanto, C M é computável. Logo M é decidível. Mas então a função definida por minimização (ilimitada) f (x) = µ n (n!> x) é computável (de acordo com um resultado provado nas teóricas) IV (5.5 valores) ) Defina a função universal para funções unárias computáveis e, recorrendo ao postulado de Church, esboce a demonstração de que ela é computável. A função universal para funções unárias computáveis é a função (binária) que se denota por ψ U () ou, simplesmente, por ψu, e se define como se segue: ψ U (x, y) = φ x (y) Usando o Postulado/Tese de Church, podemos concluir que esta função é computável, uma vez que é intuitivamente imediato que o algoritmo a seguir permite calcular ψ U (x, y) : ) Descodificar x, obtendo-se o programa que x representa (codifica): Px = γ (x) (Recorde-se que γ é efectivamente computável) 2) Emular (simular) a execução de P x, a partir da configuração inicial y Passo a passo, seguindo a evolução do estado da máquina URM, até ao fim da execução de P x (se esta ocorrer). Se a computação P x (y) terminar (i.e. se a emulação de P x, a partir daquela configuração inicial, terminar), o resultado de ψ U (x, y) será o valor guardado no registo R, quando se dá a terminação de P x (y). Se a computação P x (y) não terminar (divergir), então a função φx não está definida no ponto y, pelo que ψ U (x, y) não está definido. 6
7 2) Recorrendo ao método da diagonal, demonstre que existe uma função unária total que não é computável. Seja f : IN0 IN a função assim definida: 0 f (x) = φ x (x) +, se x W x (i.e.seφ x (x) está definida) x IN 0 0,se x W x É imediato que f(x) está sempre definida, pelo que f é uma função total (uma aplicação). Por outro lado, é igualmente imediato que f (x) φ x (x) x ( IN 0 ) Assim: f φ x x E como φ 0,φ,φ 2, constitui uma enumeração de todas as funções unárias computáveis, concluímos que f não pode ser computável. (c.q.d.) 3) Sem recorrer ao postulado de Church, mostre que a função característica parcial do predicado Px(y) é computável. Queremos mostrar que é computável a seguinte função: f (x, y) =, se P x (y) (i.e.seφ x (y) está definida), caso contrário Ora, f pode ser definido, por substituição, à custa da função unária constantemente igual a e da função universal para as funções unárias computáveis, como se segue: = φ x (y) f (x, y) = (ψ U (x, y)) Assim, como a função unária constantemente igual a e a função ψ U são computáveis, a função f também é computável (pois obtém-se, por substituição, à custa dessas funções). (c.q.d.) 4) Recorrendo ao teorema de Rice, demonstre que o problema "φx é sobrejectiva" é indecidível. Seja β = {g C : gé sobrejectiva} (com C o conjunto das funções unárias computáveis). Tem-se: φ é sobrejectiva <=> φ x β x Assim, pelo Teorema de Rice, teremos provado que φ é sobrejectiva é indecidível, se provarmos que: 7 x
8 a) β b) β C (istoé, β C ) Ora, β pois (por exemplo) a função identidade Id( = U ) pertence a β. E β C pois (por exemplo) a função zero pertence a C β. (c.q.d.) 5) Demonstre que o problema "8 Ex" é indecidível, reduzindo o problema "x Wx" a este problema (recorrendo, para tal, à versão simples do teorema s-m-n). a) Comecemos por provar que: qualquer que seja a função k total e computável, se "8 E k(x) " for indecidível, então "8 E x " também o é. Dem: Suponha-se que "8 E x " é decidível e que k é total e computável. Então (a função característica de "8 E x ") C(x) =, se 8 Ε x 0, se 8 Ε x é computável. Mas então também é computável g(x) = C(k(x)) =, se 8 Ε k(x) 0, se 8 Εk(x) pois g obtém-se por substituição à custa de C e de k. Mas g é a função característica de 8 Ε k(x). Logo, o problema "8 E k(x) " será decidível (se "8 E x " o for). b) Pela versão simples do Teorema s-m-n, dada uma função f : IN 2 IN0, 0 computável, existe uma função (unária) k total e computável, tal que f (x, y) = φ k(x) (y) c) Assim, se conseguirmos definir f, computável, de modo a que (*) 8 Ε k(x) x W x = = cod(φ k(x) ) dom(φ x ) 8
9 Teremos mostrado que o problema "8 E k(x) " é indecidível, por redução do problema x W x (que é indecidível) a este problema (e, pela alínea a), podemos concluir que "8 E x " é indecidível, como pretendemos) d) Defina-se f como se segue: ( φ k(x) (y) = ) f (x, y) = 8,se x W x (i.e.seφ x (x) está definida), se x W x Verifica-se (*), pois: x W x y ( f (x, y) = 8) 8 cod(φ k(x) ) = φ k(x) (y) (Nota: para se ter isto bastava que y ( f (x, y) = 8 ) x W x y (φ k(x) (y) = ) 8 cod(φ k(x) ) e) Resta-nos provar que f é computável (para isso não podemos recorrer à computabilidade da definição por casos, pois o problema x W x é indecidível). Que f é computável sai de f poder ser definida por substituição à custa de funções computáveis (a função ψ U (x, y) e a função 8(x), isto é, a função unária constantemente igual a 8), como se segue f (x, y) = 8(ψ U (x, x)) =φ x (x) 9
Teoria da Computação I
Licenciatura em Engenharia Informática e Computação João Mendes Moreira João Falcão e Cunha Teoria da Computação I 3º Ano 2001-2002 6ª Aula Prática Numeração de Programas URM 6.1. Resolução β(j(3,4,2))
Leia maisprinting 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 maisAulas 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 maisTeoria da Computação I
Licenciatura em Engenharia Informática e Computação João Falcão e Cunha João Mendes Moreira Teoria da Computação I º Ano 2001-2002 Prova Escrita 2ª chamada 2002.01.0 Esta prova escrita tem a duração de
Leia mais6. Decidibilidade, indecidibilidade e decidibilidade parcial
6. Decidibilidade, indecidibilidade e decidibilidade parcial Nos capítulos anteriores, já foram referidos diversos problemas decidíveis. Apenas foi analisado um único problema indecidível ( φ é total )
Leia maisExercí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 mais2. 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 maisExercí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 mais1 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 maisOs Limites da Computabilidade. Dois Conceitos Distintos. Tese de Church Turing. O Que É Computável? O Que É Possível De Ser Computado?
LFA - PARTE 6 Os Limites da Computabilidade O Que É Computável? O Que É Possível De Ser Computado? João Luís Garcia Rosa LFA-FEC-PUC-Campinas 2002 R. Gregory Taylor: http://starbase.cs.trincoll.edu/~rtaylor/thcomp/
Leia maisTeoria da Computação 31 de Maio de 2017 Teste 2A Duração: 1h30
31 de Maio de 2017 Teste 2A Duração: 1h30 Seja Σ um alfabeto. Considere as seguintes linguagens: L 1 = {M M : M é máquina classificadora}, L 2 = {M M : L ac (M) = Σ }. a) Use o teorema de Rice para demonstrar
Leia maisTeoria 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 maisCOMPUTABILIDADE 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 maisTeoria da Computação
Ciência da Computação Teoria da Computação (ENG10395) Profa. Juliana Pinheiro Campos E-mail: jupcampos@gmail.com Funções recursivas Os formalismos usados para especificar algoritmos podem ser classificados
Leia maisTeoria da Computação. Exercícios. 1 Máquinas de Registos Ilimitados 2013/2014
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
Leia maisNoçã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 maisTeoria da Computação 27 de Maio de 2015 Teste 2A Duração: 1h30
Instituto Superior Técnico Lic. Engenharia Informática e de Computadores (Alameda) Teoria da Computação 27 de Maio de 2015 Teste 2A Duração: 1h30 Grupo I (3+1+3 valores) Considere as linguagens P A = {M
Leia maisCapí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 maisProblemas 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 maisExercí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 maisCapí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 maisCOMPUTABILIDADE 3. Funções Parciais Recursivas
José Carlos Costa DMA-UMinho 2 de Dezembro de 2011 1/17 Licenciatura em Ciências da Computação COMPUTABILIDADE 3. Funções Parciais Recursivas José Carlos Costa Dep. Matemática e Aplicações Universidade
Leia maisMáquinas Universais. Departamento de Ciência de Computadores da FCUP MC Aula 23 1
Máquinas Universais Um modelo de computação diz-se universal se todo o problema efectivamente computável o for nesse modelo. Um modelo universal é suficientemente poderoso para se aceitar a si próprio:
Leia maisTeoria da Computação Exame 1 30 de Junho de 2003
Licenciatura em Engenharia Informática e de Computadores Teoria da Computação Exame 1 30 de Junho de 2003 I.1 a) Considere-se a gramática regular G = (V, I, P, S) onde V = {S, A, B, C, D}, I = {x, y} e
Leia maisLinguagem Universal. assim como a entrada ser processada por a. (b) A segunda fita de representa a fita de
Linguagem Universal 1. Uma máquina de Turing representa um PC? Ou representa um possível problema que um PC pode resolver? 2. Uma máquina de Turing pode ser utilizada para simular uma de Turing máquina.
Leia maisDraft-v0.1. Máquinas de Turing Máquinas de Turing
13 Máquinas de Turing A necessidade de formalizar os processos algorítmicos levou, nas décadas 20 e 30 do século XX, a diversos estudos, entre os quais os de Post, Church e Turing, com vista a estudo formal
Leia maisCapítulo 8: O problema da parada. Decidibilidade e computabilidade. José Lucas Rangel Introdução.
Capítulo 8: O problema da parada. Decidibilidade e computabilidade. José Lucas Rangel 8.1 - Introdução. Como observado no capítulo anterior, podemos substituir a definição informal de procedimento pela
Leia maisI.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 maisComputabilidade. 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 maisJuliana Kaizer Vizzotto. Universidade Federal de Santa Maria. Disciplina de Teoria da Computação
Universidade Federal de Santa Maria Disciplina de Teoria da Computação Quais são as capacidades e limitações fundamentais dos computadores? Funções Computáveis Algoritmo: descrição finitade uma computação
Leia maisDepartamento de Matemática e Engenharias. Emulação da Máquina URM no Mathematica
Departamento de Matemática e Engenharias Emulação da Máquina URM no Mathematica José Laurindo de Góis Nóbrega Sobrinho UMa, 13 de Novembro de 2003 Motivação: Na cadeira de Paradigmas da Programaçã ção
Leia maisComputação efectiva. Que linguagens podem ser reconhecidas por algum tipo de autómato?
Computação efectiva Que linguagens podem ser reconhecidas por algum tipo de autómato? O que é ser computável? Que linguagens são computáveis? Existem linguagens que não são computáveis? Isto é, existem
Leia maisINE5317 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 maisNotas sobre os anéis Z m
Capítulo 1 Notas sobre os anéis Z m Estas notas complementam o texto principal, no que diz respeito ao estudo que aí se faz dos grupos e anéis Z m. Referem algumas propriedades mais específicas dos subanéis
Leia maisApostila 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 maisTeresa Galvão LEIC - Teoria da Computação I 3.1
3. Outras abordagens à computabilidade 3.1 Outras abordagens à computabilidade 3.2 Funções parciais recursivas 3.3 Funções recursivas primitivas 3.4 Computabilidade de Turing 3.5 Sistemas de Post e Markov
Leia maisOutras abordagens à computabilidade. Nota
Outras abordagens à computabilidade 3.1 Nota Os presentes acetatos foram baseados quase na sua totalidade nos acetatos realizados pela Professora Teresa Galvão da Universidade de Porto para a cadeira Teoria
Leia maisAula 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 maisFunções Recursivas. Prof.: Edson Holanda Teoria da computação - Diverio e Menezes
Funções Recursivas Prof.: Edson Holanda edsonholanda@gmail.com Teoria da computação - Diverio e Menezes Tipos de Formalismos Operacional Define-se uma máquina abstrata, baseada em estados, em instruções
Leia maisMáquinas de Turing: uma introdução
Máquinas de Turing: uma introdução Nelma Moreira Armando Matos Departamento de Ciência de Computadores Faculdade de Ciências, Universidade do Porto email: {nam,acm}@ncc.up.pt 1996 Revisão: Maio 2001 1
Leia maisax + by 347 = 0 k = text UNIDADE CURRICULAR: Matemática Finita CÓDIGO: DOCENTES: Gilda Ferreira e Ana Nunes
text UNIDADE CURRICULAR: Matemática Finita CÓDIGO: 21082 DOCENTES: Gilda Ferreira e Ana Nunes Resolução e Critérios de Correção 1. Sejam a, b Z tais que mdc(a, b) = 12. Relativamente à equação ax + by
Leia maisAula 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 maisTuring e Complexidade
(baseado em material da disciplina PCS2214) PMR2300 Escola Politécnica da Universidade de São Paulo Máquina de Turing Máquina de Turing: modelo mais poderoso de computador, proposto pelo inglês Alan M.
Leia maisLinguaguens recursivamente enumeráveis
Linguaguens 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,
Leia maisProjecto Delfos: Escola de Matemática Para Jovens 1 FICHA DE TRABALHO
Projecto Delfos: Escola de Matemática Para Jovens 1 Uma função, f, é uma aplicação de um conjunto, D, que designamos por domínio, para um conjunto, C, designado por contra-domínio, segundo uma lei, f(x),
Leia maisMá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 maisMáquina de Turing Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente
ESIN/UCPel 058814 Linguagens Formais e Autômatos TEXTO 5 Máquina de Turing Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente Prof. Luiz A M Palazzo Maio de 2007 0. Introdução A Ciência da Computação
Leia maisLinguagens 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 maisProcedimentos 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 maisMá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 maisInstituto Superior Técnico Teoria da Computação - LEIC 2013/2014 Aula prática 1
Instituto Superior Técnico Teoria da Computação - LEIC 2013/2014 Aula prática 1 Nota: Na sequência o símbolo representa o símbolo de registo vazio. 1 Máquinas de Turing 1. Considere a máquina de Turing
Leia mais0.1 Seja S o subconjunto de P(N) definido indutivamente pelas 3 regras apresentadas de seguida.
Lic. Ciências da Computação Exercícios - Folha 1 0. Definições indutivas 0.1 Seja S o subconjunto de P(N) definido indutivamente pelas 3 regras apresentadas de seguida. (1) {1} S (2) X S X \ {1} S (3)
Leia maisLógica Computacional
Lógica Computacional Aula Teórica 6: Semântica da Lógica Proposicional António Ravara Simão Melo de Sousa Marco Giunti Departamento de Informática, Faculdade de Ciências e Tecnologia, NOVA LINCS, Universidade
Leia maisRedutibilidade. 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 maisMarcos 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 maisU.C Matemática Finita. 6 de junho de Questões de escolha múltipla
Ministério da Ciência, Tecnologia e Ensino Superior U.C. 21082 Matemática Finita 6 de junho de 2018 - Resolução e Critérios de Avaliação - Questões de escolha múltipla 1. (Exame e P-fólio De quantas maneiras
Leia maisAnálise de algoritmos. Parte I
Análise de algoritmos Parte I 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.
Leia maisUNIVERSIDADE FEDERAL DO ABC. 1 Existência e unicidade de zeros; Métodos da bissecção e falsa posição
UNIVERSIDADE FEDERAL DO ABC BC1419 Cálculo Numérico - LISTA 1 - Zeros de Funções (Profs. André Camargo, Feodor Pisnitchenko, Marijana Brtka, Rodrigo Fresneda) 1 Existência e unicidade de zeros; Métodos
Leia maisTeoria 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 maisComputação e Programação Exame Época de recurso
Nome : Número : Computação e Programação 2013-2014 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de recurso 29 de Janeiro de 2014 v
Leia maisFicha de trabalho Decomposição e resolução de equações e inequações polinomiais
Ficha de trabalho Decomposição e resolução de equações e inequações polinomiais 1. Verifique, recorrendo ao algoritmo da divisão, que: 6 4 0x 54x + 3x + é divisível por x 1.. De um modo geral, que relação
Leia maisComputabilidade para Complexidade...
Computabilidade para Complexidade... Março de 2007 Armando B. Matos Índice Introdução................................................................................ 2 Linguagem FOR e funções primitivas
Leia maisMáquinas de Turing para construção: Foram encontrados dois modelos que se destacaram em nossas pesquisas.
Máquina de Turing É um dispositivo imaginário que formou a estrutura para fundamentar a ciência da computação moderna. Seu inventor, o matemático Alan Mathison Turing, mostrou que a computação das operações
Leia maisCurso 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 maisIntrodução à Teoria de Grupos Grupos cíclicos Grupos de permutações Isomorfismos
Observação Como para k > 1 se tem (a 1, a 2,..., a k ) = (a 1, a k )(a 1, a k 1 ) (a 1, a 2 ), um ciclo de comprimento par é uma permutação ímpar e um ciclo de comprimento ímpar é uma permutação par. Proposição
Leia maisAula 05 - Limite de uma Função - Parte I Data: 30/03/2015
bras.png Cálculo I Logonewton.png Aula 05 - Limite de uma Função - Parte I Data: 30/03/2015 Objetivos da Aula: Definir limite de uma função Definir limites laterias Apresentar as propriedades operatórias
Leia maisExercícios Data Modeling
Exercícios Data Modeling I Algoritmos 1. Construir um algoritmo, em pseudo-código, para calcular o mínimo múltiplo comum entre 2 inteiros X e Y 2. Construir um algoritmo, em pseudo-código, para determinar
Leia maisModelos 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 maisTeoria 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 maisS. C. Coutinho. Máquina de Turing Universal p. 1/22
Máquina de Turing Universal S. C. Coutinho Máquina de Turing Universal p. 1/22 Objetivo Descrever uma máquina de Turing U, capaz de simular qualquer outra máquina de Turing M. Para isto a máquina deve
Leia maisLinguagens 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 maisLimites da Computação Algorítmica: Problemas Indecidíveis
Capítulo 10 Limites da Computação Algorítmica: Problemas Indecidíveis Tendo estudado o que as máquinas de Turing podem fazer, estudaremos, agora, o que elas não podem fazer. Embora a tese de Turing nos
Leia maisDefinição 3.1: Seja x um número real. O módulo de x, denotado por x, é definido como: { x se x 0 x se x < 0
Capítulo 3 Módulo e Função Módular A função modular é uma função que apresenta o módulo na sua lei de formação. No entanto, antes de falarmos sobre funções modulares devemos definir o conceito de módulo,
Leia maisSobre Desenvolvimentos em Séries de Potências, Séries de Taylor e Fórmula de Taylor
Sobre Desenvolvimentos em Séries de Potências, Séries de Taylor e Fórmula de Taylor Pedro Lopes Departamento de Matemática Instituto Superior Técnico o. Semestre 004/005 Estas notas constituem um material
Leia maisExercícios de MATEMÁTICA COMPUTACIONAL. 1 0 Semestre de 2009/2010 Resolução Numérica de Equações Não-Lineares
Exercícios de MATEMÁTICA COMPUTACIONAL Mestrado Integrado em Engenharia Biomédica 1 0 Semestre de 2009/2010 Resolução Numérica de Equações Não-Lineares 1. Considere a equação sin(x) e x = 0. a) Prove que
Leia maisSCC Capítulo 4 Linguagens Recursivamente Enumeráveis e Máquinas de Turing
SCC-205 - Capítulo 4 Linguagens Recursivamente Enumeráveis e Máquinas de Turing João Luís Garcia Rosa 1 1 Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos http://www.icmc.usp.br/~joaoluis
Leia maisEstruturação de Procedimentos
Capítulo 4 Estruturação de Procedimentos 4. Exercícios de revisão. Diga o que entende por linguagem estruturada em blocos. Descreva a regra associada a esta estrutura, e diga qual a sua importância. 2.
Leia maisCapítulo 5. séries de potências
Capítulo 5 Séries numéricas e séries de potências Inicia-se o capítulo com a definição de série numérica e com oção de convergência de séries numéricas, indicando-se exemplos, em particular o exemplo da
Leia maisExercícios de ANÁLISE E SIMULAÇÃO NUMÉRICA
Exercícios de ANÁLISE E SIMULAÇÃO NUMÉRICA Licenciaturas em Engenharia do Ambiente e Química 2 o Semestre de 2005/2006 Capítulo IV Aproximação de Funções 1 Interpolação Polinomial 1. Na tabela seguinte
Leia maisMatemá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 maisTeoria da Computação. Computabilidade
Cristiano Lehrer Introdução O objetivo do estudo da solucionabilidade de problemas é investigar a existência ou não de algoritmos que solucionem determinada classe de problemas. Ou seja, investigar os
Leia maisCapítulo A máquina de Turing (TM) padrão Combinações de máquinas de Turing A Tese de Turing. ADC/TC/Cap.9/ /LEI/DEIFCTUC 375
Capítulo 9 Máquinas de Turing 9.1. A máquina de Turing (TM) padrão 9.2. Combinações de máquinas de Turing 9.3. A Tese de Turing ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 375 Linguagens regulares Autómatos finitos
Leia mais11º ano - Indução matemática
1 O conjunto dos números racionais Q é enumerável, ou seja, é possível atribuir (associar) a cada número racional um número natural Abaixo, os números racionais positivos estão representados na forma de
Leia maisInstruções de repetição
Instruções de repetição Estruturas de controlo na linguagem C 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 maisLinguagens 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 maisLinguaguens recursivamente enumeráveis e recursivas
Linguaguens recursivamente enumeráveis e recursivas Uma linguagem diz-se recursivamente enumerável (r.e) ou semi-decidível se é aceite por uma máquina de Turing. SD: classe de linguagens recursivamente
Leia maisMáquinas Universais. Máquina de Turing. Celso Olivete Júnior.
Máquinas Universais Máquina de Celso Olivete Júnior olivete@fct.unesp.br http://www2.fct.unesp.br/docentes/dmec/olivete/ Roteiro Hipótese de Church - Máquinas Universais: Máquina de Máquina de : Noção
Leia maisLÓGICOS E ALGÉBRICOS DA PROGRAMAÇÃO Licenciaturas em Engenharia Informática, Ensino de Informática e Matemática 2º Semestre 2005/2006
FUNDAMENTOS UNIVERSIDADE da MADEIRA Departamento de Matemática e Engenharias LÓGICOS E ALGÉBRICOS DA PROGRAMAÇÃO Licenciaturas em Engenharia Informática, Ensino de Informática e Matemática 2º Semestre
Leia maisConjuntos Enumeráveis e Não-Enumeráveis
Conjuntos Enumeráveis e Não-Enumeráveis João Antonio Francisconi Lubanco Thomé Bacharelado em Matemática - UFPR jolubanco@gmail.com Prof. Dr. Fernando de Ávila Silva (Orientador) Departamento de Matemática
Leia maisFundamentos de Programação
Fundamentos de Programação Soluções do primeiro teste 13 de Novembro de 2004 9:00-10:30 Nota Número: 20 Nome: Turma: Escreva o seu número em todas as folhas do teste. O espaço das respostas deve ser limitado
Leia maisResolução Exe 2.12 Monolítico Recursivo
Resolução Exe 2.12 Monolítico Recursivo Recursivo P R é R 1 onde R 1 def (se T1 então R 2 senão R 3 ) R 2 def F; R 3 R 3 def (se T2 então R 4 senão R 7 ) R 4 def G; R 5 R 5 def (se T1 então R 7 senão R
Leia maisUNIVERSIDADE 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 Proposta por Alan Turing em 1936; É universalmente conhecida e aceita como formalização de algoritmo; Teoria
Leia maisLinguagens Formais e Autômatos (LFA)
Linguagens Formais e Autômatos (LFA) Aula de 18/11/2013 Linguagens Recursivamente Enumeráveis, Complexidade (Custo) de Tempo/Espaço, Transdutores para exibir complexidade de Tempo/Espaço 1 Linguagens Recursivamente
Leia maisMá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 mais2007/2008 Resolução do 1 o exame
Introdução à Álgebra 2007/2008 Resolução do 1 o exame 1. Diga, em cada caso, se a afirmação é verdadeira ou falsa, justificando a sua resposta com uma demonstração, ou um contra-exemplo. Nesta questão,
Leia maisSucessões. , ou, apenas, u n. ,u n n. Casos Particulares: 1. Progressão aritmética de razão r e primeiro termo a: o seu termo geral é u n a n1r.
Sucessões Definição: Uma sucessão de números reais é uma aplicação u do conjunto dos números inteiros positivos,, no conjunto dos números reais,. A expressão u n que associa a cada n a sua imagem designa-se
Leia mais1. O que podemos dizer sobre a imagem da função. f : Z Z, f(x) = x 2 + x + 1?
1 Congruências e aritmética modular Vamos considerar alguns exemplos de problemas sobre números inteiros como motivação para o que se segue. 1. O que podemos dizer sobre a imagem da função f : Z Z, f(x)
Leia maisTeoria dos Conjuntos. (Aula 6) Ruy de Queiroz. O Teorema da. (Aula 6) Ruy J. G. B. de Queiroz. Centro de Informática, UFPE
Ruy J. G. B. de Centro de Informática, UFPE 2007.1 Conteúdo 1 Seqüências Definição Uma seqüência é uma função cujo domíno é um número natural ou N. Uma seqüência cujo domínio é algum número natural n N
Leia maisCDI-II. Resumo das Aulas Teóricas (Semana 1) 2 Norma. Distância. Bola. R n = R R R
Instituto Superior Técnico Departamento de Matemática Secção de Álgebra e Análise Prof. Gabriel Pires CDI-II Resumo das Aulas Teóricas (Semana 1) 1 Notação R n = R R R x R n : x = (x 1, x 2,, x n ) ; x
Leia mais