A Teoria Matemática que serviu como Base para Turing. Os Teoremas de Incompletude de Godel, de 1931, representam o fim da idade romântica da Matemática. Antes de Godel, fazia parte de um amplo projeto de trabalho liderado par David Hilbert, conhecido como Programa de Hilbert, acreditar que todo problema matemático fosse solúvel. Nas próprias palavras de Hilbert, num congresso em Munster, em 1925: "Se existe um problema, ache a solução você pode encontrá-la apenas pensando, pois não há ignorabimus em matemática". Sobre Kurt Godel Godel nasceu em 1906, em Brno, Republica Checa. Estudou matemática em Viena e fez parte do Circulo de Viena, um grupo de matemáticos e filósofos iniciadores do positivismo lógico.
Consistência e Incompletude. Consistência: Uma teoria axiomática é dita consistente quando nela não é derivada uma contradição, ou seja, não são derivados uma proposição e a sua negação. Por exemplo, a teoria das álgebras de Boole pode ser considerada consistente, pois possui um modelo finito. Quando as regras utilizadas correspondem a lógica clássica, se a teoria for inconsistente, a partir de uma contradição pode ser derivado qualquer enunciado, trivializando o sistema. Completude: Uma teoria axiomática é dita completa se para cada proposição P da teoria (fórmula sem variáveis livres), ou bem pode ser deduzida P ou bem pode ser deduzida a negação de P. Como exemplos de teorias matemáticas completas podemos citar a teoria dos corpos algebricamente fechados de característica fixa e a teoria das álgebras de Boole sem átomos. Proposta de Hilbert Axiomatizar todo o corpo de conhecimento matemático (inclusive com objetivo de provar que todo problema matemático fosse solúvel). Provar, por meios estritamente finitários, que a axiomática pretendida fosse consistente.
Godel entra em cena Em 1931 Kurt Godel timidamente anunciou: "Pode-se, de fato, exibir sentenças verdadeiras mas que são indemonstráveis no sistema formal da matemática". O único dos presentes que imediatamente compreendeu a revolução que se iniciava foi John von Neumann. Os matemáticos acabavam de ser expulsos do paraíso... Jon Von Neumann John von Neumann, nascido Margittai Neumann János Lajos (Budapeste, 28 de dezembro de 1903 Washington, D.C., 8 de fevereiro de 1957) foi um matemático húngaro de etnia judaica, naturalizado estadunidense. Contribuições Matemáticas: Análise Funcional Teoria Ergódica Estatística Teoria dos Números Formalização Computação da
Teoremas da Incompletude 1o Teorema de Incompletude: Em todo sistema formal consistente S, com um mínimo de Aritmética, é possível formalizar uma sentença U tal que U possa ser interpretada intuitivamente como a afirmação de que ela própria é indemonstrável em S. 2o Teorema da Incompletude: A prova da consistência para sistemas formais (envolvendo um pouco de Aritmética, nas condições que Hilbert queria) não pode ser formalizada dentro do próprio sistema. Descobertas paralelas Paralelamente, na Física, estava em pleno andamento o desenvolvimento da teoria quântica e quatro anos antes (1927) Heisenberg já divulgara seu "principio da incerteza", colocando um limite físico na experimentação microscópica direta. Foi mais um golpe nas hipóteses determinísticas da ciência. Problema da parada Problema da Parada. Trata-se em outras palavras decidir se um programa é um algoritmo, ou seja, um programa que acaba. Se o número de dados é finito, o problema consiste em verificar para todos os dados. Caso contrário, é impossível
provar que ele para, para qualquer dado do conjunto de dados possíveis. O problema da parada é um belo exemplo do que um computador não pode realizar, pois de certo modo ele deve decidir sobre o seu próprio funcionamento. É claro que a mente humana pode realizar tal tarefa sem se autodestruir. O problema da parada consiste inicialmente em colocar em uma fila infinita M1, M2, M3,... Todos os computadores que já foram ou que serão inventados. Estamos supondo que todos estes computadores são máquinas de Turing (isto é usando o que se conhece como a tese de Church). Quando alimentado com dados, cada um destes computadores pode parar depois de processá-lo ou então entrar em um loop infinito, não parando nunca. Gostaríamos de inventar um novo computador que respondesse a seguinte pergunta: Dada uma máquina Mi e um número n, a máquina Mi pára quando alimentada com o número n? Mais precisamente, existe um computador P que, analisando a máquina Mi e o dado n consegue responder: P ( Mi, n ) = 11 (dois uns seguidos) se a máquina Mi parar quando alimentada inicialmente com o dado n P ( Mi, n ) = 1 (um único 1) se a máquina Mi não parar quando alimentada inicialmente com o dado n. Vamos mostrar que tal computador P não pode existir. A demonstração deste fato será dada na forma intuitiva explorando-se a auto-referência. Suponhamos, por absurdo, que o computador P existisse. Todo número n pode ser escrito como uma seqüência consecutiva de n 1 s. É fácil construir uma máquina M que dobra o número de 1 s: o primeiro destes n 1 s será usado para localizarmos a máquina pelo seu número na lista de
todas as máquinas que fizemos acima e o segundo para servir de dado de entrada para essa mesma máquina. Vamos acoplar três máquinas: M, P e uma terceira máquina que pára quando alimentado por um único 1 e nunca pára quando alimentada por dois números 1 s consecutivos. Esta nova máquina com os três acoplamentos tem o seguinte aspecto: Vamos chamar esta nova máquina, formada pelo acoplamento das três máquinas acima de Mk. Esta é uma nova máquina com uma propriedade muito estranha: ela pára se e somente se a máquina Mn não pára quando alimentada com o dado n (isto é, com n 1 s consecutivos). Mas, como n é um número natural qualquer, podemos fazer o vampiro se alimentar do próprio sangue, tomando-se n = k. O que acontece então? Se Mk pára então ela mesma não para e se ela não pára, então ela pára. Uma tremenda contradição. Assim, a máquina P não pode existir o problema da parada é insolúvel. Conseqüências Uma conseqüência da indecidibilidade do problema da parada é que não pode existir um algoritmo genérico que decida se um dado enunciado sobre os números naturais é verdadeiro ou falso. A razão para isso é que a proposição que afirma que certo algoritmo vai parar dado certa entrada pode ser convertido em um enunciado equivalente sobre os números naturais. Se nós tivéssemos um algoritmo que pudesse resolver todo enunciado sobre os números naturais, ele certamente poderia resolver tal enunciado, mas isso determinaria se o problema original para o que é impossível, já que o problema da parada é indecidível.
1. Walter Carnielli Os Teoremas de Gödel e o problema da Parada de Turing CLE e IFCH UNICAMP. Disponível em http://www.cle.unicamp.br/prof/carnielli/ acesso em novembro de 2011. 2. Kurt Gödel Wikipédia, a enciclopédia livre. Disponível em pt.wikipedia.org/wiki/kurt_gödel acesso em novembro de 2011. 3. John von Neumann Wikipédia, a enciclopédia livre. Disponível em pt.wikipedia.org/wiki/john_von_neumann acesso em novembro de 2011. 4.Máquina de Turing. Linguagens Sensíveis ao Contexto e Enumeráveis Recursivamente ESIN/UCPel 058814 Linguagens Formais e Autômatos Prof. Luiz A M Palazzo, Maio de 2007