States of gate elimination and their potential #
A state of the gate elimination of Mishra and Santhanam, Section 2.4
for a Boolean function f on n bits consists of a fair semi-circuit reading parameters, a set
of disjoint pairs of parameters and an injective map Φ from parameter values to inputs of f
such that the semi-circuit computes f ∘ Φ (State.Valid). The source keeps Φ in the form
Φ(u) = b + L u + ∑_{{p, r} ∈ P} c_{pr} p r (form (1) of the source),
an affine map plus quadratic terms over the pairs. We record only the property of this form
that the proof uses: along every affine family of parameter assignments on which each pair has a
constant member, or a constant sum, Φ is affine (State.Valid.phi_affine). The map Φ is
stored as a function of all internal values that depends only on the parameters.
A state has m parameters, q pairs, a = m - q and size s, the number of gates plus the
number of equations. The weight of an unpaired parameter of degree k is 0, 6 or 7 for
k = 0, k = 1 and k ≥ 2, and the potential is
W = 2 s + 3 q + ∑_{x unpaired} wt(x) (equation (5) of the source).
Proposition 2.2 of the source: the image of Φ contains the image of an injective affine map
from BitString a, informally an affine subspace of dimension a
(State.Valid.exists_affine_embedding), so the output of a valid state for an affine disperser
for dimension d ≤ a is not constant (State.Valid.exists_out_ne_of_le). Restricting one more
parameter to an affine function of the others keeps dimension a - 1, so when d < a the output
is not constant there either (State.Valid.false_of_fix); in particular it is not an affine
function of the parameters (State.Valid.out_not_affine, part of Lemma 2.3 of the source).
Writing State.wt S x for the weight of x if it is an unpaired parameter of S and 0
otherwise, the potentials of two states compare name by name (State.W_add_le). A step of gate
elimination (State.Step) is a move to a valid state with smaller m + s, Δa ∈ {0, -1, -2} and
ΔW ≤ 14 Δa, as in Lemma 4.2 of the source; a preparatory operation (State.Preparation) keeps
m, s and q and does not increase W.
Main definitions #
Cslib.Circuits.Boolean.AffineDisperser.State,Cslib.Circuits.Boolean.AffineDisperser.State.Valid: states.Cslib.Circuits.Boolean.AffineDisperser.State.m,q,a,s,W: the counted quantities and the potential, withCslib.Circuits.Boolean.AffineDisperser.weight.Cslib.Circuits.Boolean.AffineDisperser.State.Step,Cslib.Circuits.Boolean.AffineDisperser.State.Preparation: steps and preparatory operations.Cslib.Circuits.Boolean.AffineDisperser.State.IsPartner,Cslib.Circuits.Boolean.AffineDisperser.State.pairsMeeting: partners and the pairs meeting a set of parameters.
Main results #
Cslib.Circuits.Boolean.AffineDisperser.State.Valid.exists_affine_embedding: Proposition 2.2.Cslib.Circuits.Boolean.AffineDisperser.State.Valid.false_of_fix,Cslib.Circuits.Boolean.AffineDisperser.State.Valid.out_not_affine: Lemma 2.3.Cslib.Circuits.Boolean.AffineDisperser.State.W_add_le: comparing potentials name by name.
References #
The weight of an unpaired parameter of degree k: 0 if it is unused, 6 if it is
isolated and 7 otherwise (equation (4) of Mishra and Santhanam).
Instances For
A state of gate elimination for a function of n bits: a semi-circuit, disjoint pairs of
parameters and the parameter map Φ.
The pairs of parameters that may occur together in a quadratic term of
Φ.The parameter map, as a function of the values of all internal values.
Instances For
The number of parameters.
Instances For
The number of pairs.
Instances For
The number of parameters minus the number of pairs.
Instances For
The size of the semi-circuit: gates plus equations.
Instances For
A valid state for f: a well-formed fair semi-circuit, disjoint pairs of distinct
parameters, and an injective parameter map that depends only on the parameters and is affine
along every affine family of assignments on which each pair has a constant member or a constant
sum, such that the output of every consistent assignment is the value of f at its image.
- wf : S.WellFormed
The semi-circuit is well formed.
Pairs consist of two distinct parameters.
- pairs_disjoint (pr : ℕ × ℕ) : pr ∈ S.pairs → ∀ pr' ∈ S.pairs, pr ≠ pr' → pr.1 ≠ pr'.1 ∧ pr.1 ≠ pr'.2 ∧ pr.2 ≠ pr'.1 ∧ pr.2 ≠ pr'.2
Distinct pairs are disjoint.
The parameter map depends only on the parameters.
- phi_affine (k : ℕ) (σ : BitString k → ℕ → Bool) : BitString.IsAffine σ → (∀ pr ∈ S.pairs, PairTame σ pr) → BitString.IsAffine (S.phi ∘ σ)
The parameter map is affine along affine families on which every pair is tame.
The parameter map is injective on the parameters.
Every consistent assignment outputs
fat its image.
Instances For
Spreading bits over a finite set of names #
Updating an affine family at one name by an affine function keeps it affine.
A constant plus a sum of coordinates of an affine family is affine.
Proposition 2.2 #
Along an injective affine family of parameter assignments on which every pair is tame, the
parameter map is an injective affine map, so the output of a valid state for an affine
disperser for dimension d is not constant when the family has dimension at least d.
Proposition 2.2 of Mishra and Santhanam: the image of the
parameter map of a valid state contains the image of an injective affine map from
BitString a.
The output of a valid state for an affine disperser for dimension d ≤ a is not
constant.
Lemma 2.3 #
If d < a, the output of a valid state for an affine disperser for dimension d is not
constant on the consistent assignments satisfying one more affine equation
x = c + ∑ j ∈ R, u j between the parameters: imposing it keeps an affine subspace of dimension
a - 1 ≥ d in the image of the parameter map.
Part of Lemma 2.3 of Mishra and Santhanam: if d < a, the output
of a valid state for an affine disperser for dimension d is not an affine function of the
parameters.
Bookkeeping for the potential #
Potentials compare name by name: if every name of a common set loses loss x and gains at
most gain x in weight, the sums of losses and gains bound the change of potential.
A step of gate elimination from S to S', as in Lemma 4.2 of
Mishra and Santhanam: S' is valid, m + s decreases,
Δa ∈ {0, -1, -2} and ΔW ≤ 14 Δa, written without subtraction.
Instances For
A preparatory operation of gate elimination from S to S': S' is valid, with the same
m, s and q as S and no larger potential.
- valid : S'.Valid f
The new state is valid.
The number of parameters is kept.
The size is kept.
The number of pairs is kept.
The potential does not increase.
Instances For
A preparatory operation followed by a step is a step.
Pairs and partners #
A partner is unique.
A paired parameter outside F is in a pair meeting F exactly when its partner is in
F.
The parameters of a valid state are at least as many as its pairs.
At most |F| pairs meet a set F of parameters.
Adding to F a parameter that is not the partner of a member of F adds its pair, if
any.