เรามีวงจรเครื่องแบบที่ไม่น่าสนใจหรือไม่?


13

รับขั้นตอนวิธีการทำงานในเวลาเราสามารถแปลงเป็น "จิ๊บจ๊อย" ครอบครัววงจรชุดสำหรับปัญหาเดียวกันขนาดที่มากที่สุด(n)t ( n ) บันทึกt ( n )t(n)t(n)logt(n)

ในทางกลับกันอาจเป็นเพราะเรามีวงจรเครื่องแบบขนาดเล็กกว่ามากสำหรับปัญหานั้นแม้ว่าเป็นเวลาทำงานที่เหมาะสมที่สุด วงจรอาจใช้เวลานานกว่าในการสร้าง แต่มีขนาดเล็กt ( n )t(n)t(n)

แต่เรารู้วิธีสร้างสิ่งเหล่านี้จริง ๆ หรือไม่? ฉันคิดว่าคำถามแรกที่จะถามคือ

(1) เรามีตัวอย่างที่สร้างสรรค์ของวงจรแบบไม่ใช้สิ่งของเช่นวงจรแบบมีขนาดเล็กกว่าเวลาทำงานที่รู้จักกันดีที่สุดของอัลกอริทึมสำหรับปัญหาเดียวกันหรือไม่?

ตอนนี้ผมเชื่อว่าถ้ามีปัญหาอยู่ในแล้วเรามีขั้นตอนวิธีการชี้แจงเวลาที่จะหาวงจรที่ดีที่สุดโดยใช้การค้นหาหมดจด: ให้เราเขียนคำตอบในทุกอินพุต (ใช้เวลา ); จากนั้นเราแจกแจงวงจรทั้งหมดในอินพุตเพิ่มขนาดจนกระทั่งพบว่ามีคำตอบที่ถูกต้องทั้งหมด ยุติการค้นหาที่ทั้งขนาดของแปลงเล็ก ๆ น้อย ๆ ที่หรือตารางความจริงของฟังก์ชั่นที่ถ้าผลเป็น\} (แก้ไข: โทมัสชี้ให้เห็นว่าขอบเขตคือเนื่องจาก Shannon / Lupanov) n 2 n ( 2 n ) t ( n ) n t ( n ) บันทึกt ( n ) 2 n { 0 , 1 } O ( 2 n / n )DTIME(t(n))n2n(2n)t(n)nt(n)logt(n)2n{0,1}O(2n/n)

ดังนั้นเรามีคำถาม“ ใช่” ที่น่าพอใจ (1): ใช้ภาษาที่ยากสำหรับทุกเวลาที่อยู่เหนือแต่ยังคงสามารถตัดสินใจได้ ขั้นตอนข้างต้น outputs ตารางความจริงของขนาด n2 n2n2n

ดังนั้นเราควรปรับแต่งคำถาม (1) ฉันคิดว่าทั้งสองกรณีที่น่าสนใจที่สุดคือ

(2) เรามีตัวอย่างที่สร้างสรรค์ของวงจรเครื่องแบบแบบไม่มีพหุนามขนาดหรือไม่? (แม้ว่าจะถูกสร้างโดยอัลกอริทึมที่ช้ามาก)

(3) เรามีตัวอย่างที่สร้างสรรค์ใด ๆ เกี่ยวกับพหุนามเวลาที่สร้างขึ้นได้ , ชุดวงจรแบบไม่ใช้พหุนามขนาดหรือไม่?

นี่อาจจะมากเกินไปที่จะถาม คำถามที่ง่ายกว่า: เรารู้ด้วยซ้ำว่าสิ่งนั้นเป็นไปได้หรือไม่? อาจไม่มีวงจรเครื่องแบบที่ไม่น่าสนใจอยู่บ้าง?

(4) ข้อความต่อไปนี้ทราบหรือไม่ว่าเป็นเท็จสำหรับ ? (แก้ไข:ขอบคุณโทมัส) "ถ้าภาษามีวงจรขนาดเท่ากันก็มีอัลกอริทึมที่ทำงานในเวลา . " (ถ้าเป็นเช่นนั้นแล้วเมื่อใดที่ "uniform" ถูกแทนที่ด้วย "polynomial-time-uniform", "logspace uniform" ฯลฯ ?)o ( 2 n / n ) L O ( s ( n ) ) ~ O ( s ( n ) )s(n)=o(2n)o(2n/n)LO(s(n))O~(s(n))

ในที่สุดหากคำถามข้างต้นยากเกินไป

(5) เรามีสิ่งปลูกสร้างของตระกูลเครื่องแบบของวงจรที่ไม่เพียง แต่แปลงอัลกอริธึมเป็นวงจร (หรือเขียนตารางความจริง) หรือไม่?

