タグ付けされた質問 「satisfiability」

充足可能性(SAT)は、特定のブール式を満たす変数割り当てがあるかどうかを判断する際の問題です。

1
Planar 1-in-3 SATの平面性条件
Planar 3SATはNP完全です。平面3SATインスタンスは、次のルールを使用して作成されたグラフが平面である3SATインスタンスです。 すべてのおよび頂点を追加しバツ私xix_iバツ私¯xi¯\bar{x_i} すべての節頂点を追加しCjCjC_j ペアごとにエッジを追加します(x私、x私¯)(バツ私、バツ私¯)(x_i,\bar{x_i}) 頂点(または)から、それを含む節を表す各頂点にエッジを追加しますバツ私バツ私x_iバツ私¯バツ私¯\bar{x_i} 2つの連続する変数間にエッジを追加します (x1、x2)、(x2、x3)、。。。、(xn、x1)(バツ1、バツ2)、(バツ2、バツ3)、。。。、(バツn、バツ1)(x_1,x_2),(x_2,x_3),...,(x_n,x_1) 特に、ルール5は、句を2つの異なる領域に分割する「バックボーン」を構築します。 Planar 1-in-3 SATもNP完全です。 しかし、平面1-in-3 SATの場合、平面条件はPlanar 3SATと同じ方法で定義されますか?特に、変数をリンクするバックボーンがあると仮定でき ますか? (x私、xi + 1)(バツ私、バツ私+1)(x_i,x_{i+1})

2
ILPからSATへのポリタイムの削減?
したがって、知られているように、ILPの0-1決定問題はNP完全です。NPで表示するのは簡単で、元の削減はSATからでした。それ以来、他の多くのNP完全問題にはILPの定式化が示されています(ILPは非常に有用であるため、これらの問題からILPへの還元として機能します)。 ILP からの削減は、自分でやるか追跡するのがはるかに難しいようです。 したがって、私の質問は、ILPからSATへのポリタイムの削減を知っている人はいますか?つまり、SATを使用して0-1のILP決定問題を解決する方法を示していますか?

2
DOUBLE-SATがNP完全であることの証明
参考のために、よく知られているSAT問題をここで定義します。 DOUBLE-SAT問題は次のように定義されます DOUBLE-SAT={⟨ϕ⟩∣ϕ has at least two satisfying assignments}DOUBLE-SAT={⟨ϕ⟩∣ϕ has at least two satisfying assignments}\qquad \mathsf{DOUBLE\text{-}SAT} = \{\langle\phi\rangle \mid \phi \text{ has at least two satisfying assignments}\} NP完全であることをどのように証明しますか? 証明する方法は複数あります。

2
MIN-2-XOR-SATおよびMAX-2-XOR-SAT:それらはNPハードですか?
との複雑さはどのですか?彼らはPですか?それらはNPハードですか?MIN-2-XOR-SATMIN-2-XOR-SAT\text{MIN-2-XOR-SAT}MAX-2-XOR-SATMAX-2-XOR-SAT\text{MAX-2-XOR-SAT} これをより正確に定式化するには、 Φ ( x)= ∧ん私C私、Φ(バツ)=∧私んC私、\Phi\left(\mathbf x\right)={\huge\wedge}_{i}^{n}C_i, ここで、あり、各節の形式はまたはです。x =( x1、… 、xメートル)バツ=(バツ1、…、バツメートル)\mathbf{x} = (x_1,\dots,x_m)C私C私C_i(x私⊕ Xj)(バツ私⊕バツj)(x_i \oplus x_j)(x私⊕ ¬ Xj)(バツ私⊕¬バツj)(x_i \oplus \neg x_j) 問題がに割り当て見出すことであるを満たすこと。この問題は、線形方程式modシステムに対応するため、にあります。2-XOR-SAT2-XOR-SAT\text{2-XOR-SAT}バツバツ\mathbf{x}ΦΦ\PhiPPP222 問題がに割り当て見出すことである満たされる節の数を最大にします。問題がに割り当て見出すことである満たされる節の数を最小限に抑えます。これらの問題の複雑さは何ですか?MAX-2-XOR-SATMAX-2-XOR-SAT\text{MAX-2-XOR-SAT}バツバツ\mathbf{x}MIN-2-XOR-SATMIN-2-XOR-SAT\text{MIN-2-XOR-SAT}バツバツ\mathbf{x} MINまたはMAX-True-2-XOR-SAT NP-hardに触発されていますか?

