Modelos de Computação Folha de trabalho n. 10
|
|
- Lorenzo Anjos Madureira
- 6 Há anos
- Visualizações:
Transcrição
1 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 nas caixas da disciplina (P5-P8 e P1- P4,P9,P10) até ao dia às 8h30m e apresentada na aula prática respectiva.na resolução em papel por favor indicar no cimo da 1a folha o nome e a turma prática. Para saber quais dos exercícios que deverás apresentar, consultar nam/aulas/0405/mc/dist.pdf. Variantes de Máquinas de Turing 10.1 Seja M = (S, Σ, Γ, δ, s 0,, F ) uma máquina de Turing. Mostra que se todas as transições em δ movem a cabeça para a direita então L(M) é regular. Sugestão: constrói um autómato finito que reconhece L(M) Mostra que as seguintes variantes de Máquinas de Turing são equivalentes ao modelo básico. Para cada uma: define formalmente a uma máquina M dessa variante indicando a função de transição, a relação mudança de configuração e linguagem aceite por M constrói MT s que simulem o funcionamento destas variantes (a) Máquinas de Turing com movimento de paragem. A cabeça da MT pode, para além dos movimentos normais de esquerda ( ) e direita ( ), ficar no mesmo sítio (h). A função de transição passa a ser da forma δ : S Γ S Γ {, h, }. (b) Máquinas de Turing com k-fitas. Cada fita tem a sua cabeça para leitura e escrita. Inicialmente a palavra de entrada está na fita 1 e as restantes fitas estão em branco. A função de transição passa a ser da forma δ : S Γ k S Γ k {, } k (a) Descreve formalmente uma MT com k fitas e define as noções de configuração, relação de mudança de configuração e linguagem aceite por uma MT de k fitas. (b) Descreve uma máquina de Turing com 2 fitas que reconheça a seguinte linguagem {w 1 #w 2 #...#w n w i {a, b} e w i = w j i, j} (c) Descreve uma MT com 2 fitas que aceite a seguinte linguagem: L = {wcw r w {0, 1} } e compare-a com uma para o modelo básico. Sugestão: Copiar os dados para a segunda fita e comparar os símbolos, em cada fita movimentando as cabeças em direções opostas. (d) Descreve uma máquina de Turing com 2 fitas que reconheça a linguagem de todas as palavras de {0, 1} com igual número de 0 s e de 1 s.sugestão: A primeira fita contém os dados e é percorrida da esquerda para a direita; e a segunda guarda o excesso de 0 s (ou de 1 s) em cada momento Uma máquina de Turing é não determinística se dado um estado e um símbolo lido, existirem várias hipóteses para o movimento (passo) seguinte, isto é, δ : S Γ P(S Γ {, }) Uma máquina de Turing não determinística aceita a sequência de entrada se existe uma sequência de escolhas de movimentos que conduza a um estado de final. Descreve máquinas de Turing não determinísticas que aceitem cada uma das seguintes linguagens: (a) As palavras de {0, 1} que contêm uma subpalavra de tamanho 100 que se repete, i.e, são da forma wxzxy, x = 100. Dep. Ciência de Computadores/FCUP
2 (b) L = {ww w {0, 1} } (c) as palavras da forma w 1 #w 2 #...#w n para qualquer n, tal que cada w i {a, b} e para algum j, w j é o inteiro j em binário Seja um k-apd um autómato de pilha determinístico com k pilhas. Um 0-APD é um autómato finito determinístico e um 1-APD é um autómato de pilha determinístico. Sabemos que 1-APDs são mais poderosos de 0-APDs. (a) Define formalmente um k-apd que aceite por estados finais. Nota: para facilitar podemos supor que os dados são sempre da forma x$ em que $ não pertence ao alfabeto, apenas permite indicar que os dados terminaram. (b) Mostra que 2-APDs são mais poderosos que 1-APDs. (c) Mostra que 2-APDs são equivalentes a máquinas de Turing. (d) Mostra que 3-APDs não são mais poderosos que 2-APDs Formaliza de um modo preciso a simulação da execução de autómato de pilha por uma máquina de Turing. Conclui que as linguagens independentes de contexto são recursivas. Decidibilidade e indecidibilidade: linguagens recursivas, recursivamente enumeráveis (r.e) e não-r.e 10.7 Considerando a codificação dada no curso, de máquinas de Turing em palavras de {0, 1} obtém a palavra correspondente à seguinte MT: onde a função de transição δ é dada por M = ({s 0, s 1, s 2 }, {0, 1}, {0, 1, }, δ, s 0,, {s 2 }) 0 1 s 0 (s 1, 0, ) (s 1, 1, ) (s 2,, ) s 1 (s 0, 0, ) (s 0, 1, ) 10.8 Para cada uma das operações sobre linguagens: reunião ( ), concatenação, intersecção ( ) e fecho de Kleene ( ), averigua, justificando, se as seguintes linguagens são fechadas para essa operação: (a) recursivas (b) recursivamente enumeráveis (r.e.) 10.9 Mostra que os seguintes problemas sobre máquinas de Turing são indecidíveis (por redução a um problema indecidível já conhecido): (a) Determinar, dada uma máquina M e palavra x, se M aceita x. (b) Determinar, dado uma máquina M, um estado s e uma palavra x, se M entra no estado s quando inicializada com a palavra x na fita Mostra que os seguintes problemas sobre máquinas de Turing são decidíveis: (a) Determinar, dado uma máquina M se para algum x, M com dados x executa pelo menos 45 passos. (b) Determinar, dado uma máquina M, se M alguma vez escreve um símbolo não branco, quando inicializada com a fita vazia. (c) Determinar, dado uma máquina M e uma palavra x, se M alguma vez move a cabeça para a esquerda quando inicializada com x na fita. Dep. Ciência de Computadores/FCUP
3 10.11 Verdade ou Falsidade? Para cada uma das seguintes questões justifica a sua resposta encontrando uma prova ou um contra-exemplo. (a) se L é recursiva e R é regular, então L R é recursiva (b) se L é r.e. e R é regular, então L R é r.e. (c) se L é r.e. e R é regular, então R \ L é r.e. (d) se L é r.e. e L é r.e. então L é recursiva (e) se A m B e B é regular, então A é regular (f) se A é r.e. e A m B, então B é r.e. (g) se A é recursiva então A é recursiva (a) Averigua, justificando, se as linguagens recursivas são fechadas para a concatenação. (b) Mostra que o seguinte problema é indecidível: Dada uma máquina de Turing determinar se L(M) é infinita. Será r.e ou não r.e? (a) Averigua, justificando, se as linguagens recursivamente enumeráveis são fechadas para a concatenação. (b) Mostra que o seguinte problema é indecidível: dada uma máquina de Turing determinar se L(M) tem pelo menos duas palavras. Será r.e ou não r.e? Soluções de problemas escolhidos 10.6 Seja um autómato de pilha P = (S, Σ, Γ, δ, s p, Z, F ). Podemos supor que em cada transição o número de símbolos da pilha aumenta no máximo de uma unidade (Verifica!). Para simplificar consideremos uma Máquina de Turing (não-determinística) com duas fitas, com instruções de movimento R, L, H (mover a fita para a direita, esquerda e não mover, respectivamente) e supomos que a palavra a reconhecer está escrita na fita 1. Começamos por escrever o símbolo inicial da pilha, Z, na fita 2 (s i, a,, s p, a, Z, H, R), a Σ A segunda fita pode desempenhar o papel da pilha do autómato, e podemos traduzir para transições da MT, directamente, as diversas entradas da função de transições δ do autómato: δ(s 0, a, A) = (s 1, B) (s 0, a, A, s 1, a, B, R, H) δ(s 0, ɛ, A) = (s 1, B) (s 0, a, A, s 1, a, B, H, H), a Σ δ(s 0, a, A) = (s 1, ɛ) (s 0, a, A, s 1, a,, R, L) δ(s 0, ɛ, A) = (s 1, ɛ) (s 0, a, A, s 1, a,, H, L), a Σ δ(s 0, a, A) = (s 1, BA) (s 0, a, A, s 0, a, A, H, R) (s 0, a,, s 1, a, B, R, H) δ(s 0, ɛ, A) = (s 1, BA) (s 0, a, A, s 0, a, A, H, R), a Σ (s 0, a,, s 1, a, B, H, H), a Σ Em que cada s 0 é um novo estado para cada transição δ. Se o autómato for não determinístico, as k 1 alternativas δ(s 0, x, A), devem ainda ser identificadas no estado intermédio de actualização da pilha, que deverá ser da forma (s 0, j) com j = 1... k. Se o autómato depois de ler os dados, entrar num estado final, a máquina também deve entrar no estado final s f : (s,, X, s f,, X, H, H), s F, X Γ { } Caso o autómato não entre num estado final, quando terminar os dados ele pára, e máquina também pára, mas não entra num estado final. Dep. Ciência de Computadores/FCUP
4 Como este modelo de MT é equivalente ao das MT com uma só fita e dois movimentos (visto nas aulas) concluímos que seja qual for a linguagem independente de contexto, esta por definição tem um autómato de pilha que a aceita (por estado final), e foi possível encontrar uma MT que também reconhece esta linguagem por estado final. Portanto todas as linguagens independentes de contexto são recursivas. Utilizando uma MT (não determinística) com uma só pilha e duas instruções não é muito difícil fazer o mesmo tipo de tradução que foi feita acima... mas esta tradução é bastante mais trabalhosa (a) Sejam L e L duas linguagens recursivas. Então, por definição existem máquinas de Turing M e M que para qualquer input na fita, param num estado final (definidor de sucesso) caso a palavra pertença a L e L, respectivamente, e param num outro estado, caso contrário. Para cada palavra w com tamanho n existem n + 1 maneiras de se ter w = w w. Basta escrever uma máquina de Turing que execute o seguinte algoritmo: toma-se a primeira divisão de w = w w ; executam-se M com w e M com w ; se ambas as máquinas M e M terminarem aceitando as respectivas palavras, a máquina M deve terminar aceitando a palavra w; se alguma das máquinas rejeitar o seu input, toma-se a divisão de w = w w seguinte e repete-se o processo; se não restarem mais divisões de w = w w a máquina M deve rejeitar w. Esta m.t. M dado um input w pára (sempre), encontrado-se no estado de aceitação somente se w L L. Conclui-se assim que as concatenação de duas linguagens recursivas é uma linguagem recursiva. (b) Consideremos a seguinte redução: uma m.t. M que dado um input y termina aceitando y se uma determinada m.t. M com input x parar. A linguagem L(M ) ou é Σ ou é. Se existisse uma máquina Y que respondesse à pergunta se L(M ) é infinito, estaria a responder ao problema da paragem para a máquina M com input x, que é, como sabemos, um problema indecidível. Portanto tal máquina Y não existe, pelo que o problema é indecidível. A questão de provar que o problema não é semi-decidível, é bastante mais delicada... Consideremos uma m.t. M que dado um input y termina com sucesso se uma determinada m.t. M com input x não parar ao fim de y passos, e rejeita y caso contrário. A linguagem L(M ) é infinita caso M com input x não pare, e vazia caso contrário. Portanto se existisse uma solução semi-decidível para o problema de responder se a linguagem aceite por uma máquina de Turing é infinita, então tal resposta para a máquina M corresponderia a obter uma resposta semi-decidível para o problema complementar da paragem que sabemos não ser semi-decidível (senão o problema da paragem seria decidível pois seria semi-decidível com complementar semi-decidível) (a) Sejam L e L duas linguagens recursivamente enumeráveis, quer isto dizer que existem máquinas de Turing M e M que quando executadas tendo por input uma palavra, sempre que essa palavra pertence à linguagem (respectivamente L e L ) terminam num estado final (definidor de sucesso) não se garantindo que parem caso contrário. Queremos mostrar que é possível encontrar uma máquina de Turing M que quando executada com input w pára num estado final (definidor de sucesso) caso w = w w com w L e w L, nada necessitando garantir no caso contrário. Para cada palavra w com tamanho n existem n + 1 maneiras de se ter w = w w. Sejam w 0w 0, w 1w 1,..., w nw n essas n+1 divisões de w. Basta então que a máquina M vá executando (por diagonalização) sucessivamente um passo de cada uma das 2(n + 1) máquinas (M, w 0), (M, w 0 ),..., (M, w n), (M, w n), até que um par de máquinas (M, w i ), (M, w i ) termine aceitando os respectivos input, altura em que a máquina M deve parar, aceitando w. Concluí-se assim que as concatenação de duas linguagens recursivamente enumeráveis é uma linguagem recursivamente enumerável. Dep. Ciência de Computadores/FCUP
5 (b) A primeira redução dada no alínea do problema 6 serve para mostrar que este problema não pode ser decidível (Porquê?). O problema é trivialmente semi-decidível. Dada uma máquina de Turing M geramos ordenadamente (por ordem crescente) todos os possíveis inputs para M. Sejam esses inputs x i, i N. Então executamos (por diagonalização) todos os pares (máquina, input). Ou seja vamos executando estágios sucessivos (começendo no estágio 0), tal que no estágio k executamos um passo de cada par (M, x i ), i {0,..., k}. Quando tivermos obtido dois x i aceites pela máquina M paramos no estado de sucesso. Problemas obrigatórios A Define linguagem recursivamente enumerável e averigua, justificando, se as linguagens recursivamente enumeráveis são fechadas para a intersecção finita. B Define linguagem recursivamente enumerável e averigua, justificando, se as linguagens recursivamente enumeráveis são fechadas para o fecho de Kleene. C D (a) Mostra que o seguinte problema é decidível: Determinar, dado uma máquina M e uma palavra x, se M alguma vez move a cabeça para a direita quando inicializada com x na fita. (b) Mostra que o seguinte problema é indecidível: Determinar, dado uma máquina M, se L(M) aceita a palavra aaaa. (a) Mostra que o seguinte problema é decidível: Determinar, dado uma máquina M e uma palavra x, se M com dados x executa mais de 100 passos (b) Mostra que o seguinte problema é indecidível: Determinar, dado uma máquina M, um estado s e uma palavra x, se M entra no estado s quando inicializada com a palavra x na fita. Dep. Ciência de Computadores/FCUP
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 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 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 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 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 maisModelos 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 maisUniversidade Federal de Alfenas
Universidade Federal de Alfenas Linguagens Formais e Autômatos Aula 14 Máquinas de Turing humberto@bcc.unifal-mg.edu.br Última aula Autômatos com Pilha Controle de estado a b a a b X Y Y X O que já vimos...
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 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 maisAutómatos determísticos de k-pilhas
Autómatos determísticos de k-pilhas dados de entrada a a a3 an controlo finito (S, Σ, Γ, δ, Z, s 0, F ) δ (S Σ Γ k ) (S, (Γ ) k ) Departamento de Ciência de Computadores da FCUP MC Aula 3 Dados um estado
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 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 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 mais1. Uma linguagem de uma máquina de Turing
Linguagem de uma Máquina de Turing 1. Uma linguagem de uma máquina de Turing, é. 2. Linguagens aceitas por uma MT são chamdas recursivamente enumeráveis. O recursivo nesta caso significa decidível, ou
Leia maisUniversidade 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 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 maisTeoria da Computação. Capítulo 1. Máquina de Turing. Prof. Wanderley de Souza Alencar, MSc.
Teoria da Computação Capítulo 1 Máquina de Turing Prof. Wanderley de Souza Alencar, MSc. Pauta 1. Introdução 2. Definição de Máquina de Turing 3. Variações de Máquina de Turing 4. A Tese de Church-Turing
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 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 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 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 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 maisFaculdade de Computação
UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Disciplina : Teoria da Computação Professora : Sandra de Amo Solução da Lista de Exercícios n o 8 - Indecidibilidade Exercicio 1-5.5 do Livro
Leia maisMelhores momentos AULA PASSADA. Complexidade Computacional p. 136
Melhores momentos AULA PASSADA Complexidade Computacional p. 136 Configurações controle q 7 cabeça 1 0 1 1 0 1 1 1 fita de leitura e escrita Configuração 1 0 1q 7 1 0 1 1 1 Complexidade Computacional p.
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 maisComputabilidade 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 maisUNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Máquina de Turing Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Teoria da Computação Ciência da Computação
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 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 maisIntrodução Maquinas de Turing universais O problema da parada. Indecidibilidade. Rodrigo Gabriel Ferreira Soares DEINFO - UFRPE.
DEINFO - UFRPE Julho, 2014 Motivação Introdução O que pode ser computado? E mais intrigantemente, o que não pode ser computado? Motivação Introdução O que pode ser computado? E mais intrigantemente, o
Leia maisAula 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 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 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 maisLinguagens 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 maisLLC's: Lema do Bombeamento e Propriedades de Fechamento
Linguagens Formais e Autômatos LLC's: Lema do Bombeamento e Propriedades de Fechamento Andrei Rimsa Álvares Material extraído do livro e slides do Prof. Newton Vieira (hfp://dcc.ufmg.br/~nvieira) Sumário
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 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 maisMT como calculadoras de funções parciais
MT como calculadoras de funções parciais Uma máquina de Turing pode ser vista como uma calculadora de funções parciais dos inteiros nos inteiros: f : N k p N Suponhamos que os inteiros estão codificados
Leia maisComputabilidade e Complexidade (ENG10014)
Sistemas de Informação Computabilidade e Complexidade (ENG10014) Profa. Juliana Pinheiro Campos E-mail: jupcampos@gmail.com Modelo de computação poderoso concebido pelo matemático britânico Alan Turing
Leia maisUniversidade Federal de Alfenas
Universidade Federal de Alfenas Linguagens Formais e Autômatos Aula 15 Máquinas de Turing (parte 2) humberto@bcc.unifal-mg.edu.br Última Aula Uma Máquina de Turing (MT) possui: uma fita infinita para representar
Leia maisTeoria da Computação 19 de Abril de 2017 Teste 1A Duração: 1h30
19 de Abril de 2017 Teste 1A Duração: 1h30 Construa uma máquina de Turing que calcule a função que a cada natural n N 0 faz corresponder n 2. Deverá usar notação unária para os naturais. Apresente apenas
Leia maisModelos 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 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 maisMáquinas de Turing (MT)
Linguagens Formais e Autômatos Máquinas de Turing (MT) Andrei Rimsa Álvares Material extraído do livro e slides do Prof. Newton Vieira (hcp://dcc.ufmg.br/~nvieira) Sumário Introdução Máquinas de Turing
Leia maisACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO. Aula 18. Cap O Problema da Parada
ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO Aula 18 Cap 4.2 - O Problema da Parada Profa. Ariane Machado Lima ariane.machado@usp.br 1 Nas últimas aulas Tese de Church-Turing Problemas computacionais descritos
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 Diferencia-se das máquinas de Turing e Post principalmente pelo fato de possuir a memória de entrada separada
Leia maisAutómatos de Pilha. Cada transição é caracterizada pelo estado, símbolo que está ser lido e o elemento no topo da pilha. dados de entrada.
Autómatos de Pilha Um autómato de pilha (não determinístico) (AP) é um autómato finito não determinístico com transições ɛ, acrescido de uma memória infinita a pilha mas em que o modo de acesso à informação
Leia maisUniversidade Federal de Alfenas
Universidade Federal de Alfenas Linguagens Formais e Autômatos Aula 16 Decidibilidade humberto@bcc.unifal-mg.edu.br Últimas Aulas Uma Máquina de Turing (MT) possui: uma fita infinita para representar a
Leia maisTeoria da Computação. Máquinas de Turing: variações
Teoria da Computação Máquinas de Turing: variações 1 Máquina de Turing Modelo mais completo, feito com circuitos digitais http://aturingmachine.com 2 Máquina de Turing Modelo mais simplificado, feito com
Leia maisLinguagens 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 maisVariedades 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 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 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 maisComputabilidade: uma introdução
Computabilidade: uma introdução Nelma Moreira Departamento de Ciência de Computadores Faculdade de Ciências, Universidade do Porto email: nam@ncc.up.pt Revisão:1996 Revisão: Maio 2001 Revisão alargada:2003
Leia maisApostila 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 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 maisTé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 maisBCC242. 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 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 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 maisAutómatos de pilha e Gramáticas independentes de contexto
Autómatos de pilha e Gramáticas independentes de contexto Proposição 15.1. A classe de linguagens aceites por autómatos de pilha está contida a classe das linguagens independentes de contexto. Dem. Seja
Leia maisa 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 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 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 maisLFA 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 maisPrimeira Lista de Exercícios 2005/1... Exercício 1 Desenhe Diagrama de Estados para Máquinas que Decidem as Linguagens:
UFLA Universidade Federal de Lavras Departamento de Ciência da Computação COM167 Teoria da Computação Prof. Rudini Sampaio Monitor: Rodrigo Pereira dos Santos Primeira Lista de Exercícios 2005/1 Exercício
Leia maisLinguagens 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 maisAutômatos de Pilha (AP)
Linguagens Formais e Autômatos Autômatos de Pilha (AP) Andrei Rimsa Álvares Material extraído do livro e slides do Prof. Newton Vieira (h@p://dcc.ufmg.br/~nvieira) Sumário Introdução Autômatos de pilha
Leia maisPCS3616. Programação de Sistemas (Sistemas de Programação) Máquinas de Turing
PCS3616 Programação de Sistemas (Sistemas de Programação) Máquinas de Turing Escola Politécnica da Universidade de São Paulo Objetivos Familiarização com o funcionamento global de software de sistema computacional
Leia maisUniversidade Federal de Alfenas
Universidade Federal de Alfenas Linguagens Formais e Autômatos Aula 13 Autômato com Pilha humberto@bcc.unifal-mg.edu.br Última aula Linguagens Livres do Contexto P(S*) Recursivamente enumeráveis Recursivas
Leia mais14.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 maisUniversidade 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 maisTerceira 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 Terceira Lista de Exercícios 2004/2
Leia maisTeoria 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 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 maisFundamentos 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 maisUNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Máquina de Turing Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Teoria da Computação Ciência da Computação
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 maisMelhores momentos AULA PASSADA. Complexidade Computacional p. 205
Melhores momentos AULA PASSADA Complexidade Computacional p. 205 MT multifita por MT fita única Duas máquinas são equivalentes se elas reconhecem a mesma linguagem. Teorema. Dada uma máquina de Turing
Leia maisAutómatos de pilha e GIC
Autómatos de pilha e GIC Proposição 17.1. A classe de linguagens aceites por autómatos de pilha está contida na classe das linguagens independentes de contexto. Dem. Seja L uma linguagem independente de
Leia maisDecidibilidade. 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 maisLinguagens Formais e Autômatos. Autômatos Finitos Determinísticos (AFD)
Linguagens Formais e Autômatos Autômatos Finitos Determinísticos (AFD) Cristiano Lehrer, M.Sc. Linguagens Regulares A teoria da computação começa com uma pergunta: O que é um computador? É, talvez, uma
Leia maisFundamentos 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 maisSCC 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 maisVariaçõ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 maisTeoria da Computação 12 de Abril de 2018 Teste 1A Duração: 1h30
12 de Abril de 2018 Teste 1A Duração: 1h30 que reconheça a linguagem constituída pelas palavras da forma x $ y com x, y {0, 1} tais que x = 3 y, onde os valores são tomados em representação binária. Por
Leia maisINE5317 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 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 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 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 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 maisSCC-5832 Teoria da Computação
Teoria da Computação SCC-5832 Teoria da Computação 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 - São Carlos
Leia maisNoções de grafos (dirigidos)
Noções de grafos (dirigidos) Grafo G = (V, E) é um conjunto de vértices (ou nós) V e um conjunto de arcos E V V. 1 2 5 3 4 G = ({1, 2, 3, 4, 5}, {(1, 2), (2, 3), (2, 4), (3, 2), (3, 4), (4, 4)}) Um arco
Leia maisVariantes de Máquinas de Turing
Variantes de Máquinas de Turing 1 Máquinas de Turing Input-Output TM s Input/output (ou IO ou transdutoras) diferem de TM s reconhecedoras por terem um estado de parada neutro q halt, ao invés de estados
Leia maisPCC104 - Projeto e Análise de Algoritmos
PCC104 - Projeto e Análise de Algoritmos Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 5 de dezembro de 2017 Marco Antonio
Leia mais2. DISCIPLINA REQUISITO (RECOMENDAÇÃO) 3. INDICAÇÃO DE CONJUNTO (BCC) Obrigatória TEORIA: 60 LABORATÓRIO: 30
Universidade Federal do ABC Rua Santa Adélia, 166 - Bairro Bangu - Santo André - SP - Brasil CEP 09.210-170 - Telefone/Fax: +55 11 4996-3166 1. CÓDIGO E NOME DA DISCIPLINA MC3106 - LINGUAGENS FORMAIS E
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 maisTeoria 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 maisLR's: Lema do Bombeamento e Propriedades de Fechamento
Linguagens Formais e Autômatos LR's: Lema do Bombeamento e Propriedades de Fechamento Andrei Rimsa Álvares Material extraído do livro e slides do Prof. Newton Vieira (hfp://dcc.ufmg.br/~nvieira) Introdução
Leia mais