SAT-solvers สามารถใส่ตัวเลขได้ง่ายหรือไม่?


11

เครื่องมือแก้ปัญหา SAT สมัยใหม่นั้นเก่งในการแก้ปัญหาตัวอย่างจริงของหลาย ๆ กรณีของ SAT อย่างไรก็ตามเรารู้วิธีสร้างฮาร์ดไดรฟ์ตัวอย่างเช่นใช้การลดแฟ็กตอริ่งเป็น SATและให้หมายเลข RSA เป็นอินพุต

นี่ทำให้เกิดคำถาม: ถ้าฉันใช้ตัวอย่างง่ายๆของการแยกตัวประกอบ แทนที่จะใช้สองช่วงเวลาขนาดใหญ่บนบิตเกิดอะไรขึ้นถ้าฉันเอาไพรม์pบนlog n bits และไพรม์คิวบนn / log nบิตให้N = p qและเข้ารหัสF A C T O R ( N )เป็นตัวอย่างของ SAT ยังไม่มีข้อความn/2plognn/lognN=pqFACTOR(N)Nจะเป็นจำนวนที่ง่ายต่อการแยกตัวประกอบโดยวิธีการค้นหาแบบตะแกรงหรือบังคับเนื่องจากปัจจัยหนึ่งมีขนาดเล็ก SAT-modern ที่ทันสมัยพร้อมการลดมาตรฐานจากแฟคตอริ่งไปจนถึง SAT รับโครงสร้างนี้ด้วยหรือไม่

SAT-solvers factor ที่ไหน| p | = log nอย่างรวดเร็ว?N=pq|p|=logn

คำตอบ:


10

มีอินสแตนซ์ที่ง่ายกว่านี้ซึ่งเราสามารถทราบได้ว่าอัลกอริธึมปัจจุบันไม่สามารถแก้ไขได้ในเวลาแบบเอ็กซ์โพเนนเชียล อัลกอริธึมเหล่านี้ไม่สามารถนับได้ (เกือบทั้งหมดเป็นการปรับปรุงของ DPLL ซึ่งสอดคล้องกับระบบการพิสูจน์ความละเอียดเชิงประพจน์)

น่าเสียดายที่ตัวอย่างดังกล่าวเป็นกรณีที่ไม่น่าพอใจ คำถามเกี่ยวกับการค้นหาอินสแตนซ์ยากที่เป็นธรรมชาติสำหรับอัลกอริธึมเหล่านี้เป็นปัญหาการวิจัยที่น่าสนใจ (Russeell Impagliazzo กล่าวถึงสิ่งนี้ในระหว่างการประชุมเชิงปฏิบัติการพิสูจน์ความซับซ้อนเมื่อปีที่แล้วที่ Banff) มีกรณีที่น่าพอใจที่เราพิสูจน์ได้ว่าอัลกอริทึมล้มเหลวไม่ดีหากมีกรณีดังกล่าว แต่มันไม่ได้เป็นธรรมชาติมาก (ขึ้นอยู่กับสูตรที่แสดงถึงความสมบูรณ์ของอัลกอริธึม)

เกี่ยวกับแฟคตอริ่งหากขนาดของตัวเลขมีขนาดเล็ก (เช่นลอการิทึมเช่นในกรณีของคุณคือจำนวนที่ให้ในเอกภาพ) ในทางทฤษฎีแล้วไม่มีผลลัพธ์ที่บอกว่าไม่สามารถแก้ไขได้ด้วยอัลกอริทึมปัจจุบันและในความเป็นจริง อัลกอริธึมเวลาพหุนามที่คำนึงถึงตัวเลขเหล่านี้ ดังนั้นโปรแกรมแก้ปัญหา SAT เฉพาะสามารถแก้ปัญหาเหล่านั้นได้หรือไม่นั้นขึ้นอยู่กับอัลกอริทึมเฉพาะ


logNN/logN

@Artem ความซับซ้อนในการพิสูจน์ที่ต่ำกว่าสำหรับ Resolution จะเป็นตัวอย่างให้ยกตัวอย่างเช่นหลักการหลุมของนกพิราบ หนึ่งสามารถแยกหลักฐานการแก้ปัญหา (การพิสูจน์) สำหรับอินสแตนซ์ที่ไม่น่าพอใจจากการคำนวณอัลกอริทึมเหล่านี้บนอินสแตนซ์นั้น มีการสำรวจที่ดีโดย Nathan Segerlind จากปี 2007 ว่า IIRC ครอบคลุมเรื่องนี้ท่ามกลางสิ่งอื่น ๆ แจ้งให้เราทราบหากไม่มีและฉันจะหาคุณอ้างอิงอื่น
Kaveh

@ บทความฉันคิดว่าอาร์กิวเมนต์ใช้งานได้ในกรณีที่ตัวเลขเพียงอย่างเดียวคือลอการิทึมเช่นเราสามารถแก้มันในเวลาพหุนามโดยดูตัวเลขเล็ก ๆ ทั้งหมดเพื่อดูว่าหนึ่งในนั้นเป็นปัจจัยของผลิตภัณฑ์หรือไม่
Kaveh

@ Kaven ใช่นั่นคือเหตุผลที่ฉันทำหนึ่งในขนาดลอการิทึมจำนวน ฉันอธิบายในคำถาม ฉันไม่ต้องการคำตอบที่ถือว่าเป็นตัวแทนที่ไม่เหมือนกันตามที่แนะนำในย่อหน้าที่ 3 ของคุณ ฉันจะดูที่ Segerlind ในภายหลัง ขอขอบคุณสำหรับความคิดเห็นอีกครั้ง
Artem Kaznatcheev

@ บทความยินดีต้อนรับ :) (ผมใช้เอกเพราะผมสันนิษฐานว่าทั้งตัวเลขมีขนาดเล็กและใช้เป็นเอกในการจัดการกับความจริงที่ว่าขนาดที่ควรจะชี้แจงในพวกเขาผลัดหนึ่งสามารถแผ่นเพียงเพื่อให้พวกเขาใหญ่.)
Kaveh
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.