มีภาษาที่สมบูรณ์แบบ NP ซึ่งประกอบด้วยครึ่งหนึ่งของอินสแตนซ์ n-bit อย่างแม่นยำหรือไม่?


25

มี (โดยปกติแล้วเป็นภาษาธรรมชาติ) - สมบูรณ์เช่นนี้สำหรับทุก ๆ หรือไม่ ในคำอื่น ๆมีอย่างแม่นยำครึ่งหนึ่งของทั้งหมดกรณีบิต n 1L{0,1}n1 L

|L{0,1}n|=2n1
Ln

4
จะน่าแปลกใจมากถ้าไม่มี แต่คิดเกี่ยวกับมันสำหรับไม่กี่นาทีไม่สามารถหาการก่อสร้าง
Kaveh

2
FWIW มีตัวเช่นนั้นคือ NP-hard และใน NP / POLY ...L
Neal Young

สำหรับ bijective encoding binaryของสูตร CNF,น่าพอใจไม่น่าพอใจควรทำงาน { e ( φ ) 1 | φ } { e ( φ ) 0 | φ }e{e(φ)1 | φ}{e(φ)0 | φ}
Klaus Draeger

4
@KlausDraeger Unsatisfiability ไม่ใช่คุณสมบัติ NP ยกเว้นว่า NP = co-NP
Andras Farago

มี oracleใดที่ไม่มีด้วยคุณสมบัตินี้หรือไม่? LN P - C o m p l e t e OOLNPCompleteO
Erfan Khaniki

คำตอบ:


24

ผมถามคำถามนี้ไม่กี่ปีที่ผ่านมาและโบอาส Barak บวกตอบมัน


คำสั่งนี้เทียบเท่ากับการมีอยู่ของภาษา NP-completeโดยที่คำนวณได้แบบพหุนามเวลา| L n |L|Ln|

พิจารณาสูตรบูลีนและ SAT การใช้การเติมเต็มและการปรับเปลี่ยนการเข้ารหัสของสูตรเล็กน้อยทำให้เรามั่นใจได้ว่า และมีความยาวเท่ากัน¬ φφ¬φ

ให้เป็นการเข้ารหัสที่ 

  • สำหรับสูตรทั้งหมดและสำหรับการมอบหมายความจริงทั้งหมด , .τ { 0 , 1 } | φ | | ไว| = | ไว, τ |φτ{0,1}|φ||φ|=|φ,τ|
  • |φ||φ|คำนวณได้แบบพหุนามเวลา
  • จำนวนของสูตรที่มีความยาวที่เข้ารหัสได้คือสามารถคำนวณได้จากพหุนามn

พิจารณา

L:={φφSAT}{φ,ττφ and σ<τ σφ}

มันง่ายที่จะเห็นว่านั้นสมบูรณ์ NPL

ถ้าจำนวนความจริงที่ได้รับมอบหมายพอใจ เท่ากับจำนวนความจริงที่น่าพอใจ การมอบหมาย . เพิ่มตัวเองมันจะเพิ่มขึ้นไปยังหมายเลขของความพึงพอใจที่ได้รับมอบหมายความจริงสำหรับ\ τ ไว และ  σ < τ σ ไว- 1 ไวไวφSAT

τφ and σ<τ σφ
1φφ

มีมอบหมายความจริง แต่ละจะตอบสนองหรือ (ไม่ใช่ทั้งสองอย่าง) สำหรับทุกสูตรให้พิจารณาสตริง , , และ สำหรับ|} ว่าเหล่านี้สตริงในLซึ่งหมายความว่าจำนวนของสตริงความยาวในτ φ ¬ φ φ 2 ( 2 | φ | + 1 ) φ ¬ φ φ , τ ¬ φ , τ τ { 0 , 1 } | φ | 2 | φ | 2 | φ | + 1 + 2 L n L2|φ|τφ¬φφ2(2|φ|+1)φ¬φφ,τ¬φ,ττ{0,1}|φ|2|φ|2|φ|+1+2LnLคือจำนวนสูตรของความยาวที่เข้ารหัสคูณด้วยซึ่งคำนวณได้จากพหุนามn 2 | φ |φn2|φ|


10
แม้ว่านี่จะเป็นโซลูชันที่ต้องการ แต่นี่เป็นคำตอบสำหรับลิงค์เท่านั้น
user2943160

เพื่อความชัดเจนไม่มีอะไรพิเศษเกี่ยวกับ SAT สิ่งนี้จะทำงานร่วมกับตัวตรวจสอบคำกริยาสำหรับปัญหา NP-complete
Kaveh

@Kaveh คุณไม่ได้ใช้ทรัพย์สินเฉพาะของ SAT ที่นี่หรือว่ามีคู่ ,ที่พยานเป็นพยานในหนึ่งในสองของคู่นี้? คุณจะทำเช่นนั้นได้อย่างไรเช่น 3-COLOR ¬ ϕ τϕ¬ϕτ
Neal Young

