stringtranslate.com

Teorema de Post

En la teoría de la computabilidad, el teorema de Post , llamado así en honor a Emil Post , describe la conexión entre la jerarquía aritmética y los grados de Turing .

Fondo

El enunciado del teorema de Post utiliza varios conceptos relacionados con la definibilidad y la teoría de la recursión . En esta sección se ofrece una breve descripción de estos conceptos, que se tratan en profundidad en sus respectivos artículos.

La jerarquía aritmética clasifica ciertos conjuntos de números naturales que son definibles en el lenguaje de la aritmética de Peano. Se dice que una fórmula es si es un enunciado existencial en forma normal prenex (todos los cuantificadores al principio) con alternancias entre cuantificadores existenciales y universales aplicados a una fórmula con cuantificadores acotados solamente. Formalmente, una fórmula en el lenguaje de la aritmética de Peano es una fórmula si tiene la forma

donde contiene solo cuantificadores acotados y Q es si m es par y si m es impar.

Se dice que un conjunto de números naturales es si es definible mediante una fórmula, es decir, si existe una fórmula tal que cada número es si y solo si se cumple. Se sabe que si un conjunto es entonces es para cualquier , pero para cada m hay un conjunto que no es . Por lo tanto, el número de alternancias de cuantificadores necesarias para definir un conjunto da una medida de la complejidad del conjunto.

El teorema de Post utiliza la jerarquía aritmética relativizada así como la jerarquía no relativizada que acabamos de definir. Se dice que un conjunto de números naturales es relativo a un conjunto , escrito , si es definible mediante una fórmula en un lenguaje extendido que incluye un predicado para la pertenencia a .

Mientras que la jerarquía aritmética mide la definibilidad de conjuntos de números naturales, los grados de Turing miden el nivel de incomputabilidad de conjuntos de números naturales. Se dice que un conjunto es reducible por Turing a un conjunto , escrito , si hay una máquina de Turing oráculo que, dado un oráculo para , calcula la función característica de . El salto de Turing de un conjunto es una forma del problema de detención relativo a . Dado un conjunto , el salto de Turing es el conjunto de índices de las máquinas de Turing oráculo que se detienen en la entrada cuando se ejecutan con el oráculo . Se sabe que cada conjunto es reducible por Turing a su salto de Turing, pero el salto de Turing de un conjunto nunca es reducible por Turing al conjunto original.

El teorema de Post utiliza saltos de Turing iterados finitamente. Para cualquier conjunto de números naturales, la notación indica el salto de Turing iterado de . Por lo tanto , es simplemente , y es el salto de Turing de .

Teorema de Post y corolarios

El teorema de Post establece una estrecha conexión entre la jerarquía aritmética y los grados de Turing de la forma , es decir, saltos de Turing finitamente iterados del conjunto vacío. (El conjunto vacío podría reemplazarse por cualquier otro conjunto computable sin cambiar la verdad del teorema).

El teorema de Post establece:

  1. Un conjunto es si y solo si es enumerable recursivamente por una máquina de Turing de oráculo con un oráculo para , es decir, si y solo si es .
  2. El conjunto es -completo para cada . Esto significa que cada conjunto es reducible muchos-uno a .

El teorema de Post tiene muchos corolarios que exponen relaciones adicionales entre la jerarquía aritmética y los grados de Turing. Entre ellos se incluyen:

  1. Fijar un conjunto . Un conjunto es si y sólo si es . Esta es la relativización de la primera parte del teorema de Post al oráculo .
  2. Un conjunto es si y solo si . En términos más generales, es si y solo si .
  3. Un conjunto se define como aritmético si lo es para algún . El teorema de Post muestra que, de manera equivalente, un conjunto es aritmético si y solo si es reducible por Turing a para algún m .

Prueba del teorema de Post

Formalización de las máquinas de Turing en aritmética de primer orden

El funcionamiento de una máquina de Turing en la entrada se puede formalizar de manera lógica en aritmética de primer orden . Por ejemplo, podemos usar los símbolos , , y para la configuración de la cinta, el estado de la máquina y la ubicación a lo largo de la cinta después de los pasos, respectivamente. El sistema de transición de determina la relación entre y ; sus valores iniciales (para ) son la entrada, el estado inicial y cero, respectivamente. La máquina se detiene si y solo si hay un número tal que es el estado de detención.

La relación exacta depende de la implementación específica del concepto de máquina de Turing (por ejemplo, su alfabeto, modo de movimiento permitido a lo largo de la cinta, etc.)

En caso de que se detenga en el tiempo , la relación entre y debe satisfacerse sólo para k acotado desde arriba por .

Por lo tanto, existe una fórmula en aritmética de primer orden sin cuantificadores ilimitados , tal que se detiene en la entrada en el tiempo como máximo si y solo si se satisface.

Ejemplo de implementación

Por ejemplo, para una máquina de Turing sin prefijo, con alfabeto binario y sin símbolo en blanco, podemos utilizar las siguientes notaciones:

Para una máquina de Turing sin prefijo podemos utilizar, para la entrada n, la configuración de cinta inicial donde cat representa la concatenación; por lo tanto, es una cadena de longitud de seguida de y luego de .

El funcionamiento de la máquina de Turing en los primeros pasos puede escribirse así como la conjunción de las condiciones iniciales y las fórmulas siguientes, cuantificadas para todo :

