Documentation

Mathlib.Algebra.Star.Subsemiring

Star subrings #

A *-subring is a subring of a *-ring which is closed under *.

structure StarSubsemiring (R : Type v) [NonAssocSemiring R] [Star R] extends Subsemiring :

A (unital) star subsemiring is a non-associative ring which is closed under the star operation.

  • carrier : Set R
  • mul_mem' : ∀ {a b : R}, a self.carrierb self.carriera * b self.carrier
  • one_mem' : 1 self.carrier
  • add_mem' : ∀ {a b : R}, a self.carrierb self.carriera + b self.carrier
  • zero_mem' : 0 self.carrier
  • star_mem' : ∀ {a : R}, a self.carrierstar a self.carrier

    The carrier of a StarSubsemiring is closed under the star operation.

Instances For
    theorem StarSubsemiring.star_mem' {R : Type v} [NonAssocSemiring R] [Star R] (self : StarSubsemiring R) {a : R} :
    a self.carrierstar a self.carrier

    The carrier of a StarSubsemiring is closed under the star operation.

    Equations
    • StarSubsemiring.setLike = { coe := fun {s : StarSubsemiring R} => s.carrier, coe_injective' := }
    Equations
    Equations
    • s.semiring = s.toNonAssocSemiring
    @[simp]
    theorem StarSubsemiring.mem_carrier {R : Type v} [NonAssocSemiring R] [StarRing R] {s : StarSubsemiring R} {x : R} :
    x s.carrier x s
    theorem StarSubsemiring.ext_iff {R : Type v} [NonAssocSemiring R] [StarRing R] {S : StarSubsemiring R} {T : StarSubsemiring R} :
    S = T ∀ (x : R), x S x T
    theorem StarSubsemiring.ext {R : Type v} [NonAssocSemiring R] [StarRing R] {S : StarSubsemiring R} {T : StarSubsemiring R} (h : ∀ (x : R), x S x T) :
    S = T
    @[simp]
    theorem StarSubsemiring.coe_mk {R : Type v} [NonAssocSemiring R] [StarRing R] (S : Subsemiring R) (h : ∀ {a : R}, a S.carrierstar a S.carrier) :
    { toSubsemiring := S, star_mem' := h } = S
    @[simp]
    theorem StarSubsemiring.mem_toSubsemiring {R : Type v} [NonAssocSemiring R] [StarRing R] {S : StarSubsemiring R} {x : R} :
    x S.toSubsemiring x S
    @[simp]
    theorem StarSubsemiring.coe_toSubsemiring {R : Type v} [NonAssocSemiring R] [StarRing R] (S : StarSubsemiring R) :
    S.toSubsemiring = S
    theorem StarSubsemiring.toSubsemiring_inj {R : Type v} [NonAssocSemiring R] [StarRing R] {S : StarSubsemiring R} {U : StarSubsemiring R} :
    S.toSubsemiring = U.toSubsemiring S = U
    theorem StarSubsemiring.toSubsemiring_le_iff {R : Type v} [NonAssocSemiring R] [StarRing R] {S₁ : StarSubsemiring R} {S₂ : StarSubsemiring R} :
    S₁.toSubsemiring S₂.toSubsemiring S₁ S₂
    def StarSubsemiring.copy {R : Type v} [NonAssocSemiring R] [StarRing R] (S : StarSubsemiring R) (s : Set R) (hs : s = S) :

    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 = { toSubsemiring := S.copy s hs, star_mem' := }
    Instances For
      @[simp]
      theorem StarSubsemiring.coe_copy {R : Type v} [NonAssocSemiring R] [StarRing R] (S : StarSubsemiring R) (s : Set R) (hs : s = S) :
      (S.copy s hs) = s
      theorem StarSubsemiring.copy_eq {R : Type v} [NonAssocSemiring R] [StarRing R] (S : StarSubsemiring R) (s : Set R) (hs : s = S) :
      S.copy s hs = S

      The center of a semiring R is the set of elements that commute and associate with everything in R

      Equations
      Instances For

        The center of magma A is the set of elements that commute and associate with everything in A, here realized as a SubStarSemigroup.

        Equations
        Instances For