ภายใต้สถานการณ์ที่ทำขั้นตอนวิธีการบ่งบอกถึงขั้นตอนวิธีการ?


16

สมมติว่าสำหรับแต่ละมีเครื่องทัวริงที่ตัดสินใจภาษาในเวลาepsilon}) มีอัลกอริทึมเดียวตัดสินใจในเวลาหรือไม่ (ที่นี่คำว่าวัดในรูปของความยาวอินพุต)ϵ>0MϵLO(na+ϵ)LO(na+o(1))o(1)n

มันสร้างความแตกต่างได้หรือไม่หากอัลกอริทึมคำนวณได้หรือคำนวณได้อย่างมีประสิทธิภาพในแง่ของ ?Mϵϵ

แรงจูงใจในการพิสูจน์จำนวนมากก็จะง่ายต่อการสร้างอัลกอริทึมของเวลากว่า จำกัด อัลกอริทึม(1)}) โดยเฉพาะอย่างยิ่งที่คุณจำเป็นต้องผูกพันระยะอย่างต่อเนื่องในเพื่อส่งผ่านไปวงเงิน(1)}) มันจะดีถ้ามีผลทั่วไปที่คุณสามารถเรียกเพื่อส่งผ่านไปยังขีด จำกัด โดยตรงO(na+ϵ)O(na+o(1))O(na+ϵ)O(na+o(1))

คำตอบ:


10

คำถามนี้คล้ายกับคำถามเกี่ยวกับการมีอยู่อย่างสร้างสรรค์ของขีด จำกัด ของลำดับของวัตถุ (เชิงสร้างสรรค์) โดยปกติถ้าคุณสามารถสร้างวัตถุเหล่านั้นอย่างสม่ำเสมอ (ที่นี่ ) มีประสิทธิภาพเพียงพอแล้วคุณสามารถแสดงการมีอยู่ของขีด จำกัด เชิงสร้างสรรค์Mϵ

ตัวอย่างเช่นสมมติว่าเรามี TMที่รันบนและเวลาทำงานของมันคือ (ที่นี่มีขอบเขตเหมือนกันเช่นบางอย่างเช่นจะไม่ทำงาน) จากนั้นเราสามารถรวมจำลองชุดนี้กับฟังก์ชั่นที่จะได้รับเครื่องที่วิ่งในเวลา(1)})N(k,x)M|k|−1xO(na+|k|−1)+O(|k|)O(2k.na+|k|-1)(k,x)↦xยังไม่มีข้อความ(x,x)O(na+o(1))

PS:เป็นนิด ๆ หน่อย ๆ ไม่ชัดเจนเนื่องจากการทำรังของสัญลักษณ์ asymptotic ผมตีความว่ามันเป็น(1)} นอกจากนี้เราต้องที่จะไม่เล็กเกินไปเช่นอย่างน้อย1n a + o ( 1 ) a 1O(na+o(1))na+o(1)a1


8

คุณสามารถใช้อัลกอริทึมการค้นหาทั่วไปของเลวิน สมมติว่าคุณอย่างใดสามารถระบุลำดับของขั้นตอนวิธีตัดสินใจแต่ละทำงานในเวลาK} เลวินขั้นตอนวิธีการทำงานในเวลาสำหรับทุกที่เป็นค่าคงที่ขึ้นอยู่กับC_kดังนั้นสำหรับทุก , ได้รับ , เลือก , และให้ L C k n a + 1 / k T ( n ) ≤ D k n a + 1 / k k D k C k k τ ( n ) ≜ บันทึกT ( n )AkLCkna+1/kT(n)≤Dkna+1/kkDkCkkε>0k=⌈2/ε⌉N=⌈D 2 / ε k ⌉n≥Nτ(n)≤ετ(n)→0n+τ(n)=n+o(1)

τ(n)≜log⁡T(n)log⁡n−a≤log⁡Dk+(a+1/k)log⁡nlog⁡n−a=log⁡Dklog⁡n+1k.
ϵ>0k=⌈2/ϵ⌉N=⌈Dk2/ϵ⌉. แล้วสำหรับ ,\ ดังนั้นและเราได้รับที่เลวินขั้นตอนวิธีการทำงานในเวลา(1)}n≥Nτ(n)≤ϵτ(n)→0na+τ(n)=na+o(1)

ถ้าฉันเข้าใจอัลกอริทึมของเลวินสิ่งนี้จะใช้กับอัลกอริทึมการค้นหาเท่านั้น ขั้นตอนวิธีการนี้จะทำงานเพื่อกลับฟังก์ชั่นที่สามารถคำนวณได้ในเวลา(ก)}) f O ( n o ( a ) )ffO(no(a))
— David Harris

ฉันไม่แนะนำให้ใช้อัลกอริธึมของ Levin เพียงแนวคิดในการรันอัลกอริธึมทั้งหมดที่ขนานโดยใช้การประกบกันในลักษณะที่แต่ละอันจะชะลอตัวลงเพียงปัจจัยคูณเท่านั้น Ak
— Yuval Filmus

@ Yuval เมื่อคุณทำการอัลกอริธึมทั้งหมดแล้วคุณจะตัดสินใจเลือกคำตอบที่จะยอมรับได้อย่างไร ในปัญหาการค้นหาคุณสามารถทดสอบแต่ละผลลัพธ์ที่สมมุติได้ แต่โดยทั่วไปไม่สามารถทำได้
— David Harris

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