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

Documentos relacionados
formais e autómatos Linguagens g recursivas e recursivamente enumeráveis Gramáticas não-restringidas

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

Outras Máquinas de Turing

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

Linguaguens recursivamente enumeráveis

Linguaguens recursivamente enumeráveis e recursivas

13.2. Sistemas de Post Sistemas de rescrita Cálculo Lambda. ADC/TC/Cap.13/ /LEI/DEIFCTUC 497

Computação efectiva. Que linguagens podem ser reconhecidas por algum tipo de autómato?

Os limites da computação algorítmica

Teoria da Computação Prof. Lucília Figueiredo Prova 03 - ENTREGA DIA 24/06/2015. (a) Descreva o programa da MT usando um pseudocódigo.

Linguagens recursivamente enumeráveis

Máquinas Universais. Departamento de Ciência de Computadores da FCUP MC Aula 23 1

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

MT como calculadoras de funções parciais

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

SCC Introdução à Teoria da Computação

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

Máquinas de Turing: uma introdução

SCC-5832 Teoria da Computação

Autómatos determísticos de k-pilhas

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

Regulares (RL) 4.1. Propriedades d de fecho das RL ADC/TC/CAP.4/ /LEI/DEIFCTUC 192

Máquinas Universais. Máquina de Turing. Celso Olivete Júnior.

SCC Teoria da Computação e Linguagens Formais

Teoria da Computação. Unidade 3 Máquinas Universais. Referência Teoria da Computação (Divério, 2000)

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

Noções de grafos (dirigidos)

Autó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.

PLANO DE ENSINO. CURSO: Bacharelado em Sistemas de Informação MODALIDADE: PRESENCIAL ( X ) OBRIGATÓRIA ( ) OPTATIVA DEPARTAMENTO: DEINFO

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

PCS3616. Programação de Sistemas (Sistemas de Programação) Máquinas de Turing

CAPÍTULO 7 AUTÓMATOS DE PILHA

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

Gramáticas Regulares

Gramáticas Sensíveis ao Contexto (GSC) Linguagens Sensíveis ao Contexto (LSC) Autômatos Linearmente Limitados (ALL)

Exercicios. 7.2 Quais das seguintes afirmações são verdadeiras? Justifica. (d) abcd L((a(cd) b) )

Máquina de Turing. Controle finito

Alfabeto, Cadeias, Operações e Linguagens

Teoria da Computação. Computabilidade e complexidade computacional

UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA

Linguagem (formal) de alfabeto Σ

Máquina de Turing e máquina de Turing universal

Revisões de Conjuntos

Teoria da Computação. Capítulo 1. Máquina de Turing. Prof. Wanderley de Souza Alencar, MSc.

Aula 9: Máquinas de Turing

Máquina de Turing Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente

GBC015: INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO Teoria de Algoritmos: Computabilidade e Máquina de Turing

Modelos de Computação

Noção de Computabilidade

CAPÍTULO 9 MÁQUINAS DE TURING

Autómatos de pilha e Gramáticas independentes de contexto

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

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

Máquina de Turing. Controle finito

Variedades Adicionais das Máquinas de Turing

Turing e Complexidade

Teoria da Computação (BBC244)

Projeto de máquina de Turing com múltiplas fitas reconhecedora de número primo

Draft-v0.1. Máquinas de Turing Máquinas de Turing

Linguagens Formais e Autômatos. Tiago Alves de Oliveira

UNIVERSIDADE ESTADUAL DO SUDOESTE DA BAHIA - UESB DEPARTAMENTO DE CIÊNCIAS EXATAS - DCE PLANO DE CURSO DISCIPLINA

2. DISCIPLINA REQUISITO (RECOMENDAÇÃO) 3. INDICAÇÃO DE CONJUNTO (BCC) Obrigatória TEORIA: 60 LABORATÓRIO: 30

Universidade Federal de Alfenas

Linguagens Formais e Autômatos (BBC242) Professor: Anderson Almeida Ferreira DECOM-UFOP

SCC Capítulo 4 Linguagens Recursivamente Enumeráveis e Máquinas de Turing

Autómatos de pilha e GIC

Máquinas de Turing para construção: Foram encontrados dois modelos que se destacaram em nossas pesquisas.

Teoria da Computação Aula 01 Revisão de Conjuntos

Turma A - Segundas e Quartas das 8h30min - 10h10min Turma B - Segundas e Quartas das 10h30min - 12h10min

SCC Capítulo 4 Linguagens Recursivamente Enumeráveis e Máquinas de Turing

Capítulo 2: Procedimentos e algoritmos

Universidade Federal de Alfenas

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

Universidade Federal de Alfenas

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

a n Sistemas de Estados Finitos AF Determinísticos

Máquinas de Turing 3

Linguagens Formais e Autômatos P. Blauth Menezes

Máquinas de Turing - Computabilidade

Linguagens Formais e Autômatos. Autômatos Finitos Determinísticos (AFD)

Juliana Kaizer Vizzotto. Universidade Federal de Santa Maria. Disciplina de Teoria da Computação

Universidade Federal de Alfenas

Resolução Exe 2.12 Monolítico Recursivo

CT-200 Fundamentos de Linguagens Formais e Automata - Aula 01 - In...