ป.ล. ฉันถามผู้เชี่ยวชาญเรื่องนี้เกี่ยวกับเรื่อง "ในระดับกลางและล่างขอบเขตวงจร" ( pdf ), Santhanam และ Williams 2013 ซึ่งอาจเป็นงานที่เกี่ยวข้องอย่างใกล้ชิดที่สุด แต่มันพิสูจน์ขอบเขตที่ต่ำกว่า (วงจรโพลีเวลาที่สร้างขึ้นได้นั้นไม่ใช่มีพลังมากเกินไป ) ฉันจะสนใจงานอื่น ๆ ที่เกี่ยวข้อง!


1,2,3,4: ฟังก์ชันตัวตน 5. มันไม่ชัดเจนสำหรับฉันสิ่งที่คุณหมายถึงโดย "การแปลงอัลกอริทึมเป็นวงจร" เราสามารถแปลงวงจรเครื่องแบบเป็นเครื่องทัวริง (มีค่าใช้จ่ายเล็ก ๆ )
Kaveh

@Kaveh, re # 5: ข้อดี แต่ฉันคิดว่าสิ่งที่ฉันมีอยู่ในใจคือมีคนเขียนการสร้างวงจรเครื่องแบบที่ชัดเจนซึ่งไม่เหมือนกับ "แปลง TM นี้เป็นวงจร" นอกจากนี้ฉันคิดว่าการแปลงที่คุณพูดถึงอาจไม่ได้หมายความว่าวงจร "ดูเหมือน" อัลกอริทึม เช่นบอกว่าเรามี size-วงจรที่ใช้เวลาเวลาที่จะสร้าง เราสามารถทำให้มันกลายเป็นเวลา TM, ok แต่มันไม่ได้มีลักษณะคล้ายกับวงจรมากและการแปลงไร้เดียงสาของ TM กลับเข้ามาในวงจรอยู่ในขณะนี้ขนาด ~ 3 ฉันหวังว่าสิ่งนี้จะแสดงให้เห็นว่าทำไมคำถามที่ฉันสนใจ n 3 n 3 n 3nn3n3n3
usul

1
@Kaveh: ฟังก์ชั่นตัวตนตอบ 1-4 อย่างไร?
Joshua Grochow

@ โจชัวเราสามารถอธิบายได้โดยตรงว่ามีวงจรขนาดเท่า (wire) ขนาด O (n) ซึ่งดีกว่าการแปลงเครื่องทัวริงให้มีลักษณะเป็นวงจร
Kaveh

ประเด็นของฉันคือมีรายละเอียดเล็ก ๆ ที่สำคัญที่เราต้องใส่ใจเพื่อให้คำถามตอบได้ อีกตัวอย่าง: BPP อยู่ใน P / poly และการแปลงสามารถคำนวณได้ หากการสร้างวงจรกระทำโดยอัลกอริธึมที่มีประสิทธิภาพรวมกับค่าวงจรจะให้ TM ที่มีประสิทธิภาพ แนวคิดวงจรและ TM คำนวณอัลกอริทึมเดียวกัน ความจริงที่ว่าขนาดและเวลาอาจไม่สอดคล้องกันเป็นเรื่องปกติ แต่ถูกกำหนดไว้สำหรับแบบจำลองการคำนวณที่แตกต่างกันและเรารู้ว่าไม่ตรง เวลาที่สัมพันธ์กันจะมีความลึกมากกว่าขนาด
Kaveh

คำตอบ:


8

นี่คือคำตอบสำหรับคำถามสองข้อสุดท้ายของคุณ

(5) การเรียงลำดับเครือข่ายเป็นวงจรเครื่องแบบที่เรียงลำดับเร็วที่สุดเท่าที่อัลกอริธึม RAM ที่ดีที่สุด แต่ไม่ได้เป็นเพียงการแปลงอัลกอริธึม RAM (เช่น quicksort) [ AKS83 , G14 ]

(4) ใช่สำหรับด้วยแต่ด้วยเหตุผลโง่: ทุกฟังก์ชั่นคำนวณโดยวงจรขนาด n ( แชนนอนได้รับการพิสูจน์นี้ขึ้นไปอย่างต่อเนื่องและLupanovได้อย่างต่อเนื่องที่ดีที่สุด.) โดยทฤษฎีบทลำดับชั้นของเวลาที่มีอยู่ฟังก์ชั่นกับความซับซ้อนเครื่องแบบเวลาระหว่างและn) นี่จะให้ตัวอย่าง:มีวงจรขนาด (ซึ่งฉันคิดว่าคำนวณได้ในเวลา) แต่ไม่สามารถคำนวณได้s(n)=(1+ε)2n/nε>0(1+o(1))2n/nfΩ(3n)O(n3n)fO(2n/n)2poly(n)s ( n ) = o ( 2 n / n )O~(2n/n)เวลา คุณอาจจะขอn)s(n)=o(2n/n)

นี่เป็นคำถามที่น่าสนใจ ฉันหวังว่าบางคนสามารถตอบได้ (1) - (3)


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