Languages computable by polynomial-size Boolean circuit families of bounded fan-in and depth . One can specify the nonuniform or logspace-uniform convention explicitly. Balanced constant-size operations give examples such as the MOD3 binary divisibility problem without nonuniform advice.
For a binary numeral, its remainder is the sum of its bits weighted alternately by and from the least significant position. A balanced finite-monoid reduction circuit adds these residues modulo three in two-bit encodings. A final zero test gives a uniform linear-size logarithmic-depth Boolean circuit, proving membership in NC1.
A fixed finite monoid operation has a constant-size Boolean truth-table Boolean circuit on its constant-bit encodings. Reduce elements in a balanced binary tree to get linear size and logarithmic depth. Associativity ensures that tree grouping does not change the product. MOD3 uses addition in the three-element residue group, with input-position signs handled at the leaves.
A Boolean circuit is a finite directed acyclic graph of Boolean gates with designated inputs and outputs.
A Boolean circuit whose current output depends only on its current input, with no stored state or feedback dependency. Its delay is bounded by the longest input-to-output path of logic gates. This differs from a synchronous sequential circuit, whose output can depend on state stored at earlier clock edges.
A combinational logic circuit mapping a binary input code to selected output lines. In a one-of- register-address decoder, line is asserted exactly when the address equals , optionally combined with an enable. This selects which processor register may capture a common write-data word.
A transient output error caused by timing differences in a Boolean circuit. A static hazard temporarily changes an output that should remain constant; a dynamic hazard introduces extra transitions when the output should change once. A steady-state truth table cannot detect these timing effects. Consensus theorem terms can remove single-input static hazards in a sum of products, while simultaneous input changes may still produce other hazards.
A transient output error caused by timing differences in a Boolean circuit. A static hazard temporarily changes an output that should remain constant; a dynamic hazard introduces extra transitions when the output should change once. A steady-state truth table cannot detect these timing effects. Consensus theorem terms can remove single-input static hazards in a sum of products, while simultaneous input changes may still produce other hazards.
A logic hazard in which an output intended to remain one briefly falls to zero. In a sum of products, cover every adjacent pair of one-cells in a Karnaugh map with a common product implicant. That term omits the changing input and remains one throughout the transition, holding the OR output high regardless of the other path delays. This argument assumes one input changes at a time and the circuit starts settled.
For a concrete circuit, let , , , and . Give every gate, including each inverter, propagation delay 10 ns. Starting from , lower at time zero. Signal falls at 10 ns, while rises only at 20 ns. Their gap passes through the two OR gates, making fall during 30–40 ns even though its steady-state value remains one.
A static-one logic hazard from unequal inversion and product paths
. Details. Adding the two consensus theorem products and preserves the Boolean function and holds the output high across every potentially hazardous single-input transition. The resulting five-term expression factors as . When a change of could leave the output steadily one, and keep the second product steadily one. In the zero-to-zero case with changing , and keep both output products zero. Changes of use only one polarity each and therefore have no opposite-polarity race. This factored implementation uses three OR gates, two AND gates and two NOT gates, with a 40 ns maximum input-to-output path at the stated delays.
A shared-factor implementation of the consensus theorem correction
. Details. The elapsed time between a change at a logic gate's input and the corresponding settled change at its output, under specified loading and transition conditions. Dependent gate delays add along a path. The combinational critical path gives the longest such input-to-output path; reconvergent paths of unequal delay can produce a logic hazard even when the final Boolean function value does not change.
The combinational critical path is a longest propagation-delay path through a combinational logic circuit. Register-to-register clock timing also includes launch delay, setup time and clock uncertainty. Putting two functional units in series adds their dependent delays; operating them in parallel instead contributes the slower branch plus any subsequent selection delay.
A barrel shifter moves a machine word by a variable number of bit positions through a bounded-depth combinational logic circuit. For a -bit machine word, cascade banks of multiplexers selecting optional shifts of . The binary shift-amount bits select the stages; the chosen distances add. Logical shifts fill vacated positions with zero, whereas bit rotations reconnect the discarded positions. A 32-bit logical barrel shifter can use five banks of 32 two-input multiplexers.
The number of zero bits before the first one, reading a fixed-width binary representation from its most significant bit. The all-zero -bit input has count . Thus , and ; the width is part of the definition.
For leading-zero count, inspect a word's bytes from most significant to least significant. Every zero byte contributes eight; the first nonzero byte contributes its table value in the title. If all bytes are zero, a word of width contributes . Defining the zero table entry explicitly makes the all-zero argument a regular case rather than an out-of-range logarithm.
For a block of bits, encode its count leading zeros result as a zero flag followed by low count bits . An all-zero block has ; otherwise . Two half-block encoders supply flags and low counts . Combine them using , , and for . A one-bit leaf has and no low count bits. Checking whether the upper half is nonzero, only the lower half is nonzero, or both halves are zero proves the formula.
All count bits are selected in parallel, so for circuit depth. The circuit size satisfies ; summing the work over levels gives . Sharing the all-zero flags avoids a serial adder along the critical path.
A Boolean circuit computing the sum of binary representations, possibly including input and output carry bits. Its delay depends on how carries are propagated; specifying an adder does not by itself imply constant circuit depth as the input width grows.
A combinational logic circuit adding two input bits to a sum bit and carry bit . An exclusive or gate and an AND gate implement it. The identity follows by checking the four input pairs. A half adder has no input carry, so adding three equally weighted bits needs a different circuit or multiple stages.
A selector that routes one of several inputs to its output according to control bits. The displayed two-input version selects when and when . A word selector applies the same control bit to parallel one-bit multiplexers; its circuit size grows with the word width while its added circuit depth remains constant.
A combinational logic device comparing two fixed-width binary representations. For unsigned inputs , a two-output encoding is exactly when and exactly when . Equality gives ; is unreachable. A one-bit implementation is , .
A digital comparator processes one pair of bits per clock cycle, storing a comparison result in a finite-state machine. For least-significant-first unsigned input, a new unequal pair overrides the stored result, while equal bits preserve it: the newest unequal pair has the greatest place value seen so far.
To combine more and less significant digital comparators, compute and use the displayed formulas. Unequal upper blocks decide the order, because their difference outweighs every possible lower-block difference; equal upper blocks delegate the decision to the lower block. This is an associative operation on the three comparison outcomes. A balanced binary tree of these combinations has circuit size and circuit depth for -bit inputs.
A physical or idealized component implementing a fixed Boolean function on one or more input bits. For example, an AND gate outputs one exactly when both input bits are one. A Boolean circuit connects logic gates; circuit size counts components and circuit depth measures the longest chain of dependencies.
A two-input logic gate whose output is one exactly when its two input bits agree. Its Boolean function is , equivalently . This follows by considering the two cases in which inputs are equal. It implements logical equivalence of the input truth values.
The number of load inputs driven by one output of a logic gate. A large fan-out increases the capacitive load and can increase propagation delay; the allowable number also depends on the logic technology and input characteristics.
A logic gate computing the logical negation of the logical conjunction of its inputs. Thus . It implements a logical disjunction of complemented inputs by De Morgan laws.
The size of a Boolean circuit counts its gates, or in another common convention its wires. The convention must be fixed when stating quantitative bounds. In switching arguments, new clauses created from a decision tree are not separate original gates to be charged in the failure union bound.
Circuit depth is the largest number of counted gates on any input-to-output path in the Boolean circuit. For an AND/OR circuit with negations on input literals, only the AND/OR gates are counted. This convention makes the restriction argument for the Linial-Mansour-Nisan theorem precise.
Given a finite acyclic Boolean circuit and its input assignment, determine the output bit. Topological gate evaluation places the problem in P; it is a standard P-complete problem under logspace many-one reductions. Boolean circuit evaluation is different from Circuit satisfiability problem, which asks whether some assignment succeeds.
The circuit value problem restricted to AND and NOT gates remains P-complete. Replace each OR by , using a constant-size gadget. Gate indices and gadget positions can be emitted in logarithmic space, and assignments are preserved. Constants, when needed, can be represented by fixed-valued input nodes.
The circuit satisfiability problem asks whether a Boolean circuit has an input on which its designated output is one. It is NP-complete.
A threshold Boolean function outputs one exactly when a weighted sum of its input bits reaches a specified threshold. The unweighted threshold function tests whether at least of its inputs are one.
A majority Boolean function outputs one when more than half its input bits are one. An odd number of inputs avoids a tie convention. For three bits its unique multilinear polynomial is , so the polynomial method for quantum query lower bounds requires at least two exact queries.
Its disjoint triples give a product of degree-three multilinear polynomials, with all-variable coefficient . Hence its degree is and its exact quantum query complexity is at least . At the input consisting of repeated triples, each of the one bits is a disjoint sensitive singleton. Thus block sensitivity is at least , implying a bounded-error quantum query complexity lower bound .
The dual of a Boolean function is . Swapping AND with OR and zero with one in a monotone circuit for produces a circuit for by De Morgan's laws.
A circuit family contains one circuit for each input length . The circuit for one length may be chosen independently of those for other lengths, so a family is a nonuniform model of computation.
The languages whose length- indicator functions have Boolean circuits with at most gates for sufficiently large , over a fixed bounded-fan-in complete basis. The family need not be constructible by one algorithm. Polynomial-size bounds give P/poly; the truth-table upper bound for circuit size applies even to undecidable languages.
OR together one minterm for each accepted length- input. Each minterm is an AND of the appropriate Boolean literals. There are at most minterms, and their negated input wires can be shared, giving bounded-fan-in gates. This is a nonuniform existence statement, not an algorithm for determining an undecidable truth table.
For any set of lengths , choose at length a constant-zero Boolean circuit when , and an AND of all inputs when . This uses gates. If is undecidable, so is , yet it belongs to P/poly. Since all NP languages are decidable by certificate enumeration, this proves P/poly is not equal to NP; it does not resolve containment in the other direction.
Constant-depth circuit complexity studies circuit families whose depth is bounded independently of the input length.
The Håstad switching lemma says that a small-width DNF or CNF becomes representable by a shallow decision tree with high probability under a sufficiently sparse random restriction. Iterating it is a central method for proving lower bounds against constant-depth circuits.
Switching-lemma depth reduction applies the Håstad switching lemma to every bottom-layer gate, replaces each restricted gate by a shallow decision tree, and merges adjacent layers of the same gate type. Repetition reduces a constant-depth circuit to a bounded-depth decision tree while retaining many live variables.
Monotone circuit complexity studies Boolean circuits built only from AND and OR gates, without negations. Such circuits compute monotone Boolean functions, but some monotone functions require much larger monotone circuits than unrestricted circuits.
A monotone Boolean circuit uses only AND and OR gates, variables, and optional constants. It computes a monotone Boolean function; negation gates are excluded.
In the finite lattice approximation for monotone clique circuits, set and . A nonuniversal output accepts at most of uniform positive cliques. Its missing positives require the circuit size times the positive clique error of a truncated lattice meet to be bounded below. A universal output accepts every negative colouring input; those errors require the circuit size times the negative colouring error of a forced-set closure to be at least one. Both alternatives imply the displayed superpolynomial bound by the Razborov gate-by-gate approximation lemma.
The Razborov approximation method replaces the AND and OR operations of a monotone circuit by tractable lattice operations. If each gate introduces only a controlled set of positive or negative errors, a small circuit cannot separate all positive inputs from all negative inputs.
Take upward-closed set families of subsets of of size at most , closed under the forcing rule in Razborov closure. Normalize any family containing a set of size at most one to the full family, since its clique predicate is identically true. Intersection is the meet in a lattice; closure of the union is the join in a lattice. A family represents the graphs containing a clique on at least one of its members. The approximate meet can lose positive inputs and the approximate join can acquire negative inputs. The Razborov gate-by-gate approximation lemma charges output errors to those local errors.
Independently colour each vertex with one of colours and join differently coloured vertices. This complete multipartite graph has no -clique. If a forced set is rainbow but its witnesses are not, condition on the colours of . The disjoint petals make those failure events conditionally independent. For each witness of size at most , the probability of a colour collision is at most . If this is at most , one closure step causes an error with probability at most . There are at most possible steps; apply the union bound.
Choose a uniform -subset and the graph consisting only of its clique. Acceptance by two approximating set families but rejection by their intersection requires two minimal witnesses whose union has size greater than . At least one has size greater than . The sunflower bound for minimal members of a Razborov-closed family and give .
Fix integers and . The Razborov closure of a family of vertex sets of size at most repeatedly adjoins a set whenever there are existing sets whose pairwise intersections are contained in . A family equal to its closure is called -closed.
An inclusion-minimal -set in an upward-closed family cannot belong to an -member delta-system of such minimal sets: its proper core would be adjoined by Razborov closure, violating minimality. The Erdős–Rado sunflower lemma therefore bounds the number of minimal -sets. This weaker factorial bound is sufficient for the superpolynomial monotone clique lower bound.
An -closed family has at most inclusion-minimal members of cardinality . This limits the number of cliques accepted by a proper closed approximation.
The Razborov gate-by-gate approximation lemma compares a monotone circuit with the lattice computation obtained by replacing each gate by an approximate meet or join. Every disagreement at the output is charged to an error introduced by one of the circuit's gates.
A natural proof lower bound is based on a property of Boolean functions that is simultaneously constructive, large, and useful against the circuit class being bounded.
A property of -variable Boolean functions is constructive when membership can be decided from a -bit truth table in time polynomial in .
A property of Boolean functions is large when it contains a nonnegligible fraction, customarily at least , of all -variable Boolean functions.
A property is useful against a circuit class when it contains functions at infinitely many input lengths but eventually excludes every function family computed by circuits of the target size in that class.
The Razborov–Rudich natural-proofs barrier says that the existence of sufficiently secure pseudorandom function families rules out constructive, large properties useful against the associated circuit class.
A pseudorandom function family is an efficiently computable keyed family whose oracle behavior cannot be distinguished from that of a uniformly random function by the specified class of resource-bounded algorithms.
An arithmetic circuit is a Directed acyclic graph whose input nodes are variables or constants in a field, and whose internal gates perform addition, subtraction, or multiplication. Gates may reuse earlier outputs, so the circuit can represent a polynomial without listing all its monomials.
Articles by others on the same topic
There are currently no matching articles.

