ตรวจสอบสูตรที่มีสองปริมาณ (


15

นักแก้ปัญหา SAT ให้วิธีที่มีประสิทธิภาพในการตรวจสอบความถูกต้องของสูตรบูลีนด้วยหนึ่งตัวระบุ

ยกตัวอย่างเช่นในการตรวจสอบความถูกต้องของเราสามารถใช้ตัวแก้ SAT เพื่อพิจารณาว่าφ ( x )น่าพอใจหรือไม่ ในการตรวจสอบความถูกต้องของ∀ x φ ( x )เราสามารถใช้แก้ SAT เพื่อตรวจสอบว่า¬ φ ( x )คือพอใจ (นี่คือx = ( x 1 , … , x n )คือn -vector ของตัวแปรบูลีนและφ∃x.φ(x)φ(x)∀x.φ(x)¬φ(x)x=(x1,…,xn)nφ เป็นสูตรบูลีน)

ตัวแก้ปัญหา QBF ได้รับการออกแบบมาเพื่อตรวจสอบความถูกต้องของสูตรบูลีนที่มีจำนวนโดยพลการ

ถ้าเรามีสูตรที่มีสองตัวนับ พวกเขามีอัลกอริทึมที่มีประสิทธิภาพสำหรับการตรวจสอบความถูกต้องหรือไม่: เป็นสิ่งที่ดีกว่าการใช้อัลกอริทึมทั่วไปสำหรับ QBF หรือไม่? การจะมีความเฉพาะเจาะจงมากขึ้นผมมีสูตรของแบบฟอร์ม (หรือ∃ x . ∀ y . ψ ( x , y ) ) และต้องการตรวจสอบความถูกต้อง มีอัลกอริทึมที่ดีสำหรับเรื่องนี้หรือไม่? แก้ไข 4/8:ฉันเรียนรู้ว่าบางครั้งสูตรคลาสนี้เรียกว่า 2QBF ดังนั้นฉันจึงมองหาอัลกอริทึมที่ดีสำหรับ 2QBF∀x.∃y.ψ(x,y)∃x.∀y.ψ(x,y)

เชี่ยวชาญเพิ่มเติม: โดยเฉพาะอย่างยิ่งในกรณีของฉันฉันมีสูตรของแบบฟอร์มซึ่งฉันต้องการตรวจสอบความถูกต้องโดยที่f , gเป็นฟังก์ชันที่สร้างเอาต์พุตk -bit มีอัลกอริทึมสำหรับตรวจสอบความถูกต้องของสูตรเฉพาะนี้อย่างมีประสิทธิภาพมากกว่าอัลกอริทึมทั่วไปสำหรับ QBF หรือไม่∀x.∃y.f(x)=g(y)f,gk

ป.ล. ฉันไม่ได้ถามถึงความแข็งที่แย่ที่สุดในทฤษฎีความซับซ้อน ฉันถามเกี่ยวกับอัลกอริทึมที่มีประโยชน์ในทางปฏิบัติ (เท่าที่นักแก้ปัญหา SAT ในปัจจุบันมีประโยชน์ในหลาย ๆ ปัญหาแม้ว่า SAT นั้นจะเป็น NP-complete)


4
ไม่ได้เป็นหลักเทียบเท่ากับ ∃ x ∀ Y ψ ( x , Y ) ∀x∃y ψ(x,y)∃x∀y ψ(x,y)
— Huck Bennett

2
ฉันคิดว่า OP หมายถึงสิ่งนี้อย่างไม่เป็นทางการเนื่องจากทั้งสองเป็นเรื่องยากสำหรับนักแก้ปัญหา SAT และวิธีแก้ปัญหาที่น่าสนใจ
— Suresh Venkat

1
@ HuckBennett ฉันคิดว่าทั้งสองมีความแข็งเท่ากัน (พิสูจน์: เป็น IFF ถูกต้อง¬ ∀ x . ∃ Y . ¬ ψ ( x , Y )เป็นดังนั้นถ้าเรามีวิธีการทดสอบความถูกต้องของสูตรของรูปแบบ. ∀ x . ∃ y . ψ ( x , y )เรายังสามารถทดสอบความถูกต้องของสูตร∃ x . ∀ y∃x.∀y.ψ(x,y)¬∀x.∃y.¬ψ(x,y)∀x.∃y.ψ(x,y) โดยให้ ψ ' ( x , Y ) = ¬ ψ ( x , Y )และการทดสอบความถูกต้องของ ∀ x ∃ Y ψ ′ ( x , y ) .) แต่อย่างไรก็ตามฉันจะสนใจอัลกอริธึมสำหรับทั้งสองกรณี ∃x.∀y.ψ(x,y)ψ′(x,y)=¬ψ(x,y)∀x.∃y.ψ′(x,y)
— DW

6
@DW ไม่จำเป็นเช่น SAT และ TAUT ไม่เชื่อว่ามีความซับซ้อนเหมือนกัน
— Kaveh

4
@chazisop: ผมคิดว่า OP จะขอ -SAT อัลกอริทึม / แก้ไม่แก้ QBF ทั่วไป อย่างไรก็ตามมีนักแก้ปัญหา QBF มากมาย ดูแท็บ "นักแก้ปัญหา" ที่qbflib.orgΠ2/Σ2
— Huck Bennett

คำตอบ:


22

ถ้าผมอาจจะค่อนข้างโจ๋งครึ่มโฆษณาตัวเองที่เราเขียนบทความเกี่ยวกับเรื่องนี้ปีก่อน ที่เป็นนามธรรมตามขั้นตอนวิธี 2QBF ฉันได้รับการติดตั้ง qdimacs ซึ่งฉันสามารถให้ได้หากคุณต้องการ แต่จากประสบการณ์ของฉันฉันจะได้รับประโยชน์อย่างมากจากอัลกอริทึมที่เชี่ยวชาญสำหรับปัญหาเฉพาะ นอกจากนี้ยังมีรายงานฉบับเก่าการศึกษาเปรียบเทียบอัลกอริธึม 2QBFซึ่งนำเสนออัลกอริทึมที่ไม่สามารถทำได้อย่างง่ายดาย


! น่ากลัว ขอบคุณ Mikolas นี่เป็นเพียงสิ่งที่ฉันหวังไว้
— DW

2
สวัสดี @DW ดีใจที่ฉันสามารถช่วยได้ หวังว่าคุณจะพบว่ามีประโยชน์นี้บ้าง QBF เป็นสัตว์ร้ายที่แตกต่างกันซึ่ง SAT ต้องระวังตัวเล็กน้อยเพราะสิ่งต่าง ๆ สามารถระเบิดได้ง่ายมาก :-) อย่าลังเลที่จะเขียนอีเมลถึงฉันหากคุณมีคำถามเพิ่มเติมเกี่ยวกับงานของเรา
— Mikolas

7

ฉันได้อ่านบทความสองฉบับที่เกี่ยวข้องกับเรื่องนี้หนึ่งเรื่องที่เกี่ยวข้องกับ 2QBF โดยเฉพาะ เอกสารมีดังต่อไปนี้:

การกำหนดที่เพิ่มขึ้น , Markus N. Rabe และ Sanjit Seshia, ทฤษฎีและการประยุกต์ใช้การทดสอบความพึงพอใจ (SAT 2016)

พวกเขาได้ดำเนินการขั้นตอนวิธีการของพวกเขาในเครื่องมือชื่อCADET แนวคิดพื้นฐานคือการเพิ่มข้อ จำกัด ใหม่ลงในสูตรอย่างต่อเนื่องจนกระทั่งข้อ จำกัด อธิบายถึงฟังก์ชัน Skolem ที่ไม่ซ้ำกันหรือจนกว่าจะไม่มีการยืนยัน

ประการที่สองคือการแก้ปัญหา QBF ที่เพิ่มขึ้น Florian Lonsing และ Uwe Egly

ดำเนินการในเครื่องมือที่ชื่อว่าDepQBF มันไม่ได้ใส่ข้อ จำกัด ใด ๆ กับจำนวนของการสลับปริมาณ มันเริ่มต้นด้วยสมมติฐานที่ว่าเรามีสูตร qbf ที่เกี่ยวข้องอย่างใกล้ชิด มันขึ้นอยู่กับการแก้ปัญหาที่เพิ่มขึ้นและไม่โยนประโยคที่เรียนรู้ในระหว่างการแก้ปัญหาครั้งสุดท้าย มันเพิ่ม clauses และ cubes ให้กับสูตรปัจจุบันและหยุดถ้า clauses หรือ cubes ว่างเปล่าแสดง unsat หรือ sat

แก้ไข : สำหรับมุมมองว่าวิธีการเหล่านี้ทำงานได้ดีแค่ไหนสำหรับ 2QBF-benchmarks โปรดดูที่ผลการ QBFEVal-2018สำหรับผลการ QBF ประจำปีการแข่งขันQBFEVAL ในปี 2019 ไม่มีการติดตาม 2QBF

ใน2QBF ติดตาม QBFEVAL-2018 DepQBF เป็นผู้ชนะ , CADETเป็นครั้งที่สองในการแข่งขัน

ดังนั้นวิธีการทั้งสองนี้ใช้งานได้ดีในทางปฏิบัติจริง ๆ (อย่างน้อยในมาตรฐาน QBFEVAL)


4

∃x∀yϕDa∈D¬ϕ[a/x]b∈Baϕ[b/y]ϕ


2
ϕϕ

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