Effective binary cyclic group algebra coordinates #
instance
MIPRE.LowDegree.BinaryLinear.groupAlgebraCharP
(k : ℕ)
[NeZero k]
:
CharP (AddMonoidAlgebra (ZMod 2) (Fin k)) 2
All cyclic group-algebra coefficients as a binary linear equivalence.
Equations
Instances For
@[simp]
theorem
MIPRE.LowDegree.BinaryLinear.groupCoordinates_apply
(k : ℕ)
(z : AddMonoidAlgebra (ZMod 2) (Fin k))
(i : Fin k)
:
@[simp]
theorem
MIPRE.LowDegree.BinaryLinear.groupCoordinates_finGroupOfVector
{k : ℕ}
[NeZero k]
(v : Fin k → ZMod 2)
:
@[simp]
theorem
MIPRE.LowDegree.BinaryLinear.groupCoordinates_symm_apply
{k : ℕ}
[NeZero k]
(v : Fin k → ZMod 2)
:
Cyclic convolution, using the verified circulant printer and matrix application.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
MIPRE.LowDegree.BinaryLinear.groupMulBitsProg_correct
{k : ℕ}
[NeZero k]
(z w : AddMonoidAlgebra (ZMod 2) (Fin k))
:
groupMulBitsProg.toFun (vectorBits ((groupCoordinates k) z), vectorBits ((groupCoordinates k) w)) = vectorBits ((groupCoordinates k) (z * w))
Squaring in a binary commutative group algebra is a linear map.
Equations
Instances For
@[simp]
theorem
MIPRE.LowDegree.BinaryLinear.groupSquareLinear_apply
(k : ℕ)
[NeZero k]
(z : AddMonoidAlgebra (ZMod 2) (Fin k))
:
@[simp]
theorem
MIPRE.LowDegree.BinaryLinear.groupSquareCoordinates_apply
(k : ℕ)
[NeZero k]
(z : AddMonoidAlgebra (ZMod 2) (Fin k))
:
Equations
Instances For
Print the squaring matrix by applying cyclic convolution to the coordinate units.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The fixed-space equation is squaring plus the identity, in characteristic two.
Equations
Instances For
theorem
MIPRE.LowDegree.BinaryLinear.groupFixedMatrix_ker
(k : ℕ)
[NeZero k]
(z : AddMonoidAlgebra (ZMod 2) (Fin k))
:
Construct the binary fixed-space equation.
Equations
- One or more equations did not get rendered due to their size.
Instances For
At most k coefficient vectors generate all idempotents of the binary cyclic algebra.
Equations
- One or more equations did not get rendered due to their size.
Instances For
noncomputable def
MIPRE.LowDegree.BinaryLinear.groupFixedGenerator
(k : ℕ)
[NeZero k]
(j : Fin k)
:
AddMonoidAlgebra (ZMod 2) (Fin k)
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
MIPRE.LowDegree.BinaryLinear.groupFixedGenerator_idempotent
(k : ℕ)
[NeZero k]
(j : Fin k)
:
theorem
MIPRE.LowDegree.BinaryLinear.groupFixedGenerator_spans
(k : ℕ)
[NeZero k]
(z : AddMonoidAlgebra (ZMod 2) (Fin k))
(hz : z * z = z)
:
Every idempotent lies in the binary span of the computed generators.
theorem
MIPRE.LowDegree.BinaryLinear.groupFixedGeneratorsProg_correct
(k : ℕ)
[NeZero k]
:
groupFixedGeneratorsProg.toFun (Cost.unary k) = List.ofFn fun (j : Fin k) => vectorBits ((groupCoordinates k) (groupFixedGenerator k j))
Exact encoding of the computed fixed-space generators; no linear combinations are enumerated.