Se P = NP, perché


15

Apparentemente, se P=NP , tutte le lingue in P tranne ∅ e Σ∗ sarebbero NP complete.

Perché queste due lingue in particolare? Non possiamo ridurre a loro qualsiasi altra lingua in P emettendole quando accettiamo o non accettiamo?

Risposte:


25

Poiché non ci sono stringhe in , qualsiasi macchina che la calcola rifiuta sempre, quindi non possiamo mappare Sì-istanza di altri problemi a nulla. Allo stesso modo per Σ ∗ non c'è nulla su cui mappare No-instance.∅Σ∗


4

Avete bisogno di una riduzione polinomiale dal problema al problema B , se si vuole dimostrare che B è "più difficile" rispetto A . Si costruisce una riduzione polinomiale trasformando qualsiasi istanza x di A in un'istanza f ( x ) di B tale che x ∈ A sse f ( x ) ∈ B .ABBAxAf(x)Bx∈Af(x)∈B

La funzione deve e può essere polinomiale. Se P = N P e A è un problema NP, allora f può esso stesso risolvere il problema A del problema e incorporare qualsiasi x ∈ A in qualche elemento y di B e ogni x ∉ A in qualche elemento z che non è in B .fP=NPAfAx∈AyBx∉AzB

Se è o ∅ o Σ * allora y oppure z non può esistere, altrimenti il ragionamento sopra mostra che B è più duro di A .B∅Σ∗yzBA


3

Solo una nota: le risposte precedenti sono ok, tuttavia non sei troppo lontano dalla riduzione banale corretta:

se allora qualsiasi L ∈ N P è Karp riducibile alla lingua { 1 } (basta mappare in tempo polinomiale ogni x ∈ L a 1, ogni x ∉ L a 0), che è banalmente una lingua sparsaP=NPL∈NP{1}x∈Lx∉L

La direzione opposta: "se un linguaggio completo è Karp riducibile a un insieme sparso, allora P = N P " è sicuramente più interessante ed è noto come teorema di Mahaney :NPP=NP

Sia una costante e A sia impostato in modo tale che per tutte n , A abbia al massimo n c stringhe di lunghezza n . Se A è N P -Complete allora P = N P .cAnAncnANPP=NP

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.