Una variante de factorización NP-completa.

45

El libro de Arora y Barak presenta el factoring como el siguiente problema:

FACTORIZACIÓN={L,U,norteEl |( un primer pags{L,...,U})[pagsEl |norte]}

Añaden, más adelante en el Capítulo 2, que eliminar el hecho de que pags es primo hace que este problema sea NP completo, aunque esto no está relacionado con la dificultad de factorizar números. Parece que puede haber una reducción de SUBSETSUM, pero me quedé atascado al encontrarlo. ¿Alguna mejor suerte por aquí?

EDITAR el 1 de marzo: la recompensa es para la prueba de completitud nortePAGS utilizando la reducción determinista de Karp (o Cook).

Michaël Cadilhac
fuente
55
@turkistany: FWIW, considero que es un mal estilo poner NP en cursiva, y tanto un mal estilo como un LaTeX malo para ponerlo en modo matemático (ya que el espacio entre letras es diferente).
Michaël Cadilhac
@ Michaël, lo siento, volví al estilo original. Me emocionó tu pregunta :)
Mohammad Al-Turkistany
77
Una descripción algo más completa: en la página 63 del libro, escriben: Alon y Kilian (en comunicación personal) mostraron que en la definición del lenguaje Factoring en el Ejemplo 2.3, la condición de que el factor p es primo es necesaria para capturar el problema de factorización, ya que sin esta condición este lenguaje es NP-completo (por razones que no tienen nada que ver con la dureza de los factores enteros de factorización).
MS Dousti
2
Naturalmente, busqué un artículo de Alon y Kilian que contenga "factoring" y "NP-complete". No encontré ninguno (supongo que esto también es natural en algún sentido). :(
Tsuyoshi Ito
55
@Michael En realidad me gusta representar las clases como lugar de NP. No ? NPAGS
Suresh Venkat

Respuestas:

35

Esto no es una respuesta, pero está cerca. La siguiente es una prueba de que el problema es NP-duro bajo reducciones aleatorias.

Hay una relación obvia con la suma de subconjuntos que es: supongamos que conoce los factores de : p 1 , p 2 , ... , p k . Ahora, desea encontrar un subconjunto S de p 1 ... p k tal queNp1pags2...pagskSpags1 ... pagsk

Iniciar sesiónLpagsyoSIniciar sesiónpagsyoIniciar sesiónU.

El problema al tratar de usar esta idea para mostrar que el problema es NP-hard es que si tienes un problema de suma de subconjuntos con los números , t 2 , ... , t k , no necesariamente puedes encontrar números primos en tiempo polinómico como ese log p it i (donde por , quiero decir aproximadamente proporcional a). Este es un problema real porque, dado que la suma de subconjuntos no está fuertemente completada por NP, necesita encontrar estos log p i para enteros grandes t it1t2...tkIniciar sesiónpagsyotyoIniciar sesiónpagsyotyo .

Ahora, supongamos que necesitamos que todos los enteros ... t k en un problema de suma de subconjuntos estén entre x y x ( 1 + 1 / k ) , y que la suma sea aproximadamente 1t1 ... tkXX(1+1/ /k). El problema de la suma del subconjunto seguirá siendo NP-completo, y cualquier solución será la suma dek/2enteros. Podemos cambiar el problema de números enteros refiere a los reales si dejamos quet ' i estar entretiyTi+112yotyok/ /2tyotyo , y en lugar de exigir la suma a ser exactamentes, se requiere que sea entresys+1tyo+110kss . Solo necesitamos especificar nuestros números a alrededor de4logkmás bits de precisión para hacer esto. Por lo tanto, si comenzamos con números conbitsBy podemos especificar números realeslogpia aproximadamenteB+4logkbits de precisión, podemos llevar a cabo nuestra reducción.s+1104 4Iniciar sesiónksiIniciar sesiónpagsyosi+4 4Iniciar sesiónk

Ahora, desde wikipedia (a través de comentario de Hsien-Chih más adelante), el número de primos entre y T + T 5 / 8 es θ ( T 5 / 8 / log T )TT+T5 5/ /8θ(T5 5/ /8/ /Iniciar sesiónT) , así que si usted acaba de elegir números al azar en ese rango, y pruébelos por primalidad, con alta probabilidad de obtener un primo en tiempo polinómico.

Ahora, intentemos la reducción. Digamos que nuestro tiene todos los bits B Si tomamos T i de longitud 3 B trozos, entonces podemos encontrar un número primo p i cerca de T i con 9 / 8 B bits de precisión. Por lo tanto, podemos elegir T i modo que log T i alfa camiseta T i con precisión 9 / 8tyosiTyo3sipagsyoTyo9 9/ /8siTyoIniciar sesiónTyotyo bits Esto nos permite encontrar p iT i para que log p it i con precisión 9 /9 9/ /8sipagsyoTyoIniciar sesiónpagsyotyo bits Si un subconjunto de estos primos se multiplica por algo cercano al valor objetivo, existe una solución para los problemas de suma del subconjunto original. Entonces dejamos N = Π i p i , elegimos L y U apropiadamente, y tenemos una reducción aleatoria de la suma del subconjunto.9 9/ /8sinorte=ΠyopagsyoLU

Peter Shor
fuente
3
No entiendo la reducción. Para que el problema de la suma del subconjunto sea NP-completo, el número debe darse en binario. Si queremos números enteros cuyos logaritmos estén cerca de los números en una instancia del problema de suma de subconjuntos, necesitamos exponencialmente muchos dígitos. Cómo superas esto?
Tsuyoshi Ito
2
@Peter: La suposición en la teoría de números se llama conjetura de Cramér , que establece que , donde p n es el enésimo número primo. Consulte el artículo prime gap también como referencia. pagsnorte+1-pagsnorte=O(Iniciar sesión2norte)pagsnorte
Hsien-Chih Chang 張顯 之
2
@ Peter: Sí, esta versión de la suposición ha sido probada para suficientemente grande. Hoheisel muestra el primer resultado de este tipo, y el mejor resultado debido a Wikipedia es el trabajo de Baker, Harman y Pintz , con α = 0.525 , c 1 = (ya que se cumple para la probabilidad 1) y c 2 = 1 . Tα=0,525C1=C2=1
Hsien-Chih Chang 張顯 之
2
Acabo de encontrar esto. Debo señalar que no sé cuál era la prueba original de Kilian-Alon. Mi único conocimiento de la prueba es de una comunicación con Noga que no recordaba los detalles de la prueba original, y la prueba que reconstruyó fue exactamente esta. Tenga en cuenta que también se puede describir como una reducción determinista bajo algunos supuestos teóricos de números fuertes (por ejemplo, que hay un primo en cualquier intervalo de la forma [x, x + polylog (x)]).
Boaz Barak
44
Acabo de hablar con Joe Kilian. Dijo que la prueba de que él y Alon propusieron reducciones aleatorias de error cero. Hasta donde él sabe, la reducción determinista todavía está abierta a menos que haga alguna suposición teórica de números, como ya lo dijo Boaz Barak.
Timothy Chow
8

Creo que está vinculado al teorema de PCP (en particular ).nortePAGS=PAGSCPAGS[O(Iniciar sesiónnorte),O(1)]

Un extracto del artículo de Madhu :

... La noción de que un verificador puede realizar cualquier cálculo de tiempo polinómico enriquece considerablemente la clase de teoremas y pruebas y comienza a ofrecer métodos altamente no triviales para probar teoremas. (Una consecuencia inmediata es que podemos asumir que los teoremas / pruebas / aserciones / argumentos son secuencias binarias y lo haremos a partir de ahora). Por ejemplo, supongamos que tenemos una aserción (digamos la hipótesis de Riemann), y decimos que creemos que tiene prueba que cabría en un artículo de 10.000 páginas. La perspectiva computacional dice que dado A y este límite (10,000 páginas), uno puede calcular eficientemente tres enteros positivos N , L , U con L U NUNAUNAnorte,L,ULUnortede tal manera que es verdadero si y sólo si N tiene un divisor entre L y U . Los enteros N , L y U serán bastante largos (tal vez escribirlos tomaría un millón de páginas), sin embargo, pueden producirse de manera extremadamente eficiente (en menos de la cantidad de tiempo que le tomaría a una impresora imprimir todos estos enteros, que es, como mucho, un día o dos). (Este ejemplo específico se basa en un resultado debido a Joe Kilian , comunicación personal) ...UNAnorteLUnorteLU

... mucho más allá de mis habilidades de teoría de la complejidad :-)

