Non-unital Star Subalgebras #
In this file we define NonUnitalStarSubalgebra
s and the usual operations on them
(map
, comap
).
TODO #
- once we have scalar actions by semigroups (as opposed to monoids), implement the action of a non-unital subalgebra on the larger algebra.
If a type carries an involutive star, then any star-closed subset does too.
Equations
In a star magma (i.e., a multiplication with an antimultiplicative involutive star operation), any star-closed subset which is also closed under multiplication is itself a star magma.
Equations
In a StarAddMonoid
(i.e., an additive monoid with an additive involutive star operation), any
star-closed subset which is also closed under addition and contains zero is itself a
StarAddMonoid
.
Equations
In a star ring (i.e., a non-unital, non-associative, semiring with an additive, antimultiplicative, involutive star operation), a star-closed non-unital subsemiring is itself a star ring.
Equations
- StarMemClass.instStarRing s = let __src := StarMemClass.instStarMul s; let __src_1 := StarMemClass.instStarAddMonoid s; StarRing.mk ⋯
In a star R
-module (i.e., star (r • m) = (star r) • m
) any star-closed subset which is also
closed under the scalar action by R
is itself a star R
-module.
Equations
- ⋯ = ⋯
Embedding of a non-unital star subalgebra into the non-unital star algebra.
Equations
- NonUnitalStarSubalgebraClass.subtype s = let __src := NonUnitalSubalgebraClass.subtype s; { toFun := Subtype.val, map_smul' := ⋯, map_zero' := ⋯, map_add' := ⋯, map_mul' := ⋯, map_star' := ⋯ }
Instances For
A non-unital star subalgebra is a non-unital subalgebra which is closed under the star
operation.
- carrier : Set A
- zero_mem' : 0 ∈ self.carrier
The
carrier
of aNonUnitalStarSubalgebra
is closed under thestar
operation.
Instances For
The carrier
of a NonUnitalStarSubalgebra
is closed under the star
operation.
Equations
- NonUnitalStarSubalgebra.instSetLike = { coe := fun {s : NonUnitalStarSubalgebra R A} => s.carrier, coe_injective' := ⋯ }
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Copy of a non-unital star subalgebra with a new carrier
equal to the old one.
Useful to fix definitional equalities.
Equations
- S.copy s hs = let __src := S.copy s hs; { toNonUnitalSubalgebra := __src, star_mem' := ⋯ }
Instances For
A non-unital star subalgebra over a ring is also a Subring
.
Equations
- S.toNonUnitalSubring = { toNonUnitalSubsemiring := S.toNonUnitalSubsemiring, neg_mem' := ⋯ }
Instances For
Equations
- S.instInhabited = { default := 0 }
NonUnitalStarSubalgebra
s inherit structure from their NonUnitalSubsemiringClass
and
NonUnitalSubringClass
instances.
Equations
- S.toNonUnitalSemiring = inferInstance
Equations
- S.toNonUnitalCommSemiring = inferInstance
Equations
- S.toNonUnitalRing = inferInstance
Equations
- S.toNonUnitalCommRing = inferInstance
The forgetful map from NonUnitalStarSubalgebra
to NonUnitalSubalgebra
as an
OrderEmbedding
Equations
- NonUnitalStarSubalgebra.toNonUnitalSubalgebra' = { toFun := fun (S : NonUnitalStarSubalgebra R A) => S.toNonUnitalSubalgebra, inj' := ⋯, map_rel_iff' := ⋯ }
Instances For
NonUnitalStarSubalgebra
s inherit structure from their Submodule
coercions.
Equations
- S.module' = SMulMemClass.toModule' (NonUnitalStarSubalgebra R A) R' R A S
Equations
- S.instModule = S.module'
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Transport a non-unital star subalgebra via a non-unital star algebra homomorphism.
Equations
- NonUnitalStarSubalgebra.map f S = { toNonUnitalSubalgebra := NonUnitalSubalgebra.map (NonUnitalAlgHomClass.toNonUnitalAlgHom f) S.toNonUnitalSubalgebra, star_mem' := ⋯ }
Instances For
Preimage of a non-unital star subalgebra under a non-unital star algebra homomorphism.
Equations
- NonUnitalStarSubalgebra.comap f S = { toNonUnitalSubalgebra := NonUnitalSubalgebra.comap f S.toNonUnitalSubalgebra, star_mem' := ⋯ }
Instances For
Equations
- ⋯ = ⋯
A non-unital subalgebra closed under star
is a non-unital star subalgebra.
Equations
- s.toNonUnitalStarSubalgebra h_star = { toNonUnitalSubalgebra := s, star_mem' := h_star }
Instances For
Range of an NonUnitalAlgHom
as a NonUnitalStarSubalgebra
.
Equations
- NonUnitalStarAlgHom.range φ = { toNonUnitalSubalgebra := NonUnitalAlgHom.range (NonUnitalAlgHomClass.toNonUnitalAlgHom φ), star_mem' := ⋯ }
Instances For
Restrict the codomain of a non-unital star algebra homomorphism.
Equations
- NonUnitalStarAlgHom.codRestrict f S hf = { toNonUnitalAlgHom := NonUnitalAlgHom.codRestrict f S.toNonUnitalSubalgebra hf, map_star' := ⋯ }
Instances For
Restrict the codomain of a non-unital star algebra homomorphism f
to f.range
.
This is the bundled version of Set.rangeFactorization
.
Equations
Instances For
The equalizer of two non-unital star R
-algebra homomorphisms
Equations
- NonUnitalStarAlgHom.equalizer ϕ ψ = { toNonUnitalSubalgebra := NonUnitalAlgHom.equalizer ϕ ψ, star_mem' := ⋯ }
Instances For
Restrict a non-unital star algebra homomorphism with a left inverse to an algebra isomorphism to its range.
This is a computable alternative to StarAlgEquiv.ofInjective
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Restrict an injective non-unital star algebra homomorphism to a star algebra isomorphism
Equations
Instances For
The star closure of a subalgebra #
The pointwise star
of a non-unital subalgebra is a non-unital subalgebra.
Equations
- NonUnitalSubalgebra.instInvolutiveStar = InvolutiveStar.mk ⋯
The star operation on NonUnitalSubalgebra
commutes with NonUnitalAlgebra.adjoin
.
The NonUnitalStarSubalgebra
obtained from S : NonUnitalSubalgebra R A
by taking the
smallest non-unital subalgebra containing both S
and star S
.
Instances For
The minimal non-unital subalgebra that includes s
.
Equations
- NonUnitalStarAlgebra.adjoin R s = { toNonUnitalSubalgebra := NonUnitalAlgebra.adjoin R (s ∪ star s), star_mem' := ⋯ }
Instances For
Galois insertion between adjoin
and Subtype.val
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- NonUnitalStarAlgebra.instCompleteLatticeNonUnitalStarSubalgebra = NonUnitalStarAlgebra.gi.liftCompleteLattice
NonUnitalStarAlgHom
to ⊤ : NonUnitalStarSubalgebra R A
.
Equations
- NonUnitalStarAlgebra.toTop = NonUnitalStarAlgHom.codRestrict (NonUnitalStarAlgHom.id R A) ⊤ ⋯
Instances For
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
The map S → T
when S
is a non-unital star subalgebra contained in the non-unital star
algebra T
.
This is the non-unital star subalgebra version of Submodule.inclusion
, or
NonUnitalSubalgebra.inclusion
Equations
- NonUnitalStarSubalgebra.inclusion h = { toNonUnitalAlgHom := NonUnitalSubalgebra.inclusion h, map_star' := ⋯ }
Instances For
The product of two non-unital star subalgebras is a non-unital star subalgebra.
Equations
Instances For
Define a non-unital star algebra homomorphism on a directed supremum of non-unital star subalgebras by defining it on each non-unital star subalgebra, and proving that it agrees on the intersection of non-unital star subalgebras.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The center of a non-unital star algebra is the set of elements which commute with every element. They form a non-unital star subalgebra.
Equations
- NonUnitalStarSubalgebra.center R A = { toNonUnitalSubalgebra := NonUnitalSubalgebra.center R A, star_mem' := ⋯ }
Instances For
Equations
- NonUnitalStarSubalgebra.instNonUnitalCommSemiring = NonUnitalSubalgebra.center.instNonUnitalCommSemiring
Equations
- NonUnitalStarSubalgebra.instNonUnitalCommRing = NonUnitalSubalgebra.center.instNonUnitalCommRing
The centralizer of the star-closure of a set as a non-unital star subalgebra.
Equations
- NonUnitalStarSubalgebra.centralizer R s = let __src := NonUnitalSubalgebra.centralizer R (s ∪ star s); { toNonUnitalSubalgebra := __src, star_mem' := ⋯ }