Moving and rewiring gates of states #
The preparatory operations of Mishra and Santhanam, Sections 4.1 and 4.2 that change only gates, on states of gate elimination:
State.moveAffine: moving an affine gate reading no gates into the affine system, as the equationSemiCircuit.affEqn(State.Valid.moveAffine);State.rewire: replacing a gate by one reading only parameters and computing the same value whenever the other gates take their values, used to reroute the children of the minimal AND (State.Valid.rewire).
Both keep the parameters, the pairs and the parameter map.
Main definitions #
Cslib.Circuits.Boolean.AffineDisperser.State.moveAffine,Cslib.Circuits.Boolean.AffineDisperser.State.rewire.
Main results #
Cslib.Circuits.Boolean.AffineDisperser.State.Valid.moveAffine,Cslib.Circuits.Boolean.AffineDisperser.State.Valid.rewire: they preserve validity.
References #
Moving affine gates into the affine system #
Moving an affine gate into the affine system preserves the parameters of the state.
Moving an affine gate into the affine system preserves the pairs of the state.
Moving an affine gate into the affine system preserves the size of the state.
Moving a gate into the affine system does not increase the degree of any parameter.
Moving an affine gate reading no gates into the affine system preserves validity.
Rewiring a gate #
Replace the gate J by the gate g.
Instances For
Rewiring a gate preserves the parameters of the state.
Rewiring a gate preserves the pairs of the state.
Rewiring a gate preserves the size of the state.
Rewiring a gate preserves the set of gate names.
A gate K is a child of z in S.rewire J g iff K ∈ S.gates and the gate at K (which
is g when K = J) reads z.
Rewiring a gate preserves validity.