circuit complexity circuit model aims to offer
play

Circuit Complexity Circuit model aims to offer unconditional lower - PowerPoint PPT Presentation

Circuit Complexity Circuit model aims to offer unconditional lower bound results. Computational Complexity, by Fu Yuxi Circuit Complexity 1 / 58 Synopsis 1. Boolean Circuit Model 2. Uniform Circuit 3. P / poly 4. Karp-Lipton Theorem 5. NC and


  1. Circuit Complexity

  2. Circuit model aims to offer unconditional lower bound results. Computational Complexity, by Fu Yuxi Circuit Complexity 1 / 58

  3. Synopsis 1. Boolean Circuit Model 2. Uniform Circuit 3. P / poly 4. Karp-Lipton Theorem 5. NC and AC 6. P -Completeness Computational Complexity, by Fu Yuxi Circuit Complexity 2 / 58

  4. Boolean Circuit Model Computational Complexity, by Fu Yuxi Circuit Complexity 3 / 58

  5. Boolean circuit is a nonuniform computation model that allows a different algorithm to be used for each input size. Boolean circuit model appears mathematically simpler, with which one can talk about combinatorial structure of computation. Computational Complexity, by Fu Yuxi Circuit Complexity 4 / 58

  6. Boolean Circuit An n -input, single-output boolean circuit is a dag with ◮ n sources (vertex with fan-in 0), and ◮ one sink (vertex with fan-out 0). All non-source vertices are called gates and are labeled with ◮ ∨ , ∧ (vertex with fan-in 2), and ◮ ¬ (vertex with fan-in 1). A Boolean circuit is monotone if it contains no ¬ -gate. If C is a boolean circuit and x ∈ { 0 , 1 } n is some input, then the output of C on x , denoted by C ( x ), is defined in the natural way. Computational Complexity, by Fu Yuxi Circuit Complexity 5 / 58

  7. Example 1. { 1 n | n ∈ N } . 2. {� m , n , m + n � | m , n ∈ N } . Computational Complexity, by Fu Yuxi Circuit Complexity 6 / 58

  8. Boolean Circuit Family The size of a circuit C , notation | C | , is the number of gates in it. Let S : N → N be a function. An S ( n )-size boolean circuit family is a sequence { C n } n ∈ N of boolean circuits, where C n has n inputs and a single output, and | C n | ≤ S ( n ) for every n . Computational Complexity, by Fu Yuxi Circuit Complexity 7 / 58

  9. Circuit Model Accepts Undecidable Language A unary language L ⊆ { 1 n | n ∈ N } is accepted by a linear size circuit family. Fact . Not every unary language is decidable. Computational Complexity, by Fu Yuxi Circuit Complexity 8 / 58

  10. Nonuniform Complexity Class A problem L is in SIZE ( S ( n )) if there exists an S ( n )-size circuit family { C n } n ∈ N such that for each x ∈ { 0 , 1 } n , x ∈ L iff C n ( x ) = 1. Unlike in a uniform model, SIZE ( cS ( n )) � = SIZE ( S ( n )) generally. This follows from Circuit Hierarchy Theorem. Computational Complexity, by Fu Yuxi Circuit Complexity 9 / 58

  11. Boolean Functions are Hard Shannon . Most n -ary boolean functions have circuit complexity > 2 n n − o ( 2 n n ). Lupanov . The size complexity of the hardest n -ary boolean function is < 2 n n + o ( 2 n n ). Lutz . The size complexity of the hardest n -ary boolean function is > 2 n n (1 + c log n n ) for some c < 1 and all large n . 1. C. Shannon. The Synthesis of Two-Terminal Switching Circuits. Bell System Technical Journal. 28:59-98, 1949. 2. O. Lupanov. The Synthesis of Contact Circuits. Dokl. Akad. Nauk SSSR (N.S.) 119:23-26, 1958. 3. J. Lutz. Almost Everywhere High Nonuniform Complexity. JCSS, 1992. Computational Complexity, by Fu Yuxi Circuit Complexity 10 / 58

  12. Shannon’s Counting Argument Fixing an output gate, the number of functions defined by S -size circuits is bounded by ( S + n + 2) 2 S 3 S ( S + n + 2) 2 S (3 e ) S < S S S ( S − 1)! (1 + n + 2 ) S (3 e ( S + n + 2)) S S = S n +2 S 3 e ( S + n + 2)) S S < ( e (3 e 2 ( S + n + 2)) S S < (6 e 2 S ) S S . < To define an ǫ -fraction of the functions, (7 e 2 S ) S ≥ ǫ 2 2 n must be valid. It follows that S (log(7 e 2 ) + log S ) ≥ 2 n − log ǫ − 1 . (1) It is easy to see that S ≤ 2 n n − log( 1 ǫ ) would contradict (1). Computational Complexity, by Fu Yuxi Circuit Complexity 11 / 58

  13. By Shannon Theorem and Lupanov Theorem, the circuit C f for the hardest n -ary boolean function f has the following bounds: � 2 n � | C f | = 2 n n ± o . n Frandsen and Miltersen have provided a proof of the following. � � 1 �� � � 1 �� 2 n ≤ | C f | ≤ 2 n 1 + log n 1 + 3log n − O + O . n n n n n n 1. G. Frandsen and P. Miltersen. Reviewing Bounds on the Circuit Size of the Hardest Functions. Information Processing Letters, 2005. Computational Complexity, by Fu Yuxi Circuit Complexity 12 / 58

  14. Lower Bound Frandsen and Miltersen translate a circuit into a stack machine, and bound the length of the machine by a combinatorial argument. ◮ Inputs are numbered 1 , . . . , n . ◮ Boolean operations are numbered n + 1 , . . . , n + s . ◮ A program is a finite sequence of push and Boolean operation. ◮ Push i , where i is a number for an input or an early Boolean operation. ◮ A Boolean operation pops two elements and pushes one element. ◮ After the execution of a program, there is exactly one element left in the stack. continued on the next two slides. Computational Complexity, by Fu Yuxi Circuit Complexity 13 / 58

  15. Input: A circuit C = { 1 , . . . , n } ∪ � n + s i = n +1 { g i = g i 1 op g i 2 } , where g 1 , . . . , g n are inputs. Output: A program P that computes the same boolean function as C . Procedure: begin P is initially empty; SM ( n + s ) end SM ( i ). 1. If g i is an input, add “ Push i ” to P . 2. If g i has been computed by the j -th Boolean operation in P , add “ Push n + j ” to P . 3. If g i = g i 1 op g i 2 has not been computed yet, then 3.1 SM ( i 1 ). 3.2 SM ( i 2 ). 3.3 Add “ op ” to P . Each push increases stack size by one, and each operation decreases stack size by at most one. Since the machine stops with one value in the stack, P has precisely s + 1 push operations. Computational Complexity, by Fu Yuxi Circuit Complexity 14 / 58

  16. | P | < ( s + 1)( c + log( n + s )) for some c since the size of the argument of Push is log( n + s ). There are 2 2 n Boolean functions. So for some function the optimal circuit has size s such that ( s + 1)( c + log( n + s )) ≥ 2 n . (2) We show that (2) implies the lower bound inequality s > 2 n n (1 + log ( n ) − c n ) for large n . n If s ≤ 2 n n (1 + log ( n ) n ), then n + s ≤ 2 n n (1 + log ( n ) n + n 2 − c − c 2 n ). By log(1+ x ) < x log( e ), n n 2 n ≤ ( s + 1)( c + log( n + s )) 2 n n + n 2 n (1 + log( n ) 2 n )( n − log n + c + (log n − c n + n − c ≤ 2 n ) log e ) n n n 2 ( n + log( n ) − c + n 2 2 n n + n 2 2 n )( n − log n + c + (log n − c ≤ 2 n ) log e ) n (2 n / n 2 )( n 2 − log 2 ( n ) + O (log n )) < 2 n . ≤ Computational Complexity, by Fu Yuxi Circuit Complexity 15 / 58

  17. Upper Bound ( k , s )-Lupanov representation of n -ary boolean function f . � � f r i , v ( a ) ∧ f c f ( x ) = i , v ( b ) . v ∈{ 0 , 1 } s i ∈ [ p ] ◮ x = ab where a ∈ { 0 , 1 } k and b ∈ { 0 , 1 } n − k ; and p = 2 k / s . ◮ A 1 , A 2 , . . . , A p are a partition of { 0 , 1 } k , s = | A 1 | = . . . = | A p − 1 | ≥ | A p | > 0. ◮ f c i , v ( b ) = 1 if v is the function table of f ( , b ) on A i . ◮ f r i , v ( a ) = 1 if a = A i ( j ) for j ∈ [ s ], necessarily unique, and v ( j ) = 1. Computational Complexity, by Fu Yuxi Circuit Complexity 16 / 58

  18. Upper Bound A Circuit for f can be constructed in three steps. 1. Use 2(2 k + 2 n − k ) gates to compute all minterms over a and b . 2. Use p 2 n − k , respectively p 2 s , or-gates to compute f ( c ) i , v , respectively f ( r ) i , v , for all i , v . 3. Use 2 p 2 n − k gates to compute f . So we may use at most 2(2 k + 2 n − k ) + p 2 n − k + 3 p 2 n − k gates to compute f . ◮ Using p ≤ 1+2 k / s , we get the upper bound 2 n / s +2 · 2 k +3(2 n − k +2 s +2 k + s / s ). ◮ Set k = 2 log n and s = n − 3 log n . The upper bound is dominated by 2 n / s . Now � � �� � � log 2 n 2 n n − 3 log n = 2 n 2 n = 2 n 3 log n 1 + 3log n s ≤ 1 + + O . n − 3 log n n 2 n n n Computational Complexity, by Fu Yuxi Circuit Complexity 17 / 58

  19. Circuit Hierarchy Theorem Theorem . If n < (2 + ǫ ) S ( n ) < S ′ ( n ) ≪ 2 n / n for ǫ > 0, then SIZE ( S ( n )) � SIZE ( S ′ ( n )). Let � � � � 2 m 1 + ǫ m = max m . S ′ ( n ) ≥ . 4 m It follows from the assumption that � � 2 m ǫ S ( n ) < 1 − m . 4 + 2 ǫ Consider the set B n of all n -ary Boolean functions that depend on the first m inputs. ◮ By Lupanov Theorem, B n ⊆ SIZE ( S ′ ( n )) for large n . ◮ By Shannon Theorem, B n �⊆ SIZE ( S ( n )) for large n . Computational Complexity, by Fu Yuxi Circuit Complexity 18 / 58

  20. Uniform Circuit Computational Complexity, by Fu Yuxi Circuit Complexity 19 / 58

  21. A boolean circuit family { C n } n ∈ N is uniform if there is an implicitly logspace computable function mapping 1 n to C n . Computational Complexity, by Fu Yuxi Circuit Complexity 20 / 58

  22. Uniform Circuit Family and P Theorem . A language is accepted by a uniform circuit family if and only if it is in P . ‘ ⇒ ’: Trivial. ‘ ⇐ ’: A detailed proof is given next. Computational Complexity, by Fu Yuxi Circuit Complexity 21 / 58

Recommend


More recommend