Documentation

Mathlib.LinearAlgebra.Matrix.Hessenberg.Defs

Upper Hessenberg matrices #

A square matrix is upper Hessenberg when all entries below the subdiagonal are zero.

This file defines the predicate Matrix.IsUpperHessenberg with a corresponding Decidable instance.

Main definitions #

Main results #

def Matrix.IsUpperHessenberg {R : Type u_1} {m : Type u_2} [Zero R] [Preorder m] [SuccOrder m] (M : Matrix m m R) :

M is upper Hessenberg: entries strictly below the subdiagonal vanish.

Equations
Instances For
    theorem Matrix.isUpperHessenberg_iff {R : Type u_1} {m : Type u_2} [Zero R] [Preorder m] [SuccOrder m] {M : Matrix m m R} :
    M.IsUpperHessenberg ↔ ∀ ⦃i j : m⦄, Order.succ j < i → M i j = 0
    theorem Matrix.isUpperHessenberg_fin_iff {R : Type u_1} [Zero R] {n : ℕ} {M : Matrix (Fin n) (Fin n) R} :
    M.IsUpperHessenberg ↔ ∀ (i j : Fin n), ↑j + 1 < ↑i → M i j = 0