ความซับซ้อนของการคำนวณความเท่าเทียมกันของสูตร CNF ที่อ่านสองครั้งตรงข้าม (


11

ในสูตร CNF ที่อ่านสองครั้งตรงข้ามแต่ละตัวแปรจะปรากฏสองครั้งเมื่อบวกและลบครั้งเดียว

ฉันสนใจในปัญหาซึ่งประกอบด้วยการคำนวณความเท่าเทียมกันของจำนวนที่ได้รับมอบหมายที่น่าพอใจของสูตร CNF ที่อ่านสองครั้งตรงข้ามRtw-Opp-CNF

ฉันไม่สามารถหาข้อมูลอ้างอิงเกี่ยวกับความซับซ้อนของปัญหาดังกล่าวได้ สิ่งที่ฉันพบได้ใกล้ที่สุดคือรุ่นการนับคือ# P -complete (ดูหัวข้อ 6.3 ในบทความนี้ )#Rtw-Opp-CNF#P

ขอบคุณล่วงหน้าสำหรับความช่วยเหลือของ.


อัปเดต 10 เมษายน 2559

  • ในบทความนี้ปัญหาแสดงเป็นP-สมบูรณ์อย่างไรก็ตามสูตรที่ผลิตโดยการลดจาก3 SATไม่ได้อยู่ใน CNF และทันทีที่คุณพยายามแปลงกลับเป็น CNF คุณจะได้รับ สูตรอ่านสามครั้งRtw-Opp-SATP3SAT
  • รุ่นเสียงเดียวแสดงเป็นP-สมบูรณ์ในบทความนี้ ในกระดาษดังกล่าวRTW-Opp-CNFเป็นที่กล่าวถึงอย่างรวดเร็วในตอนท้ายของมาตรา 4: องอาจกล่าวว่าเป็นคนเลว ไม่ชัดเจนสำหรับฉันว่าความเสื่อมโทรมมีความหมายตรงอะไรและมันไม่ได้บ่งบอกถึงความแข็งRtw-Mon-CNFPRtw-Opp-CNF

อัปเดต 12 เมษายน 2559

มันจะเป็นที่น่าสนใจมากที่จะรู้ว่าใครได้เคยศึกษาความซับซ้อนของปัญหา เมื่อได้รับสูตร CNF ที่อ่านสองครั้งตรงข้ามปัญหาดังกล่าวจะขอให้คำนวณความแตกต่างระหว่างจำนวนของการมอบหมายที่น่าพอใจโดยมีตัวแปรจำนวนคี่ตั้งค่าเป็นจริงและจำนวนของการมอบหมายที่น่าพอใจที่มีจำนวนตัวแปรที่ตั้งค่าเป็นจริง ฉันไม่พบวรรณกรรมใด ๆ เกี่ยวกับมันΔRtw-Opp-CNF


อัปเดต 29 พฤษภาคม 2559

ดังที่เอมิลJebekábekชี้ให้เห็นในความคิดเห็นของเขามันไม่เป็นความจริงที่วาเลียนท์พูดว่าปัญหาแย่ลง เขาเพียง แต่กล่าวว่าปัญหาที่ จำกัด เช่นนี้Pl-Rtw-Opp-3CNFนั้นแย่ลง ในขณะเดียวกันฉันก็ยังไม่รู้ว่าความเสื่อมนั้นหมายถึงอะไร แต่อย่างน้อยตอนนี้ดูเหมือนชัดเจนว่ามันเป็นคำพ้องความหมายของการขาดพลังการแสดงออกRtw-Opp-CNFPl-Rtw-Opp-3CNF


⊕Rtw-Opp-CNF นั้นยากเหมือน⊕Rtw-Mon-CNF คุณสามารถสร้างแกดเจ็ตการปฏิเสธ: (i0 v x0 v x1) (x1 v x2) (i1 v x0 v x2) ถ้า i0 = i1 ดังนั้น weight = 0 (ใน modulo 2) น้ำหนักอื่น = 1

ฉันไม่พบการลดลงของ⊕Rtw-Mon-CNF เป็น⊕Rtw-Opp-CNF แต่ฉันพบอัลกอริทึมแบบพหุนามเพื่อแก้ปัญหา⊕Rtw-Opp-CNF ดังนั้น⊕Rtw-Opp-CNF จึงง่ายกว่า

ฉันไม่สามารถพูดถึง⊕Rtw-Opp-CNF ในเอกสารของ Valiant เขาอ้างว่า⊕Pl-Rtw-Opp-3CNF นั้น "เสื่อม" แต่เกี่ยวข้องกับข้อ จำกัด เพิ่มเติมหลายประการ
Emil Jeřábek

@ EmilJeřábek: คุณพูดถูก ฉันถูกทำให้เข้าใจผิดโดยไม่รู้ถึงความหมายของ"ความเสื่อม"และฉันใช้การเรียงลำดับของการให้เหตุผลแบบเดียวกับที่ใช้ตามปกติเมื่อมีผลลัพธ์ที่สมบูรณ์: หากปัญหาบางอย่างเสร็จสิ้นในบางคลาส แม้ว่าฉันจะยังไม่ทราบว่า"เสื่อม"หมายถึงอะไร แต่อย่างน้อยตอนนี้ฉันก็ชัดเจนว่าคำดังกล่าวเป็นคำพ้องความอ่อนแอ (เช่นการขาดพลังการแสดงออก) ดังนั้นการใช้เหตุผลดังกล่าวไม่สามารถนำมาใช้ได้ ฉันแก้ไขคำถามให้ถูกต้องแล้ว
Giorgio Camerani

1
@Maciej: จริงเหรอ? อัลกอริทึมพหุนามของคุณทำงานอย่างไร
Giorgio Camerani

คำตอบ:


3

ปรากฎว่าทุกสูตรตรงข้ามอ่านครั้งที่สองมีจำนวนที่ได้รับมอบหมายที่น่าพอใจ นี่เป็นข้อพิสูจน์ที่ดีถึงแม้ว่าอาจมีใครสามารถกำจัดคำศัพท์เชิงกราฟ

ให้เป็นสูตร CNF ตรงข้ามอ่านสองครั้ง ไม่มีข้อใดที่มีทั้งตัวแปรและการปฏิเสธของมันϕ

พิจารณากราฟมีชุดจุดสุดยอดเป็นคำสั่งของφและสำหรับแต่ละตัวแปรxเราเพิ่ม (ไม่มีทิศทาง) ขอบที่เป็นเหตุการณ์ที่เกิดขึ้นในสองประโยคที่มีx สมมติฐาน WLOG ของเราในϕกล่าวว่ากราฟนี้ไม่มีการวนซ้ำในตัวเอง ยิ่งกว่านั้นให้คิดถึงการติดฉลากแต่ละขอบโดยตัวแปรที่กำหนดไว้ วิธีนี้เราสามารถแยกความแตกต่างระหว่างขอบขนานGϕxxϕ

การปฐมนิเทศของเป็นกราฟที่มีขอบที่จะเกิดขึ้นโดยการกำหนดทิศทางให้กับแต่ละขอบในG เรียกการวางแนวของG ที่ยอมรับได้ถ้าจุดสุดยอดของGทุกอันมีขอบออก มันเป็นเรื่องง่ายที่จะเห็นว่าความพึงพอใจที่ได้รับมอบหมายเพื่อφอยู่ในการติดต่อ bijective กับทิศทางที่ยอมรับของGGGG GϕG

ตอนนี้ฉันอ้างว่าจำนวนทิศทางที่ยอมรับได้ของคือเท่ากัน อาร์กิวเมนต์คือ "by involution": ฉันสร้าง map Φด้วยคุณสมบัติต่อไปนี้:GΦ

  1. มีการกำหนดไว้อย่างสมบูรณ์ (การปฐมนิเทศที่ยอมรับได้ถูกแมปไว้ที่ไหนสักแห่ง)Φ
  2. ส่งการหมุนที่ยอมรับได้ไปยังการหมุนที่ยอมรับได้Φ
  3. ΦΦΦ
  4. Φ

ΦG

ΦGGΦG

  1. ทุกกราฟที่กำกับสามารถแบ่งพาร์ติชันเป็นส่วนประกอบที่เชื่อมต่ออย่างยิ่ง
  2. GΦ(G)ΦΦ(G)G
  3. Φ(G)G
  4. G

สังเกตที่ดี! วิธีที่ง่ายกว่าในการมองเห็นสิ่งนี้ (ดังที่คุณพูดว่า "กำจัดคำศัพท์เชิงทฤษฎี - กราฟ") คือการสังเกตว่าถ้าการมอบหมายเป็นไปตาม F แล้วการมอบหมาย a '(x) = 1-a (x) ก็เป็นที่พอใจ F เช่นกัน สิ่งนี้สามารถแสดงได้อย่างง่ายดายโดยการเหนี่ยวนำกับจำนวนตัวแปรของ F.
holf

Φ01203101200310

x¬xy¬z¬yz(1,1,1)(0,0,0)

ΦMxyxxyM

@Emil: อ่าใช่คุณพูดถูก ถ้าฉันเข้าใจคำแนะนำของคุณถูกต้องคุณกำลังบอกว่าแบ่งการวางแนวเป็นส่วนประกอบที่เชื่อมต่ออย่างยิ่งและย้อนกลับขอบภายในส่วนประกอบ ฉันคิดว่ามันใช้งานได้ ฉันจะอัปเดตคำตอบของฉันตาม ขอบคุณมาก!!
Andrew Morgan

0

ฉันไม่แน่ใจว่าแนวคิดของฉันเป็นที่เข้าใจหรือไม่ดังนั้นฉันจะอธิบายตัวอย่างของ Giorgio:

(x1x2x3)(¬x1¬x3x4)(¬x4x5)(¬x2¬x5¬x6)

ก่อนอื่นฉันต้องเปลี่ยนสิ่งนี้ในรูปแบบ DNF:

(x1x2x3)(¬x1¬x3x4)(¬x4x5)(¬x2¬x5¬x6)

นี่ควรให้คำตอบเดียวกัน และไม่ว่าฉันจะคำนวณจำนวนโมดูโล 2 สำหรับวิธีนี้:

(x1x2x3)(¬x1¬x3x4)(¬x4x5)(¬x2¬x5¬x6)

หรือสำหรับสิ่งนี้:

(x1x2x3)(¬x1¬x3x4)(¬x4x5)(¬x2¬x5¬x6)

ดังนั้นฉันเลือกที่สอง ฉันมีรากฟันเทียม:

i0(x1x2x3)

i1(¬x1¬x3x4)

i2(¬x4x5)

i3(¬x2¬x5¬x6)

ตอนนี้ฉันกำลังสร้างระบบสมการ:

j0j1=1

j0j3=1

j0j1=1

j2j3=1

j3=1

x6


หากความคิดของฉันเป็นปกติคำตอบคือ "ไม่" แน่นอนฉันคิดว่าตัวแปรเกิดขึ้นครั้งเดียวในเชิงบวกและอีกครั้งในการปฏิเสธ
Maciej

x4j1j2j3j2j1j0

-1

Rtw-Opp-CNFf(X)g(X)f(X)g(X)f(X)g(X)

i0i1i2...in1

ijx0x1¬x2

2ki0i1i2...in1

i0i1i2...in1

ab=ab(ab)

1) มีตัวแปรทั้งหมด

2) ทุกตัวแปรเกิดขึ้น exacly หนึ่ง (ถ้าตัวแปรเกิดขึ้นสองครั้งจากนั้นเรามีค่าบวกและลบใน implicant เดียวดังนั้นสิ่งนี้จะให้เป็น 0)

x0i0x0i1

j0j1=1

j0j1i0i1i0j0j02l


Rtw-Opp-CNF

@AndrewMorgan แต่สูตรที่มีประโยคที่ไม่ซ้ำกันที่มีตัวแปรทั้งหมดเพียงครั้งเดียวจะไม่เป็นสูตรอ่านสองครั้ง ข้อ จำกัด คือว่าสองครั้งไม่ได้ที่มากที่สุดเป็นครั้งที่สอง
Giorgio Camerani

x6(x1x2x3)(¬x1¬x3x4)(¬x4x5)(¬x2¬x5¬x6)x6

(x1x2)(x1¯)(x2¯)(x1x2)(x1¯x2¯)(x1)(x1¯)(x2)(x2¯)

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