Credo che possiamo mostrare:
Richiesta. C'è un valore tale che quanto segue è vero. Supponiamo che esista un algoritmo poli-temporale deterministico che, data un'istanza 3-SAT -clause , genera un elenco al massimo di valori , tale che ; poi crolla la gerarchia polinomiale.0<c<1mϕSmcM(ϕ)∈S
La prova utilizza i risultati di Fortnow e Santhanam sull'impossibilità di compressione dell'istanza dal loro documento
http://www.cs.uchicago.edu/~fortnow/papers/compress.pdf
In particolare, guardando la loro prova di Thm 3.1, credo che si possa estrarre quanto segue (lo ricontrollerò presto):
"Teorema" [FS]. Ci sono numeri interi tali che quanto segue è vero. Supponiamo in poli-tempo deterministico, uno può trasformare un OR di formule booleane (ciascuna di lunghezza e su insiemi di variabili disgiunti) in un OR di formule (di nuovo variabile-disgiunto e di lunghezza ), preservando la soddisfacibilità / insoddisfazione dell'OR. Quindi e la gerarchia polinomiale collassa.0<d′<dnd≤nnd′≤nNP⊆coNP/poly
La prova del nostro reclamo sarà una riduzione dall'attività di compressione OR menzionata nel teorema [FS] sopra, al problema del list-computing . Supponiamo che sia un elenco di formule di cui OR vogliamo comprimere.M(ϕ)ψ1,…,ψnd
Primo passo: definire un circuito di dimensioni polinomiali su stringhe di input . Qui la stringa codifica un'assegnazione a e codifica un numero compreso tra e .Γ(v,y1,…,ynd)yiψiv∈{0,1}dlogn+10nd
Abbiamo accetta se e solo se sia , o .Γv=0ψv(yv)=1
Ora lascia che denoti il valore massimo , in modo che il circuito limitato sia soddisfacente. (Questa quantità è sempre almeno 0).M∗(Γ)vΓ(v,⋅,…,⋅)
Supponiamo di poter produrre in modo efficiente un elenco di possibili valori per . Quindi l'affermazione è che nella nostra lista , possiamo buttare via tutto per il quale ; l'elenco risultante contiene una formula soddisfacente, se presente. Spero che questo sia chiaro dall'ispezione.SM∗(Γ)ψ1,…,ψndψii∉S
Conclusione: non è possibile produrre in modo affidabile un elenco di possibili valori per , a meno che la polirarchia non collassi.S≤nd′M∗(Γ)
Secondo passo: riduciamo dal problema del list computing a quello del list computing per le istanze 3-SAT .M∗(Γ)M(ϕ)ϕ
Per fare ciò, eseguiamo prima la riduzione di Cook su per ottenere un'istanza 3-SAT di dimensione . ha lo stesso set di variabili di , insieme ad alcune variabili ausiliarie. Soprattutto per i nostri scopi, è soddisfacente se è soddisfacente.Γϕ1m=poly(nd)ϕ1Γϕ1(v,⋅)Γ(v,⋅)
Chiamiamo i `vincoli forti '. Diamo a ciascuno di questi vincoli un peso di (aggiungendo vincoli duplicati).ϕ12m
Quindi aggiungiamo un insieme di `vincoli deboli ' che aggiungono una preferenza per l'indice (definito nel passaggio 1) per essere il più alto possibile. Esiste un vincolo per ogni bit di , vale a dire . Lasciamo che il bit più significativo di di abbia un vincolo di peso . Poiché è di lunghezza , questi pesi possono essere resi integrali (dobbiamo solo pad per lasciare che sia una potenza di 2).ϕ2vvtv[vt=1]tvm/2t−1vdlogn+1m
Infine, lascia che sia l'output della nostra riduzione.ϕ=ϕ1∧ϕ2
Per analizzare , sia l'insieme variabile di , con come prima. Prima nota che dato qualsiasi assegnazione a , si può inferire il valore di dalla quantità
(peso totale dei vincoli soddisfatti da ).
Ciò deriva dal disegno gerarchico dei pesi dei vincoli (analogamente a una tecnica della risposta di Luca). Allo stesso modo, il valore massimo raggiungibile è raggiunto da un'impostazione che soddisfa tutti i vincoli forti e dove (soggetto a questo)ϕ(v,z)ϕv(v,z)vN(v,z)=ϕv,z
M(ϕ)(v,z)vè il più grande possibile. Questo è l'indice più grande per il quale è soddisfacente, ovvero . (Nota, è sempre possibile, impostando all-0, per soddisfare tutti i vincoli forti, poiché in tal caso è soddisfacente.)vΓ(v,⋅)M∗(Γ)v=Γ(v,⋅)
Ne consegue che, se ci viene fornito un elenco di possibili valori di , possiamo derivare un elenco dipossibili valori di . Quindi non possiamo avere meno che la poli gerarchia non collassi. Questo dà la richiesta, poiché .SM(ϕ)|S|M∗(Γ)|S|≤nd′nd′=mΩ(1)