Il problema di decidere se un CNF monotono implica un DNF monotono


14

Considera il seguente problema decisionale

Input : un CNF monotono Φ e un DNF monotono Ψ .

Domanda : ΦΨ una tautologia?

Sicuramente è possibile risolvere questo problema in O(2npoly(l)) -time, dove n è il numero di variabili in ΦΨ e l è la lunghezza di ingresso. D'altra parte, questo problema è completo. Inoltre, una riduzione che stabilisce CONP-completezza mostra anche che, se non riesce SETH, non c'è O(2(1/2ε)npoly(l))algoritmo -time per questo problema (questo vale per qualsiasi positivo ε). Ecco questa riduzione. Sia A un CNF (non monotono) e sia X sua variabile. Sostituisci ogni occorrenza positiva di x con y e ogni occorrenza negativa di x per z . Fai lo stesso per ogni variabile. Lascia che il CNF monotono risultante sia Φ . È facile vedere che A è soddisfacente se Φyz... non è una tautologia. Questa riduzione fa esplodere il numero di variabili di un fattore 2, che implica 2n/2 (Basato su SETH) limite inferiore di cui sopra.

Quindi c'è un divario tra 2n/2 e 2n tempo. La mia domanda è se si conosce un algoritmo migliore o una migliore riduzione da SETH?

Solo due osservazioni apparentemente correlate al problema:

  • un problema inverso del fatto che un DNF monotono implichi un CNF monotono è banalmente risolvibile nel tempo polinomiale.

  • interessante, il problema di decidere se Φ e Ψ calcolano la stessa funzione può essere risolto in tempo quasi-polinomiale causa Fredman e Khachiyan (sulla complessità della dualizzazione delle Forme Monotone Disgiuntiva normali, Journal of Algorithms 21 (1996), n. 3 , pagg. 618–628, doi: 10.1006 / jagm.1996.0062 )

Risposte:


6

Supponendo SETH, il problema non è risolvibile nel tempo per qualsiasi ϵ > 0 .O(2(1ϵ)npoly(l))ϵ>0


