Matrices associated with non-degenerate bilinear forms #
Main definitions #
Matrix.Nondegenerate A: the proposition that when interpreted as a bilinear form, the matrixAis nondegenerate.
structure
Matrix.Nondegenerate
{m : Type u_1}
{n : Type u_2}
{R : Type u_3}
[CommRing R]
[Finite m]
[Finite n]
(M : Matrix m n R)
:
A matrix M is nondegenerate if it is both left-separating and right-separating.
- separatingLeft : M.SeparatingLeft
- separatingRight : M.SeparatingRight
Instances For
theorem
Matrix.Nondegenerate.exists_not_ortho_of_ne_zero
{m : Type u_1}
{n : Type u_2}
{R : Type u_3}
[CommRing R]
[Fintype m]
[Fintype n]
{M : Matrix m n R}
(hM : M.Nondegenerate)
{v : m → R}
(hv : v ≠ 0)
:
If M is nondegenerate and v ≠ 0, then there is some w such that w * M * v ≠ 0.
theorem
Matrix.Nondegenerate.exists_not_ortho_of_ne_zero'
{m : Type u_1}
{n : Type u_2}
{R : Type u_3}
[CommRing R]
[Fintype m]
[Fintype n]
{M : Matrix m n R}
(hM : M.Nondegenerate)
{w : n → R}
(hw : w ≠ 0)
:
If M is nondegenerate and w ≠ 0, then there is some v such that v * M * w ≠ 0.
theorem
Matrix.nondegenerate_of_det_ne_zero
{m : Type u_1}
{A : Type u_4}
[Fintype m]
[CommRing A]
[IsDomain A]
[DecidableEq m]
{M : Matrix m m A}
(hM : M.det ≠ 0)
:
If M is square and has nonzero determinant, then M as a bilinear form on n → A is
nondegenerate. The "iff" implication, nondegenerate_iff_det_ne_zero, is proved in a later file.
See also BilinForm.nondegenerateOfDetNeZero' and BilinForm.nondegenerateOfDetNeZero.