ขอบเขตรันไทม์ใน P สามารถตัดสินใจได้หรือไม่? (คำตอบ: ไม่)


64

คำถามที่ถามคือคำถามต่อไปนี้สามารถตัดสินใจได้หรือไม่:

ปัญหา   ป.ร. ให้ไว้เป็นจำนวนเต็มkและเครื่องทัวริงMสัญญาว่าจะอยู่ใน P เป็นรันไทม์ของM O(nk)ที่เกี่ยวกับระยะเวลาในการป้อนข้อมูลn ?

คำตอบที่แคบของ "ใช่", "ไม่" หรือ "เปิด" เป็นที่ยอมรับ (มีการอ้างอิงภาพร่างหลักฐานหรือการทบทวนความรู้ที่มีอยู่ในปัจจุบัน) แต่คำตอบที่กว้างกว่าก็ยินดีต้อนรับเช่นกัน

ตอบ

Emanuele Viola ได้โพสต์หลักฐาน ว่าคำถามนั้นไม่สามารถตัดสินใจได้ (ดูด้านล่าง)

พื้นหลัง

สำหรับฉันคำถามนี้เกิดขึ้นตามธรรมชาติในการแยกวิเคราะห์คำตอบของคำถามของ Luca Tevisan คำถามruntimes สำหรับ P ต้องการทรัพยากร EXP ในขอบเขตบนหรือไม่ …รู้จักตัวอย่างที่เป็นรูปธรรมหรือไม่

คำถามยังเกี่ยวข้องกับคำถาม MathOverflow: อะไรคือปัญหาทัวริลที่น่าสนใจที่สุดในคณิตศาสตร์? ในรูปแบบที่คำว่า "คณิตศาสตร์" ถูกเปลี่ยนเป็น "วิศวกรรม" ในการรับรู้ว่าการประเมินแบบรันไทม์เป็นปัญหาทางวิศวกรรมที่แพร่หลายที่เกี่ยวข้องกับ (ตัวอย่าง) ทฤษฎีการควบคุมและการออกแบบวงจร

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

--- แก้ไข (โพสต์คำตอบ) ---

ฉันได้เพิ่มทฤษฏีของ Violaให้กับวิกิชุมชน MathOverflow "ปัญหาที่น่าสนใจ มันเป็นผลงานชิ้นแรกของวิกิที่เกี่ยวข้องกับความซับซ้อนระดับ P; สิ่งนี้พิสูจน์ให้เห็นถึงความแปลกใหม่ธรรมชาติและขอบเขตของทฤษฎีบทของไวโอล่า (และ IMHO ที่มีความสวยงามด้วย)

--- แก้ไข (โพสต์คำตอบ) ---

เอกสารทางกฎหมายของ Juris Hartmanis ความเป็นไปได้และคุณสมบัติความซับซ้อนที่พิสูจน์ได้ (1978) ครอบคลุมเนื้อหาส่วนใหญ่เหมือนกับหลักฐานของ Emanuele Viola


ในการตอบคำถามที่วางไว้ในเว็บล็อกของ Lance Fortnow และ Bill GASARCH ภายใต้หัวข้อ "75 ปีของวิทยาการคอมพิวเตอร์" เริ่มต้น "ฉันมักจะคิดว่าทัวริงถามอย่างสุขุม:" กระบวนการตรวจสอบที่สามารถดำเนินการได้ หมายเลข?” ... แทนที่จะเป็นทัวริงถามคำถามที่ยากขึ้นอย่างมีชะตากรรม:“ กระบวนการใดที่เป็นไปได้ที่สามารถดำเนินการในการคำนวณตัวเลขได้” คำถามที่ถามต่อไปจะเป็น (โดยประมาณ) "เครื่องจักรทัวริงมีอยู่จริงหรือไม่ ใน NP ซึ่งสมาชิก P ไม่สามารถตัดสินใจได้? "นี่เป็นการแสดงว่าฉันยังคิดอยู่! :)
John Sidles

