Capí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
|
|
- Cecília da Costa César
- 5 Há anos
- Visualizações:
Transcrição
1 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/ /LEI/DEIFCTUC 375
2 Linguagens regulares Autómatos finitos Linguagens livres de contexto Autómatos finitos i com uma pilha Linguagens não livres de contexto??? Qual o autómato mais poderoso? Quais os limites da computação? ADC/TC/Cap.9/ /LEI/DEIFCTUC 376
3 1940 Alan Turing, procura formalizar a noção de algoritmo, identificando as operações fundamentais e primitivas. i i Depois define uma máquina abstracta capaz de executar essas operações segundo regras bem definidas. ADC/TC/Cap.9/ /LEI/DEIFCTUC 377
4 Máquina de Turing Um modelo abstracto de computação Problemas resolúveis e irresolúveis ADC/TC/Cap.9/ /LEI/DEIFCTUC 378
5 MT UNIDADE DE CONTROLO R/W FITA ADC/TC/Cap.9/ /LEI/DEIFCTUC 379
6 Definição 9.1. MT M = ( Q,,,, q 0,, F) Q é o conjunto de estados internos é o alfabeto de entrada é o conjunto finito alfabeto da fita é a função de transição é o carácter branco, símbolo especial F Q é o conjunto de estados finais ADC/TC/Cap.9/ /LEI/DEIFCTUC 380
7 Função de transição 1º - Q,pó próximo estado da UC estado actual UC carácter da fita a ser lido no momento R/W : Q Q {L, R} 2º - escrever na fita um novo símbolo em substituição do presente 3º - fazer uma movida para a direita ou para a esquerda ADC/TC/Cap.9/ /LEI/DEIFCTUC 381
8 Exemplo 1 { a, b,c } = { a, b,c } ={a, b, } : ( Q ) ( Q { L, R } ) ( q, a ) = ( q, b,, R ) 0 1 abc b b c q 0 q 1 ADC/TC/Cap.9/ /LEI/DEIFCTUC 382
9 Uma M Turing pode ser encarada como um computador muito simples: tem uma unidade de processamento com memória finita (número finito de estados) tem uma segunda unidade de armazenamento de capacidade infinita. a função de transição é o programa do computador ; é uma função parcial. ADC/TC/Cap.9/ /LEI/DEIFCTUC 383
10 Exemplo 2. Seja a MT = { a, b } = { ab a, b, } Q = {q, q } 0 1 (q, a) = (q, b, R) 0 0 = {a, b} (q, b) = (q, a, R) = {a, b, } 0 0 F = {q } 1 (q, )=(q,, R) 0 0 ADC/TC/Cap.9/ /LEI/DEIFCTUC 384
11 a a b b b a b a b b b a q 0 (q q 0, a)= (q 0, b, R) 0 b b b b b a b b a b b a q 0 (q 0, b)= (q 0, a, R) q 0 ADC/TC/Cap.9/ /LEI/DEIFCTUC 385
12 b b a a b a b b a a a a q 0 (q q 0, b) ) = (q 0, a, R) ) 0 b b a a a b b b a a a b q 0 (q 0, )=(q 0,, R) q 0 ADC/TC/Cap.9/ /LEI/DEIFCTUC 386
13 Se a função de transição for (q 0, a) = (q 0, a, R) 0 0 (q 0, b) = (q 1, b, R) (q, ) =(q,, R) 0 0 (q 1, a) = (q 0, b, L) (q 1, b) = (q 0, b, L) (q, ) = (q,, L) 1 0 ADC/TC/Cap.9/ /LEI/DEIFCTUC 387
14 (q 0, a)= (q 0, a, R) (q 0, b)= (q 1, b, R) a a b b b a a a b b b a q 0 q 0 q 0 q 0 q 1 (q 1, b)= (q 0, b, L) (q 0, b)= (q 1, b, R) a a b b b a a a b b b a q 0 q 1 q 0 q 1 ADC/TC/Cap.9/ /LEI/DEIFCTUC 388
15 Características da MT padrão Uma fita ilimitada it em ambas as direcções permitindo um número arbitrário de movidas à esquerda e à direita. É determinística na medida em que define no máximo uma movida para cada configuração. No instante inicial a fita tem algum conteúdo especificado. Parte deste pode ser considerado a entrada. Sempre que a máquina pare (halt), algum do conteúdo da fita pode ser considerado como saída. ADC/TC/Cap.9/ /LEI/DEIFCTUC 389
16 descrição instantânea da MT o estado actual da unidade de controlo conteúdo da fita a posição da cabeça de leitura/escrita x 1 q x 2 x 1 x 2 a 1 a 2 a k. a n q ADC/TC/Cap.9/ /LEI/DEIFCTUC 390
17 movidas de uma MT configuração (k) configuração (k+1) a b c d a b e d (q 1, c) = (q 2, e, R) q 1 q 2 abq cd abeq d 1 2 ADC/TC/Cap.9/ /LEI/DEIFCTUC 391
18 movida a 1 a 2...a k-1 q 1 a k a k+1...a n a 1 a 2...a k-1 bq 2 a k+1 a n (q 1, a k ) = (q 2, b, R) ADC/TC/Cap.9/ /LEI/DEIFCTUC 392
19 movida a 1 a 2...a k-1 q 1 a k a k+1...a n a 1 a 2...q 2 a k-1 ba k+1 a n (q 1, a k ) = (q 2, b, L) ADC/TC/Cap.9/ /LEI/DEIFCTUC 393
20 ... um número arbitrário de movidas... de uma certa máquina M M ADC/TC/Cap.9/ /LEI/DEIFCTUC 394
21 Computação M parou partindo de alguma configuração inicial x x 1 q i 2 se para algum q j e algum a x q x y q ay 1 i 2 1 j 2 para os quais (q,a) j seja não definida. Chama-se computação à sequência das configurações que levam a MT do estado inicial ao estado de paragem (halt) ADC/TC/Cap.9/ /LEI/DEIFCTUC 395
22 Ciclo infinito A situação em que a MT entra num ciclo c infinito, nunca parando, nem de lá podendo sair, denota-se por x 1 q x 2 Esta situação é muito importante na teoria das MT ADC/TC/Cap.9/ /LEI/DEIFCTUC 396
23 Função de transição segundo : Linz e JFLAP : ( Q ) ( Q { LR}) L, } ) (q 0, b) = (q 1, b, R) Taylor e DEM :( Q ) ( {L, R }) Q (q 0, b) = ( b, q 1 ) (q 1, b) = ( R, q 1 ) São necessárias mais instruções para a mesma funcionalidade. ADC/TC/Cap.9/ /LEI/DEIFCTUC 397
24 Diagramas de estados ou de transição de MT s Os diagramas de estados são uma forma alternativa à escrita da função de transição Consideremos a MT, com uma fita completamente em branco, que faz o seguinte: inicializada lendo uma casa em branco, escreve os caracteres ab e pára lendo o carácter a. ADC/TC/Cap.9/ /LEI/DEIFCTUC 398
25 ; a, R q 0 q 0 q 1 a q 1 q 1 ; b, L q f a b q f JFLAP ; a, R q 0 q 1 ; b, L q f ADC/TC/Cap.9/ /LEI/DEIFCTUC 399
26 DEM q 0 q 0 : a a q 1 q 1 a : R a q 2 q 2 : b a b q 3 q 3 b : L a b q f q f ADC/TC/Cap.9/ /LEI/DEIFCTUC 400
27 Que faz??? Fita inicial ; a, R q 0 JFLAP ADC/TC/Cap.9/ /LEI/DEIFCTUC 401
28 Que faz??? Fita inicial ;, R q 0 JFLAP ADC/TC/Cap.9/ /LEI/DEIFCTUC 402
29 E esta??? Fita inicial q ; ar a, 0 q 1 JFLAP ; b, R ADC/TC/Cap.9/ /LEI/DEIFCTUC 403
30 Diagrama de estados da MT n a (w)= n b (w) (aceitador) aceita as cadeias em {a, b} + com um número de a s s igual ao nº de b s em qualquer ordem inicializada no carácter mais à esquerda de w, pára lendo um simples 1 estando toda a restante fita em branco a b b a 1 q 0 q f ADC/TC/Cap.9/ /LEI/DEIFCTUC 404
31 Algoritmo possível: Eliminar pares a-b até que: ou não reste nenhum a nem nenhum b, caso em que a cadeia é aceite. ou restarem alguns caracteres não- emparelháveis, caso em que a cadeia não é aceite. ADC/TC/Cap.9/ /LEI/DEIFCTUC 405
32 n a = n b a b * : *, R a : a, R a : *,R q 1 * : *, R b : *, L * : *, L :, R q 0 q 3 a :a, L :,L b :*, R q 2 b :b, L :, L q 4 :,L * :*, R b : b, R q 5 q f ADC/TC/Cap.9/ /LEI/DEIFCTUC 406
33 n = n a b q 1 q 3 * : R a: R * : R * : R a : * b : * * : L a : L : R q 0 q 5 b : * a : * : L q * : R 2 q 4 b : L q 6 : L : 1 * : R b : R q 7 * : q f DEM Samenumb.tm, fitas 4a4b.tt, 5a4b.tt ADC/TC/Cap.9/ /LEI/DEIFCTUC 407
34 Exemplo: a MT copiadora (transdutor). Inicia-se no primeiro 1 de uma cadeia de n 1 s. Pára no primeiro 1 de uma cadeia ininterrupta de n 1 s, seguida por um branco, seguido por uma cadeia ininterrupta de n 1 s q 0 q f Copying Machine.tm in DEM, fita 8.tt ADC/TC/Cap.9/ /LEI/DEIFCTUC 408
35 MT como aceitadores de linguagens. g dada uma cadeia w do alfabeto de entrada, escrita na fita, não contendo nem brancos nem, antes de w estão brancos e depois de w brancos estão, a MT inicializa-se em q 0 com a cabeça de W/R posicionada no carácter mais à esquerda de w, dá-se uma sequência de movidas, w é aceite se a MT entrar num estado final e parar (halt), w não é aceite se a MT parar (halt) num estado não final, ou se entrar num ciclo infinito. ADC/TC/Cap.9/ /LEI/DEIFCTUC 409
36 Definição 9.3 Seja M = ( Q,,,, q 0, A linguagem aceite por M é, F ) uma MT. L(M) = { w + : q 0 w x 1 q x f 2 para algum q f F e x 1, x 2 * } Se a cadeia tivesse brancos, a MT não saberia quando ela terminaria i e teria que continuar a percorrer a fita até ao infinito. ifii ADC/TC/Cap.9/ /LEI/DEIFCTUC 410
37 Exemplo ={0 {0, 1} L= L(00*), todas as cadeias com um ou mais zeros (sem 1 s). ler o primeiro i carácter. É zero? Se sim continuar; se não, parar num estado não final. ler o segundo carácter. É zero? Se sim continuar; se não, parar num estado não final encontrou um branco sem parar num estado não final? Se sim, parar num estado final. ADC/TC/Cap.9/ /LEI/DEIFCTUC 411
38 (q 0, 0) = (q 0, 0, R) (q 0, ) = (q f,, R) 0 : 0 : R q 0 : : R q f JFLAP ADC/TC/Cap.9/ /LEI/DEIFCTUC 412
39 Seguindo Taylor e DEM teremos que criar mais estados: (q 0, 0) = (q 1, 0) (q 1, 0) = (q 1,R) (q 1, ) = (q f, ) 0 : R 0 : 0 : q 0 q 1 q f DEM ADC/TC/Cap.9/ /LEI/DEIFCTUC 413
40 Note-se que é uma função parcial Não é definida por exemplo (q 0, 1) Se aparece um 1, no estado q 0, a MT pára (halt) para sempre, indicando que w não é aceite (a menos que q 0 fosse um estado final) ADC/TC/Cap.9/ /LEI/DEIFCTUC 414
41 As MT podem reconhecer algumas linguagens que não são livres de contexto. São máquinas mais poderosas do que os autómatos estudados dd anteriormente. ADC/TC/Cap.9/ /LEI/DEIFCTUC 415
42 TM como transdutores um transdutor: transforma uma entrada numa saída Entrada Transdutor Saída Fita antes Computação Fita depois ADC/TC/Cap.9/ /LEI/DEIFCTUC 416
43 MT M implementa uma função f w = f (w), se q 0 w M q f f (w) sendo q f algum estado final. ADC/TC/Cap.9/ /LEI/DEIFCTUC 417
44 Dfiiã Definição Função computável f com o domínio D diz-se Turing computável ou simplesmente computável se existir alguma MT tal que para toda a w D : q 0 w M q f f (w), q f F Todas as funções matemáticas usuais, por mais complicadas que sejam, são Turing-computáveis. ADC/TC/Cap.9/ /LEI/DEIFCTUC 418
45 Exemplo. Adição de números inteiros (representação unária), ex. 9.9 Linz. x = 5 x = x + y = ADC/TC/Cap.9/ /LEI/DEIFCTUC 419
46 Outros exemplos de Máquinas de Turing Função Conversor de binário em unário Ficheiro do DEM Convert.tm Factorial, n! Factoria.tmtm Multiplicação, f(n,m) = nm Potência n n Multiply.tm N^n.tm Raiz quadrada d (de quadrados d perfeitos) Sqrt.tm Divisão por 2 Reversão de uma cadeia em {a,b*} div2single.tm Reverse Word.tm ADC/TC/Cap.9/ /LEI/DEIFCTUC 420
47 9.2. Combinações de máquinas de Turing para tarefas complicadas Muitas funções complicadas podem-se decompor em sequências de funções simples computáveis Tal conceito também se pode aplicar ao nível da Turing - computabilidade. Pode-se projectar uma máquina de Turing composta por combinações de máquinas de Turing elementares a fim de realizar operações mais complexas. ADC/TC/Cap.9/ /LEI/DEIFCTUC 421
48 Exemplo f (x,,y) = x + y, se x y 0, se x< y x y Somadorad x + y x, y Comparadorp x < y Apagadora 0 f (x, y) ) ADC/TC/Cap.9/ /LEI/DEIFCTUC 422
49 Combinações de máquinas de Turing no DEM Um nó pode ser uma TM. Por exemplo Convert.tm e N^n.tm, que tem três sub-máquinas de Turing. Para as ver, no menu View, seleccionar Submachines. Através de combinações, é possível computar com MT s operações matemáticas complexas. ADC/TC/Cap.9/ /LEI/DEIFCTUC 423
50 9.3. A Tese de Turing (1930 s) (conjectura) Qualquer computação que possa ser implementada por processos mecânicos (i.e., por uma máquina) pode também ser implementada por uma máquina de Turing ADC/TC/Cap.9/ /LEI/DEIFCTUC 424
51 Alguns argumentos a favor da tese de Turing: Qualquer computação que possa ser feita por qualquer computador digital i existente também pode ser feita por uma TM. Ninguém conseguiu ainda encontrar um problema, resolúvel l por um qualquer algoritmo, para o qual não possa ser escrito um programa para uma TM. Foram propostos modelos alternativos para a computação TM, mas nenhum deles é mais poderoso do que a TM. ADC/TC/Cap.9/ /LEI/DEIFCTUC 425
52 A Tese de Turing é (ainda ) uma lei básica das Ciências da Computação! ADC/TC/Cap.9/ /LEI/DEIFCTUC 426
53 Definição 9.5. Algoritmo Um algoritmo para uma função f : D R é uma Máquina de Turing M tal que, dado como entrada um qualquer d D na sua fita pára (halts) com uma resposta correcta para f (d) R na sua fita para todo o d D, q 0 d M q f f (d), q f F ADC/TC/Cap.9/ /LEI/DEIFCTUC 427
54 Bibliografia An Introduction to Formal Languages and Automata, Peter Linz, 3rd Ed., Jones and Bartelett Computer Science, Models of Computation and Formal Languages, R. Gregory Taylor, Oxford University Press, Introduction to Automata Theory, Languages and Computation, 2nd Ed., John Hopcroft, Rajeev Motwani, Jeffrey Ullman, Addison Wesley, Elements for the Theory of Computation, Harry Lewis and Christos Papadimitriou, 2nd Ed., Prentice Hall, Introduction th the Theory of Computation, Michael Sipser, PWS Publishing Co, (Alan Turing Home Page) history/mathematicians/turing.html ADC/TC/Cap.9/ /LEI/DEIFCTUC 428
formais e autómatos Linguagens g recursivas e recursivamente enumeráveis Gramáticas não-restringidas
Capítulo 11 Uma hierarquia de linguagens formais e autómatos 11.1. Linguagens g recursivas e recursivamente enumeráveis. 11.2. Gramáticas não-restringidas 11.3. Gramáticas e linguagens dependentes do contexto
Leia mais7.1. Autómatos de pilha não-determinísticos (NPDA) 7.3. Autómatos de pilha determinísticos e linguagens livres de contexto determinísticas.
Capítulo 7 Autómatos de pilha 7.1. Autómatos de pilha não-determinísticos (NPDA) 7.2. Autómatos de pilha e linguagens livres de contexto 7.3. Autómatos de pilha determinísticos e linguagens livres de contexto
Leia maisOutras Máquinas de Turing
Capítulo 10 Outras Máquinas de Turing 10.1. Pequenas variações da TM padrão 10.2. MT s com dispositivos de armazenamento mais complexos 10.3. MT s não-determinísticas 10.4. A Máquina de Turing Universal
Leia maisCapítulo Métodos para transformar gramáticas ái Duas formas Normais (Chomsky e Greibach) ADC/TC/Cap.6/ /LEI/DEIFCTUC 268
Capítulo 6 Simplificação de gramáticas livres de contexto e Formas Normais 61 6.1. Métodos para transformar gramáticas ái 62 6.2. Duas formas Normais (Chomsky e Greibach) 268 6.1. Métodos para transformar
Leia 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 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 mais13.2. Sistemas de Post Sistemas de rescrita Cálculo Lambda. ADC/TC/Cap.13/ /LEI/DEIFCTUC 497
Capítulo 13 Outros modelos de computação 13.1. 1 Funções recursivas 13.2. Sistemas de Post 13.3. Sistemas de rescrita 13.4. Cálculo Lambda 497 Máquinas de Turing (1936): os modelos de computação mais gerais
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 maisOs limites da computação algorítmica
Capítulo 12 Os limites da computação algorítmica 12.1. Problemas que não podem ser resolvidos pelas MT. 12.2. Problemas indecidíveis para LRE 12.3. Problema da correspondência de Post 12.4. Problemas indecidíveis
Leia maisTeoria da Computação Prof. Lucília Figueiredo Prova 03 - ENTREGA DIA 24/06/2015. (a) Descreva o programa da MT usando um pseudocódigo.
Teoria da Computação Prof. Lucília Figueiredo Prova 03 - ENTREGA DIA 24/06/2015 DECOM ICEB - UFOP Nome legível: Matrícula: As questões podem devem ser respondidas na própria prova, a caneta ou a lápis.
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 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 maisSCC Capítulo 3 Linguagens Sensíveis ao Contexto e Autômatos Limitados Linearmente
SCC-505 - Capítulo 3 Linguagens Sensíveis ao Contexto e João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação - Universidade de São Paulo http://www.icmc.usp.br/~joaoluis
Leia 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 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 maisSCC Introdução à Teoria da Computação
SCC-0505 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 http://www.icmc.usp.br/~joaoluis/ joaoluis@icmc.usp.br
Leia maisProf. Dr. Marcos Castilho. Departamento de Informática/UFPR. 22 de Fevereiro de 2018
22 de Fevereiro de 2018 Motivação O que é um computador? O que é um algoritmo? Para que serve um algoritmo? Quando um algoritmo é bom? A análise de um algoritmo depende do computador? Motivação Em teoria
Leia 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 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 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 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 maisRegulares (RL) 4.1. Propriedades d de fecho das RL ADC/TC/CAP.4/ /LEI/DEIFCTUC 192
Capítulo 4 Propriedades das Linguagens Regulares (RL) 4.1. Propriedades d de fecho das RL 4.2. Pertença e finitude it das RL 4.3. Identificação de linguagens não regulares 192 4.1. Propriedades de fecho
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 maisSCC Teoria da Computação e Linguagens Formais
SCC-0205 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 http://www.icmc.usp.br/~joaoluis/ joaoluis@icmc.usp.br
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 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 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 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 maisPLANO DE ENSINO. CURSO: Bacharelado em Sistemas de Informação MODALIDADE: PRESENCIAL ( X ) OBRIGATÓRIA ( ) OPTATIVA DEPARTAMENTO: DEINFO
UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Pró-Reitoria de Ensino de Graduação Coordenação do Curso de Bacharelado em Sistemas de Informação Site: http://www.bsi.ufrpe.br E-mail: coordenacao@bsi.ufrpe.br
Leia maisTeoria da Computação Aula 02 Introdução
Teoria da Computação Aula 02 Introdução Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional Alfabeto Um alfabeto é um conjunto finito de símbolos ou caracteres, representado pela letra sigma ( ). Portanto:
Leia 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 maisCAPÍTULO 7 AUTÓMATOS DE PILHA
CAPÍTULO 7 AUTÓMATOS DE PILHA 7.1 Introdução 247 7.2 O Autómato de Pilha, PDA-Push Down Automata 247 7.3 Autómatos de Pilha Não-Determinísticos 249 7.4. Autómatos de pilha e linguagens livres de contexto
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 maisGramáticas Regulares
Capítulo 3 Expressões Regulares, Linguagens Regulares es e Gramáticas Regulares 3.1. Expressões Regulares (RE) 3.2. Relação entre ER e Linguagens Regulares (LR) 3.3. Gramáticas Regulares (GR) 3.4. Síntese
Leia maisGramáticas Sensíveis ao Contexto (GSC) Linguagens Sensíveis ao Contexto (LSC) Autômatos Linearmente Limitados (ALL)
Gramáticas Sensíveis ao Contexto (GSC) Linguagens Sensíveis ao Contexto (LSC) Autômatos Linearmente Limitados (ALL) 1 Gramática Sensível ao Contexto Definição: Uma gramática G é sensível ao contexto se
Leia maisExercicios. 7.2 Quais das seguintes afirmações são verdadeiras? Justifica. (d) abcd L((a(cd) b) )
Exercicios 7.1 Escreve expressões regulares para cada uma das seguintes linguagens de Σ = {a, b}: (a) palavras com não mais do que três as (b) palavras com um número de as divisível por três (c) palavras
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 maisAlfabeto, Cadeias, Operações e Linguagens
Linguagens de Programação e Compiladores - Aula 3 1 Alfabeto, Cadeias, Operações e Linguagens 1.Conjuntos Para representar um determinado conjunto é necessário buscar uma notação para representá-lo e ter
Leia 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 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 maisLinguagem (formal) de alfabeto Σ
Linguagem (formal) de alfabeto Σ Linguagem é qualquer subconjunto de Σ, i.e. qualquer conjunto de palavras de Σ Σ = {a, b} {aa, ab, ba, bb} ou {x x {a, b} e x = 2} {a, aa, ab, ba, aaa, aab, aba,...} ou
Leia maisMáquina de Turing e máquina de Turing universal
Máquina de Turing e máquina de Turing universal Rodrigo Santos de Souza 1 Universidade Católica de Pelotas - UCPel Mestrado em Ciência da Computação Disciplina de Teoria da Computação Prof. Antônio Carlos
Leia maisRevisões de Conjuntos
Revisões de Conjuntos {, {a}, {b}, {a, b}} a A a pertence a A, a é elemento de A a {a, b, c} a / A a não pertence a A d / {a, b, c} A B A contido em B, A subconjunto de B x A x B {a, b} {b, c, a} A B A
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 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 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 maisGBC015: INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO Teoria de Algoritmos: Computabilidade e Máquina de Turing
GBC015: INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO Teoria de Algoritmos: Computabilidade e Máquina de Turing Ilmério Reis da Silva ilmerio@ufu.br www.facom.ufu.br/~ilmerio/icc UFU/FACOM/BCC Funções Def. Função
Leia maisModelos de Computação
Modelos de Computação 2.ano LCC e LERSI URL: http://www.ncc.up.pt/~nam/aulas/0405/mc Escolaridade: 3.5T e 1P Frequência:Semanalmente serão propostos trabalhos aos alunos, que serão entregues nas caixas
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 maisCAPÍTULO 9 MÁQUINAS DE TURING
CAPÍTULO 9 MÁQUINAS DE TURING 9.1. Introdução 301 9.2. A Máquina de Turing padrão 302 9.3. Diagrama de estados ou de transição da MT 309 9.4. MT como aceitador de linguagens 311 9.5. MT como transdutores
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 maisECO026 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 maisSIMULAÇÃO DE MÁQUINA DE REGISTRADORES COM MÁQUINA DE TURING MULTIFITA
SIMULAÇÃO DE MÁQUINA DE REGISTRADORES COM MÁQUINA DE TURING MULTIFITA Neste trabalho você deverá construir e testar, com a ferramenta JFLAP, uma MT multifita que simula o funcionamento de um computador
Leia 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 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 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 maisTeoria da Computação (BBC244)
Teoria da Computação (BBC244) Professor: Anderson Almeida Ferreira anderson.ferreira@gmail.com http://www.decom.ufop.br/anderson Sala COM 10 DECOM-UFOP Ementa Gramáticas. Linguagens. Operações com Linguagens.
Leia maisProjeto de máquina de Turing com múltiplas fitas reconhecedora de número primo
Projeto de máquina de Turing com múltiplas fitas reconhecedora de número primo CCO 410 Aspectos Formais da Computação Prof.º Wanderley Lopes de Souza Universidade Federal de São Carlos Diego Luiz Cavalca
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 maisLinguagens Formais e Autômatos. Tiago Alves de Oliveira
Linguagens Formais e Autômatos Tiago Alves de Oliveira Ementa Linguagens Regulares; Máquinas de Turing; O Problema da Parada da Máquina de Turing; Autômatos Finitos; Linguagens Livres de Contexto; Autômatos
Leia maisUNIVERSIDADE ESTADUAL DO SUDOESTE DA BAHIA - UESB DEPARTAMENTO DE CIÊNCIAS EXATAS - DCE PLANO DE CURSO DISCIPLINA
UNIVERSIDADE ESTADUAL DO SUDOESTE DA BAHIA - UESB DEPARTAMENTO DE CIÊNCIAS EXATAS - DCE PLANO DE CURSO DISCIPLINA CÓDIGO DENOMINAÇÃO CRÉDITOS C. HORÁRIA DCE241 Teoria da Computação 04 75 horas TEM COMO
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 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 maisLinguagens Formais e Autômatos (BBC242) Professor: Anderson Almeida Ferreira DECOM-UFOP
Linguagens Formais e Autômatos (BBC242) Professor: Anderson Almeida Ferreira DECOM-UFOP Ementa Gramáticas. Linguagens Regulares, Livres-de-Contexto e Sensíveis-ao- Contexto. Tipos de Reconhecedores. Operações
Leia maisSCC Capítulo 4 Linguagens Recursivamente Enumeráveis e Máquinas de Turing
Gramáticas Irrestritas A Máquina de Turing Universal SCC-5832 - 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
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 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 maisTeoria da Computação Aula 01 Revisão de Conjuntos
Teoria da Computação Aula 01 Revisão de Conjuntos Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional Conjuntos Conjunto e uma estrutura que agrupa objetos e constitui uma base para construir estruturas
Leia maisTurma A - Segundas e Quartas das 8h30min - 10h10min Turma B - Segundas e Quartas das 10h30min - 12h10min
UNIVERSIDADE DEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA DEPARTAMENTO DE INFORMÁTICA TEÓRICA 2 Semestre 2008 04/08/2008 a 12/12/2008 DISCIPLINA: TEORIA DA COMPUTAÇÃO N CÓDIGO: INF05501. Horário:
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 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 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 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 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 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 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á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 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 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 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 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 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 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 maisCT-200 Fundamentos de Linguagens Formais e Automata - Aula 01 - In...
1 de 14 14/3/2010 09:28 CT-200 Fundamentos de Linguagens Formais e Automata Aula 01 - Introdução Primeira aula (updated just now by YourName) Orientações Gerais: Horários e Avaliação Horários: 3 tempos
Leia maisTeoria da Computação. Máquinas Universais Máquina com Pilhas
Máquinas Universais Máquina com Pilhas Cristiano Lehrer Introdução A Máquina com Pilhas diferencia-se das Máquinas de Turing e de Post principalmente pelo fato de possuir uma memória de entrada separada
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 mais1 INTRODUÇÃO E CONCEITOS BÁSICOS
1 INTRODUÇÃO E CONCEITOS BÁSICOS Inicia com uma breve história do surgimento e do desenvolvimento dos conceitos, resultados e formalismos nos quais a Teoria da Computação é baseada. Formalização dos conceitos
Leia 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 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 maisComputação. Sob uma perspectiva teórica. Elloá B. Guedes. IQuanta. 22 de setembro de 2008
Computação Sob uma perspectiva teórica Elloá B. Guedes IQuanta 22 de setembro de 2008 Elloá B. Guedes (IQuanta) Computação 22 de setembro de 2008 1 / 30 Outline 1 Motivação 2 Contextualização Histórica
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 maisPCS3616. Programação de Sistemas (Sistemas de Programação) Visão Geral
PCS3616 Programação de Sistemas (Sistemas de Programação) Visão Geral Escola Politécnica da Universidade de São Paulo Objetivos Familiarização com o funcionamento global de software de sistema computacional
Leia maisSCC Capítulo 2 Linguagens Livres de Contexto e Autômatos de Pilha (versão 2)
SCC-505 - Capítulo 2 e (versão 2) João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação - Universidade de São Paulo http://www.icmc.usp.br/~joaoluis
Leia 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 maisMáquina de Turing. Teoria da Computação. Teoria da Computação. Histórico da Computação:
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Pro. Yandre Maldonado - 1 Pro. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Teoria da Computação Ciência da Computação Ênase teórica:
Leia maisGramáticas ( [HMU00], Cap. 5.1)
Gramáticas ( [HMU00], Cap. 5.1) Vimos que a seguinte linguagem não é regular L = {0 n 1 n n 0} Contudo podemos fácilmente dar uma definição indutiva das suas palavras: 1. ɛ L 2. Se x L então 0x1 L L é
Leia 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 maisUFCG IQuanta DSC. Cheyenne R. G. Isidro Bernardo Lula Júnior
Um Algoritmo para Transformar Autômatos Finitos Não- Determinísticos em Autômatos Finitos Quânticos Preservando o Número de Estados e a Linguagem Reconhecida Cheyenne R. G. Isidro cha@dsc.ufcg.edu.br Bernardo
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 mais