Documentation

MIPRE.Foundations.LowDegree.BinaryEchelon

Triangular pivot bases and certified binary reduction #

In insertion order, each row has pivot one and every later row vanishes at that pivot. Pivots need not be numerically ordered.

Equations
Instances For
    theorem MIPRE.LowDegree.BinaryLinear.typedReduceStep_pivot_zero {n t : ℕ} (r : Row n t) (p : Pivot n t) (hp : p.2.1 p.1 = 1) :
    (typedReduceStep r p).1 p.1 = 0
    theorem MIPRE.LowDegree.BinaryLinear.typedReduceStep_preserves_zero {n t : ℕ} (r : Row n t) (p : Pivot n t) (j : Fin n) (hr : r.1 j = 0) (hp : p.2.1 j = 0) :
    (typedReduceStep r p).1 j = 0
    theorem MIPRE.LowDegree.BinaryLinear.typedReduce_preserves_zero {n t : ℕ} (b : List (Pivot n t)) (r : Row n t) (j : Fin n) (hr : r.1 j = 0) (hb : ∀ p ∈ b, p.2.1 j = 0) :
    (typedReduce b r).1 j = 0
    theorem MIPRE.LowDegree.BinaryLinear.typedReduce_pivots_zero {n t : ℕ} (b : List (Pivot n t)) (hb : IsPivotBasis b) (r : Row n t) (p : Pivot n t) :
    p ∈ b → (typedReduce b r).1 p.1 = 0

    Reducing against a triangular basis zeros all of its pivot coordinates.

    theorem MIPRE.LowDegree.BinaryLinear.IsPivotBasis.append_reduced {n t : ℕ} {b : List (Pivot n t)} (hb : IsPivotBasis b) (r : Row n t) (j : Fin n) (hj : (typedReduce b r).1 j = 1) :

    A reduced nonzero row can be appended at any of its nonzero coordinates.

    def MIPRE.LowDegree.BinaryLinear.pivotVectors {n t : ℕ} (b : List (Pivot n t)) :
    Fin b.length → Fin n → ZMod 2

    The vector family extracted in insertion order.

    Equations
    Instances For

      Triangular pivots certify linear independence of the stored vectors.

      A pivot basis contains at most the ambient dimension many rows.