Documentation

Mathlib.LinearAlgebra.Matrix.WithConv

The convolutive star ring on matrices #

In this file, we provide the star algebra instance on WithConv (Matrix m n R) given by the Hadamard product and intrinsic star (i.e., the star of each element in the matrix).

@[implicit_reducible]
instance instMulWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [Mul α] :
Mul (WithConv (Matrix m n α))
Equations
theorem convMul_def {m : Type u_1} {n : Type u_2} {α : Type u_3} [Mul α] (x y : WithConv (Matrix m n α)) :
@[implicit_reducible]
instance instSemigroupWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [Semigroup α] :
Equations
@[implicit_reducible]
Equations
  • One or more equations did not get rendered due to their size.
@[implicit_reducible]
instance instCommMagmaWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [CommMagma α] :
Equations
@[implicit_reducible]
instance instOneWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [One α] :
One (WithConv (Matrix m n α))
Equations
theorem convOne_def {m : Type u_1} {n : Type u_2} {α : Type u_3} [One α] :
@[implicit_reducible]
instance instMulOneClassWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [MulOneClass α] :
Equations
@[implicit_reducible]
instance instMonoidWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [Monoid α] :
Equations
  • One or more equations did not get rendered due to their size.
@[implicit_reducible]
instance instCommMonoidWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [CommMonoid α] :
Equations
@[implicit_reducible]
instance instNonAssocSemiringWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [NonAssocSemiring α] :
Equations
  • One or more equations did not get rendered due to their size.
@[implicit_reducible]
instance instNonUnitalSemiringWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [NonUnitalSemiring α] :
Equations
@[implicit_reducible]
Equations
@[implicit_reducible]
Equations
@[implicit_reducible]
instance instSemiringWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [Semiring α] :
Equations
  • One or more equations did not get rendered due to their size.
@[implicit_reducible]
instance instCommSemiringWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [CommSemiring α] :
Equations
@[implicit_reducible]
Equations
  • One or more equations did not get rendered due to their size.
@[implicit_reducible]
Equations
@[implicit_reducible]
instance instNonUnitalRingWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [NonUnitalRing α] :
Equations
@[implicit_reducible]
instance instNonUnitalCommRingWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [NonUnitalCommRing α] :
Equations
@[implicit_reducible]
instance instNonAssocRingWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [NonAssocRing α] :
Equations
  • One or more equations did not get rendered due to their size.
@[implicit_reducible]
instance instNonAssocCommRingWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [NonAssocCommRing α] :
Equations
@[implicit_reducible]
instance instRingWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [Ring α] :
Ring (WithConv (Matrix m n α))
Equations
  • One or more equations did not get rendered due to their size.
@[implicit_reducible]
instance instCommRingWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [CommRing α] :
Equations
@[implicit_reducible]
instance instStarWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [Star α] :
Star (WithConv (Matrix m n α))
Equations
theorem intrinsicStar_def {m : Type u_1} {n : Type u_2} {α : Type u_3} [Star α] (x : WithConv (Matrix m n α)) :
@[implicit_reducible]
instance instInvolutiveStarWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [InvolutiveStar α] :
Equations
@[implicit_reducible]
instance instStarAddMonoidWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [AddMonoid α] [StarAddMonoid α] :
Equations
@[implicit_reducible]
instance instStarMulWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [Mul α] [StarMul α] :
Equations
@[implicit_reducible]
instance instStarRingWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} [NonUnitalNonAssocSemiring α] [StarRing α] :
Equations
instance instSMulCommClassWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} {β : Type u_4} [Monoid β] [MulAction β α] [Mul α] [SMulCommClass β α α] :
SMulCommClass β (WithConv (Matrix m n α)) (WithConv (Matrix m n α))
instance instIsScalarTowerWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} {β : Type u_4} [Monoid β] [MulAction β α] [Mul α] [IsScalarTower β α α] :
IsScalarTower β (WithConv (Matrix m n α)) (WithConv (Matrix m n α))
@[implicit_reducible]
instance instAlgebraWithConvMatrix {m : Type u_1} {n : Type u_2} {α : Type u_3} {β : Type u_4} [CommSemiring β] [Semiring α] [Algebra β α] :
Algebra β (WithConv (Matrix m n α))
Equations
theorem Matrix.WithConv.IsIdempotentElem.isSelfAdjoint {m : Type u_1} {n : Type u_2} {α : Type u_3} [Semiring α] [IsLeftCancelMulZero α] [StarRing α] {f : WithConv (Matrix m n α)} (hf : IsIdempotentElem f) :

All matrices are intrinsically self-adjoint if they are convolutively idempotent.

def WithConv.matrixToLin'StarAlgEquiv (m : Type u_1) (n : Type u_2) (α : Type u_3) [CommSemiring α] [StarRing α] [Fintype n] [DecidableEq n] :
WithConv (Matrix m n α) ≃⋆ₐ[α] WithConv ((nα) →ₗ[α] mα)

WithConv (Matrix m n α) is ⋆-algebraically equivalent to WithConv ((n → α) →ₗ m → α).

In particular, the convolutive product on linear maps corresponds to the Hadamard product on matrices and the intrinsic star on linear maps corresponds to taking the star of each element in the matrix.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[simp]
    theorem WithConv.matrixToLin'StarAlgEquiv_apply {m : Type u_1} {n : Type u_2} {α : Type u_3} [CommSemiring α] [StarRing α] [Fintype n] [DecidableEq n] (x : WithConv (Matrix m n α)) :
    @[simp]
    theorem WithConv.symm_matrixToLin'StarAlgEquiv_apply {m : Type u_1} {n : Type u_2} {α : Type u_3} [CommSemiring α] [StarRing α] [Fintype n] [DecidableEq n] (x : WithConv ((nα) →ₗ[α] mα)) :
    theorem Matrix.toLin'_hadamard {m : Type u_1} {n : Type u_2} {α : Type u_3} [CommSemiring α] [Fintype n] [DecidableEq n] (x y : Matrix m n α) :