Restrictions and deletions on states #
The restrictions and deletions of Mishra and Santhanam, Sections 2.4 and 3.1 on states of gate elimination, each with its validity and its effect on the counted quantities and on the children of the parameters:
State.restrict: fixing a parameter to a constant or to a literal of another parameter, the restrictions (UF) and (PF) of the source;State.deleteGate: deleting a gate that computes a literal of one of its inputs, or a constant, or that is unused, rerouting its uses (D1) and (D2);State.deleteEqn: deleting an equationv = ℓtogether with its auxiliary variablev, reroutingvtoℓ(D3);State.dropEqn: deleting an equation together with an auxiliary variable occurring nowhere else (the second half of D4), andState.dropTrivialEqn: deleting an equation without terms.
Each operation acts on the semi-circuit as the corresponding simplification of
Complexity.Computability.Circuit.Boolean.SemiCircuit.Simplification, which preserves
well-formedness. Validity then follows from the semi-circuit level: an operation keeping the
parameter map is valid when consistent assignments lift (State.Valid.of_liftsTo), and in general
validity is transported along a map σ from the new assignments to the old ones under the
obligations State.Transport (State.Valid.of_transport).
Main definitions #
Cslib.Circuits.Boolean.AffineDisperser.State.Transport: the obligations of transporting validity.Cslib.Circuits.Boolean.AffineDisperser.State.restrict,State.deleteGate,State.deleteEqn,State.dropEqn,State.dropTrivialEqn: the operations.
Main results #
Cslib.Circuits.Boolean.AffineDisperser.State.Valid.of_transport: transporting validity.Cslib.Circuits.Boolean.AffineDisperser.State.Valid.restrict,Valid.deleteGate,Valid.deleteEqn,Valid.dropEqn,Valid.dropTrivialEqn: the operations preserve validity.
References #
Transporting validity #
A state with the parameters, pairs and parameter map of a valid state is valid when its
semi-circuit is well formed and computes f.
A state with the parameters, pairs and parameter map of a valid state is valid when its semi-circuit is well formed and its consistent assignments lift to the old semi-circuit.
The obligations for transporting validity from S to S' along a map σ from the
assignments of S' to those of S: σ maps consistent assignments to consistent assignments
with the same output, the new parameter map is the old one after σ, σ matches the parameters
of both states injectively, and σ maps affine families on which the new pairs are tame to
families agreeing on the old parameters with affine families on which the old pairs are tame.
- consistent (val : ℕ → Bool) : S'.Consistent val → S.Consistent (σ val)
Instances For
Validity transported along a map σ from the assignments of a new, well-formed state to
those of a valid state.
Restrictions (UF) and (PF) #
The hypotheses of a restriction: x is a parameter, ℓ reads at most another parameter,
the kept pairs avoid x, and every dropped pair contains x and the other parameter read by
ℓ, if any.
- subset : P ⊆ S.pairs
Instances For
Along an affine family on which the kept pairs are tame, the restricted family is affine
and every pair is tame: a dropped pair has a constant member, or a constant sum when x is
restricted to a literal of its partner.
Restrictions preserve validity.
Deleting a gate (D1) and (D2) #
Delete the gate J, rerouting its uses to the literal ℓ.
Instances For
Deleting a gate removes it from the children of every parameter other than the target of
ℓ.
Deleting a gate preserves validity.
Deleting an equation (D3) #
Delete the equation e, which reads v = ℓ, and the auxiliary variable v, rerouting v
to ℓ.
Instances For
Deleting an equation v = ℓ with its auxiliary variable preserves validity.
Dropping an equation (D4) #
Dropping an equation with an auxiliary variable occurring only there preserves validity.
Deleting an equation without terms preserves validity.