มี NPI อยู่ใน P / poly หรือไม่


29

มันถูกสันนิษฐานว่าN PP /โพลีNPP/polyตั้งแต่การสนทนาจะบ่งบอกP H = ΣPH=Σ2 2 ทฤษฎีบทของ Ladner ยืนยันว่าถ้าแล้ว . อย่างไรก็ตามหลักฐานไม่ได้พูดถึงดังนั้นความเป็นไปได้นั่นคือ\ mathsf {NP} \ดูเหมือนเซตย่อย \ mathsf {NPC} \ cup \ mathsf {P} / \ text {poly}PN P N P ฉัน : = N P( N P CP ) P /โพลีN P ฉันP /โพลีN PN P CP /โพลีPNPNPI:=NP(NPCP)P/polyNPIP/polyNPNPCP/poly

สมมติว่า (หรือแม้กระทั่งว่าลำดับชั้นพหุนามไม่ยุบในระดับใด) คือทราบว่าเป็นจริงหรือเท็จ? มีหลักฐานอะไรบ้างที่สามารถนำมาใช้และต่อต้านได้?N PP /โพลีN P IP /โพลีNPP/polyNPIP/poly


5
ดังนั้น "จะเกิดอะไรขึ้นหากปัญหาทั้งหมดใน NP เป็น NP-complete หรือ P \ poly" สำหรับสิ่งหนึ่งมันจะหมายถึงวงจรขนาดเล็กสำหรับแฟ
Sasho Nikolov

1
ps: โพสต์จะสามารถอ่านได้มากขึ้นถ้าคุณสะกด "มัน" ในส่วนที่ยกมา นอกจากนี้คุณอาจต้องการใช้แทนเป็นข้อสันนิษฐานของคุณ N PP / p o l y N PPNPP/polyNPP
Kaveh

4
อาร์กิวเมนต์การแพ็ดดิ้งจะไม่แสดงว่าสิ่งนี้ไม่สามารถเกิดขึ้นได้ยกเว้น NP P / poly
Peter Shor

3
@ PeterShor: ฉันอาจจะหนาแน่น แต่มันจะทำงานอย่างไร
วาเนสซ่า

8
@ ควอร์ก: คุณไม่ได้หนาแน่น ... ฉันไม่ได้ทำงานอย่างถูกต้องและฉันคิดว่าฉันผิดผลเล็กน้อย แต่นี่คือแนวคิดพื้นฐานของฉัน สมมติว่าปัญหา NP-complete ไม่สามารถแก้ไขได้ในเวลาและคำแนะนำ นำปัญหาที่ทำให้สมบูรณ์ NP ไปใช้, และวางลงเพื่อให้อัลกอริธึมที่เร็วที่สุดสำหรับมันนั้นไม่สามารถอธิบายได้ จากนั้นเป็น NPI ดังนั้นจึงสามารถแก้ไขได้ใน P / poly ซึ่งหมายความว่าปัญหา NP-complete X สามารถแก้ไขได้ในเวลาช้ากว่า P / โพลีเพียงเล็กน้อยเท่านั้น โดยการลดพหุนามตอนนี้ปัญหา NP- สมบูรณ์สามารถแก้ไขได้ช้ากว่าเวลา P / โพลีเล็กน้อย
Peter Shor

คำตอบ:


18

นี่เป็นทางเลือกที่เป็นไปได้ในการโต้แย้งการขยายโดยยึดตามลักษณะทั่วไปของSchöningในทฤษฎีบทของ Ladner เพื่อให้เข้าใจถึงข้อโต้แย้งคุณจะต้องเข้าถึงเอกสารนี้ (ซึ่งน่าเสียดายที่จะต้องอยู่เบื้องหลังการจ่ายเงินให้กับหลาย ๆ คน):

Uwe Schöning วิธีการที่เหมือนกันเพื่อให้ได้เส้นทแยงมุมในคลาสที่ซับซ้อน วิทยาศาสตร์คอมพิวเตอร์เชิงทฤษฎี 18 (1): 95-103, 1982

เราจะใช้ทฤษฎีบทหลักจากบทความนั้นสำหรับA 1และA 2เป็นภาษาและC 1และC 2เป็นคลาสที่ซับซ้อนดังต่อไปนี้:A1A2C1C2

  • A 1 = (หรือภาษาใด ๆ ใน P )A1=P
  • A 2 = SATA2=SAT
  • C 1 = N P CC1=NPC
  • C 2 = N P P / p o l yC2=NPP/poly

เพราะความชัดเจนในความเป็นจริงที่เราจะพิสูจน์เป็นN PP / P o L YหมายถึงN P ฉันP / P o L YNPP/polyNPIP/poly

