En el artículo La complejidad del problema de Frobenius de Ramírez-Alfonsín, se demostró que un problema era NP completo usando reducciones de Turing. ¿Es eso posible? ¿Cómo exactamente? Pensé que esto solo era posible por un tiempo polinómico, muchas reducciones. ¿Hay alguna referencia sobre esto?
¿Hay dos nociones diferentes de dureza NP, incluso la integridad NP? Pero entonces estoy confundido, porque desde un punto de vista práctico, si quiero mostrar que mi problema es NP-hard, ¿qué uso?
Comenzaron la descripción de la siguiente manera:
Un tiempo polinómico La reducción de Turing de un problema a otro problema es un algoritmo A que resuelve utilizando una subrutina hipotética A 'para resolver modo que, si A' fuera un algoritmo de tiempo polinomial para entonces A sería un tiempo polinómico algoritmo para . Decimos que puede reducirse a Turing a .P 2 P 1 P 2 P 2 P 1 P 1 P 2
Un problema se llama (Turing) NP-hard si hay un problema de decisión NP-completo modo que puede reducirse a Turing a .P 2 P 2 P 1
Y luego usan una reducción de Turing de un problema de NP completo para mostrar la integridad de NP de algún otro problema.
fuente
Esta bien. Una reducción de Turing de tiempo polinomial es una reducción de Cook (como en el teorema de Cook-Levin) y la reducción de un problema de NP completo al nuevo problema da dureza de NP (al igual que una reducción de muchos polinomios de tiem, reducción de AKA Karp). De hecho, las reducciones de Karp son restricciones restringidas de Turing de todos modos.
Donde difieren (con respecto a esta pregunta) es en mostrar membresía. Una reducción de Karp de un problema a un problema en NP muestra que el primero está en NP. Una reducción de Cook en la misma dirección no lo hace.
fuente