Marzio De Biasi
fuente
2
Esta es solo otra formulación de que este problema es NP-completo.
Marc Bury
@Marc ... mmm ... creo que quiere decir: es NP-complete porqueexisteuna reducción polinómica del problema NP-completeSHORT PROOF...{L,U,norteEl |(pags{L,...,U})[pagsEl |norte]}
Marzio De Biasi
2
El problema de CORTO PRUEBA en el documento es casi el mismo que el problema de detención acotada. Una reducción del problema de PRUEBAS CORTA probablemente sería tan desordenada como la prueba típica de la completitud NP de SAT, y por lo tanto es poco probable que la prueba de la completitud NP de este problema de encontrar factores por Kilian construya una reducción de la PROBLEMA CORTO problema directamente.
Tsuyoshi Ito
0

Esta es una idea informal de reducción determinista eficiente (y puede estar incompleta):

Fractran es un lenguaje de programación completo de Turing. Una versión limitada adecuadamente definido de programas Fractran debe ser reducible a la lengua {L,U,METROEl |( un entero positivo pags{L,...,U})[pagsEl |METRO]}

Por ejemplo, una versión limitada podría preguntar si el entero se produce en la secuencia de salida de un programa Fractran dentro de cierto número de pasos (divisiones) (es decir, M = N jF i ).METROMETRO=nortejFyo

Mohammad Al-Turkistany
fuente