Affine dispersers on bit strings #
Ben-Sasson and Kopparty's function traceSym reads r elements of a field F with 2 ^ n
elements. On bit strings it reads them from r * n of the N input bits: element i has
coordinate x (pos (i, j)) on the vector b j of an 𝔽₂-basis b of F
(Cslib.AffineDisperser.readField), and the output is the trace as a bit
(Cslib.AffineDisperser.traceSymBits).
Bits form the two-element field (Mathlib's BooleanRing Bool), identified with ZMod 2 by
Cslib.BitString.bitEquiv, so the affine subspaces of the cube BitString N are Mathlib's
AffineSubspace Bool (BitString N). Reading field elements is 𝔽₂-linear and forgets only the
N - r n unread bits, so it maps an affine subspace of dimension d onto one of dimension at
least d - (N - r n), and Cslib.AffineDisperser.exists_traceSym_ne transfers to bit strings
(Cslib.AffineDisperser.exists_traceSymBits_ne).
Main definitions #
Cslib.AffineDisperser.readField:rfield elements read from a bit string.Cslib.AffineDisperser.traceSymBits:traceSymon bit strings.
Main results #
Cslib.AffineDisperser.exists_traceSymBits_ne:traceSymBitsis nonconstant on every affine subspace ofBitString Nof dimension greater thanN - r n + r * max (r + 1) s + r * (r + 1) + n * t + n * r / t.
References #
The r elements of F read from the bits of x: element i has coordinate x (pos (i, j))
on the basis vector b j.
Instances For
Ben-Sasson and Kopparty's function traceSym μ r t on bit strings: the trace, as a bit, at the
r field elements read from x by readField b pos.
Instances For
Affine dispersers on bit strings [BenSassonKopparty2012, Theorem 7.3]: if F has 2 ^ n
elements, its proper subfields at most 2 ^ s, μ ≠ 0, 0 < t and the reading positions pos
are distinct, then traceSymBits μ r t b pos is nonconstant on every affine subspace A of
BitString N of dimension greater than
N - r * n + (r * max (r + 1) s + r * (r + 1) + n * t + n * r / t).