Transcript 2SAT is NL
2SAT is NL-Complete 2SAT ∈ NL • הבחנה :כל פסוקית ) (a ∨ bשקולה לפסוקיות גרירה )(¬a→b), (¬b→a ¬b • נגדיר גרף גרירות: – צמת לכל ליטרל – 2קשתות לכל פסוקית: )(a ∨ b )(¬a→b), (¬b→a a c ¬c ¬a b 2SAT ∈ NL – צמת לכל ליטרל – 2קשתות לכל פסוקית(¬a→b), (¬b→a) : • הבחנה :1קשת מ a-ל ⇔ b-קשת מ ¬b-ל¬a- ולכן ,מסלול מ a-ל ⇔ b-מסלול מ ¬b-ל¬a- ¬b • הבחנה :2אם קיים מסלול מ a-לb- אז aגורר את b a c ¬c ¬a b ¬b 2SAT ∈ NL a c ¬c • משפט ϕ :לא ספיקה אמ"ם קיים xכך שיש מסלול מ x-ל ¬x-ומ ¬x-לx- ¬a • הוכחה בנפנוף ידיים: – אם קיים מסלול מ x-ל ¬x-ומ ¬x-ל ,x-אז xגורר את ¬x ולהיפך – סתירה! – אם קיים מסלול רק מ x-ל ¬x-נציב x=F (ולהיפך אם קיים מסלול מ ¬x-ל)x- – נציב Tלכל הליטרלים ש ¬x-גורר b ¬b 2SAT ∈ NL a c ¬c ¬a • הוכחה בנפנוף ידיים: b – אם קיים מסלול רק מ x-ל ¬x-נציב x=F (ולהיפך אם קיים מסלול מ ¬x-ל)x- – נציב Tלכל הליטרלים ש ¬x-גורר – אם הגענו לסתירה: y → ¬y → x z → ¬z → ¬x אזי y → ¬y → x → z → ¬z → ¬x סתירה! ¬b 2SAT ∈ NL a c ¬c ¬a – משפט ϕ :לא ספיקה אמ"ם קיים xכך שיש מסלול מ x-ל ¬x-ומ ¬x-לx- – עד ל-2SAT-משלים: xועדים למסלולים מ x-ל ¬x-ומ ¬x-לx- – מוודא מריץ פעמיים את Mst-CONNומקבל אמ"ם Mst-CONNקבל את 2המסלולים – 2SAT ∈ NL ⇐ 2SAT ∈ coNL b st-non-CONN ≤L 2SAT הרדוקציה חייבת לעבוד לכל גרף ¬b • נסיון :1 a – נקח גרף גרירות – נחשב את הפסוק המתאים – הפסוק שקבלנו ספיק אמ"ם אין מסלול מ x-ל¬x- ומ ¬x-לx- בבעיה המקורית מותר מסלול מ t-לs- c לכל ,xאבל אנחנו רוצים מ s-לt- ¬c ¬a b st-non-CONN ≤L 2SAT הבחנה :אין מסלול ⇔ קיים חתך t • היינו רוצים פסוק 2SATשיגיד: "אין קשתות מאדום לירוק" • רדוקציה: – לכל קשת ) (a→bנתאים פסוקית )(a ∨ ¬b – כדי לוודא ש s-אדום ו t-ירוק ,נוסיף פסוקיות ) (¬s ∨ ¬sו(t ∨ t)- s st-non-CONN ≤L 2SAT t – לכל קשת ) (a→bנתאים פסוקית )(a ∨ ¬b – נוסיף פסוקיות ) (¬s ∨ ¬sו(t ∨ t)- • שלמות: – אם לא קיים מסלול מ s-לt- ⇐ קיים חתך כך שאין אף קשת מאף אדום לירוק ⇐ ההשמה Fלכל האדומים ו T-לכל הירוקים מספקת את הפסוק s st-non-CONN ≤L 2SAT t – לכל קשת ) (a→bנתאים פסוקית )(a ∨ ¬b – נוסיף פסוקיות ) (¬s ∨ ¬sו(t ∨ t)- • נאותות: )(s=v0, v1, …, vl=t – אם קיים מסלול מ s-ל:t- – לכל השמה מספקת קיים i>0מינימלי כך שvi=T- • אם לא קיים ,iאז ) (t ∨ tלא מסתפקת • אם i=0אז ) (¬s ∨ ¬sלא מסתפקת ⇐ קבלנו סתירה ל(vi-1 ∨ ¬vi)- ⇐ לא קיימת השמה שמספקת את הפסוק s st-non-CONN ≤L 2SAT t – לכל קשת ) (a→bנתאים פסוקית )(a ∨ ¬b – נוסיף פסוקיות ) (¬s ∨ ¬sו(t ∨ t)- • סיבוכיות: – מעבר על כל הקשתות בגרף – זכרון עבודה לוגריתמי s