2
一般化されたXOR-SATは効率的に解決可能ですか?
XOR-3-SATがどのように効率的に解けるかを見てきました(たとえば、ブール充足可能性問題については、Wikipediaエントリの「XOR充足可能性」セクションを参照してください)。 基本的な質問を疑問に思っています: XOR-k-SATは、句ごとにリテラルの量が異なる数式では効率的に解決できますか? 句ごとのリテラルの量を3を超えて増やすことができるかどうか、また、句の長さを混在させることができるかどうかを知りたいです。

2
シェーファーの定理がP = NPであることを証明しないのはなぜですか?
これはおそらく愚かな質問ですが、私にはわかりません。別の質問で、彼らはシェーファーの二分法定理を思いついた。私には、すべてのCSP問題がPまたはNP完全のいずれかであるが、その間にないことを証明しているように見えます。すべてのNP問題は多項式時間でCSPに変換できるので(CSPはNP完全であるため)、なぜこれはPとNP完全の間にスペースがないことを証明しないのですか? たとえば、私の考えでは、整数因数分解は充足可能性の問題として書き直すことができるため、シェーファーの定理を使用して、PまたはNP完全でなければならないが、間にはないはずです(どちらかがわからなくても)。 質問全体を見る別の方法:シェーファーの定理を使用して整数因数分解がPであるかNP完全であるかを判断できないのはなぜですか? 編集:David Richerbyの回答に応えて(コメントするには長すぎます): 興味深いが、まだ完全には理解していない。シェーファーの定理を使用しながら関係ガンマのセットを定義する場合、制限を課すことができます。たとえば、アリティ2の関係のみを使用するようにガンマを制限する場合があります(問題はPにあります)。ガンマにどのような制限を課すことができますか? なぜCSP(gamma)のすべてのインスタンスが(Lと同型?)Lとまったく同じになるような制限を課せないのですか?たとえば、不均一な数値の整数分解を変換する場合、2つの除数の1つはxn .. x3 x2 1として表されるバイナリです。この数値を1より大きくしたいので、関係(xnまたは..またはx3またはx2)。したがって、ガンマにはn-1のor-relation関係があると言います。しかし、or関係を使用して、L以外のインスタンスを言語に含めることは望ましくないため、or関係のx2..xnには否定を許可しません。もちろん、特定の変数のみがそこで使用されるという制限を課す必要もあります。 このようにしてCSP(gamma)を整数因数分解と同型にすることはできませんか?主な質問は、ガンマにどのような制限を課すことができるかということです。 編集2:ユバル・フィルマスの回答に応えて。 デビッドの答えとほぼ同じですが、あなたの答えを理解し、正しいようです。たとえば、分解を3-satに減らしてから、分解がNP完全であると結論付けることができますが、3-satにはおそらく分解でない他のインスタンスがあるためです。 私が理解できない部分は、インスタンスが(非)任意である場合です。たとえば、2 SATは、arity 2の句のみが許可されているため、私にとっては任意ではないように見えます(ただし、証明は上限であり、この場合は上限がPであるため、証明がまだ保持されていることを認める必要があります)。 おそらくもっと良い例は、NP完全性の例です:上記のリンクされた質問。1人の回答者がシェーファーの完全な証明を与えます。ただし、入力には重要な制限を課しています(2-SAT句とxor-clausesは許可されますが、それ以外は何も行われません)。もちろん、証明で考慮されるCSPの問題は元の問題とまったく同じであるため、証明はまだ保持されています。 私が理解できない部分は、なぜ因数分解のために同様のことができないのですか?もちろん、それを3-SATに減らすことは意味がありませんが、数値を因数分解して(4ビットの)数値のみを因数分解するCSPインスタンスを与えることができます。(これが可能だと思われる場合は、END-OF-SKIPに進んでください)。 分解インスタンス。 入力: (N =)(因数分解する数値の4ビット) (M =)(最初の除数の最小値の4ビット) m 4 m 3 m 2 m 1n4n3n2n1n4n3n2n1n_4n_3n_2n_1m4m3m2m1m4m3m2m1m_4m_3m_2m_1 それでは、これをCSPインスタンスに変換しましょう INPUT: のための単項ドメイン及びため(N及びMが与えられたことを示します)mは5。。m 1n5。。n1n5。。n1n_5..n_1m5。。m1m5。。m1m_5..m_1 ドメイン{0,1}の変数: (D =)(最初の約数) (E =)(2番目の約数)e 4 e 3 e 2 e 1d4d3d2d1d4d3d2d1d_4d_3d_2d_1e4e3e2e1e4e3e2e1e_4e_3e_2e_1 関係: …

