Pytanie: Niech wygeneruje formuły. Czy { M ( 1 n ) ∣ n ∈ N ∧ M ( 1 n ) ∈ S A T } należy do P ?M.∈ P F{ M( 1n) ∣ n ∈ N ∧ M( 1n)∈SZAT}P.
s u c c i n c t SAT∈E⟹ Tak:
Założenie dotyczące generowania wzorów w czasie wielomianowym od oznacza, że wzór można podać zwięźle . Chcesz zdecydować o ich spełnieniu w czasie n O ( 1 ) .1nnO ( 1 )
Dany możemy znaleźć nw czasie wielomianowym w | φ | . Następnie φ można podać zwięźle wbitach lg n + O ( 1 ) przy użyciu M i n . Można używamy S U c c i n t S T algorytm E zdecydować, to w czasie 2 O ( lg n ) = N Oφ = M( 1n)n| φ |φlgn + O ( 1 )M.ns u c c i n t SA T.mi .2)O ( lgn )= nO ( 1 )
tak :⟹s u c c i n c t SA T.∈ E
Niech st biorąc pod uwagę obwód C w jedności , M oblicza ciąg zwięźle zakodowany przez C i zwraca wynik, jeśli jest to wzór, a ⊥ w przeciwnym razie.M.∈ P FdoM.do⊥
Załóżmy, że należą do P . Aby rozwiązać s U c c i n c t S A T opisali danej formuły w zwięzły jednoargumentowy a następnie korzystając z założenia do rozwiązania.{ M( 1n) ∣ n ∈ N ∧ M( 1n) ∈ SA T.}P.s u c c i n c t SA T.
Pytanie: Czy możemy wygenerować w parach instancji rozwiązanie czas wielomianowe dla tak, że instancja jest trudna?S.A T.
Musimy wyjaśnić, co rozumiemy przez to, że instancja jest trudna, ponieważ każda instancja sama w sobie jest (teoretycznie) łatwa, ponieważ można ją rozwiązać za pomocą algorytmu, który zawsze mówi tak, lub algorytmu, który zawsze mówi nie. Wydaje mi się, że próbowałeś obejść ten problem, nakładając jednolitość. Myśląc kryptograficznie, bez pewnych informacji, które nie zostaną ujawnione przeciwnikowi, nie ma sensu ukrywać reszty obliczeń, ponieważ przeciwnik może symulować protokół.
Załóżmy, że mamy algorytm czasu wielomianowego, który generuje pary instancja-rozwiązanie. Przeciwnik może użyć tego samego algorytmu, aby znaleźć odpowiedź, jeśli zna a znalezienie n nie jest trudne ze wzoru. Bardziej rozsądnym sposobem jest użycie losowo wybranego tajnego klucza, aby obejść ten problem i rozluźnić warunek twardości, aby być probabilistycznym: żaden algorytm wielomianowy nie może znaleźć rozwiązania z dużym prawdopodobieństwem (bez znajomości tajnego klucza).nn
Czy jest skuteczny (deterministyczny) algorytm
taki sposób, że dana losowo wybiera k ∈ { 0 , 1 } n ,
generuje parę Instancje SAT cp k i jego odpowiedź wag K , tak że
nie jest efektywny (probabilistyczny / niejednorodny) algorytm przeciwnik D
potrafi poprawnie rozwiązać wystąpienia SAT wygenerowane przez A z nieistotnym prawdopodobieństwem?ZA
k ∈ { 0 , 1 }n
φkwk
re
ZA
Lub bardziej formalnie
Czy istnieje taki, że dla wszystkich D ∈ PA ∈ P F , taki, że
SAT(A(k ) 1 )=A(k ) 2 dla wszystkichki
P r k ∈ { 0 , 1 } n {D(A(k ) 1 )=SATD ∈ P / p o l yS.A T.( A ( k )1) = A ( k )2)k
P rk ∈ { 0 , 1 }n{ D ( A ( k ))1) = SA T.( A ( K)1) } < 1p o l y( n )
Łatwo zauważyć, że taką funkcję można przekształcić w funkcję jednokierunkową, tak jakby łatwo było znaleźć z φ k, wówczas możemy znaleźć odpowiedź, obliczając A ( k ) 2 .kφkA ( k )2)
Z drugiej strony, niech będzie funkcją jednokierunkową. Możemy wyrazić f ( x ) = y jako obwód wielkości wielomianowej, ponieważ f można obliczać w czasie wielomianowym (i możemy przekształcić go w formułę wprowadzając nowe zmienne dla wszystkich bramek i lokalnie egzekwując warunek poprawności obliczeń jak w tłumaczeniu Tsiena). Rozważmy y jako parametr i oznaczmy wynikową formułę jako φ f , y ( x ) . Możemy zapytać, czy jest jakieś x, które spełnia φ f , y ( x )fafa( x ) = yfayφfa, y( x )xφfa, y( x ). Każdy algorytm wielomianowy rozwiązujący te instancje z prawdopodobieństwem nieistotnym zniszczy funkcję jednokierunkową f . Wykorzystuje to jednak fakt, że przeciwnik musi znaleźć świadka, a nie tylko fakt, że formuła jest zadowalająca lub nie (ale myślę, że możemy poradzić sobie z tym problemem, używając twardego f ).S.A T.fafa
Zobacz także rozdziały 29 i 30 książki Jana Krajicka „Forcing with Random Variables”, 2011 na temat generatorów złożoności dowodu .