¿Puede una computadora simularse a sí misma como parte de un mundo simulado?

17

Digamos que construyes una computadora que calculará el estado de todos los átomos en el Universo en cierto momento futuro. Debido a que el Universo es, por definición, todo lo que existe (y todo lo que interactúa con el resto), también incluye la computadora que está construyendo. ¿Puedes calcular el estado de todos los átomos en el Universo usando tu computadora, incluidos los átomos de la computadora misma?

Si tal computadora no es posible por alguna otra razón teórica o práctica, entonces, ¿qué es?

mojuba
fuente
2
tal vez no responda su pregunta, pero algo en el espíritu de su pregunta, es la reflexión de Scott sobre cosmología y complejidad. scottaaronson.com/democritus/lec20.html
gabgoh
8
Hay un par de razones por las cuales una computadora así no podría existir dentro del universo físico: el principio de incertidumbre de Heisenberg limita la precisión de la medición, por lo que su computadora necesariamente tendría que usar una aproximación. El segundo problema es que la simulación requiere una sobrecarga. Pero como estás simulando el universo, no tienes espacio para gastos generales. De hecho, ¡necesitas gastos generales negativos! La tercera, y quizás la queja más simple, es que su computadora está sujeta a la diagonalización: simplemente busco lo que predice que haré dentro de 10 segundos y haré algo diferente.
Mark Reitblatt
1
Parece que debería, como mínimo, violar la relatividad.
Mark Reitblatt
55
@mojuba No, el libre albedrío no es una buena objeción. Eso es razonamiento circular. Asume que el universo es predecible por su computadora, por lo tanto, no puedo violar la predicción de su computadora.
Mark Reitblatt
2
@mojuba tal vez esta sea una buena oportunidad para entrar en el chat de CSTheory, en lugar de reproducir la etiqueta de comentario.
Mark Reitblatt

Respuestas:

23

No, una computadora no puede simularse perfectamente además de otra cosa sin violar la teoría de la información básica : existen cadenas que no son compresibles.

Aquí está la prueba más simple posible: suponga que la computadora tiene un total de estados posibles, y suponga que hay algo fuera de la computadora en el universo, por lo que el universo tiene al menos N + 1 estados distintos posibles. Con cero sobrecarga, cada estado de la computadora puede corresponder a un estado del universo, pero dado que el universo tiene más estados que la computadora, algunos estados del universo se asignarán al mismo estado de la computadora, en cuyo caso la simulación será No ser capaz de distinguir entre ellos.nortenorte+1

Ian
fuente
1
Ian, ¿no podemos pensar en el universo mismo como una máquina que hace el trabajo?
Kaveh
@Kaveh: Incluso si es así, ¿por qué debería ser interesante este tipo de simulación?
M. Alaggan el
2
@Kaveh siempre podemos pensar en una computadora o sistema como "simulando" a sí mismo simplemente siendo él mismo, pero todo lo que digo es que no puede simularse a sí mismo ni a otra cosa .
Ian
@METRO. Alaggan: Bueno, ¿puedes decir lo mismo sobre una simulación que no es más rápida que esperar hasta ese punto y luego observar el resultado? (mira los comentarios debajo de la publicación de OP)
Kaveh
@Kaveh: Creo que podríamos estar tratando de evitar discutir la posibilidad de tal computadora, argumentando que sería inútil. No estoy seguro de a qué comentario me estás refiriendo.
M. Alaggan el
8

No estoy seguro de si esto responde a su pregunta, pero espero que sea significativa y conduzca a una idea.

Supongamos que hay una máquina de Turing que puede simular cada átomo en el universo, incluido él mismo, entonces necesariamente puede simularse a sí mismo.X

Ahora, reducir eso al problema de detención es trivial:

Dejar X tome una máquina de Turing como su entrada y decida si se detiene o no simulando el universo (ya que M está incluido en el universo), luego haga lo contrario (por ejemplo, X se detiene si M no lo hace, y realiza un bucle para siempre si M se detiene ) Entonces X ( X ) demuestra una contradicción.METROMETROXMETROMETROX(X)

Esencialmente, esto significa que lo mejor que puede hacer para decidir si X se detiene o no es simplemente ejecutándose (es decir, dejando que el universo funcione a su manera), por lo que simular el universo no da una ventaja.XX

Lo mismo se aplica cuando desea el estado del universo después de time. Dado que X no puede decidir si se detendrá dentro de t tiempo o no dentro de t tiempo (mismo argumento), entonces le permitirá al universo hacerlo. Intentar simular el universo haciéndolo, no puede reducir el tiempo que tomará para decidir. Y si decidir cómo se verá el universo en t tiempo lleva más de t, entonces la simulación divergerá (a medida que t va al infinito).tXttttt

Esto lleva a la conclusión de que solo un simulador útil que decida cómo se verá el universo en tiempo debe tomar exactamente t tiempo, es decir, dejando que el universo funcione. Este simulador es, de hecho, el simulador trivial.tt