Teoria da Computação. Máquinas Universais Máquina com Pilhas

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

1 INTRODUÇÃO E CONCEITOS BÁSICOS

SCC 205 Teoria da Computação e Linguagens Formais

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

Computação. Sob uma perspectiva teórica. Elloá B. Guedes. IQuanta. 22 de setembro de 2008

Máquinas de Turing (MT)

PCS3616. Programação de Sistemas (Sistemas de Programação) Visão Geral

SCC Capítulo 2 Linguagens Livres de Contexto e Autômatos de Pilha (versão 2)

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

Máquina de Turing. Teoria da Computação. Teoria da Computação. Histórico da Computação:

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

Variantes de Máquinas de Turing

UFCG IQuanta DSC. Cheyenne R. G. Isidro Bernardo Lula Júnior

Modelos Universais de Computação

Transcrição:

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 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/2009-10/LEI/DEIFCTUC 376

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/2009-10/LEI/DEIFCTUC 377

Máquina de Turing Um modelo abstracto de computação Problemas resolúveis e irresolúveis ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 378

MT UNIDADE DE CONTROLO R/W FITA ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 379

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/2009-10/LEI/DEIFCTUC 380

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/2009-10/LEI/DEIFCTUC 381

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/2009-10/LEI/DEIFCTUC 382

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/2009-10/LEI/DEIFCTUC 383

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/2009-10/LEI/DEIFCTUC 384

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/2009-10/LEI/DEIFCTUC 385

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/2009-10/LEI/DEIFCTUC 386

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/2009-10/LEI/DEIFCTUC 387

(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/2009-10/LEI/DEIFCTUC 388

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/2009-10/LEI/DEIFCTUC 389

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/2009-10/LEI/DEIFCTUC 390

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/2009-10/LEI/DEIFCTUC 391

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/2009-10/LEI/DEIFCTUC 392

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/2009-10/LEI/DEIFCTUC 393

... um número arbitrário de movidas... de uma certa máquina M M ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 394

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/2009-10/LEI/DEIFCTUC 395

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/2009-10/LEI/DEIFCTUC 396

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/2009-10/LEI/DEIFCTUC 397

9.1.4. 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/2009-10/LEI/DEIFCTUC 398

; 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/2009-10/LEI/DEIFCTUC 399

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/2009-10/LEI/DEIFCTUC 400

Que faz??? Fita inicial ; a, R q 0 JFLAP ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 401

Que faz??? Fita inicial ;, R q 0 JFLAP ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 402

E esta??? Fita inicial q ; ar a, 0 q 1 JFLAP ; b, R ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 403

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/2009-10/LEI/DEIFCTUC 404

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/2009-10/LEI/DEIFCTUC 405

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/2009-10/LEI/DEIFCTUC 406

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/2009-10/LEI/DEIFCTUC 407

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. 1 1 1 1 1 1 q 0 q f Copying Machine.tm in DEM, fita 8.tt ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 408

9.1.2. 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/2009-10/LEI/DEIFCTUC 409

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/2009-10/LEI/DEIFCTUC 410

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/2009-10/LEI/DEIFCTUC 411

(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/2009-10/LEI/DEIFCTUC 412

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/2009-10/LEI/DEIFCTUC 413

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/2009-10/LEI/DEIFCTUC 414

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/2009-10/LEI/DEIFCTUC 415

9.1.3. 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/2009-10/LEI/DEIFCTUC 416

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/2009-10/LEI/DEIFCTUC 417

Dfiiã Definição 9.4. 94Funçã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/2009-10/LEI/DEIFCTUC 418

Exemplo. Adição de números inteiros (representação unária), ex. 9.9 Linz. x = 5 x = 4 1 1 1 1 1 0 1 1 1 1 x + y = 9 1 1 1 1 1 1 1 1 1 ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 419

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/2009-10/LEI/DEIFCTUC 420

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/2009-10/LEI/DEIFCTUC 421

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/2009-10/LEI/DEIFCTUC 422

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/2009-10/LEI/DEIFCTUC 423

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/2009-10/LEI/DEIFCTUC 424

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/2009-10/LEI/DEIFCTUC 425

A Tese de Turing é (ainda ) uma lei básica das Ciências da Computação! ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 426

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/2009-10/LEI/DEIFCTUC 427

Bibliografia An Introduction to Formal Languages and Automata, Peter Linz, 3rd Ed., Jones and Bartelett Computer Science, 2001. Models of Computation and Formal Languages, R. Gregory Taylor, Oxford University Press, 1998. Introduction to Automata Theory, Languages and Computation, 2nd Ed., John Hopcroft, Rajeev Motwani, Jeffrey Ullman, Addison Wesley, 2001. Elements for the Theory of Computation, Harry Lewis and Christos Papadimitriou, 2nd Ed., Prentice Hall, 1998. Introduction th the Theory of Computation, Michael Sipser, PWS Publishing Co, 1997. http://www.turing.org.uk/turing/turing.html (Alan Turing Home Page) http://www-groups.dcs.st-and.ac.uk/~history/mathematicians/turing.html history/mathematicians/turing.html ADC/TC/Cap.9/2009-10/LEI/DEIFCTUC 428