Documentation

MIPRE.Background.QLD.BinaryBlocks

The sampler's actual numbered binary field blocks #

The fixed block programs convert exactly between the numbered binary vector used by binaryPresentation and canonical Shoup field rows in the fixed order uX, uZ, seed, direction, rX, rZ. The field basis is the effective self-dual normal basis, not the computational polynomial basis.

Canonical field rows in the explicit ambient coordinate order.

Equations
Instances For
    theorem MIPRE.QLD.PauliCL.numberedRows_getD {k m : ℕ} (E : SAT.BinField k) (x : Coord m → E.carrier) (c : Coord m) :
    (numberedRows E x).getD ↑((coordNumbering m) c) [] = E.toBits (x c)
    theorem MIPRE.QLD.PauliCL.numberedRows_eq_vecBits {k m : ℕ} (E : SAT.BinField k) (x : Coord m → E.carrier) :
    numberedRows E x = E.vecBits fun (i : Fin (3 * m + 3)) => x ((coordNumbering m).symm i)
    theorem MIPRE.QLD.PauliCL.binaryVectorEquiv_bits {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] [Algebra (ZMod 2) F] {m k : ℕ} [NeZero m] (b : Module.Basis (Fin k) (ZMod 2) F) (x : Coord m → F) :

    Exact list order for an arbitrary binary basis: coordinate-major, followed by the basis bits of that coordinate.

    The executable encoder produces the exact numbered CL bit vector.

    The executable decoder returns the exact canonical field row at each numbered coordinate of the self-dual downsized vector.

    A full-length raw CL bit string is interpreted by the actual inverse binary coordinate map; no assumption that its bits are polynomial coordinates is made.