Bilinear form #
This file defines various properties of bilinear forms, including reflexivity, symmetry, alternativity, adjoint, and non-degeneracy. For orthogonality, see Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean.
Notation #
Given any term B of type BilinForm, due to a coercion, can use the notation B x y to refer to the function field, i.e. B x y = B.bilin x y.
In this file we use the following type variables:
M,M', ... are modules over the commutative semiringR,M₁,M₁', ... are modules over the commutative ringR₁,V, ... is a vector space over the fieldK.
References #
Tags #
Bilinear form,
Reflexivity, symmetry, and alternativity #
The proposition that a bilinear form is reflexive
Equations
- B.IsRefl = LinearMap.IsRefl B
Instances For
The proposition that a bilinear form is symmetric
Instances For
The restriction of a symmetric bilinear form on a submodule is also symmetric.
Polarization identity: a symmetric bilinear form can be expressed through the values it takes on the diagonal.
A symmetric bilinear form is characterized by the values it takes on the diagonal.
A symmetric bilinear form is characterized by the values it takes on the diagonal.
Positive semidefinite bilinear forms #
A bilinear form B is nonnegative if for any x we have 0 ≤ B x x.
Instances For
A bilinear form is nonnegative if and only if it is nonnegative as a sesquilinear form.
A bilinear form B is positive semidefinite if it is symmetric and nonnegative.
Instances For
A bilinear form is positive semidefinite if and only if it is positive semidefinite as a sesquilinear form.
The proposition that a bilinear form is alternating
Equations
- B.IsAlt = LinearMap.IsAlt B
Instances For
A nondegenerate bilinear form is a bilinear form such that the only element that is orthogonal to every other element is 0; i.e., for all nonzero m in M, there exists n in M with B m n ≠ 0.
Note that for general (neither symmetric nor antisymmetric) bilinear forms this definition has a chirality; in addition to this "left" nondegeneracy condition one could define a "right" nondegeneracy condition that in the situation described, B n m ≠ 0. This variant definition is not currently provided in mathlib. In finite dimension either definition implies the other.
Equations
- B.Nondegenerate = ∀ (m : M), (∀ (n : M), (B m) n = 0) → m = 0
Instances For
In a non-trivial module, zero is not non-degenerate.
A bilinear form is nondegenerate if and only if it has a trivial kernel.
Given a nondegenerate bilinear form B on a finite-dimensional vector space, B.toDual is the linear equivalence between a vector space and its dual.
Equations
- B.toDual b = LinearMap.linearEquivOfInjective B ⋯ ⋯
Instances For
The B-dual basis B.dualBasis hB b to a finite basis b satisfies B (B.dualBasis hB b i) (b j) = B (b i) (B.dualBasis hB b j) = if i = j then 1 else 0, where B is a nondegenerate (symmetric) bilinear form and b is a finite basis.
Instances For
Given bilinear forms B₁, B₂ where B₂ is nondegenerate, symmCompOfNondegenerate is the linear map B₂ ∘ B₁.
Equations
- B₁.symmCompOfNondegenerate B₂ b₂ = ↑(B₂.toDual b₂).symm ∘ₗ B₁
Instances For
Given the nondegenerate bilinear form B and the linear map φ, leftAdjointOfNondegenerate provides the left adjoint of φ with respect to B. The lemma proving this property is BilinForm.isAdjointPairLeftAdjointOfNondegenerate.
Equations
- B.leftAdjointOfNondegenerate b φ = (B.compRight φ).symmCompOfNondegenerate B b
Instances For
Given the nondegenerate bilinear form B, the linear map φ has a unique left adjoint given by BilinForm.leftAdjointOfNondegenerate.