theorem
Hex.Matrix.det_upperTriangular_eq_finFoldl_diag
{R : Type u}
[Lean.Grind.CommRing R]
{n : Nat}
(M : Matrix R n n)
(hzero : ∀ (i j : Fin n), ↑j < ↑i → M[i][j] = 0)
:
The determinant of an upper-triangular square matrix (entries below the
diagonal are zero) over a commutative ring is the product of its diagonal
entries, expressed via a Fin.foldl over the diagonal indices.
theorem
Hex.Matrix.det_upperTriangular_eq_foldl_diag
{R : Type u}
[Lean.Grind.CommRing R]
{n : Nat}
(M : Matrix R n n)
(hzero : ∀ (i j : Fin n), ↑j < ↑i → M[i][j] = 0)
:
The determinant of an upper-triangular square matrix as a List.foldl
product over the diagonal indices in Fin.finRange.
theorem
Hex.Matrix.det_lowerTriangular_eq_finFoldl_diag
{R : Type u}
[Lean.Grind.CommRing R]
{n : Nat}
(M : Matrix R n n)
(hzero : ∀ (i j : Fin n), ↑i < ↑j → M[i][j] = 0)
:
Diagonal-product formula for the determinant of a lower-triangular matrix
(entries above the diagonal are zero). Derived from the upper-triangular form
via det_transpose.
theorem
Hex.Matrix.det_lowerTriangular_eq_foldl_diag
{R : Type u}
[Lean.Grind.CommRing R]
{n : Nat}
(M : Matrix R n n)
(hzero : ∀ (i j : Fin n), ↑i < ↑j → M[i][j] = 0)
:
The determinant of a lower-triangular square matrix as a List.foldl
product over the diagonal indices in Fin.finRange.