File: Mathlib/Algebra/Star/Subsemiring.lean

full_name: StarSubsemiring
code: /-- A (unital) star subsemiring is a non-associative ring which is closed under the `star`
operation. -/
structure StarSubsemiring (R : Type v) [NonAssocSemiring R] [Star R]
    extends Subsemiring R : Type v where
  /-- The `carrier` of a `StarSubsemiring` is closed under the `star` operation. -/
  star_mem' {a} : a ∈ carrier → star a ∈ carrier
goal: Type v

full_name: StarSubsemiring.star_mem'
code: /-- A (unital) star subsemiring is a non-associative ring which is closed under the `star`
operation. -/
structure StarSubsemiring (R : Type v) [NonAssocSemiring R] [Star R]
    extends Subsemiring R : Type v where
  /-- The `carrier` of a `StarSubsemiring` is closed under the `star` operation. -/
  star_mem' {a} : a ∈ carrier → star a ∈ carrier
goal: a ∈ self.carrier → star a ∈ self.carrier

full_name: StarSubsemiring.setLike
code: instance setLike : SetLike (StarSubsemiring R) R 
goal: SetLike (StarSubsemiring R) R

full_name: StarSubsemiring.starMemClass
code: instance starMemClass : StarMemClass (StarSubsemiring R) R 
goal: StarMemClass (StarSubsemiring R) R

full_name: StarSubsemiring.subsemiringClass
code: instance subsemiringClass : SubsemiringClass (StarSubsemiring R) R 
goal: SubsemiringClass (StarSubsemiring R) R

full_name: StarSubsemiring.starRing
code: instance starRing (s : StarSubsemiring R) : StarRing s 
goal: StarRing ↥s

full_name: StarSubsemiring.semiring
code: instance semiring (s : StarSubsemiring R) : NonAssocSemiring s 
goal: NonAssocSemiring ↥s

full_name: StarSubsemiring.mem_carrier
code: @[simp, nolint simpNF]
theorem mem_carrier {s : StarSubsemiring R} {x : R} : x ∈ s.carrier ↔ x ∈ s 
goal: x ∈ s.carrier ↔ x ∈ s

full_name: StarSubsemiring.ext
code: @[ext]
theorem ext {S T : StarSubsemiring R} (h : ∀ x : R, x ∈ S ↔ x ∈ T) : S = T 
goal: S = T

full_name: StarSubsemiring.coe_mk
code: @[simp]
lemma coe_mk (S : Subsemiring R) (h) : ((⟨S, h⟩ : StarSubsemiring R) : Set R) = S 
goal: ↑{ toSubsemiring := S, star_mem' := h } = ↑S

full_name: StarSubsemiring.mem_toSubsemiring
code: @[simp]
theorem mem_toSubsemiring {S : StarSubsemiring R} {x} : x ∈ S.toSubsemiring ↔ x ∈ S 
goal: x ∈ S.toSubsemiring ↔ x ∈ S

full_name: StarSubsemiring.coe_toSubsemiring
code: @[simp]
theorem coe_toSubsemiring (S : StarSubsemiring R) : (S.toSubsemiring : Set R) = S 
goal: ↑S.toSubsemiring = ↑S

full_name: StarSubsemiring.toSubsemiring_injective
code: theorem toSubsemiring_injective :
    Function.Injective (toSubsemiring : StarSubsemiring R → Subsemiring R) 
goal: Function.Injective StarSubsemiring.toSubsemiring

full_name: StarSubsemiring.toSubsemiring_inj
code: theorem toSubsemiring_inj {S U : StarSubsemiring R} : S.toSubsemiring = U.toSubsemiring ↔ S = U 
goal: S.toSubsemiring = U.toSubsemiring ↔ S = U

full_name: StarSubsemiring.toSubsemiring_le_iff
code: theorem toSubsemiring_le_iff {S₁ S₂ : StarSubsemiring R} :
    S₁.toSubsemiring ≤ S₂.toSubsemiring ↔ S₁ ≤ S₂ 
goal: S₁.toSubsemiring ≤ S₂.toSubsemiring ↔ S₁ ≤ S₂

full_name: StarSubsemiring.copy
code: /-- Copy of a non-unital star subalgebra with a new `carrier` equal to the old one. Useful to fix
definitional equalities. -/
protected def copy (S : StarSubsemiring R) (s : Set R) (hs : s = ↑S) : StarSubsemiring R 
goal: StarSubsemiring R

full_name: StarSubsemiring.coe_copy
code: @[simp]
theorem coe_copy (S : StarSubsemiring R) (s : Set R) (hs : s = ↑S) : (S.copy s hs : Set R) = s 
goal: ↑(S.copy s hs) = s

full_name: StarSubsemiring.copy_eq
code: theorem copy_eq (S : StarSubsemiring R) (s : Set R) (hs : s = ↑S) : S.copy s hs = S 
goal: S.copy s hs = S

full_name: StarSubsemiring.center
code: /-- The center of a semiring `R` is the set of elements that commute and associate with everything
in `R` -/
def center (R) [NonAssocSemiring R][StarRing R] : StarSubsemiring R 
goal: StarSubsemiring R

full_name: SubStarSemigroup.center
code: /-- The center of magma `A` is the set of elements that commute and associate
with everything in `A`, here realized as a `SubStarSemigroup`. -/
def center : SubStarSemigroup A 
goal: SubStarSemigroup A