Entendo que o modelo de Turing tenha se tornado o "padrão" ao descrever a computação. Estou interessado em saber por que esse é o caso - ou seja, por que o modelo da MT se tornou mais amplamente utilizado do que outros modelos teoricamente equivalentes (ao meu conhecimento), por exemplo, a μ-Recursion de Kleene ou o Lambda Calculus (eu entendo que o primeiro não apareceu até mais tarde e o último não foi originalmente projetado especificamente como um modelo de computação, mas mostra que existem alternativas desde o início).
Tudo o que consigo pensar é que o modelo da TM representa mais de perto os computadores que realmente temos do que suas alternativas. Essa é a única razão?
Respostas:
Isso parece ser verdade no contexto de (algumas áreas da) ciência da computação, mas não geralmente.
Um dos motivos tem a ver com a tese da Igreja. A principal razão é que alguns especialistas como Godel não pensaram que os argumentos de que modelos anteriores / outros modelos de computação capturam exatamente o conceito intuitivo de computação eram convincentes. Existem vários argumentos, Church tinha alguns, mas eles não convenceram Godel. Por outro lado, a análise de Turing foi convincente para Godel, por isso foi aceita como o modelo para uma computação eficaz. As equivalências entre diferentes modelos são comprovadas mais tarde (penso por Kleene).
Alguns recursos para leitura adicional:
Robert I. Soare tem vários artigos sobre a história desses desenvolvimentos, pessoalmente gosto do artigo do Handbook of Computability Theory. você pode encontrar mais verificando as referências nesse documento.
Outro bom recurso é o artigo de computabilidade de Neil Immerman no SEP, veja também o artigo de Tese de Church-Turing de B. Jack Copeland.
As obras coletadas de Godel contêm muitas informações sobre seus pontos de vista. Especialmente introduções aos seus artigos são extremamente bem escritas.
A " Metamatemática " de Kleene é um livro muito bom.
Por fim, se você ainda não estiver satisfeito, verifique os arquivos da lista de correio do FOM e, se não conseguir encontrar uma resposta no arquivo, envie um email para a lista de endereços.
fonte
Eu gostaria de enfraquecer a afirmação de que as TMs são o modelo primário de computação, ou pelo menos apontam para outra dimensão da questão. Claramente, as TMs são dominantes nas partes mais complexas e orientadas por algoritmos da ciência da computação, mas na teoria e prática da linguagem de programação, elas não são particularmente dominantes. Existem várias razões para isso, mas talvez o mais importante seja que as TMs ou programas executados nas TMs (diferentemente de lambda-calculi ou process-calculi) não sejam construídos de maneira algébrica. Isso dificulta o desenvolvimento de teorias de tipos, que têm sido a base da teoria da linguagem de programação.
fonte
Uma das coisas boas das máquinas de Turing é que elas trabalham com strings em vez de números naturais ou termos lambda, porque a entrada e a saída de muitos problemas podem ser naturalmente formuladas como strings. Não sei se isso conta como uma razão "histórica" ou não.
fonte
Além do fato de as máquinas de Turing serem um modelo convincente de computação com caneta e papel (a “noção intuitiva de computação”), acho que elas possuem uma série de recursos que são frequentemente úteis, principalmente ao provar teoremas sobre elas:
fonte
Foi o primeiro a ter impacto e, portanto, foi estabelecido, especialmente na teoria da complexidade. Essa é uma razão fraca, mas as pessoas trabalham dessa maneira. Primeiro, trabalhamos com problemas abertos antigos, em vez de declarar novos.
fonte