Come può P =? NP migliora la fattorizzazione a numeri interi


14

Se effettivamente uguale a N P , in che modo questo migliorerebbe i nostri algoritmi per fattorizzare gli interi più velocemente. In altre parole, che tipo di intuizione ci darebbe questo fatto nel comprendere meglio la fattorizzazione dei numeri interi?PNP

Risposte:


9

Se , e disponiamo di un algoritmo in grado di risolvere il problema k-SAT in tempo polinomiale, la fattorizzazione a numeri interi può essere semplicemente ridotta a k-SAT descrivendo il factoring come un problema in k-SAT.P=NP

Sostanzialmente funziona come segue: crei un gruppo di variabili ognuna delle quali rappresenta i bit di , q , e n . Quindi si formula il problema k-SAT come p q = n . Poiché n è noto, è possibile impostare tali valori. Poi un'assegnazione soddisfare descriverà una valida p e q . Per descrivere la moltiplicazione in k-SAT, è possibile utilizzare uno qualsiasi degli algoritmi di moltiplicazione noti e descriverne il circuito logico in k-SAT. Per ulteriori informazioni sulla riduzione del factoring in k-SAT, vedere qui .pqnp*q=nnpq

Per quanto riguarda la comprensione migliore del factoring, ciò richiederebbe probabilmente ulteriori ricerche e analisi dell'algoritmo magico (che può risolvere i problemi NP-completi nel tempo polinomiale deterministico), e forse specializzarlo nella formulazione di factoring intero del problema k-SAT (che ovviamente ha una struttura molto specifica, a seconda dell'algoritmo di moltiplicazione utilizzato).


3

Il problema decisionale per il factoring è e il factoring può essere ridotto ad esso in tempi polinomiali deterministici.NP

P=NPNP

Si noti che gli algoritmi deterministici / probabilistici più noti per il factoring al momento richiedono tempo esponenziale, quindi un algoritmo di tempo polinomiale sarebbe un grande miglioramento. Per averne un'idea, prendi in considerazione il factoring di un numero di 2000 bit. Uno potrebbe impiegare più tempo di tutto il tempo dal big bang, l'altro potrebbe rispondere in pochi millisecondi.


XY1<Y<KXKYKXX/Y
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.