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


25

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

|L∩{0,1}n|=2n−1
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ใดที่ไม่มีด้วยคุณสมบัตินี้หรือไม่? L ∈ N P - C o m p l e t e OOL∈NP−CompleteO
— 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):τ∈SAT↔b=1}A∪BAC={(ϕ,b):∃τ. [(τ satisfies ϕ)↔b=1]}
— Neal Young

8

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

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

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

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

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

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

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