En la teoría de la computabilidad , una reducción de Turing a partir de un problema de decisión.a un problema de decisiónes una máquina oráculo que decide problemasdado un oráculo para(Rogers 1967, Soare 1987) en un número finito de pasos. Puede entenderse como un algoritmo que podría usarse para resolversi tuviera acceso a una subrutina para resolverEl concepto puede aplicarse de forma análoga a los problemas de funciones .
Si una reducción de Turing deaexiste, entonces cada algoritmo para[ a ] se puede utilizar para producir un algoritmo para, insertando el algoritmo paraen cada lugar donde se encuentra la máquina de cálculo oráculoconsulta al oráculo paraSin embargo, debido a que la máquina oráculo puede consultar al oráculo una gran cantidad de veces, el algoritmo resultante puede requerir más tiempo asintóticamente que cualquiera de los algoritmos parao la computación de la máquina oráculoUna reducción de Turing en la que la máquina oráculo se ejecuta en tiempo polinomial se conoce como reducción de Cook .
La primera definición formal de computabilidad relativa, entonces llamada reducibilidad relativa, fue dada por Alan Turing en 1939 en términos de máquinas oráculo . Posteriormente, en 1943 y 1952, Stephen Kleene definió un concepto equivalente en términos de funciones recursivas . En 1944, Emil Post utilizó el término "reducibilidad de Turing" para referirse a este concepto.
Definición
Dados dos conjuntosde números naturales, decimos¿Es Turing reducible a?y escribir
si y solo si existe una máquina oráculo que calcula la función característica de A cuando se ejecuta con el oráculo B. En este caso, también decimos que A es B -recursivo y B -computable .
Si hay una máquina oráculo que, cuando se ejecuta con el oráculo B , calcula una función parcial con dominio A , entonces se dice que A es B - recursivamente enumerable y B -computablemente enumerable .
Decimos¿Es Turing equivalente a?y escribirsi ambos yLas clases de equivalencia de conjuntos equivalentes de Turing se denominan grados de Turing . El grado de Turing de un conjuntoestá escrito.
Dado un conjunto, un conjuntose llama Turing difícil parasi a pesar de. Si ademásentoncesse denomina Turing completo para.
Relación entre la completitud de Turing y la universalidad computacional
La completitud de Turing, tal como se definió anteriormente, corresponde solo parcialmente a la completitud de Turing en el sentido de universalidad computacional. Específicamente, una máquina de Turing es una máquina de Turing universal si su problema de parada (es decir, el conjunto de entradas para las cuales finalmente se detiene) es completo muchos a uno para el conjuntode conjuntos recursivamente enumerables. Por lo tanto, una condición necesaria pero insuficiente para que una máquina sea computacionalmente universal es que el problema de parada de la máquina sea Turing-completo para. Insuficiente porque aún puede darse el caso de que el lenguaje aceptado por la máquina no sea en sí mismo recursivamente enumerable.
Ejemplo
Dejardenotemos el conjunto de valores de entrada para los cuales la máquina de Turing con índice e se detiene. Entonces los conjuntosyson equivalentes de Turing (aquídenota una función de emparejamiento efectiva ). Una reducción que muestrase puede construir utilizando el hecho de queDado un par, un nuevo índicepuede construirse utilizando el teorema S m n de tal manera que el programa codificado porignora su entrada y simplemente simula el cálculo de la máquina con índice e en la entrada n . En particular, la máquina con índiceo bien se detiene con cada entrada o bien se detiene sin ninguna entrada. Por lo tantoSe cumple para todo e y n . Debido a que la función i es computable, esto demuestraLas reducciones que se presentan aquí no son solo reducciones de Turing, sino también reducciones de muchos a uno , que se analizan más adelante.
Propiedades
- Cada conjunto es Turing equivalente a su complemento.
- Todo conjunto computable es Turing reducible a cualquier otro conjunto. Dado que cualquier conjunto computable puede calcularse sin oráculo, puede ser calculado por una máquina de oráculos que ignore el oráculo dado.
- La relaciónes transitivo: siyentonces. Además,se cumple para cada conjunto A , y por lo tanto la relaciónes un pedido anticipado (no es un pedido parcial porqueyno implica necesariamente).
- Hay pares de conjuntos de tal manera que A no es reducible por Turing a B y B no es reducible por Turing a A. Por lo tantono es un pedido total .
- Existen secuencias decrecientes infinitas de conjuntos bajoPor lo tanto, esta relación no está bien fundamentada .
- Cada conjunto es Turing reducible a su propio salto de Turing , pero el salto de Turing de un conjunto nunca es Turing reducible al conjunto original.
El uso de una reducción
Dado que cada reducción de un conjuntoa un conjuntotiene que determinar si un solo elemento está enEn tan solo un número finito de pasos, solo puede realizar un número finito de consultas de pertenencia al conjunto.. Cuando la cantidad de información sobre el conjuntoutilizado para calcular un solo bit deSe discute esto, se precisa mediante la función de uso . Formalmente, el uso de una reducción es la función que envía cada número naturalal mayor número naturalcuya pertenencia al conjuntofue consultado por la reducción mientras determinaba la pertenenciaen.
Reducciones más fuertes
Hay dos formas comunes de producir reducciones más fuertes que la reducibilidad de Turing. La primera consiste en limitar el número y la forma de realizar consultas al oráculo.
- Colocares reducible a muchos unosi existe una función computable totalde tal manera que un elementoestá ensi y solo siestá en. Dicha función puede utilizarse para generar una reducción de Turing (calculandoconsultando al oráculo y luego interpretando el resultado).
- Una reducción de tabla de verdad o una reducción débil de tabla de verdad debe presentar todas sus consultas al oráculo simultáneamente. En una reducción de tabla de verdad, la reducción también proporciona una función booleana (una tabla de verdad ) que, al recibir las respuestas a las consultas, produce la respuesta final de la reducción. En una reducción débil de tabla de verdad, la reducción utiliza las respuestas del oráculo como base para cálculos posteriores que dependen de dichas respuestas (pero sin utilizar el oráculo). De forma equivalente, una reducción débil de tabla de verdad es aquella cuyo uso está limitado por una función computable. Por esta razón, las reducciones débiles de tabla de verdad a veces se denominan reducciones de "Turing limitadas".
La segunda forma de producir una noción de reducibilidad más fuerte es limitar los recursos computacionales que puede usar el programa que implementa la reducción de Turing. Estos límites en la complejidad computacional de la reducción son importantes cuando se estudian clases subrecursivas como P. Un conjunto A es reducible en tiempo polinomial a un conjuntosi existe una reducción de Turing deaque se ejecuta en tiempo polinomial. El concepto de reducción de espacio logarítmico es similar.
Estas reducciones son más robustas en el sentido de que proporcionan una distinción más precisa entre clases de equivalencia y satisfacen requisitos más restrictivos que las reducciones de Turing. Por consiguiente, son más difíciles de encontrar. Puede que no exista forma de construir una reducción de muchos a uno de un conjunto a otro, incluso cuando exista una reducción de Turing para los mismos conjuntos.
Reducciones más débiles
Según la tesis de Church-Turing , una reducción de Turing es la forma más general de una reducción efectivamente calculable. Sin embargo, también se consideran reducciones más débiles.Se dice que es aritmético ensise puede definir mediante una fórmula de aritmética de Peano concomo parámetro. El conjuntoes hiperaritmético en si hay un ordinal recursivode tal manera quees computable a partir de, el salto de Turing iterado α de. La noción de constructibilidad relativa es una noción de reducibilidad importante en la teoría de conjuntos .
Véase también
Notas
- ↑ Es posible que B sea un problema indecidible para el cual no exista ningún algoritmo.
Referencias
- M. Davis , ed., 1965. The Undecidable — Basic Papers on Undecidable Propositions, Unsolvable Problems and Computable Functions , Raven, Nueva York. Reimpresión, Dover, 2004. ISBN 0-486-43228-9.
- SC Kleene , 1952. Introducción a la metamatemática. Ámsterdam: North-Holland.
- SC Kleene y EL Post , 1954. "El semirretículo superior de grados de irresolubilidad recursiva". Annals of Mathematics , vol. 2, n.º 59, págs. 379-407.
- Post, EL (1944). "Conjuntos recursivamente enumerables de enteros positivos y sus problemas de decisión" ( PDF ) . Boletín de la Sociedad Matemática Americana . 50 (5): 284–316 . doi : 10.1090/s0002-9904-1944-08111-1 . Recuperado el 17 de diciembre de 2015 .
- A. Turing , 1939. «Sistemas de lógica basados en ordinales». Actas de la Sociedad Matemática de Londres , serie 2, vol. 45, págs. 161-228. Reimpreso en «Lo indecidible», M. Davis (ed.), 1965.
- H. Rogers , 1967. Teoría de las funciones recursivas y la computabilidad efectiva. McGraw-Hill.
- R. Soare , 1987. Conjuntos y grados recursivamente enumerables, Springer.
- Davis, Martin (noviembre de 2006). "¿Qué es... la reducibilidad de Turing?" (PDF) . Notices of the American Mathematical Society . 53 (10): 1218–1219 . Recuperado el 16 de enero de 2008 .
Enlaces externos
- Diccionario de algoritmos y estructuras de datos del NIST: Reducción de Turing
- Universidad de Cambridge, Andrew Pitts, Tobias Kohn: Teoría de la computación
- Página web del profesor Jean Gallier
- Reducción (complejidad)
- Alan Turing