Sesquilinear form #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
This file defines the conversion between sesquilinear forms and matrices.
Main definitions #
matrix.to_linear_map₂given a basis define a bilinear formmatrix.to_linear_map₂'define the bilinear form onn → Rlinear_map.to_matrix₂: calculate the matrix coefficients of a bilinear formlinear_map.to_matrix₂': calculate the matrix coefficients of a bilinear form onn → R
Todos #
At the moment this is quite a literal port from matrix.bilinear_form. Everything should be
generalized to fully semibilinear forms.
Tags #
sesquilinear_form, matrix, basis
The map from matrix n n R to bilinear forms on n → R.
This is an auxiliary definition for the equivalence matrix.to_linear_map₂'.
Equations
- matrix.to_linear_map₂'_aux σ₁ σ₂ f = linear_map.mk₂'ₛₗ σ₁ σ₂ (λ (v : n → R₁) (w : m → R₂), finset.univ.sum (λ (i : n), finset.univ.sum (λ (j : m), ⇑σ₁ (v i) * f i j * ⇑σ₂ (w j)))) _ _ _ _
The linear map from sesquilinear forms to matrix n m R given an n-indexed basis for M₁
and an m-indexed basis for M₂.
This is an auxiliary definition for the equivalence matrix.to_linear_mapₛₗ₂'.
Bilinear forms over n → R #
This section deals with the conversion between matrices and sesquilinear forms on n → R.
The linear equivalence between sesquilinear forms and n × m matrices
Equations
- linear_map.to_matrixₛₗ₂' = {to_fun := ⇑(linear_map.to_matrix₂_aux (λ (i : n), (λ (i : n), ⇑(linear_map.std_basis R₁ (λ (_x : n), R₁) i) 1) i) (λ (j : m), (λ (j : m), ⇑(linear_map.std_basis R₂ (λ (_x : m), R₂) j) 1) j)), map_add' := _, map_smul' := _, inv_fun := matrix.to_linear_map₂'_aux σ₁ σ₂, left_inv := _, right_inv := _}
The linear equivalence between bilinear forms and n × m matrices
Equations
The linear equivalence between n × n matrices and sesquilinear forms on n → R
Equations
The linear equivalence between n × n matrices and bilinear forms on n → R
Equations
Bilinear forms over arbitrary vector spaces #
This section deals with the conversion between matrices and bilinear forms on a module with a fixed basis.
linear_map.to_matrix₂ b₁ b₂ is the equivalence between R-bilinear forms on M and
n-by-n matrices with entries in R, if b is an R-basis for M.
Equations
- linear_map.to_matrix₂ b₁ b₂ = (b₁.equiv_fun.arrow_congr (b₂.equiv_fun.arrow_congr (linear_equiv.refl R R))).trans linear_map.to_matrix₂'
bilin_form.to_matrix b is the equivalence between R-bilinear forms on M and
n-by-n matrices with entries in R, if b is an R-basis for M.
Equations
- matrix.to_linear_map₂ b₁ b₂ = (linear_map.to_matrix₂ b₁ b₂).symm
Adjoint pairs #
The condition for the matrices A, A' to be an adjoint pair with respect to the square
matrices J, J₃.
The condition for a square matrix A to be self-adjoint with respect to the square matrix
J.
Equations
- J.is_self_adjoint A₁ = J.is_adjoint_pair J A₁ A₁
The condition for a square matrix A to be skew-adjoint with respect to the square matrix
J.
Equations
- J.is_skew_adjoint A₁ = J.is_adjoint_pair J A₁ (-A₁)
The submodule of pair-self-adjoint matrices with respect to bilinear forms corresponding to
given matrices J, J₂.
The submodule of self-adjoint matrices with respect to the bilinear form corresponding to
the matrix J.
Equations
The submodule of skew-adjoint matrices with respect to the bilinear form corresponding to
the matrix J.