Non-unital Star Subalgebras #
In this file we define NonUnitalStarSubalgebras 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
carrierof aNonUnitalStarSubalgebrais closed under thestaroperation.
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 }
NonUnitalStarSubalgebras 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
NonUnitalStarSubalgebras 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' := ⋯ }