T se detiene en la entrada en el tiempo como máximo si y solo si se satisface, donde:

Esta es una fórmula aritmética de primer orden sin cuantificadores ilimitados, es decir, está en .

Conjuntos enumerables recursivamente

Sea un conjunto que puede enumerarse recursivamente mediante una máquina de Turing . Entonces, existe una máquina de Turing que para cada en , se detiene cuando se le da como entrada.

Esto se puede formalizar mediante la fórmula aritmética de primer orden presentada anteriormente. Los miembros de son los números que satisfacen la siguiente fórmula:

Esta fórmula está en . Por lo tanto, está en . Por lo tanto, todo conjunto enumerable recursivamente está en .

La inversa también es cierta: para cada fórmula en con k cuantificadores existenciales, podemos enumerar las –tuplas de números naturales y ejecutar una máquina de Turing que las recorra todas hasta que encuentre que se satisface la fórmula. Esta máquina de Turing se detiene precisamente en el conjunto de números naturales que satisfacen , y así enumera su conjunto correspondiente.

Máquinas Oracle

De manera similar, el funcionamiento de una máquina oráculo con un oráculo O que se detiene después de como máximo pasos de entrada se puede describir mediante una fórmula de primer orden , excepto que la fórmula ahora incluye:

Si el oráculo es para un problema de decisión, siempre es "Sí" o "No", que podemos formalizar como 0 o 1. Supongamos que el problema de decisión en sí mismo puede formalizarse mediante una fórmula aritmética de primer orden . Entonces se detiene después de como máximo 10 pasos si y solo si se cumple la siguiente fórmula:

donde es una fórmula de primer orden sin cuantificadores ilimitados.

Salto de Turing

Si O es un oráculo para el problema de detención de una máquina , entonces es lo mismo que "existe tal que comenzando con la entrada m está en el estado de detención después de los pasos". Por lo tanto: donde es una fórmula de primer orden que formaliza . Si es una máquina de Turing (sin oráculo), es en (es decir, no tiene cuantificadores ilimitados).

Puesto que hay un número finito de números m que satisfacen , podemos elegir el mismo número de pasos para todos ellos: hay un número , tal que se detiene después de pasos precisamente en aquellas entradas para las que se detiene.

Pasando a la forma normal prenex , obtenemos que la máquina oráculo se detiene en la entrada si y solo si se cumple la siguiente fórmula:

(informalmente, hay un "número máximo de pasos", de modo que cada oráculo que no se detiene dentro de los primeros pasos no se detiene en absoluto; sin embargo, para cada , cada oráculo que se detiene después de los pasos sí se detiene).

Tenga en cuenta que podemos reemplazar tanto y por un solo número (su máximo) sin cambiar el valor de verdad de . Por lo tanto, podemos escribir:

Para el oráculo del problema de detención sobre las máquinas de Turing, está en y está en . Por lo tanto, todo conjunto que es recursivamente enumerable por una máquina de oráculo con un oráculo para , está en .

La inversa también es cierta: supongamos que es una fórmula en con cuantificadores existenciales seguidos de cuantificadores universales. De manera equivalente, tiene > cuantificadores existenciales seguidos de una negación de una fórmula en ; la última fórmula puede ser enumerada por una máquina de Turing y, por lo tanto, puede ser verificada inmediatamente por un oráculo para .

Podemos enumerar las –tuplas de números naturales y ejecutar una máquina oráculo con un oráculo para que las recorra todas hasta encontrar una satisfacción para la fórmula. Esta máquina oráculo se detiene precisamente en el conjunto de números naturales que satisfacen , y así enumera su conjunto correspondiente.

Saltos de Turing más altos

En términos más generales, supongamos que cada conjunto que es recursivamente enumerable por una máquina oráculo con un oráculo para está en . Entonces, para una máquina oráculo con un oráculo para , está en .

Dado que es lo mismo que para el salto de Turing anterior, se puede construir (como acabamos de hacer con arriba) de modo que en . Después de pasar a la forma formal prenex, el nuevo está en .

Por inducción, cada conjunto que es recursivamente enumerable por una máquina oráculo con un oráculo para , está en .

La otra dirección también se puede demostrar por inducción: supongamos que cada fórmula en puede ser enumerada por una máquina oráculo con un oráculo para .

Ahora supongamos que es una fórmula en con cuantificadores existenciales seguidos de cuantificadores universales, etc. Equivalentemente, tiene > cuantificadores existenciales seguidos de una negación de una fórmula en ; la última fórmula puede ser enumerada por una máquina de oráculo con un oráculo para y, por lo tanto, puede ser verificada inmediatamente por un oráculo para .

Podemos enumerar las –tuplas de números naturales y ejecutar una máquina oráculo con un oráculo para que las recorra todas hasta encontrar una satisfacción para la fórmula. Esta máquina oráculo se detiene precisamente en el conjunto de números naturales que satisfacen , y así enumera su conjunto correspondiente.

Referencias

Rogers, H. La teoría de funciones recursivas y computabilidad efectiva , MIT Press. ISBN  0-262-68052-1 ; ISBN 0-07-053522-1 

Soare, R. Conjuntos y grados enumerables de forma recursiva. Perspectivas en lógica matemática. Springer-Verlag, Berlín, 1987. ISBN 3-540-15299-7