@ เป็นจริงให้ V (x, y) เป็นตัวตรวจสอบปัญหา NP-complete พิจารณา W (x, b, y): = V (x, y) = b มันยังคงเป็นปัญหาที่สมบูรณ์และแต่ละ y เป็นพยานสำหรับ x, 0 หรือ x, 1 ไม่ค่อยดีเท่า SAT เลย
Kaveh

@Kaveh เช่นกับ SAT คุณแนะนำ แต่นั่นคือใน P และถ้าคุณพยายามที่จะแก้ไขโดยการรวมกับพูดว่าสหภาพเป็นทั้ง NP-hard และ co-NP-hard (น่าจะไม่ใช่ใน NP) แก้ไข: โอ้ฉันเข้าใจแล้วคุณหมายถึงการรวมกลุ่มกับพูดว่า ...B = { ( φ , B ) : τ S T = 1 } B C = { ( φ , B ) : τ [ ( τ
A={(ϕ,b,τ):(τ satisfies ϕ)b=1}?
B={(ϕ,b):τSATb=1}ABAC={(ϕ,b):τ. [(τ satisfies ϕ)b=1]}
Neal Young

8

นี่เป็นคำแนะนำว่าทำไมมันอาจเป็นเรื่องยากที่จะหาตัวอย่างเช่นนี้แม้ว่าฉันจะเห็นด้วยกับความคิดเห็นของ Kaveh ว่ามันน่าแปลกใจหากไม่มี [ไม่ใช่คำตอบ แต่นานเกินไปสำหรับความคิดเห็น]

สมมติว่าคนที่บอกว่าฉันขึ้นมาด้วยเช่นภาษาLวิธีที่เป็นธรรมชาติสำหรับฉันที่จะพิสูจน์ว่าคือการสร้างอย่างชัดเจน bijection ระหว่างและL เนื่องจากโดยส่วนตัวแล้วฉันไม่สามารถตัดสินใจอินสแตนซ์ของปัญหาได้ยาก bijections "แบบง่าย" ส่วนใหญ่ที่ฉันจะได้รับจะมีรูปแบบ "เป็น bijection รักษาความยาวและถ้าหาก " นอกจากนี้ฉันมีแนวโน้มที่จะเกิดที่คำนวณได้ในเวลาพหุนาม แต่แล้วLL=n:=|L{0,1}n|=2n1L{0,1}n{0,1}nLNPf:{0,1}{0,1}xLf N P = c o N P f N P c o N Pf(x)LfNP=coNPสำหรับคือการลดลงจาก - การตั้งค่าที่สมบูรณ์แบบเป็น - ที่สมบูรณ์fNPcoNP

แน่นอนการคัดค้านนี้สามารถทำได้โดย "เพียงแค่" ที่มีความเอนเอียงยากที่จะคำนวณได้มากกว่านั้น หากการอ้างสิทธิ์ของคุณต้องใช้เวลาชี้แจง - พูดและสิ่งที่ตรงกันข้ามอาจเป็น - ยาก - แล้วฉันคิดว่าคุณปลอดภัยแล้ว แต่ถ้าใช้เวลาพูดเวลากึ่งพหุนามทราบว่าคุณยังได้รับผลจากที่ผมเชื่อว่ามันจะตามด้วยการเหนี่ยวนำที่เรียบง่ายด้วยการโต้แย้ง padding ว่า{} ทีนี้ถ้าคุณเชื่อว่าการกักกันก่อนหน้านี้เป็นเท็จเพียงแค่นั้นการไม่อ้างถึงสิ่งที่คำนวณได้แบบกึ่งเวลาเช่นนั้นสามารถช่วยคุณได้ แต่แม้ว่าคุณจะเชื่อว่ามันอาจจะเป็นจริงจากนั้นก็ขึ้นมาด้วย bijection ดังกล่าวคุณจะพิสูจน์c O N PN T I M E ( 2 ( บันทึกn ) O ( 1 ) ) = : N Q P P HN Q P P HN Q PEXPcoNPNTIME(2(logn)O(1))=:NQPPHNQPPHNQPซึ่งดูเหมือนจะเกินความรู้ในปัจจุบัน ...

การคัดค้านนั้นสามารถทำได้โดยไม่ต้องมีความลำเอียง แต่ก็ยากที่จะดูว่าจะพิสูจน์ได้อย่างไรว่ามีคุณสมบัติที่ต้องการในตอนแรก ... และในความเป็นจริงแม้ว่าหลักฐานของคุณจะไม่ใช่ bijection คุณจะต้องเป็นกรณีที่ไม่มี bijection ที่คำนวณได้ง่ายเช่นนี้L

แน่นอนว่านี่เป็นประเภทของสิ่งที่ใครบางคนจะมาพร้อมกับตัวอย่างและเราจะเห็นได้อย่างง่ายดายว่ามันได้รับการคัดค้านอย่างไร แต่ฉันแค่อยากจะโยนมันออกไปที่นั่นเพื่อพูดว่าอะไรที่มี bijection ง่ายพอ ไม่ทำงาน (เว้นแต่ความเชื่อที่ถือกันอย่างกว้างขวางเป็นเท็จ)

(คำถามที่เกี่ยวข้อง: มี oracle เทียบกับที่ไม่มีดังกล่าวหรือไม่)L

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