2
แม้ว่าหลักฐานของฉัน Emanuele Viola จะชัดเจนกว่า แต่คำถามที่คล้ายกันมากถูกถามและตอบใน Mathoverflow: mathoverflow.net/questions/28056/ …
Alex สิบ Brink

หลายคำตอบและความคิดในหัวข้อนี้ได้รับการพิสูจน์แล้วว่าเกี่ยวข้องกับบทความ / คำถามที่ Dick Lipton ได้โพสต์ไว้ในสมุดบันทึกที่หายไปของ Godel ; ชุดเรียงความ / คำถามนั้นคือ "การเข้ากับฐานด้วย P = NP" URL: rjlipton.wordpress.com/2011/07/04/getting-on-base-with-pnp
John Sidles

แม้ว่าขอบเขตใน P จะไม่สามารถตัดสินใจได้ แต่ก็ไม่สามารถหยุดสิ่งใดสิ่งหนึ่งจากการพยายาม (โดย จำกัด ตัวเองต่อไป) ตัวอย่างถ้าให้ไว้ในคำตอบ cstheory
Artem Kaznatcheev

1
คำถามนี้เป็นแรงบันดาลใจให้บทความต่อไปนี้: arxiv.org/abs/1307.3648
David G

คำตอบ:


83

(M,x)MnMxnMn2n3

Mxt=O(1)MO(n2)MMn3

MxMO(n2)O(n3)


4
ทำไม M ต้องหยุดที่ x (ถ้าเป็น) ใน O (1) ขั้นตอน?
Suresh Venkat

10
Mxn

2
หลักฐานที่ฉลาดมากมันเป็นผลต่างของผลลัพธ์ที่รู้จักกันดีหรือคุณเพิ่งประดิษฐ์มันขึ้นมา?
Antonio E. Porreca

3
Mn2n3

2
@John: ตราบใดที่ไม่มีการอ้างอิงที่ตีพิมพ์ให้พิจารณาแนวทางนี้
Raphael

29

นี่คือการปรับปรุงคำตอบของ Emanuele Viola โดยมีเป้าหมายเพื่อให้เข้าใจได้ง่ายขึ้น

PH

(M,x)M(x)MxM

M*(y) = {
  n := |y|
  Simulate M(x) for n steps
  if ( M(x) has halted )
    Execute n*n arbitrary steps
  else
    Execute n*n*n arbitrary steps
}

ตอนนี้เราสังเกตผลกระทบต่อไปนี้:

M(x)n0N:M halts on x after at most n0 stepsy:nn0M(y) executes n2 arbitrary stepsTM(n)O(n2)

และ

M(x)nN:M does not halt on x in less than n stepsy:M(y) executes n3 arbitrary stepsTM(n)Ω(n3)

H(M,x)P(M,2)PH


12

nCn+DC,DN

Cn+D


1
ไม่มีปัญหาการขาดแคลนพฤติกรรมที่ผิดปกติโดย TM เทปแบบครั้งเดียว :)
Kaveh

4

ปัญหาได้รับการแก้ไขในบทความของฉัน " เนื้อหาในมิติของทฤษฎีบทข้าว " POPL'2008 ที่ฉันพิสูจน์ว่าไม่มี "กลุ่มความซับซ้อน" ที่ถอดรหัสได้ Clique ซับซ้อนคือคลาสของโปรแกรมที่ปิดโปรแกรม wrt ที่มีพฤติกรรมและความซับซ้อนคล้ายกัน ฉันยังให้เงื่อนไขที่จำเป็นสำหรับคุณสมบัติแบบกึ่งตัดสินใจได้

โปรแกรมที่ทำงานใน O (n ^ k) เป็นกลุ่มที่ซับซ้อนตามความหมายข้างต้นดังนั้นเซตนี้จึงไม่สามารถตัดสินใจได้

