Documentation

Complexity.Computability.Circuit.Fusion.DeMorgan

Fusion covers and De Morgan circuit size #

The Fusion bounds for Boolean functions are stated for monotone circuits that read positive and negative literals for free, charging only AND gates. This module transfers them to the ordinary size of circuits over the De Morgan basis, where negations may occur anywhere and every gate, constants included, is charged.

Let ρ(f) be the pair-cover complexity of the true set of f from the true sets of its 2 n literals. For the lower bound, the dual-rail translation Monotone.dualRail turns a De Morgan circuit of size s into a monotone circuit of size 2 s on the dual-rail inputs, and these are obtained from the literals by wiring and one free constant. Its AND gates give ρ(f) ≤ 2 s, for any admissible class of semifilters. For the upper bound, the quadratic compiler turns an unrestricted t-pair cover into a monotone circuit with at most 4 (t + 1)² (2 n + t + 1) gates; adding n negations for the literals gives a De Morgan circuit. In the same terms, monotone AND complexity from literals lies between ρ(f) and ρ(f)².

The formalized upper bound is O((t + 1)² (n + t)), cubic in the cover size when t ≥ n rather than quadratic, because unions, free in the AND cost, are charged in size; this is a property of the construction, not a proven lower bound. The formalized size bound depends on n as well as on ρ(f). These formalize known correspondences, not new bounds.

Main definitions #

Main results #

References #

Dual-rail inputs from literals #

def Cslib.Circuits.Monotone.railSelect {n : ℕ} (k : Fin (2 * n + 1)) :
Fin (n + n + 1)

Where the dual-rail input k is found among the literals followed by the constant true: input 0 is the constant, input 2 i + 1 the literal x i and input 2 i + 2 its negation.

Instances For

    The dual-rail inputs are a selection from the literals and the constant true.

    A monotone circuit producing the dual-rail inputs from the literals, using a single constant gate and no conjunction.

    Instances For

      Monotone AND complexity from literals #

      An unrestricted cover compiles to a monotone circuit computing f from its literals.

      Monotone AND complexity from literals is at most the square of unrestricted cover complexity.

      Monotone AND complexity from literals and cover complexity are polynomially equivalent: the former lies between ρ(f) and ρ(f)², with OR gates and constants free.

      De Morgan circuit size #

      Fusion lower bound for De Morgan circuits. Every circuit over the De Morgan basis computing f, with negations anywhere, has at least half as many gates as the cover complexity of f from its literals, for any admissible class of semifilters.

      Cover complexity from literals is at most twice De Morgan circuit complexity.

      Fusion upper bound for De Morgan circuits. A t-pair cover yields a De Morgan circuit of at most 4 (t + 1)² (2 n + t + 1) + n gates computing f.

      Cover complexity and De Morgan circuit size are polynomially related, up to the input length. The cover complexity t = ρ(f) of f from its literals over unrestricted semifilters is finite, at most twice the circuit complexity C(f) over the De Morgan basis, and C(f) ≤ 4 (t + 1)² (2 n + t + 1) + n.