2
単調なブール式の充足可能性を決定するNP完全性を証明する
この問題を解決しようとしていますが、本当に苦労しています。 単調ブール式は、すべてのリテラルが正である命題論理式です。例えば、 (x1∨x2)∧(x1∨x3)∧(x3∨x4∨x5)(x1∨x2)∧(x1∨x3)∧(x3∨x4∨x5)\qquad (x_1 \lor x_2) \land (x_1 \lor x_3) \land (x_3 \lor x_4 \lor x_5) 単調なブール関数です。一方、次のような (x1∨x2∨x3)∧(¬x1∨x3)∧(¬x1∨x5)(x1∨x2∨x3)∧(¬x1∨x3)∧(¬x1∨x5)\qquad (x_1 \lor x_2 \lor x_3) \land (\neg x_1 \lor x_3) \land (\neg x_1 \lor x_5) 単調なブール関数ではありません。 この問題のNP完全性をどのように証明できますか: 変数が1に設定されている場合、単調なブール関数が充足可能かどうかを判別しますか?kkk111 明らかに、すべての変数を正の値に設定することができますが、それは些細なことなので、正に設定された変数には制限があります。kkk 私はSATからモノトーンブール式への削減を試みました。私が試したことの1つは、すべての負のリテラルにダミー変数を代入することです。例えば、私が交換しようとしたとZ 1、及び私は強制的に試み、X 1およびZ 1が異なる値であること。私はこれをうまく機能させることができませんでした。¬x1¬x1\neg x_1z1z1z_1x1x1x_1z1z1z_1

3
XOR関係を持つ2-SATはNP完全ですか?
「2-SAT with XOR-relations」の多項式アルゴリズムがあるかどうか疑問に思っています。2-SATとXOR-SATは両方ともPにありますが、その組み合わせですか? 入力例: 2-SATパート: (a or !b) and (b or c) and (b or d) XOR部分: (a xor b xor c xor 1) and (b xor c xor d) つまり、入力は次のブール式です。 (a∨¬b)∧(b∨c)∧(b∨d)∧(a⊕b⊕¬c)∧(b⊕c⊕d).(a∨¬b)∧(b∨c)∧(b∨d)∧(a⊕b⊕¬c)∧(b⊕c⊕d).(a \lor \neg b) \land (b \lor c) \land (b \lor d) \land (a \oplus b \oplus \neg c) …

1
数式がちょうど1つの満足のいく割り当てを持っているかどうかを決定する複雑さ
決定問題 ブール式を考えると、んφは、割り当てを満たす正確に一つを持っていますか?ϕϕ\phiϕϕ\phi あると見ることができる、U Pは -hard及びC O N Pは -hard。その複雑さについてもっと知られていますか?Δ2Δ2\Delta_2U PUP\mathsf{UP}c o N PcoNP\mathsf{coNP}

1
絞り込みタイプの推測
職場では、動的言語に関する型情報を推論する必要があります。次のように、ステートメントのシーケンスをネストされたlet式に書き換えます。 return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then T else F; Z => if x then { T; Z } else { F; Z } 一般的なタイプ情報から始めて、より具体的なタイプを推測しようとしているので、自然な選択は絞り込みタイプです。たとえば、条件演算子は、trueブランチとfalseブランチの型の和集合を返します。単純なケースでは、非常にうまく機能します。 ただし、次のタイプを推測しようとしたときに、思わぬ障害に遭遇しました。 function …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

1
トップのSATソルバーは簡単な数値を因数分解できますか?
最新のSATソルバーは、SATインスタンスの多くの実例を解決するのに非常に優れています。ただし、ハードなものを生成する方法はわかっています。たとえば、因数分解からSATへの削減を使用し、RSA番号を入力として指定します。 これは問題を提起します:私が因数分解の簡単な例を取るならどうでしょうか。ビットでつの大きな素数をとる代わりに、ビットで素数を、ビットで素数q をとると、とエンコードして SATインスタンスとして。は、要素の1つが非常に小さいため、ブルートフォース検索またはふるい法で簡単に計算できる数です。ファクタリングからSATへの標準的な削減を伴う最新のSATソルバーもこの構造を採用しますか?n/2n/2n/2ppplognlog⁡n\log nn/lognn/log⁡nn/\log nN=pqN=pqN = pqFACTOR(N)FACTOR(N)\mathrm{FACTOR}(N)NNN SAT-ソルバー率トップことができますすばやく?N=pqN=pqN = pq|p|=logn|p|=log⁡n|p| = \log n