Innanzitutto, lasciatemi dimostrare che ciò è vero per il problema più generale in cui e Ψ possono essere formule monotone arbitrarie. In questo caso, esiste una riduzione ctt del tempo multiplo da TAUT al problema che preserva il numero di variabili. Sia T n t ( x 0 , , x n - 1 ) denota la funzione di soglia T n t ( x 0 , , x nΦΨTtn(x0,,xn1) Utilizzando la rete Ajtai-Komlos-Szemerédi smistamento,T n t possono essere scritti da un monotono formula polinomiale-size, costruibile in tempopoly

Ttn(x0,,xn1)=1|{i<n:xi=1}|t.
Ttn .poly(n)

Data una formula booleana , possiamo usare le regole di De Morgan per scriverlo nella forma ϕ ( x 0 , , x n - 1 , ¬ x 0 , , ¬ x n - 1 ) , dove ϕ è monotono. Quindi ϕ ( x 0 , , x n -ϕ(x0,,xn1)

ϕ(x0,,xn1,¬x0,,¬xn1),
ϕϕ(x0,,xn1)è una tautologia se e solo se le implicazioni monotone sono valide per ogni t n , dove N i = T n - 1
Ttn(x0,,xn1)ϕ(x0,,xn1,N0,,Nn1)
tn
Ni=Ttn1(x0,,xi1,xi+1,,xn1).

Per l'implicazione da sinistra a destra, lascia sia un'assegnazione soddisfino T n t , cioè, con almeno t quelli. Esiste e e con esattamente t . Quindi e N i¬ x i , quindi e ϕ implica e ϕ ( x 0 , ... , x n - 1 , N 0 , ...eTtnteeteNi¬xieϕ . Poiché questa è una formula monotona, abbiamo anche e ϕ ( x 0 , , x n - 1 , N 0 , , N n - 1 ) . L'implicazione da destra a sinistra è simile.eϕ(x0,,xn1,N0,,Nn1)eϕ(x0,,xn1,N0,,Nn1)


Ora, vorrei tornare al problema originale. Mostrerò quanto segue: se il problema è risolvibile nel tempo , allora per qualsiasi k , k -DNF-TAUT (o due volte, k -SAT) è risolvibile nel tempo 2 δ n2δnpoly(l)kkk. Ciò implica2δn+O(knlogn)poly(l) se SETH è valido.δ1

Quindi, supponiamo che ci venga dato un -DNF ϕ = i < l ( j A i x jj B i ¬ x j ) , dove | A i | + | B i | k per ogni i . Dividiamo le n variabili in n = n / b blocchi di dimensionik

ϕ=i<l(jAixjjBi¬xj),
|Ai|+|Bi|kinn=n/b ciascuno. Dallo stesso argomento di cui sopra,ϕè una tautologia se e solo se le implicazioni u < n T b t u ( x b u , , x b ( u + 1 ) - 1 ) i < l ( j A i x jj B i NBK-1nlognφ sono validi per ognin-tuplat0,,tn-1[0,b], dove per ognij=bu+j,0j<b, definiamo Nj=T b - 1 t u (xbu,,xbu
(*)u<n'TtuB(XBu,...,XB(u+1)-1)io<l(jUNioXjjBioNj)
n't0,...,tn'-1[0,B]j=Bu+j'0j'<B Possiamo scrivere T b t come monotona CNF di dimensioneO( 2 b ), quindi le LHS di(*)è un monotono CNF di dimensioneO(n 2 b ). Sul lato destro, possiamo scrivere N j
Nj=TtuB-1(XBu,...,XBu+j'-1,XBu+j'+1,...,XB(u+1)-1).
TtBO(2B)(*)O(n2B)NjO(2B)O(2KB)O(l2KB)(*)O(l2O(KB))nO(2δn+O(KB)lO(1)). Ripetiamo questo controllo per tuttiBn' scelte di t, quindi il tempo totale è
O((B+1)n/B2δn+O(KB)lO(1))=O(2δn+O(Knlogn)lO(1))
come affermato.

Otteniamo una connessione più stretta con (S) ETH considerando la versione del problema a larghezza limitata: per qualsiasi K3, permettere K-MonImp indica la limitazione del problema in cui Φ è un K-CNF e Ψ è un K-DNF. Il (S) ETH riguarda le costanti

sk=inf{δ:k-SATDTIME(2δn)},s=sup{sk:k3}.
Likewise, let us define
sk=inf{δ:k-MonImpDTIME(2δn)},s=sup{sk:k3}.
Clearly,
s3s4s1
as in the SAT case. We also have
sksk,
and the double-variable reduction in the question shows
sk2sk.
Now, if we apply the construction above with constant block-size b, we obtain
sksbk+log(b+1)b,
hence
s=s.
In particular, SETH is equivalent to s=1, and ETH is equivalent to sk>0 for all k3.

Thank you for your answer! I'm curious whether it is possible to make Φ and Ψ constant-depth in this construction? Namely, I'm not aware whether subexponential-size constant-depth monotone Boolean formulas (or even non-monotone circuits) are known for Tkn (in particular for Majority)? Of course there is a 2nΩ(1/d) lower bound for depth-d, but, say, 2n size would be OK.
Sasha Kozachinskiy

Tkn, and in general anything computable by polynomial-size formulas (i.e., in NC^1), has depth-d circuits of size 2nO(1/d). See e.g. cstheory.stackexchange.com/q/14700 . I will have to think if you can make them monotone, but it sounds plausible.
Emil Jeřábek supports Monica

OK. First, the generic construction works fine in the monotone setting: if a function has poly-size monotone formulas, it has depth-d monotone circuits of size 2nO(1/d)poly(n) for any d2. Second, for Tkn specifically, it is easy to construct monotone depth-3 circuits of size 2O(nlogn) by splitting the input into blocks of size Θ(nlogn).
Emil Jeřábek supports Monica

Actually, pushing this idea a little bit more, it does provide an answer to the original question: assuming SETH, the lower bound holds already for Φ monotone CNF and Ψ monotone DNF. I will write it up later.
Emil Jeřábek supports Monica

I would guess that you can divide all the variables into about n blocks x1,xn and then write Tk1n(x1)Tknn(xn)ϕ for every k1++knn. You can use 2n-size CNF for every threshold function. But then on a right hand side you will have not DNF but a depth-3 formula...
Sasha Kozachinskiy
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.