ทฤษฎีบทลำดับชั้นสำหรับขนาดวงจร


18

ฉันคิดว่าทฤษฎีบทลำดับชั้นขนาดสำหรับความซับซ้อนของวงจรอาจเป็นความก้าวหน้าครั้งสำคัญในพื้นที่

มันเป็นวิธีที่น่าสนใจในการแยกชั้นเรียนหรือไม่?

แรงจูงใจของคำถามคือเราต้องพูด

มีฟังก์ชั่นบางอย่างที่ไม่สามารถคำนวณได้ตามขนาดวงจรและสามารถคำนวณได้โดยมีขนาดวงจรที่(n)) (และอาจเป็นสิ่งที่เกี่ยวกับความลึก)f(n)g(n)f(n)<o(g(n))

ดังนั้นถ้าทรัพย์สินดูเหมือนจะผิดธรรมชาติ (มันละเมิดเงื่อนไขความใหญ่โต) เห็นได้ชัดว่าเราไม่สามารถใช้เส้นทแยงมุมได้เพราะเราไม่ได้อยู่ในสภาพที่เหมือนกันf(m)g(n)nO(1)

มีผลในทิศทางนี้หรือไม่?

คำตอบ:


31

ในความเป็นจริงมันเป็นไปได้ที่จะแสดงให้เห็นว่าสำหรับทุกเล็กพอ (น้อยกว่า ) มีฟังก์ชั่นที่คำนวณได้จากวงจรขนาดแต่ไม่ใช่โดยขนาดหรือแม้กระทั่งขึ้นอยู่กับประเภทของประตูที่คุณอนุญาต2 n / n f ( n ) f ( n ) - O ( 1 ) f ( n ) - 1f2n/nf(n)f(n)O(1)f(n)1

นี่คือการโต้แย้งง่ายๆที่แสดงให้เห็นว่ายังมีฟังก์ชั่นคำนวณขนาดแต่ไม่ได้ขนาด(n)f ( n ) - O ( n )f(n)f(n)O(n)

เรารู้ว่า:

  1. มีฟังก์ชั่นที่ต้องมีความซับซ้อนวงจรอย่างน้อยและโดยเฉพาะอย่างยิ่งความซับซ้อนของวงจรมากกว่า(n)2 n / O ( n ) f ( n )g2n/O(n)f(n)
  2. ฟังก์ชันดังนั้นสำหรับอินพุตทุกตัวสามารถคำนวณได้โดยวงจรขนาดคงที่z ( x ) = 0 xzz(x)=0x
  3. ถ้าสองฟังก์ชั่นและแตกต่างกันเฉพาะในการป้อนข้อมูลแล้วของพวกเขาแตกต่างวงจรซับซ้อนโดยที่มากที่สุดg 2 O ( n )g1g2O(n)

สมมติว่าไม่ใช่ศูนย์ในอินพุตโทรปัจจัยการผลิตเช่นx_1,เราสามารถพิจารณาสำหรับแต่ละฟังก์ชันซึ่งเป็นฟังก์ชั่นตัวบ่งชี้ของชุด ; จึงและกรัมN x 1 , , x Nฉันg i ( x ) { x 1 , , x i } g 0 = 0 g N = ggNx1,,xNigi(x){x1,,xi}g0=0gN=g

เห็นได้ชัดว่ามีบางเช่นว่ามีความซับซ้อนวงจรมากกว่าและมีความซับซ้อนน้อยกว่าวงจร(n) แต่แล้วมีความซับซ้อนน้อยกว่าวงจรแต่กว่า(n)g ฉัน+ 1 f ( n ) g ฉัน f ( n ) g ฉัน f ( n ) f ( n ) - O ( n )igi+1f(n)gif(n)gif(n)f(n)O(n)


3
วิธีการที่ไม่ไปพิสูจน์ว่ามีฟังก์ชั่นคำนวณโดยวงจรขนาดแต่ไม่ได้โดยวงจรขนาด ? f ( n ) - O ( 1 )f(n)f(n)O(1)
วิลเลียม Hoza

28

ผลลัพธ์นี้สามารถพิสูจน์ได้โดยใช้อาร์กิวเมนต์การนับง่าย ๆ พิจารณาฟังก์ชันสุ่มนำไปใช้ครั้งแรกบิตของท่าน ฟังก์ชั่นนี้เกือบจะมีความซับซ้อนของวงจรโดย Riordan และ Shannon การนับการโต้แย้งและการจับคู่ขอบเขตบน ดังนั้นการเลือกเพื่อให้ เราสามารถแยกแยะความแตกต่างขนาดจากขนาด(n) โปรดทราบว่าฟังก์ชั่นที่เป็นปัญหาไม่จำเป็นต้องคำนวณแม้กระทั่ง แต่เราสามารถใส่ไว้ในลำดับชั้นเวลาชี้แจงโดยเทคนิคมาตรฐาน (ตราบใดที่เราสามารถคำนวณค่าที่เหมาะสมของ ) แน่นอนว่าเราไม่สามารถพิสูจน์ได้ว่ามีข้อ จำกัด มากกว่า( 1 + o ( 1 ) ) ( 2 k / k ) k 2 g ( n ) < 2 k / k < f ( n ) / 2 g ( n ) f ( n ) k 2 n / nk(1+o(1))(2k/k)k2g(n)<2k/k<f(n)/2g(n)f(n)k2n/nเพราะนั่นคือความซับซ้อนวงจรกรณีที่เลวร้ายที่สุดของฟังก์ชั่นใด ๆ

การพิสูจน์ตามธรรมชาติไม่สามารถใช้กับการโต้แย้งประเภทนี้ได้เนื่องจากคุณสมบัติในคำถามคือ `` ไม่มีวงจรขนาดเล็ก '' ซึ่งไม่สามารถคำนวณได้ง่ายจากตารางความจริงของฟังก์ชัน (สมมุติ) ยังไม่ชัดเจนว่าระดับความซับซ้อนในการนับประเภทนี้มีน้อยเพียงใด มีเหตุผลใดที่เราไม่สามารถใช้อาร์กิวเมนต์การนับเพื่อพิสูจน์ขอบเขตที่ต่ำกว่าสำหรับหรือไม่? ไม่ใช่ที่ฉันรู้ NE


6
ไม่มีเหตุผลโดยตรง แต่วิธีการทั้งหมดที่รู้จัก (การประยุกต์ใช้การนับข้อโต้แย้ง) ต้องการให้เราตรวจสอบในที่สุดว่าตารางความจริงของฟังก์ชั่นที่กำหนดมีความซับซ้อนของวงจรสูง อัลกอริทึมสำหรับปัญหานี้จะกำหนดคุณสมบัติธรรมชาติกับ (ซึ่งเป็นไปตามหนึ่งในเอกสารของสตีเวนรูดิชไม่น่า) แน่นอนว่าการแก้ปัญหาลักษณะนี้ไม่จำเป็น ...N P / p o l y P / p o l yNENP/polyP/poly
ไรอันวิลเลียมส์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.