ผลลัพธ์ได้ถูกขยายไปยังการตั้งค่า subrecursive เมื่อเร็ว ๆ นี้ (เช่น P) โดย Mathieu Hoyrup: คุณสมบัติ decidable ของฟังก์ชัน subrecursive (ICALP 2016)


2

เพื่อเพิ่มคำตอบก่อนหน้าปัญหานี้ไม่เพียง แต่ไม่สามารถตัดสินใจได้ แต่เสร็จสมบูรณ์ดังนั้นจึงไม่สามารถตัดสินใจได้แม้ว่า decider จะมี oracle สำหรับปัญหาการหยุดชะงัก Σ20

เพื่อชี้แจงความครบถ้วนสมบูรณ์ในขณะที่เงื่อนไขสัญญา P-time นั้นยังสมบูรณ์ - มีชุดของรหัสซึ่งเครื่องทั้งหมดในเป็นเวลาพหุนามและคำถามคือที่สมบูรณ์แบบบนSΣ20SSO(n2)Σ20S

เพื่อพิสูจน์สิ่งนี้เลือกสมบูรณ์ ,พร้อมพหุนามคำนวณเวลา (สำหรับเลขฐานสอง)Σ20φφ(x)kmψ(x,k,m)ψ

จากนั้นจะถือ iff เครื่องต่อไปนี้คือโดยที่คือความยาวอินพุต (เครื่องจะคำนึงถึงความยาวอินพุตเท่านั้น):φ(x)O(n2)n

สำหรับใน 0 ถึง :     ถ้า : # ทดสอบโดยใช้ loop         halt     รอขั้นตอน หยุดkn
m<nψ(x,k,m)

n2

โปรดทราบว่าสำหรับทุกที่ไม่มากเกินไปขนาดเล็กไม่ว่าจะเป็นโปรแกรมที่มักจะหยุดใน (ตัวอย่าง)ขั้นตอนคือสมบูรณ์ แต่ถามเกี่ยวกับขอบเขตในลักษณะที่มีประสิทธิภาพจะช่วยให้ -completenessn 2 + c Π 0 1 Σ 0 2cn2+cΠ10Σ20


-1

นี่คือการวิเคราะห์ / มุม / ผลลัพธ์ใหม่ ๆ ที่เป็นระบบมากกว่าเมื่อเร็ว ๆ นี้สำหรับคำถาม & ที่เกี่ยวข้องแนะนำแนวคิดของ "การตรวจสอบได้แบบอัลกอริทึม" และอะนาล็อกคล้ายข้าว -thm สำหรับทฤษฎีความซับซ้อน ส่วนที่เกี่ยวข้องจากบทคัดย่อมีดังนี้และมีอีกหลายทฤษฎีที่เกี่ยวข้องที่เกี่ยวข้องกับการพิสูจน์ของ P vs NP ฯลฯ

  • ทำไมแนวคิดของความซับซ้อนในการคำนวณจึงเป็นเรื่องยากสำหรับคณิตศาสตร์ / Hromkovic ที่ตรวจสอบได้

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

    โปรดทราบว่าถ้า P! = NP สามารถพิสูจน์ได้ใน AV-Math ดังนั้นสำหรับแต่ละอัลกอริทึม A จะสามารถพิสูจน์ได้ว่า "A ไม่ได้แก้ปัญหาความพึงพอใจหรือ A ไม่ทำงานในเวลาพหุนาม" ที่น่าสนใจที่สุดเราแสดงให้เห็นว่ามีอัลกอริทึมที่ไม่สามารถพิสูจน์ได้ว่าพวกเขาไม่ทำงานในเวลาพหุนามและพวกเขาไม่ได้แก้ปัญหาความพึงพอใจ ยิ่งไปกว่านั้นมีอัลกอริทึมที่ใช้แก้ปัญหา SATISFIABILITY ซึ่งไม่สามารถพิสูจน์ได้ในคณิตศาสตร์ AV ว่ามันไม่ทำงานในเวลาพหุนาม

    ยิ่งกว่านั้นเราแสดงให้เห็นว่า P = NP แสดงถึงการมีอยู่ของอัลกอริธึม X ซึ่งการอ้างสิทธิ์ "X แก้ความอิ่มตัวในเวลาพหุนาม" ไม่สามารถพิสูจน์ได้ในคณิตศาสตร์ AV


