Circuit complexity relative to a supplied family #
For arbitrary sets X and U, a source family sources : X → Fin n → U
supplies the formal inputs to a circuit computing target : X → Fin m → U.
Circuit.relativeCostComplexity minimizes the weighted cost of such circuits.
No coordinates of X are implicitly available.
This is the general framework of Definition 2.1 and Proposition 2.2 in Stephen Wayne Boyack, The Robustness of Combinatorial Measures of Boolean Matrix Complexity, MIT PhD thesis (1985), pp. 29–31. The signature here has arbitrary finite arities and natural-number costs, rather than only binary operations. Constants must be explicitly supplied or implemented by gates; there is no implicit free zero at disconnected outputs.
The extension and section theorems make the domains in Proposition 2.2.1
explicit. A partial function on Set.range sources must be extended before
using ordinary circuit complexity. Surjective sources avoid this issue.
Source: https://hdl.handle.net/1721.1/15322.
A circuit computes a target family when its formal inputs are supplied
by sources. The common domain need not be a product or a finite type.
Equations
- circuit.ComputesFrom interpretation target sources = ∀ (x : X), circuit.eval interpretation (sources x) = target x
Instances For
Minimum cost of computing target from exactly the supplied source
family. No implementation of the sources is charged or required.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Minimum number of operation gates computing a target from a source family.
Equations
- Cslib.Circuits.Circuit.relativeGateComplexity interpretation target sources = Cslib.Circuits.Circuit.relativeCostComplexity interpretation Algebraic.OperationCost.unit target sources
Instances For
A concrete implementation bounds relative complexity.
A lower bound for all implementations bounds relative complexity.
A finite relative budget is witnessed by a concrete circuit.
Finiteness is exactly representability from the supplied family.
Nonrepresentable targets have infinite relative complexity.
A relative gate bound is witnessed by a circuit with at most that many gates.
With unit gate costs, zero complexity means selecting fixed source wires. This characterization need not hold when operations can have zero weight.
Ordinary complexity is relative complexity with the identity family supplied.
Selecting, duplicating, or reordering supplied values requires no gates.
A family is free relative to itself.
Boyack's Proposition 2.2 for arbitrary domains, interpretations, arities, and natural-number operation costs. Compose the two implementing circuits.
The relative triangle inequality for unit gate cost.
Mutually free changes of supplied representation preserve every relative complexity. This includes removing duplicated or redundant source wires.
Compute two target families in parallel from the same supplied values.
Supplying a family containing all the old sources cannot increase cost.
Selecting some of the target outputs cannot increase cost.
Adding outputs that are free from the sources does not change complexity.
Boyack's extension characterization with an explicit total extension:
minimize ordinary complexity over functions agreeing on Set.range sources.
Restricting the common domain can only remove correctness obligations.
Relative computation after a change of domain can use any implementation of the restricted sources from a new supplied family.
A surjective reindexing of the common domain preserves complexity. This includes permuting the columns of a finite table of functions.
Equal supplied values must give equal target values whenever a circuit computes the target. This necessary condition does not assume completeness.
Circuit computation factors through the supplied values.
If the supplied values identify two inputs that the target distinguishes, no circuit can compute the target from those values, over any interpretation.
For a functionally complete interpretation, equality on source fibers is also sufficient. A nonempty output space permits total extensions off the image of the supplied family. This generalizes the complete-basis case of Boyack's Theorem 7.1.5 without asserting its algorithmic running time.
Boyack's Corollary 2.2.1.2: for surjective sources and a target constant on their fibers, any right inverse reduces relative to ordinary complexity.
Boyack's Corollary 2.2.1.3: an invertible source family converts relative complexity into ordinary complexity after composing with its inverse.
Permuting the supplied wires preserves relative complexity.
Permuting the target outputs preserves relative complexity. Together with domain reindexing this gives the structural row/column invariance behind Boyack's Proposition 7.1.4.2.
Retaining the supplied family as additional outputs is free.
Retaining the sources after the other outputs is also free.