Questa è una domanda molto bella a cui ho pensato molto: il fatto che un problema sia completo o realtà influisce sulla complessità del problema nel caso peggiore? P S P A C ENPPSPACEPiù confusamente, una tale distinzione influisce davvero nella complessità del "caso tipico" del problema nella pratica?
L'intuizione afferma che il problema completo di è più difficile di quello completo di , indipendentemente dalla misura di complessità che si utilizza. Ma la situazione è sottile. Potrebbe essere, ad esempio, che (formule booleane quantificate, il problema completo canonico della ) sia in tempo subsponenziale se e solo se (Soddisfacibilità, il problema completo canonico ) sia in tempo subesponenziale. (Una direzione è ovvia; l'altra direzione sarebbe un risultato importante!) Se questo è vero, forse dal punto di vista "Voglio solo risolvere questo problema", non è un grosso problema se il problema è completo oN P Q B F P S P A C E S A T N P P S P A C E N PPSPACENPQBFPSPACESATNPPSPACENP-completo: in entrambi i casi, un algoritmo subexponential per uno implica un algoritmo subexponential per l'altro.
Permettetemi di essere un avvocato del diavolo e di darvi un esempio in cui un problema sembra essere "più difficile" dell'altro, ma risulta essere "più trattabile" dell'altro.
Sia una formula booleana su variabili, dove è pari. Supponi di avere una scelta tra due formule che vuoi decidere:nF(x1,…,xn)nn
Φ1=(∃x1)(∃x2)⋯(∃xn−1)(∃xn)F(x1,…,xn) .
Φ2=(∃x1)(∀x2)⋯(∃xn−1(∀xn)F(x1,…,xn)
(Cioè, in , i quantificatori si alternano.)Φ2
Quale pensi che sia più facile da risolvere? Formule di tipo o formule di tipo ?Φ 2Φ1Φ2
Si potrebbe pensare che la scelta ovvia sia , poiché è solo completo a decidere, mentre è un problema . Ma in realtà, secondo i nostri algoritmi più noti, è un problema più semplice. Non abbiamo idea di come risolvere per generale in meno di passaggi. (Se potessimo farlo, avremmo limiti inferiori inferiori per le nuove dimensioni della formula!) Ma può essere facilmente risolto per qualsiasi nel tempo randomizzato , usando la ricerca dell'albero del gioco randomizzata! Per un riferimento, vedere il capitolo 2, sezione 2.1, in Motwani e Raghavan. N P Φ 2 P S P A C E Φ 2 Φ 1 F 2 n Φ 2 F O ( 2 0,793 n )Φ1NPΦ2PSPACEΦ2Φ1F2nΦ2FO(2.793n)
L'intuizione è che l' aggiunta di quantificatori universali in realtà limita il problema , rendendolo più facile da risolvere, piuttosto che più difficile. L'algoritmo di ricerca dell'albero di gioco si basa fortemente sull'avere quantificatori alternati e non può gestire quantificazioni arbitrarie. Tuttavia, rimane il punto che i problemi a volte possono diventare "più semplici" sotto una misura di complessità, anche se possono sembrare "più difficili" sotto un'altra misura.