ภายใต้สมมติฐานว่าN PP / P o L Yเรามี1C 1และ2C 2 เป็นที่ชัดเจนว่าC 1และC 2ถูกปิดภายใต้การเปลี่ยนแปลงที่แน่นอน กระดาษของSchöningมีหลักฐานว่าC 1สามารถแสดงซ้ำได้ (คำจำกัดความที่แม่นยำซึ่งสามารถพบได้ในกระดาษ) และส่วนที่ยากที่สุดของการโต้แย้งคือการพิสูจน์ว่าC 2สามารถแสดงซ้ำได้NPP/polyA1C1A2C2C1C2C1C2

ภายใต้สมมติฐานเหล่านี้ทฤษฎีบทแสดงว่ามีภาษาAที่ไม่มีในC 1หรือC 2 ; และให้ที่1Pก็ถือได้ว่าเป็นคาร์พ-ออกซิเจน2และดังนั้นจึงN P ระบุว่าAอยู่ในN Pแต่ไม่ใช่ทั้งN P - สมบูรณ์หรือในN PP / p o l yจึงเป็นไปตามนั้นN PAC1C2A1PAA2ANPANPNPNPP/polyฉันP / P o L YNPIP/poly

มันยังคงพิสูจน์ได้ว่าN PP / p o l yสามารถแสดงซ้ำได้ โดยทั่วไปนี่หมายความว่ามีคำอธิบายที่ชัดเจนเกี่ยวกับลำดับของเครื่องจักรทัวริงที่กำหนดขึ้นได้M 1 , M 2 , ที่หยุดทั้งหมดในอินพุตทั้งหมดและเป็นเช่นนั้นN PP / p o l y = { L ( M k ) : k = 1 , 2 , }NPP/polyM1,M2,NPP/poly={L(Mk):k=1,2,}. หากมีข้อผิดพลาดในข้อโต้แย้งของฉันอาจเป็นที่นี่และถ้าคุณจำเป็นต้องใช้ผลลัพธ์นี้จริงๆคุณจะต้องทำอย่างระมัดระวัง อย่างไรก็ตามโดยการประกบกันกับเครื่องทัวริโนไทม์ nondeterministic ทัวริลเวลา (ซึ่งสามารถจำลองแบบไม่แน่นอนได้เพราะเราไม่สนใจเวลาวิ่งของแต่ละM k ) และพหุนามทั้งหมดแทนขอบเขตบนขนาดของวงจรบูลีน ฉันเชื่อว่าภาษาไม่ยากที่จะได้รับการแจงนับ ในสาระสำคัญแต่ละM kสามารถทดสอบว่า NTM เวลาพหุนามที่สอดคล้องกันเห็นด้วยกับตระกูลของพหุนามขนาดบางส่วนจนถึงความยาวของสตริงอินพุตที่ได้จากการค้นหาวงจรบูลีนที่เป็นไปได้ทั้งหมด หากมีข้อตกลงM kMkMkMk เอาท์พุทเป็น NTM จะมิฉะนั้นจะปฏิเสธ (และเป็นผลให้แสดงถึงภาษาที่ จำกัด )

สัญชาตญาณพื้นฐานที่อยู่เบื้องหลังการโต้แย้ง (ซึ่งถูกซ่อนอยู่ภายในผลลัพธ์ของSchöning) คือคุณไม่สามารถมีคลาสความซับซ้อน "ดี" สองอย่าง (กล่าวคือคลาสที่มีการนำเสนอแบบเรียกซ้ำ) ถูกแยกจากกันและนั่งเรียงกัน "โทโพโลยี" ของคลาสที่ซับซ้อนไม่อนุญาต: คุณสามารถสร้างภาษาได้อย่างถูกต้องระหว่างสองคลาสโดยสลับระหว่างสองภาษาเพื่อยืดความยาวอินพุตที่ยาวมาก ทฤษฎีบทของ Ladner แสดงสิ่งนี้สำหรับPและN P Cและลักษณะทั่วไปของSchöningช่วยให้คุณสามารถทำเช่นเดียวกันสำหรับชั้นเรียนอื่น ๆ อีกมากมายPNPC


7
นี่คือลิงค์ไปยังสิ่งพิมพ์ของSchöningที่มีอยู่ทางออนไลน์ฟรีรวมถึงเอกสารที่คุณอ้างถึง: uni-ulm.de/in/theo/m/schoening/…
Alessandro Cosentino

1
ขอบคุณมากสำหรับคำตอบของคุณ! สิ่งที่ตลกคือฉันรู้ทฤษฎีบทของ Shoening แต่ด้วยเหตุผลบางอย่างที่โง่เขลาคิดว่ามันไม่ได้ใช้ในกรณีนี้ Btw ข้อความสามารถใช้ได้อย่างอิสระแม้ใน sciencedirect
Vanessa

1
@Squark: มันไม่โง่เลยที่จะสงสัยว่าทฤษฎีบทของSchöningไม่ได้ถูกนำมาใช้เนื่องจาก P / poly รวมถึงภาษาที่ไม่เกิดซ้ำ ฉันคิดว่ามันเป็นโชคดีที่เราสามารถตัดกันด้วย NP และยังได้ผลลัพธ์
John Watrous

