การพิสูจน์ DOUBLE-SAT นั้นสมบูรณ์แล้ว


13

ปัญหา SAT ที่เป็นที่รู้จักกันดีถูกกำหนดไว้ที่นี่เพื่อประโยชน์ในการอ้างอิง

ปัญหา DOUBLE-SAT ถูกกำหนดเป็น

DOUBLE-SAT={ϕϕ has at least two satisfying assignments}

เราจะพิสูจน์ได้อย่างไรว่าเป็นปัญหาสมบูรณ์

มากกว่าหนึ่งวิธีในการพิสูจน์จะได้รับการชื่นชม

คำตอบ:


27

นี่คือทางออกหนึ่ง:

ชัดเจน Double-SAT เป็นของเนื่องจาก NTM สามารถตัดสินใจได้ว่า Double-SAT ดังต่อไปนี้: บนสูตรอินพุตบูลีน , คาดเดาการมอบหมาย 2 ครั้งและตรวจสอบว่าทั้งสองตอบสนอง .NPϕ(x1,,xn)ϕ

เพื่อแสดงให้เห็นว่า Double-SAT เป็นเสร็จสมบูรณ์เราให้การลดลงจาก SAT เป็น Double-SAT ดังต่อไปนี้:NP

ในอินพุต :ϕ(x1,,xn)

  1. แนะนำตัวแปรใหม่Yy
  2. สูตรเอาท์พุทy)ϕ(x1,,xn,y)=ϕ(x1,,xn)(yy¯)

ถ้าเป็นของ SAT แล้วมีการมอบหมายอย่างน้อย 1 อย่างและมีอย่างน้อย 2 อย่างที่เราพอใจ ประโยคใหม่ ( ) โดยการกำหนดหรือให้กับตัวแปรใหม่ดังนั้น ( , ... , , ) Double-SATϕ(x1,,xn)ϕϕ(x1,,xn,y)yy¯y=1y=0yϕx1xny

ในทางตรงกันข้ามถ้าจากนั้นอย่างชัดเจนไม่มีการกำหนดความพึงพอใจอย่างใดอย่างหนึ่งเพื่อให้SAT}ϕ(x1,,xn)SATϕ(x1,,xn,y)=ϕ(x1,,xn)(yy¯)ϕ(x1,,xn,y)Double-SAT

ดังนั้นดังนั้น Double-SAT จึงเป็นเสร็จสมบูรณ์SATpDouble-SATNP


มันดีกว่าข้อเสนอของฉัน
ราฟาเอล

10

คุณรู้ว่านั้นสมบูรณ์แล้ว คุณสามารถหาการลดลงจากเป็นหรือไม่ คุณสามารถจัดการสูตรที่พึงพอใจเพื่อให้ผลลัพธ์มีการมอบหมายอย่างน้อยสองรายการได้หรือไม่? โปรดทราบว่าการจัดการเดียวกันไม่สามารถแสดงสูตรที่ไม่น่าพอใจได้S A T D O U B L E - S A TSATSATDOUBLE-SAT

สำหรับสูตรใด ๆสูตรมีอย่างน้อยสองเท่าของจำนวน assingments ที่น่าพอใจเป็นโดยที่เป็น homomorphism ที่เปลี่ยนชื่อตัวแปรทั้งหมดเป็นชื่อใหม่φ ( φ ) φ φφf(φ)φf

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.