M. Alaggan
fuente
Las máquinas de Turing no son parte del mundo físico, son objetos matemáticos y no necesitan ser físicamente realizables.
Kaveh
Eso es aún mejor porque su realización (computadoras) tiene más límites. Sin embargo, si solo traduce el trabajo "Máquina de Turing" en mi publicación a "computadora", creo que seguirá funcionando.
M. Alaggan
No estoy seguro, las entradas están más restringidas, es posible que no pueda dar la entrada que desea.
Kaveh
@Kaveh: ¿Puedes elaborar más?
M. Alaggan el
2
-1: Esta respuesta es simplemente incorrecta. Incluso si una computadora pudiera simularse a sí misma, no podría decir si se detendría, porque para hacerlo tendría que simularse por una cantidad infinita de tiempo.
Peter Shor
6

Supongo que podríamos tratar de ver esto como un problema de modelado : ¿cómo podemos reformular la pregunta para que se convierta en informática y no en física? Trataré de dar un ejemplo simple y concreto de cómo podríamos intentar hacer esto, para comenzar las cosas ...


Wn×n

Suponga que la configuración inicial del mundo es arbitraria. Ahora la pregunta parece ser la siguiente: ¿Podemos elegir un subconjunto estricto CWCWC

  • No cambiamos el estado inicial de WCC

  • Entonces podemos ejecutar cualquier número de pasos del autómata celular (todo el mundo , incluyendo C y cualquier interacción entreWCWCC

  • Podemos leer el estado actual del mundo simplemente inspeccionando C . (Es decir, C debe ser una "simulación" de W. Tenga en cuenta que debemos ser capaces de leer el estado de W completo , no soloWCCWWWCC

WC

CWCWC

WCCW

WWC


Ahora puede ser interesante ver si hay una respuesta no trivial a esta pregunta. Por ejemplo, qué CA admiten computadoras que tienen tamañoW

Jukka Suomela
fuente
W CC
CWCCC
@Deyaa: Y cuando construyas y programes una computadora física, ciertamente cambiarás el estado del mundo dentro de los límites de la computadora ...
Jukka Suomela
Yo diría que esta no es una simulación adecuada, ya que solo puede simular un pequeño subconjunto de los estados del universo. Incluso si se le permite hacer cambios arbitrarios en el universo "real" al configurar el estado de la computadora, no debería limitarse a simular el estado real del universo.
Ian
¿Qué es un "CA"? Tampoco estoy seguro de la naturaleza totalista del universo, pero el enredo cuántico es una propiedad interesante en este sentido. Por ejemplo, considere que la computadora lo es todo : predice el futuro tan rápido como pasa el tiempo. ¿Puede ser menos que todo para que tengamos una parte del universo fuera de la computadora? Sí, puede ser todo menos partículas enredadas. Así que ahí está, la computadora ya está funcionando y está haciendo un buen trabajo.
Trylks
3

Aquí hay una prueba simple (no formal). Digamos que es el año 2115 y tengo una computadora de 100 años que llamaré Mac, y una supercomputadora de última generación llamada Dios. Dios puede simular y predecir fácilmente Mac, hasta que haga lo siguiente:

Primero, adjunto una cámara web a Mac y la apunto hacia la pantalla de Dios. Luego, ejecuto en Mac un programa que, en un bucle infinito, almacena cada número detectado en la pantalla de Dios y genera y muestra un número que no está en la lista de números almacenados. Finalmente, le pido a Dios que me muestre el número que Mac mostrará dentro de un minuto. Cualquier número que Dios muestre, Mac producirá y mostrará uno diferente, por lo que Dios no podrá dar una respuesta correcta.

Esto es equivalente al hecho de que si una supercomputadora me predice, cualquier cosa que ella me diga que haré, podré hacer lo contrario (como en el comentario de Mark ). Además, esto se mantiene independientemente del proceso que utiliza la supercomputadora para predecir el futuro (simulación, viajar al futuro y regresar, pedir un oráculo, etc.).

Juan
fuente
En otras palabras, Dios afecta la realidad mientras calcula el futuro y, por lo tanto, no puede calcular el futuro. Por otro lado, si aislamos completamente a Dios de este Universo, no podrá leer el estado del Universo. Estoy de acuerdo, suena como una prueba.
mojuba
@mojuba En realidad, si Dios estuviera completamente aislado y pudiera leer de alguna manera el estado de nuestro universo (por ejemplo, si nuestro universo fuera una simulación en la mente de Dios), entonces podría predecir nuestro futuro. Pero si de alguna manera nos informa sobre nuestro futuro, eso dejaría de ser una predicción precisa ya que nosotros (o un programa) podríamos hacer lo contrario. Y por la misma razón, no podía predecir su propio universo, incluido él mismo.
Juan
La pregunta con el mundo simulado es si se puede considerar un universo totalmente aislado y autónomo o no. La máquina de simulación mantiene los estados de todas las partículas del mundo simulado y modela su interacción de acuerdo con algunas leyes de la física. Si Dios interfiere de alguna manera, significaría que las leyes se romperán en alguna parte (porque si no se rompen, entonces esa no es la interferencia de Dios). Al menos ese tipo de interferencia significa que el Universo simulado no está aislado y, por lo tanto, la pregunta original no se aplica a él, creo.
mojuba