1
@JohnWatrous: ใช่นี่คือเหตุผลที่ฉันสับสน
Vanessa

15

ฉันแค่อยากจะเขียนอาร์กิวเมนต์การเติมบางรุ่นตามที่อธิบายไว้ในความคิดเห็น ฉันไม่เห็นว่าทำไมต้องมีช่องว่าง เราต้องการแสดงให้เห็นว่าถ้า NP ไม่ได้อยู่ใน P / โพลีแล้วมีปัญหาระดับกลางที่ไม่ได้อยู่ใน P / โพลี

There is an unbounded function ff such that SAT does not have circuits of size less than nf(n)nf(n), and so there is a function gg that is unbounded, increasing, and g(n)=o(f(n))g(n)=o(f(n)). Let SAT' denote the language obtained by padding SAT strings of length nn to ng(n)ng(n). Then:

  • SAT' is in NP (see below!)
  • SAT 'ไม่ได้อยู่ใน P / โพลี: รับวงจรขนาดn kสำหรับ SAT' เราได้รับวงจรขนาดn กรัม( n ) kสำหรับ SAT แต่นี้เป็นน้อยกว่าn F ( n )สำหรับบางnnkng(n)knf(n)n
  • ไม่มีการลด P / โพลีจาก SAT เป็น SAT ': สมมติว่ามีความขัดแย้งว่ามีวงจรC nของขนาดn kสำหรับ SAT ทำให้ประตูของ SAT เลือกN ที่มีขนาดใหญ่พอที่g ( CnnkNN)>2kg(N)>2k and let n>Nn>N. Each SAT' gate in CnCn has at most nknk inputs. By removing the padding inputs we can trim the SAT' gates in CnCn to a SAT gate with less than nn inputs, which we can simulate using CnCn - the resulting SAT' gates have at most nk/2nk/2 inputs. Repeating this and treating CNCN by hand, SAT would have circuits of about size O(nknk/2nk/4)O(n2k)O(nknk/2nk/4)O(n2k) which is less than nf(n)nf(n) for some nn.

Edit:

The choice of gg is slightly fiddly. If you are happy putting SAT' in the promise version of NP, this bit is unnecessary.

Define f(n)f(n) to be the maximum integer such that there is no circuit of size nf(n)nf(n) for length nn strings for SAT. Define g(n)g(n) by an algorithm that calculates f(m)f(m) for m=1,2,m=1,2, and stops after time nn or when m=nm=n, and returns the floor of the square root of the highest value found in this time. So g(n)g(n) is unbounded and lim infg(n)/f(n)=0lim infg(n)/f(n)=0 and g(n)g(n) can be computed in time nn. Now note that the above arguments only rely on SAT having no circuits of size nf(n)nf(n) for infinitely many nn.

I'd also find it interesting to see a proof by blowing holes in SAT as in http://blog.computationalcomplexity.org/media/ladner.pdf. Without the NP requirement this is fairly easy: there is a sequence n1<n2<n1<n2< such that no circuit os size (nk)k(nk)k detects SAT strings of length nn; restrict SAT to strings of length n22in22i for some ii.


1
After seeing @JohnWatrous's answer, I was reminded of Impagliazzo's proof of Ladner's Theorem by padding (cf. the appendix of Downey and Fortnow "Uniformly Hard Languages": cs.uchicago.edu/~fortnow/papers/uniform.pdf). In fact, your proof is basically Impagliazzo's proof of Ladner, but adapted to this situation. Neat!
Joshua Grochow

1
Thanks a lot for your answer! I apologize I haven't selected it but I had to pick one and Watrous' argument was easier to follow through since it used a result I already knew. This is a rather subjective way to choose but I couldn't do any better. Anyway it's great to have more than one way to arrive at an interesting result
Vanessa

1
@Squark: absolutely - and I also assumed Schöning's theorem didn't apply.
Colin McQuillan

-13

(NPI P/poly) (PNP)


8
it is both known and trivial: if P = NP, then NPINP=PP/pol. also this is not the question, the question is the converse of what you wrote, and was convincingly answered by Colin as far as I can see.
Sasho Nikolov

the question is entitled "is NPI contained in P/Poly" & think this is a reasonable answer, not sure its really trivial because of the way NPI is usually defined (as dependent on PNP)... this answer does not conflict with the other answer...
vzn

9
Actually it is even more obviously trivial: if P=NP, NPI is empty. The question is clearly stated as "does NP not contained in P/poly imply NPI not in P/poly. So your answer 1) claims that a trivial fact is an open problem 2) does not address the question
Sasho Nikolov

8
Could not care less about points. For the last time: my first comment, Colin's answer, and the question itself are related to the far less trivial and more interesting converse of the empty implication you wrote down.
Sasho Nikolov

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