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.
Figure 1.
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.
Figure 2.
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 . This is distinct from exclusive or.
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.

Ancestors (5)

  1. Circuit complexity
  2. Computational complexity theory
  3. Theoretical computer science
  4. Computer science
  5. Home

Discussion (0) New discussion

There are no discussions about this article yet.

Articles by others on the same topic (1)

A **Boolean circuit** is a mathematical model used in computer science and electrical engineering to represent Boolean functions via a network of interconnected logical gates. Boolean circuits are foundational in the fields of digital logic design, computation theory, and complexity theory. ### Components of a Boolean Circuit: 1. **Variables**: These represent the inputs to the circuit, which can take on values of either true (1) or false (0).