¿Por qué se acepta la tesis de Church-Turing? Tengo problemas para concebir un programa para una máquina de Turing que sume dos números arbitrariamente grandes.

Debo admitir que me resulta difícil imaginar por qué la adición se consideraría difícil de implementar, pero tal vez soy parcial.

Se puede diseñar fácilmente una máquina de Turing que agregue números naturales representados en notación unaria. Para calcular [matemática] m + n [/ matemática], la entrada debe ser [matemática] m [/ matemática] escrita en unario (esta es una cadena de [matemática] m + 1 [/ matemática] [matemática] 1 [/ math] s) seguido de un espacio en blanco seguido de [math] n [/ math] escrito en unario (esta es una cadena de [math] n + 1 [/ math] [math] 1 [/ math] s). El sumador reemplaza el espacio en blanco por [matemática] 1 [/ matemática] y elimina la [matemática] 1 [/ matemática] más a la derecha.

Por supuesto, también se pueden agregar números naturales representados en la base 10; simplemente use el algoritmo de suma estándar que se enseña en la escuela. La implementación de la máquina Turing lleva a cabo la adición de dígitos individuales directamente usando la función de transición y usa el estado para almacenar el transporte.

¿Por qué se acepta generalmente la tesis de Church-Turing? Una muy buena razón para aceptarlo es que se puede demostrar que todos los lenguajes de programación conocidos son tan poderosos como el simple modelo de máquina de Turing. Otra es que aún nadie ha sido capaz de encontrar un algoritmo que satisfaga nuestra intuición habitual de lo que constituye un algoritmo pero que no puede implementarse.

Lo arbitrariamente grande lo hará más complejo. Pero tenemos un camino por recorrer antes de llegar allí.

¿Entiende cómo hacer una máquina de 3 cintas para agregar enteros binarios de precisión de 2 dígitos fijos (en las cintas 1 y 2) y almacenar el resultado en la tercera cinta?

¿Lo tengo? Excelente.

¿Tienes un problema? Google es tu amigo.

Ahora hazlo con 1 cinta. Haga que los números como # 01001001 # 01110010 # pongan el resultado en la misma cinta.

¿Todo listo? Bueno.

¿Qué tal un número arbitrario de dígitos en 3 cintas?

¡Viola! Tú Molas.

Etc.

Tienes que caminar antes de poder volar (a menos que seas Tony Stark).

Realmente, todos los que saben están bien con Church-Turing. Ese no es el problema.

¿Por qué se acepta la tesis de Church-Turing? Tengo problemas para concebir un programa para una máquina de Turing que sume dos números arbitrariamente grandes.

La tesis establece que lo que se puede calcular también se puede calcular. Si le doy dos números arbitrariamente grandes y una cantidad infinita de papel, debería poder sumarlos de manera efectiva con suficiente papel y lápiz. Una máquina de Turing puede ejecutar exactamente el mismo algoritmo que usa para calcular con lápiz y papel.

Es una regla inductiva, por lo que, al igual que otras hipótesis, las personas adquieren confianza en ella al fracasar los intentos de refutarla.

La contra-evidencia sería un problema computacional claramente definido que los humanos pueden resolver y las computadoras no. Tendría que demostrar que la computadora no puede hacerlo (y mostrar evidencia sólida de que el humano realmente puede hacerlo; por ejemplo, no solo pequeños casos de problemas). Una persona que “tiene problemas” para escribir el programa no es suficiente.

More Interesting

¿Cómo se puede diseñar un autómata de estado finito para el siguiente problema?

Cómo formular matemáticamente para seleccionar los mejores valores de N de una matriz

¿Qué importancia tienen las matemáticas en la programación de computadoras?

¿Cuál es la única matemática que uno debe aprender para codificar?

Trabajo como desarrollador de software para una startup. Si sé que nuestro producto es falso, ¿debería cambiarme a otro trabajo?

¿Cómo se puede encontrar el número de iteraciones requeridas para la integración usando la regla de Simpson para una precisión dada?

Cómo convertir 25 cm a mm sin usar una regla

¿Podemos aplicar el aprendizaje automático en cualquier idioma o hay algo específico que sirva para ese propósito? ¿Cuáles son los modelos matemáticos efectivos utilizados principalmente en ML?

Si eligiera un número al azar en la recta numérica, ¿tendría mayores posibilidades de ser racional o irracional?

¿Cuántas soluciones totales hay en este problema combinatorio?

¿Qué es la reducción del tiempo polinomial?

¿Cuál es el significado de lo permanente en informática?

Empleos y carreras: ¿Puedo conseguir un trabajo en un lugar como Google, Facebook, etc. con un título en matemáticas?

¿Cuál es el algoritmo para encontrar todas las soluciones de hacer 100 de 1-2-3-4-5-6-7-8-9 en orden?

Una máquina de Turing tiene una cantidad infinita de memoria, que no es posible en la vida real. ¿Por qué sigue siendo un buen modelo?