-3

วิธีการแก้ปัญหาจาก Viola สามารถกำหนดให้เป็นแบบทั่วไปได้ทุกเวลา (เกินโพลี): คุณสามารถลดปัญหาการหยุดพักได้ดังนี้ รับอินสแตนซ์ (M, x) ของปัญหาการหยุดชะงักสร้างเครื่องใหม่ M ′ที่ทำงานดังต่อไปนี้: บนอินพุตของความยาว n, มันจำลอง M บน x สำหรับขั้นตอน f (n) หรือจนกระทั่ง M หยุดนิ่งโดยที่ f (n ) เป็นฟังก์ชันที่เพิ่มขึ้นตามอำเภอใจ (มากกว่าค่าคงที่) ของ n (Obs.: M ′อ่านอินพุตทีละน้อยเพื่อหลีกเลี่ยงการเสียเวลาเชิงเส้น [O (n)] เพียงเพื่ออ่านอินพุตทั้งหมดโดยไม่จำเป็นหากมีขนาดใหญ่พอและหยุดพัก M)

ถ้า M หยุดการทำงานบน x มันทำได้ในขั้นตอน T = O (1) ดังนั้นเวลารันของ M ′จะเป็น O (1) ถ้า M ไม่หยุดทำงานดังนั้นเวลารันของ M ′คือ O (n ^ 2 * f (n))

ดังนั้นคุณสามารถตัดสินใจได้ว่า M ยอมรับ x โดยตัดสินใจว่าเวลารันของ M ′คือ O (1) หรือ O (n ^ 2 * f (n))

จากนั้นรหัสเสริมจาก Raphael สามารถสรุปได้ตาม:

ให้ (M, x) เป็นตัวอย่างของปัญหาการหยุดชะงักนั่นคือเราต้องตัดสินใจว่า M หยุดบน x หรือไม่ สร้าง Turing Machine ที่กำหนดขึ้นเอง (DTM) M * ที่ทำงานดังนี้:

  1. M * (อินพุต) = {
  2. n: = 0
  3. อ่านสัญลักษณ์แรกจากอินพุต
  4. ห่วง:
  5. n: = n + 1
  6. จำลอง M (x) สำหรับ f (n) ขั้นตอนหรือจนกระทั่ง M (x) หยุดการทำงาน
  7. อ่านสัญลักษณ์ต่อไปจากอินพุต
  8. วนซ้ำจนกว่า end_of_input หรือจนกว่า M (x) หยุดทำงาน
  9. }

ตอนนี้เราสังเกตผลกระทบต่อไปนี้:

M หยุดการทำงานบน x หลังจากขั้นตอน k (ค่าคงที่) มากที่สุด => T (M *) = O (1) และ

M ไม่เคยหยุดอยู่กับที่ x => T (M *) = O (n ^ 2 * f (n))

ดังนั้นแม้จะตัดสินใจว่าเวลาในการทำงานของ DTM โดยพลการนั้นมากกว่าค่าคงที่หรือไม่นั้นก็ยากพอ ๆ กับปัญหาการหยุดชะงัก □


2
1) โปรดใช้ LaTeX 2) อะไรเป็นผลงานใหม่ของคำถามนี้? 3) การใช้เหตุผลของคุณผิดพลาด การจำลองต้องใช้เวลาแล้วถึงไม่สามารถทำงานในเวลาคงที่ได้ O ( n ) M MO(n)M
ราฟาเอล

สำหรับขนาดใหญ่พอที่ n หาก M (x) หยุดการจำลองจะหยุดเช่นกันและกลับไปที่ M * ภายในขั้นตอน n0 (คงที่)
André Luiz Barbosa
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.