2
充足可能性の問題の解決策を見つけることは、充足可能性を決定することよりも難しいですか?
与えられたブール式が計算上満足できるものであるかどうかを決定する問題は、実際に式の解を見つけることとは計算的に異なりますか? 言い換えれば、ブール変数の「正しい設定」を明示的に決定せずに、特定の式が満足できることを見つける別の方法はありますか?それとも、すべての可能な証明が多項式時間で「正しい設定」に短縮されますか? 私の無知を許して、私は工学部の学生です。ウィキペディアは、SATまたはUNSATを見つけるだけの行為がNP完全であることを示唆しているようです。

1
DNFからCNFへの変換:簡単または難しい
CNFからDNFへの変換がNP-Hard(および関連するMathスレッド)であることを証明するスレッドに関連して: DNFからCNFへの他の方向はどうですか?簡単ですか、難しいですか。 このペーパーの 2ページ目では、「CNF表現からDNF表現(またはその逆)に切り替えるときのサイズの最大の拡大に関心がある」と言うと、両方向が等しく難しいことを示唆しているようです。 しかし、DNF-SATはPにあり、CNF-SATはNP完全です。したがって、DNF式与えられると、長さが長さの多項式である、等価な CNF式が存在するはずです。また、変換は、ポリ時間で実行できます。これは正しいです?ϕ1ϕ1\phi_1ϕ2ϕ2\phi_2ϕ1ϕ1\phi_1ϕ1→ϕ2ϕ1→ϕ2\phi_1 \to \phi_2 編集:変更同等にequisatisfiable(であるが、追加の変数がで許可されている)。ϕ2ϕ2\phi_2

1
リテラルが1回しか出現できない3SATの制約バージョンが多項式時間で解けることを証明するにはどうすればよいですか?
私は課題(「アルゴリズム -S . Dasgupta、CH Papadimitriou、およびUV Vaziraniによる第8章、問題8.6a」から引用)を作成しようとしていますが、それを言い換えています。 3SATは、各リテラルが最大2回出現する数式に制限されている場合でもNP完全のままであることを考えると、各リテラルが最大1回出現する場合、問題は多項式時間で解決可能であることを示します。 私は条項を複数のグループに分けることでこれを解決しようとしました: 他の条項と共通の変数を持たない条項 共通する変数が1つだけの句 2つの変数が共通する句 3つの変数すべてに共通する句 私の推論は、そのようなグループの#が有限であるというリテラルに沿って試行されました(リテラルが2回以上存在しないという制限が課せられたため)、最初に最も制限されたグループ(グループ4)を満たしてから、制限の少ないグループ(3、2、次に1)になりますが、これは、各リテラルが出現する可能性がある3SATの制限されたバージョンの場合とあまり変わらないので、どこにも行き着くわけではないことに気付きましたNP完全であることが証明されている最大2回。 ヒント/解決策をオンラインで検索してみましたが、入手できるのはこのリンクだけでした。ここで、示されたヒントでは十分な意味がありませんでした。 xixix_iCjCjC_jxixix_ixi¯¯¯¯¯xi¯\overline{x_i}CkCkC_kCj∨Ck¯¯¯¯¯¯Cj∨Ck¯C_j \lor \overline{C_k} CjCjC_jCkCkC_kCj∨Ck¯¯¯¯¯¯Cj∨Ck¯C_j \lor \overline{C_k}Cj∨Ck¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯Cj∨Ck¯\overline{C_j \lor C_k} ヒントを解読するか、私が探求できるパスを提供することの助けがあれば、本当に感謝しています。

1
競合駆動型条項学習のバックトラッキングの説明
ここのウィキペディアのページでは、CDCLアルゴリズムがかなりよく説明されています(写真はプリンストンのSharad Malikが作成したスライドから撮られたようです)。しかし、どのようにバックトラックするかを説明するとき、それは「適切なポイントへ」と言うだけです。MiniSATもCDCLアルゴリズムのバリアントを使用しているので、このペーパーを読みました。彼らが言っているように見えるのは、学習された節が単位節になるまで後戻りする必要があるということです。それは確かに明確化ですが、私には意味がありません。最後の割り当ては間違いなく、学習した矛盾句の一部になります(おそらくここで間違っているのでしょうか)。そのため、1つのステップをバックトラックすると、すぐに学習した句のユニットが作成され、最後に割り当てられた値が反転します。アルゴリズムは、十分に遠くまでバックトラックすることなく、DPLLとまったく同じように処理されます。さらに、ウィキペディアのページはこのルールに従っていません。望ましいように見えるので、はるかに後戻りします。 どれだけバックトラックすることになっていますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.