Unitary elements of a star monoid #
This file defines unitary R, where R is a star monoid, as the submonoid made of the elements
that satisfy star U * U = 1 and U * star U = 1, and these form a group.
This includes, for instance, unitary operators on Hilbert spaces.
See also Matrix.UnitaryGroup for specializations to unitary (Matrix n n R).
Tags #
unitary
@[instance_reducible]
instance Unitary.instInvolutiveStarSubtypeMemSubmonoidUnitary {R : Type u_1} [Monoid R] [StarMul R] :
InvolutiveStar ↥(unitary R)
instance Unitary.coe_isStarNormal {R : Type u_1} [Monoid R] [StarMul R] (u : ↥(unitary R)) :
IsStarNormal ↑u
@[simp]
@[simp]
theorem Unitary.smul_mem_of_mem {R : Type u_1} {A : Type u_2} [Monoid R] [Monoid A] [MulAction R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarMul R] [StarMul A] [StarModule R A] {r : R} {a : A} (hr : r ∈ unitary R) (ha : a ∈ unitary A) :
theorem Unitary.smul_mem {R : Type u_1} {A : Type u_2} [Monoid R] [Monoid A] [MulAction R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarMul R] [StarMul A] [StarModule R A] (r : ↥(unitary R)) {a : A} (ha : a ∈ unitary A) :
@[instance_reducible]
instance Unitary.instSMulSubtypeMemSubmonoidUnitary {R : Type u_1} {A : Type u_2} [Monoid R] [Monoid A] [MulAction R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarMul R] [StarMul A] [StarModule R A] :
@[simp]
theorem Unitary.coe_smul {R : Type u_1} {A : Type u_2} [Monoid R] [Monoid A] [MulAction R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarMul R] [StarMul A] [StarModule R A] (r : ↥(unitary R)) (a : ↥(unitary A)) :
@[instance_reducible]
instance Unitary.instMulActionSubtypeMemSubmonoidUnitary {R : Type u_1} {A : Type u_2} [Monoid R] [Monoid A] [MulAction R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarMul R] [StarMul A] [StarModule R A] :
instance Unitary.instStarModuleSubtypeMemSubmonoidUnitary {R : Type u_1} {A : Type u_2} [Monoid R] [Monoid A] [MulAction R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarMul R] [StarMul A] [StarModule R A] :
StarModule ↥(unitary R) ↥(unitary A)
instance Unitary.instSMulCommClassSubtypeMemSubmonoidUnitary {R : Type u_1} {S : Type u_2} {A : Type u_3} [Monoid R] [Monoid S] [Monoid A] [StarMul R] [StarMul S] [StarMul A] [MulAction R A] [MulAction S A] [StarModule R A] [StarModule S A] [IsScalarTower R A A] [IsScalarTower S A A] [SMulCommClass R A A] [SMulCommClass S A A] [SMulCommClass R S A] :
SMulCommClass ↥(unitary R) ↥(unitary S) ↥(unitary A)
instance Unitary.instIsScalarTowerSubtypeMemSubmonoidUnitary {R : Type u_1} {S : Type u_2} {A : Type u_3} [Monoid R] [Monoid S] [Monoid A] [StarMul R] [StarMul S] [StarMul A] [MulAction R S] [MulAction R A] [MulAction S A] [StarModule R S] [StarModule R A] [StarModule S A] [IsScalarTower R A A] [IsScalarTower S A A] [SMulCommClass R A A] [SMulCommClass S A A] [IsScalarTower R S S] [SMulCommClass R S S] [IsScalarTower R S A] :
IsScalarTower ↥(unitary R) ↥(unitary S) ↥(unitary A)
@[simp]
@[simp]
theorem Unitary.map_injective {R : Type u_2} {S : Type u_3} [Monoid R] [StarMul R] [Monoid S] [StarMul S] {f : R →⋆* S} (hf : Function.Injective ⇑f) :
Function.Injective ⇑(map f)
@[simp]
The unitary subgroup of the units is equivalent to the unitary elements of the monoid.
Instances For
@[simp]
theorem val_unitarySubgroupUnitsEquiv_symm_apply_coe {M : Type u_5} [Monoid M] [StarMul M] (x : ↥(unitary M)) :
@[simp]
theorem unitarySubgroupUnitsEquiv_apply_coe {M : Type u_5} [Monoid M] [StarMul M] (x : ↥(unitarySubgroup Mˣ)) :
@[instance_reducible]
instance Unitary.instCommGroupSubtypeMemSubmonoidUnitary {R : Type u_1} [CommMonoid R] [StarMul R] :
@[instance_reducible]
instance Unitary.instHasDistribNegSubtypeMemSubmonoidUnitary {R : Type u_1} [Ring R] [StarRing R] :
HasDistribNeg ↥(unitary R)
theorem Unitary.mem_iff_eq_one_or_eq_neg_one {R : Type u_1} [Ring R] [StarRing R] [TrivialStar R] [NoZeroDivisors R] {a : R} :
In a ring without zero divisors and with trivial star, the only unitary elements are 1
and -1.
theorem IsStarProjection.two_mul_sub_one_mem_unitary {R : Type u_2} [Ring R] [StarRing R] {p : R} (hp : IsStarProjection p) :