Boolean circuit families #
This module provides the public API for circuit-family semantics, concrete size/depth bounds, and the equivalence between pointwise polynomial bounds and the power big-O convention used by complexity classes.
ComputesOnLength depends only on the family's component at length N.
A circuit computing a family at length N evaluates to f N x on each input x.
At length 0 the family's function is the designated empty-input output.
The size of a circuit family at length 0 is 0.
The depth of a circuit family at length 0 is 0.
A size bound may be weakened to any pointwise larger bound.
A depth bound may be weakened to any pointwise larger bound.
A pointwise size bound yields a big-O size bound.
Pointwise polynomial size is equivalent to a big-O power bound.
Computes respects equality of the target function family.
A circuit family computes at most one function family.
Evaluating the serialized fixed-length input agrees with family evaluation at that length.
Evaluating the list form of a fixed-length input agrees with family evaluation at that length.
Evaluating the empty list yields the designated empty-input output.
A family computing f agrees with f at every length and input.
A family computing f evaluates any list input to f at the list's length.