Documentation

Mathlib.Algebra.Star.Pi

star on pi types #

We put a Star structure on pi types that operates elementwise, such that it describes the complex conjugation of vectors.

instance Pi.instStarForAll {I : Type u} {f : IType v} [(i : I) → Star (f i)] :
Star ((i : I) → f i)
Equations
  • Pi.instStarForAll = { star := fun (x : (i : I) → f i) (i : I) => star (x i) }
@[simp]
theorem Pi.star_apply {I : Type u} {f : IType v} [(i : I) → Star (f i)] (x : (i : I) → f i) (i : I) :
star x i = star (x i)
theorem Pi.star_def {I : Type u} {f : IType v} [(i : I) → Star (f i)] (x : (i : I) → f i) :
star x = fun (i : I) => star (x i)
instance Pi.instTrivialStarForAllInstStarForAll {I : Type u} {f : IType v} [(i : I) → Star (f i)] [∀ (i : I), TrivialStar (f i)] :
TrivialStar ((i : I) → f i)
Equations
  • =
instance Pi.instInvolutiveStarForAll {I : Type u} {f : IType v} [(i : I) → InvolutiveStar (f i)] :
InvolutiveStar ((i : I) → f i)
Equations
instance Pi.instStarMulForAllInstMul {I : Type u} {f : IType v} [(i : I) → Mul (f i)] [(i : I) → StarMul (f i)] :
StarMul ((i : I) → f i)
Equations
instance Pi.instStarAddMonoidForAllAddMonoid {I : Type u} {f : IType v} [(i : I) → AddMonoid (f i)] [(i : I) → StarAddMonoid (f i)] :
StarAddMonoid ((i : I) → f i)
Equations
instance Pi.instStarRingForAllNonUnitalNonAssocSemiringToNonUnitalNonAssocSemiring {I : Type u} {f : IType v} [(i : I) → NonUnitalSemiring (f i)] [(i : I) → StarRing (f i)] :
StarRing ((i : I) → f i)
Equations
  • Pi.instStarRingForAllNonUnitalNonAssocSemiringToNonUnitalNonAssocSemiring = StarRing.mk
instance Pi.instStarModuleForAllInstStarForAllInstSMul {I : Type u} {f : IType v} {R : Type w} [(i : I) → SMul R (f i)] [Star R] [(i : I) → Star (f i)] [∀ (i : I), StarModule R (f i)] :
StarModule R ((i : I) → f i)
Equations
  • =
theorem Pi.single_star {I : Type u} {f : IType v} [(i : I) → AddMonoid (f i)] [(i : I) → StarAddMonoid (f i)] [DecidableEq I] (i : I) (a : f i) :
@[simp]
theorem Pi.conj_apply {ι : Type u_1} {α : ιType u_2} [(i : ι) → CommSemiring (α i)] [(i : ι) → StarRing (α i)] (f : (i : ι) → α i) (i : ι) :
(starRingEnd ((i : ι) → α i)) f i = (starRingEnd (α i)) (f i)
theorem Function.update_star {I : Type u} {f : IType v} [(i : I) → Star (f i)] [DecidableEq I] (h : (i : I) → f i) (i : I) (a : f i) :
theorem Function.star_sum_elim {I : Type u_1} {J : Type u_2} {α : Type u_3} (x : Iα) (y : Jα) [Star α] :