Right-side dot product distributes over vector addition.
Right-side dot product distributes over scalar multiplication.
theorem
Hex.GramSchmidt.Int.gramDet_eq_prod_normSq
{n m : ℕ}
(b : Matrix ℤ n m)
(hli : independent b)
(k : ℕ)
(hk : k ≤ n)
:
For an independent integer matrix, each leading Gram determinant, cast to
Rat, equals the product of the squared norms of its Gram-Schmidt basis rows.
theorem
Hex.GramSchmidt.Int.gramSchmidtNormProduct_succ
{n m : ℕ}
(b : Matrix ℤ n m)
(k : ℕ)
(hk : k + 1 ≤ n)
:
One-step extension of gramSchmidtNormProduct: appending the k-th
factor multiplies the k-fold product by ((basis b).row ⟨k, _⟩)..normSq
This is a Fin.foldl cancellation lemma; positivity of the leading Gram
determinant is handled separately by gramDet_pos.