to_matrix_of_equiv #
This defines the identification $L(M_{n \times m})\cong_{a} M_{n \times m}$
(see linear_map.to_matrix_of_alg_equiv
; also see matrix.to_lin_of_alg_equiv
).
noncomputable def
OrthonormalBasis.toMatrix
{๐ : Type u_1}
[RCLike ๐]
{n : Type u_2}
{E : Type u_3}
[Fintype n]
[DecidableEq n]
[NormedAddCommGroup E]
[InnerProductSpace ๐ E]
[FiniteDimensional ๐ E]
(b : OrthonormalBasis n ๐ E)
:
(E โโ[๐] E) โโโ[๐] Matrix n n ๐
the star-algebraic isomorphism from E โโ[๐] E
to the matrix ring M_n(๐)
given by
the orthonormal basis b
on E
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
OrthonormalBasis.toMatrix_apply
{๐ : Type u_3}
[RCLike ๐]
{n : Type u_1}
{E : Type u_2}
[Fintype n]
[DecidableEq n]
[NormedAddCommGroup E]
[InnerProductSpace ๐ E]
[FiniteDimensional ๐ E]
(b : OrthonormalBasis n ๐ E)
(x : E โโ[๐] E)
(i : n)
(j : n)
:
theorem
OrthonormalBasis.toMatrix_symm_apply
{๐ : Type u_3}
[RCLike ๐]
{n : Type u_1}
{E : Type u_2}
[Fintype n]
[DecidableEq n]
[NormedAddCommGroup E]
[InnerProductSpace ๐ E]
[FiniteDimensional ๐ E]
(b : OrthonormalBasis n ๐ E)
(x : Matrix n n ๐)
:
theorem
OrthonormalBasis.toMatrix_symm_apply'
{๐ : Type u_3}
[RCLike ๐]
{n : Type u_1}
{E : Type u_2}
[Fintype n]
[DecidableEq n]
[NormedAddCommGroup E]
[InnerProductSpace ๐ E]
[FiniteDimensional ๐ E]
(b : OrthonormalBasis n ๐ E)
(x : Matrix n n ๐)
:
b.toMatrix.symm x = b.repr.symm.conj (Matrix.toEuclideanLin x)
theorem
orthonormalBasis_toMatrix_eq_basis_toMatrix
{๐ : Type u_3}
[RCLike ๐]
{n : Type u_1}
{E : Type u_2}
[Fintype n]
[DecidableEq n]
[NormedAddCommGroup E]
[InnerProductSpace ๐ E]
[FiniteDimensional ๐ E]
(b : OrthonormalBasis n ๐ E)
:
LinearMap.toMatrixAlgEquiv b.toBasis = b.toMatrix.toAlgEquiv
def
EuclideanSpace.orthonormalBasis
(ฮน : Type u_1)
(๐ : Type u_3)
[RCLike ๐]
[Fintype ฮน]
:
OrthonormalBasis ฮน ๐ (EuclideanSpace ๐ ฮน)
Alias of EuclideanSpace.basisFun
.
The basis Pi.basisFun
, bundled as an orthornormal basis of EuclideanSpace ๐ ฮน
.
Instances For
theorem
EuclideanSpace.orthonormalBasis.repr_eq_one
{๐ : Type u_2}
[RCLike ๐]
{n : Type u_1}
[Fintype n]
[DecidableEq n]
:
(EuclideanSpace.orthonormalBasis n ๐).repr = 1
theorem
LinearIsometryEquiv.toLinearEquiv_one
{R : Type u_1}
{E : Type u_2}
[_inst_1 : Semiring R]
[_inst_25 : SeminormedAddCommGroup E]
[_inst_29 : Module R E]
:
theorem
LinearEquiv.one_symm
{R : Type u_1}
{E : Type u_2}
[Semiring R]
[AddCommMonoid E]
[Module R E]
:
LinearEquiv.symm 1 = 1
theorem
LinearEquiv.toLinearMap_one
{R : Type u_1}
{E : Type u_2}
[Semiring R]
[AddCommMonoid E]
[Module R E]
:
โ1 = 1
theorem
LinearEquiv.refl_conj
{R : Type u_1}
{E : Type u_2}
[CommSemiring R]
[AddCommMonoid E]
[Module R E]
:
(LinearEquiv.refl R E).conj = 1
theorem
LinearEquiv.conj_hMul
{R : Type u_1}
{E : Type u_2}
{F : Type u_3}
[CommSemiring R]
[AddCommMonoid E]
[AddCommMonoid F]
[Module R E]
[Module R F]
(f : E โโ[R] F)
(x : Module.End R E)
(y : Module.End R E)
:
theorem
LinearEquiv.conj_apply_one
{R : Type u_1}
{E : Type u_2}
{F : Type u_3}
[CommSemiring R]
[AddCommMonoid E]
[AddCommMonoid F]
[Module R E]
[Module R F]
(f : E โโ[R] F)
:
f.conj 1 = 1
theorem
LinearEquiv.conj_one
{R : Type u_1}
{E : Type u_2}
[CommSemiring R]
[AddCommMonoid E]
[Module R E]
:
LinearEquiv.conj 1 = 1
theorem
LinearEquiv.one_apply
{R : Type u_1}
{E : Type u_2}
[CommSemiring R]
[AddCommMonoid E]
[Module R E]
(x : E)
:
1 x = x
theorem
OrthonormalBasis.std_toMatrix
{๐ : Type u_2}
[RCLike ๐]
{n : Type u_1}
[Fintype n]
[DecidableEq n]
:
(EuclideanSpace.orthonormalBasis n ๐).toMatrix.symm.toLinearEquiv = Matrix.toEuclideanLin
theorem
Matrix.stdBasis_repr_eq_reshape
{R : Type u_1}
{I : Type u_2}
{J : Type u_3}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
:
(Matrix.stdBasis R I J).equivFun = Matrix.reshape
def
LinearEquiv.innerConj
{R : Type u_1}
{E : Type u_2}
{F : Type u_3}
[CommSemiring R]
[AddCommMonoid E]
[AddCommMonoid F]
[Module R E]
[Module R F]
(ฯฑ : E โโ[R] F)
:
Equations
- ฯฑ.innerConj = AlgEquiv.ofLinearEquiv ฯฑ.conj โฏ โฏ
Instances For
theorem
LinearMap.toMatrix_stdBasis_stdBasis
{R : Type u_5}
[CommSemiring R]
{I : Type u_1}
{J : Type u_2}
{K : Type u_3}
{L : Type u_4}
[Fintype I]
[Fintype J]
[Fintype K]
[Fintype L]
[DecidableEq I]
[DecidableEq J]
(x : Matrix I J R โโ[R] Matrix K L R)
:
(LinearMap.toMatrix (Matrix.stdBasis R I J) (Matrix.stdBasis R K L)) x = LinearMap.toMatrix' (โMatrix.reshape โโ x โโ โMatrix.reshape.symm)
theorem
LinearMap.toLin_stdBasis_stdBasis
{R : Type u_5}
[CommSemiring R]
{I : Type u_1}
{J : Type u_2}
{K : Type u_3}
{L : Type u_4}
[Fintype I]
[Fintype J]
[Fintype K]
[Fintype L]
[DecidableEq I]
[DecidableEq J]
(x : Matrix (K ร L) (I ร J) R)
:
(Matrix.toLin (Matrix.stdBasis R I J) (Matrix.stdBasis R K L)) x = โMatrix.reshape.symm โโ Matrix.toLin' x โโ โMatrix.reshape
def
LinearMap.toMatrixOfAlgEquiv
{R : Type u_1}
{I : Type u_2}
{J : Type u_3}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
:
Equations
- LinearMap.toMatrixOfAlgEquiv = Matrix.reshape.innerConj.trans LinearMap.toMatrixAlgEquiv'
Instances For
theorem
LinearMap.toMatrixOfAlgEquiv_apply
{R : Type u_1}
{I : Type u_3}
{J : Type u_2}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
(x : Matrix I J R โโ[R] Matrix I J R)
:
LinearMap.toMatrixOfAlgEquiv x = LinearMap.toMatrixAlgEquiv' (โMatrix.reshape โโ x โโ โMatrix.reshape.symm)
theorem
LinearMap.toMatrixOfAlgEquiv_symm_apply
{R : Type u_3}
{I : Type u_2}
{J : Type u_1}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
(x : Matrix (I ร J) (I ร J) R)
:
LinearMap.toMatrixOfAlgEquiv.symm x = โMatrix.reshape.symm โโ LinearMap.toMatrixAlgEquiv'.symm x โโ โMatrix.reshape
theorem
LinearMap.toMatrixOfAlgEquiv_apply'
{R : Type u_1}
{I : Type u_3}
{J : Type u_2}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
(x : Matrix I J R โโ[R] Matrix I J R)
(ij : I ร J)
(kl : I ร J)
:
LinearMap.toMatrixOfAlgEquiv x ij kl = x (Matrix.stdBasisMatrix kl.1 kl.2 1) ij.1 ij.2
def
Matrix.toLinOfAlgEquiv
{R : Type u_1}
{I : Type u_2}
{J : Type u_3}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
:
Equations
- Matrix.toLinOfAlgEquiv = LinearMap.toMatrixOfAlgEquiv.symm
Instances For
theorem
Matrix.toLinOfAlgEquiv_apply
{R : Type u_3}
{I : Type u_2}
{J : Type u_1}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
(x : Matrix (I ร J) (I ร J) R)
(y : Matrix I J R)
:
(Matrix.toLinOfAlgEquiv x) y = Matrix.reshape.symm ((Matrix.toLinAlgEquiv' x) (Matrix.reshape y))
def
Matrix.rankOneStdBasis
{R : Type u_1}
[CommSemiring R]
{I : Type u_2}
{J : Type u_3}
[DecidableEq I]
[DecidableEq J]
(ij : I ร J)
(kl : I ร J)
(r : R)
:
Equations
- Matrix.rankOneStdBasis ij kl r = { toFun := fun (x : Matrix I J R) => Matrix.stdBasisMatrix ij.1 ij.2 (r โข r โข x kl.1 kl.2), map_add' := โฏ, map_smul' := โฏ }
Instances For
theorem
Matrix.rankOneStdBasis_apply
{R : Type u_3}
[CommSemiring R]
{I : Type u_1}
{J : Type u_2}
[DecidableEq I]
[DecidableEq J]
(ij : I ร J)
(kl : I ร J)
(r : R)
(x : Matrix I J R)
:
(Matrix.rankOneStdBasis ij kl r) x = Matrix.stdBasisMatrix ij.1 ij.2 (r โข r โข x kl.1 kl.2)
theorem
Matrix.toLinOfAlgEquiv_eq
{R : Type u_3}
{I : Type u_2}
{J : Type u_1}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
(x : Matrix (I ร J) (I ร J) R)
:
Matrix.toLinOfAlgEquiv x = โ ij : I ร J, โ kl : I ร J, x ij kl โข Matrix.rankOneStdBasis ij kl 1
theorem
Matrix.toLinOfAlgEquiv_toMatrixOfAlgEquiv
{R : Type u_3}
{I : Type u_2}
{J : Type u_1}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
(x : Matrix (I ร J) (I ร J) R)
:
LinearMap.toMatrixOfAlgEquiv (Matrix.toLinOfAlgEquiv x) = x
theorem
LinearMap.toMatrixOfAlgEquiv_toLinOfAlgEquiv
{R : Type u_1}
{I : Type u_3}
{J : Type u_2}
[Fintype I]
[Fintype J]
[CommSemiring R]
[DecidableEq I]
[DecidableEq J]
(x : Matrix I J R โโ[R] Matrix I J R)
:
Matrix.toLinOfAlgEquiv (LinearMap.toMatrixOfAlgEquiv x) = x
theorem
innerAut_toMatrix
{๐ : Type u_1}
[RCLike ๐]
{n : Type u_2}
[Fintype n]
[DecidableEq n]
(U : โฅ(Matrix.unitaryGroup n ๐))
:
LinearMap.toMatrixOfAlgEquiv (Matrix.innerAut U) = Matrix.kroneckerMap (fun (x1 x2 : ๐) => x1 * x2) (โU) (โU).conj
theorem
innerAut_coord
{๐ : Type u_1}
[RCLike ๐]
{n : Type u_2}
[Fintype n]
[DecidableEq n]
(U : โฅ(Matrix.unitaryGroup n ๐))
(ij : n ร n)
(kl : n ร n)
:
LinearMap.toMatrixOfAlgEquiv (Matrix.innerAut U) ij kl = โU ij.1 kl.1 * star (โU ij.2 kl.2)
theorem
innerAut_inv_coord
{n : Type u_1}
[Fintype n]
[DecidableEq n]
(U : โฅ(Matrix.unitaryGroup n โ))
(ij : n ร n)
(kl : n ร n)
:
LinearMap.toMatrixOfAlgEquiv (Matrix.innerAut Uโปยน) ij kl = โU kl.2 ij.2 * star (โU kl.1 ij.1)