ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- AlgHomClass.unitization_injective
theorem _root_.AlgHomClass.unitization_injective {F R S A : Type*} [Field R] [Ring A]
    [Algebra R A] [SetLike S A] [hSA : NonUnitalSubringClass S A] [hSRA : SMulMemClass S R A]
    (s : S) (h1 : 1 ∉ s) [FunLike F (Unitization R s) A] [AlgHomClass F R (Unitization R s) A]
    (f : F) (hf : ∀ x : s, f x = x) : Function.Injective f 
Arguments: {F : Type u_1} {R : Type u_2} {S : Type u_3} {A : Type u_4} [Field R] [Ring A] [Algebra R A] [SetLike S A] [hSA : NonUnitalSubringClass S A] [hSRA : SMulMemClass S R A] (s : S) (h1 : 1 ∉ s) [FunLike F (Unitization R ↥s) A] [AlgHomClass F R (Unitization R ↥s) A] (f : F) (hf : ∀ (x : ↥s), f ↑x = ↑x)
Goal: Function.Injective ⇑f
-- NonUnitalSubalgebra.unitization_injective
theorem unitization_injective (h1 : (1 : A) ∉ s) : Function.Injective (unitization s) 
Arguments: {R : Type u_1} {S : Type u_2} {A : Type u_3} [Field R] [Ring A] [Algebra R A] [SetLike S A] [hSA : NonUnitalSubringClass S A] [hSRA : SMulMemClass S R A] (s : S) (h1 : 1 ∉ s)
Goal: Function.Injective ⇑(NonUnitalSubalgebra.unitization s)
-- NonUnitalSubalgebra.unitizationAlgEquiv_apply_coe
@[simps! apply_coe]
noncomputable def unitizationAlgEquiv (h1 : (1 : A) ∉ s) :
    Unitization R s ≃ₐ[R] Algebra.adjoin R (s : Set A) 
Arguments: {R : Type u_1} {S : Type u_2} {A : Type u_3} [Field R] [Ring A] [Algebra R A] [SetLike S A] [hSA : NonUnitalSubringClass S A] [hSRA : SMulMemClass S R A] (s : S) (h1 : 1 ∉ s) (a : Unitization R ↥s)
Goal: ↑((NonUnitalSubalgebra.unitizationAlgEquiv s h1) a) = (algebraMap R A) a.fst + ↑a.snd
-- Subsemiring.one_mem_toNonUnitalSubsemiring
theorem Subsemiring.one_mem_toNonUnitalSubsemiring (S : Subsemiring R) :
    (1 : R) ∈ S.toNonUnitalSubsemiring 
Arguments: {R : Type u_1} [NonAssocSemiring R] (S : Subsemiring R)
Goal: 1 ∈ S.toNonUnitalSubsemiring
-- Subsemiring.toNonUnitalSubsemiring_toSubsemiring
theorem Subsemiring.toNonUnitalSubsemiring_toSubsemiring (S : Subsemiring R) :
    S.toNonUnitalSubsemiring.toSubsemiring S.one_mem = S 
Arguments: {R : Type u_1} [NonAssocSemiring R] (S : Subsemiring R)
Goal: S.toNonUnitalSubsemiring.toSubsemiring ⋯ = S
-- NonUnitalSubsemiring.toSubsemiring_toNonUnitalSubsemiring
theorem NonUnitalSubsemiring.toSubsemiring_toNonUnitalSubsemiring (S : NonUnitalSubsemiring R)
    (h1 : (1 : R) ∈ S) : (NonUnitalSubsemiring.toSubsemiring S h1).toNonUnitalSubsemiring = S 
Arguments: {R : Type u_1} [NonAssocSemiring R] (S : NonUnitalSubsemiring R) (h1 : 1 ∈ S)
Goal: (S.toSubsemiring h1).toNonUnitalSubsemiring = S
-- NonUnitalSubsemiring.unitization_apply
@[simp]
theorem unitization_apply (x : Unitization ℕ s) : unitization s x = x.fst + x.snd 
Arguments: {R : Type u_1} {S : Type u_2} [Semiring R] [SetLike S R] [hSR : NonUnitalSubsemiringClass S R] (s : S) (x : Unitization ℕ ↥s)
Goal: (NonUnitalSubsemiring.unitization s) x = ↑x.fst + ↑x.snd
-- NonUnitalSubsemiring.unitization_range
theorem unitization_range :
    (unitization s).range = subalgebraOfSubsemiring (Subsemiring.closure s) 
Arguments: {R : Type u_1} {S : Type u_2} [Semiring R] [SetLike S R] [hSR : NonUnitalSubsemiringClass S R] (s : S)
Goal: (NonUnitalSubsemiring.unitization s).range = subalgebraOfSubsemiring (Subsemiring.closure ↑s)
-- Subring.one_mem_toNonUnitalSubring
theorem Subring.one_mem_toNonUnitalSubring (S : Subring R) : (1 : R) ∈ S.toNonUnitalSubring 
Arguments: {R : Type u_1} [Ring R] (S : Subring R)
Goal: 1 ∈ S.toNonUnitalSubring
-- Subring.toNonUnitalSubring_toSubring
theorem Subring.toNonUnitalSubring_toSubring (S : Subring R) :
    S.toNonUnitalSubring.toSubring S.one_mem = S 
Arguments: {R : Type u_1} [Ring R] (S : Subring R)
Goal: S.toNonUnitalSubring.toSubring ⋯ = S
-- NonUnitalSubring.toSubring_toNonUnitalSubring
theorem NonUnitalSubring.toSubring_toNonUnitalSubring (S : NonUnitalSubring R) (h1 : (1 : R) ∈ S) :
    (NonUnitalSubring.toSubring S h1).toNonUnitalSubring = S 
Arguments: {R : Type u_1} [Ring R] (S : NonUnitalSubring R) (h1 : 1 ∈ S)
Goal: (S.toSubring h1).toNonUnitalSubring = S
-- NonUnitalSubring.unitization_apply
@[simp]
theorem unitization_apply (x : Unitization ℤ s) : unitization s x = x.fst + x.snd 
Arguments: {R : Type u_1} {S : Type u_2} [Ring R] [SetLike S R] [hSR : NonUnitalSubringClass S R] (s : S) (x : Unitization ℤ ↥s)
Goal: (NonUnitalSubring.unitization s) x = ↑x.fst + ↑x.snd
-- NonUnitalSubring.unitization_range
theorem unitization_range :
    (unitization s).range = subalgebraOfSubring (Subring.closure s) 
Arguments: {R : Type u_1} {S : Type u_2} [Ring R] [SetLike S R] [hSR : NonUnitalSubringClass S R] (s : S)
Goal: (NonUnitalSubring.unitization s).range = subalgebraOfSubring (Subring.closure ↑s)
-- StarSubalgebra.one_mem_toNonUnitalStarSubalgebra
theorem StarSubalgebra.one_mem_toNonUnitalStarSubalgebra (S : StarSubalgebra R A) :
    (1 : A) ∈ S.toNonUnitalStarSubalgebra 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [StarRing R] [Semiring A] [StarRing A] [Algebra R A] [StarModule R A] (S : StarSubalgebra R A)
Goal: 1 ∈ S.toNonUnitalStarSubalgebra
-- StarSubalgebra.toNonUnitalStarSubalgebra_toStarSubalgebra
theorem StarSubalgebra.toNonUnitalStarSubalgebra_toStarSubalgebra (S : StarSubalgebra R A) :
    S.toNonUnitalStarSubalgebra.toStarSubalgebra S.one_mem' = S 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [StarRing R] [Semiring A] [StarRing A] [Algebra R A] [StarModule R A] (S : StarSubalgebra R A)
Goal: S.toNonUnitalStarSubalgebra.toStarSubalgebra ⋯ = S
-- NonUnitalStarSubalgebra.toStarSubalgebra_toNonUnitalStarSubalgebra
theorem NonUnitalStarSubalgebra.toStarSubalgebra_toNonUnitalStarSubalgebra
    (S : NonUnitalStarSubalgebra R A) (h1 : (1 : A) ∈ S) :
    (S.toStarSubalgebra h1).toNonUnitalStarSubalgebra = S 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [StarRing R] [Semiring A] [StarRing A] [Algebra R A] [StarModule R A] (S : NonUnitalStarSubalgebra R A) (h1 : 1 ∈ S)
Goal: (S.toStarSubalgebra h1).toNonUnitalStarSubalgebra = S
-- StarAlgebra.adjoin_nonUnitalStarSubalgebra_eq_span
lemma StarAlgebra.adjoin_nonUnitalStarSubalgebra_eq_span (s : NonUnitalStarSubalgebra R A) :
    Subalgebra.toSubmodule (adjoin R (s : Set A)).toSubalgebra = span R {1} ⊔ s.toSubmodule 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [StarRing R] [Semiring A] [StarRing A] [Algebra R A] [StarModule R A] (s : NonUnitalStarSubalgebra R A)
Goal: Subalgebra.toSubmodule (StarAlgebra.adjoin R ↑s).toSubalgebra = Submodule.span R {1} ⊔ s.toSubmodule
-- NonUnitalStarAlgebra.adjoin_le_starAlgebra_adjoin
lemma NonUnitalStarAlgebra.adjoin_le_starAlgebra_adjoin (s : Set A) :
    adjoin R s ≤ (StarAlgebra.adjoin R s).toNonUnitalStarSubalgebra 
Arguments: (R : Type u_1) {A : Type u_2} [CommSemiring R] [StarRing R] [Semiring A] [StarRing A] [Algebra R A] [StarModule R A] (s : Set A)
Goal: NonUnitalStarAlgebra.adjoin R s ≤ (StarAlgebra.adjoin R s).toNonUnitalStarSubalgebra
-- StarAlgebra.adjoin_nonUnitalStarSubalgebra
lemma StarAlgebra.adjoin_nonUnitalStarSubalgebra (s : Set A) :
    adjoin R (NonUnitalStarAlgebra.adjoin R s : Set A) = adjoin R s 
Arguments: (R : Type u_1) {A : Type u_2} [CommSemiring R] [StarRing R] [Semiring A] [StarRing A] [Algebra R A] [StarModule R A] (s : Set A)
Goal: StarAlgebra.adjoin R ↑(NonUnitalStarAlgebra.adjoin R s) = StarAlgebra.adjoin R s
-- Unitization.starLift_range_le
theorem starLift_range_le
    {f : A →⋆ₙₐ[R] C} {S : StarSubalgebra R C} :
    (starLift f).range ≤ S ↔ NonUnitalStarAlgHom.range f ≤ S.toNonUnitalStarSubalgebra 
Arguments: {R : Type u_1} {A : Type u_2} {C : Type u_3} [CommSemiring R] [NonUnitalSemiring A] [StarRing R] [StarRing A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarModule R A] [Semiring C] [StarRing C] [Algebra R C] [StarModule R C] {f : A →⋆ₙₐ[R] C} {S : StarSubalgebra R C}
Goal: (Unitization.starLift f).range ≤ S ↔ NonUnitalStarAlgHom.range f ≤ S.toNonUnitalStarSubalgebra
-- Unitization.starLift_range
theorem starLift_range (f : A →⋆ₙₐ[R] C) :
    (starLift f).range = StarAlgebra.adjoin R (NonUnitalStarAlgHom.range f : Set C) 
Arguments: {R : Type u_1} {A : Type u_2} {C : Type u_3} [CommSemiring R] [NonUnitalSemiring A] [StarRing R] [StarRing A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarModule R A] [Semiring C] [StarRing C] [Algebra R C] [StarModule R C] (f : A →⋆ₙₐ[R] C)
Goal: (Unitization.starLift f).range = StarAlgebra.adjoin R ↑(NonUnitalStarAlgHom.range f)
-- NonUnitalStarSubalgebra.unitization_apply
@[simp]
theorem unitization_apply (x : Unitization R s) : unitization s x = algebraMap R A x.fst + x.snd 
Arguments: {R : Type u_1} {S : Type u_2} {A : Type u_3} [CommSemiring R] [StarRing R] [Semiring A] [StarRing A] [Algebra R A] [StarModule R A] [SetLike S A] [hSA : NonUnitalSubsemiringClass S A] [hSRA : SMulMemClass S R A] [StarMemClass S A] (s : S) (x : Unitization R ↥s)
Goal: (NonUnitalStarSubalgebra.unitization s) x = (algebraMap R A) x.fst + ↑x.snd
-- NonUnitalStarSubalgebra.unitization_range
theorem unitization_range : (unitization s).range = StarAlgebra.adjoin R s 
Arguments: {R : Type u_1} {S : Type u_2} {A : Type u_3} [CommSemiring R] [StarRing R] [Semiring A] [StarRing A] [Algebra R A] [StarModule R A] [SetLike S A] [hSA : NonUnitalSubsemiringClass S A] [hSRA : SMulMemClass S R A] [StarMemClass S A] (s : S)
Goal: (NonUnitalStarSubalgebra.unitization s).range = StarAlgebra.adjoin R ↑s
-- NonUnitalStarSubalgebra.unitization_injective
theorem unitization_injective (h1 : (1 : A) ∉ s) : Function.Injective (unitization s) 
Arguments: {R : Type u_1} {S : Type u_2} {A : Type u_3} [Field R] [StarRing R] [Ring A] [StarRing A] [Algebra R A] [StarModule R A] [SetLike S A] [hSA : NonUnitalSubringClass S A] [hSRA : SMulMemClass S R A] [StarMemClass S A] (s : S) (h1 : 1 ∉ s)
Goal: Function.Injective ⇑(NonUnitalStarSubalgebra.unitization s)
-- NonUnitalStarSubalgebra.unitizationStarAlgEquiv_apply_coe
@[simps! apply_coe]
noncomputable def unitizationStarAlgEquiv (h1 : (1 : A) ∉ s) :
    Unitization R s ≃⋆ₐ[R] StarAlgebra.adjoin R (s : Set A) 
Arguments: {R : Type u_1} {S : Type u_2} {A : Type u_3} [Field R] [StarRing R] [Ring A] [StarRing A] [Algebra R A] [StarModule R A] [SetLike S A] [hSA : NonUnitalSubringClass S A] [hSRA : SMulMemClass S R A] [StarMemClass S A] (s : S) (h1 : 1 ∉ s) (a : Unitization R ↥s)
Goal: ↑((NonUnitalStarSubalgebra.unitizationStarAlgEquiv s h1) a) = (algebraMap R A) a.fst + ↑a.snd
-- isSemireal_iff
@[mk_iff]
class isSemireal [AddMonoid R] [Mul R] [One R] [Neg R] : Prop where
  non_trivial        : (0 : R) ≠ 1
  neg_one_not_SumSq  : ¬isSumSq (-1 : R)
Arguments: (R : Type u_1) [AddMonoid R] [Mul R] [One R] [Neg R]
Goal: isSemireal R ↔ 0 ≠ 1 ∧ ¬isSumSq (-1)
-- isSemireal.non_trivial
@[mk_iff]
class isSemireal [AddMonoid R] [Mul R] [One R] [Neg R] : Prop where
  non_trivial        : (0 : R) ≠ 1
  neg_one_not_SumSq  : ¬isSumSq (-1 : R)
Arguments: {R : Type u_1} [AddMonoid R] [Mul R] [One R] [Neg R] [self : isSemireal R]
Goal: 0 ≠ 1
-- isSemireal.neg_one_not_SumSq
@[mk_iff]
class isSemireal [AddMonoid R] [Mul R] [One R] [Neg R] : Prop where
  non_trivial        : (0 : R) ≠ 1
  neg_one_not_SumSq  : ¬isSumSq (-1 : R)
Arguments: {R : Type u_1} [AddMonoid R] [Mul R] [One R] [Neg R] [self : isSemireal R]
Goal: ¬isSumSq (-1)
-- RingAut.smul_def
@[simp]
protected theorem smul_def (f : RingAut R) (r : R) : f • r = f r 
Arguments: {R : Type u_2} [Semiring R] (f : RingAut R) (r : R)
Goal: f • r = f r
-- MulSemiringAction.toRingAut_apply
@[simps]
def _root_.MulSemiringAction.toRingAut [MulSemiringAction G R] :
    G →* RingAut R 
Arguments: (G : Type u_1) (R : Type u_2) [Group G] [Semiring R] [MulSemiringAction G R] (x : G)
Goal: (MulSemiringAction.toRingAut G R) x = MulSemiringAction.toRingEquiv G R x
-- Subsemiring.op_toSubmonoid
@[simps toSubmonoid]
protected def op (S : Subsemiring R) : Subsemiring Rᵐᵒᵖ 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R)
Goal: S.op.toSubmonoid = S.op
-- Subsemiring.op_coe
@[simp, norm_cast]
theorem op_coe (S : Subsemiring R) : S.op = MulOpposite.unop ⁻¹' (S : Set R) 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R)
Goal: ↑S.op = MulOpposite.unop ⁻¹' ↑S
-- Subsemiring.mem_op
@[simp]
theorem mem_op {x : Rᵐᵒᵖ} {S : Subsemiring R} : x ∈ S.op ↔ x.unop ∈ S 
Arguments: {R : Type u_2} [NonAssocSemiring R] {x : Rᵐᵒᵖ} {S : Subsemiring R}
Goal: x ∈ S.op ↔ MulOpposite.unop x ∈ S
-- Subsemiring.unop_toSubmonoid
@[simps toSubmonoid]
protected def unop (S : Subsemiring Rᵐᵒᵖ) : Subsemiring R 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring Rᵐᵒᵖ)
Goal: S.unop.toSubmonoid = S.unop
-- Subsemiring.unop_coe
@[simp, norm_cast]
theorem unop_coe (S : Subsemiring Rᵐᵒᵖ) : S.unop = MulOpposite.op ⁻¹' (S : Set Rᵐᵒᵖ) 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring Rᵐᵒᵖ)
Goal: ↑S.unop = MulOpposite.op ⁻¹' ↑S
-- Subsemiring.mem_unop
@[simp]
theorem mem_unop {x : R} {S : Subsemiring Rᵐᵒᵖ} : x ∈ S.unop ↔ MulOpposite.op x ∈ S 
Arguments: {R : Type u_2} [NonAssocSemiring R] {x : R} {S : Subsemiring Rᵐᵒᵖ}
Goal: x ∈ S.unop ↔ MulOpposite.op x ∈ S
-- Subsemiring.unop_op
@[simp]
theorem unop_op (S : Subsemiring R) : S.op.unop = S 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R)
Goal: S.op.unop = S
-- Subsemiring.op_unop
@[simp]
theorem op_unop (S : Subsemiring Rᵐᵒᵖ) : S.unop.op = S 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring Rᵐᵒᵖ)
Goal: S.unop.op = S
-- Subsemiring.op_le_iff
theorem op_le_iff {S₁ : Subsemiring R} {S₂ : Subsemiring Rᵐᵒᵖ} : S₁.op ≤ S₂ ↔ S₁ ≤ S₂.unop 
Arguments: {R : Type u_2} [NonAssocSemiring R] {S₁ : Subsemiring R} {S₂ : Subsemiring Rᵐᵒᵖ}
Goal: S₁.op ≤ S₂ ↔ S₁ ≤ S₂.unop
-- Subsemiring.le_op_iff
theorem le_op_iff {S₁ : Subsemiring Rᵐᵒᵖ} {S₂ : Subsemiring R} : S₁ ≤ S₂.op ↔ S₁.unop ≤ S₂ 
Arguments: {R : Type u_2} [NonAssocSemiring R] {S₁ : Subsemiring Rᵐᵒᵖ} {S₂ : Subsemiring R}
Goal: S₁ ≤ S₂.op ↔ S₁.unop ≤ S₂
-- Subsemiring.op_le_op_iff
@[simp]
theorem op_le_op_iff {S₁ S₂ : Subsemiring R} : S₁.op ≤ S₂.op ↔ S₁ ≤ S₂ 
Arguments: {R : Type u_2} [NonAssocSemiring R] {S₁ S₂ : Subsemiring R}
Goal: S₁.op ≤ S₂.op ↔ S₁ ≤ S₂
-- Subsemiring.unop_le_unop_iff
@[simp]
theorem unop_le_unop_iff {S₁ S₂ : Subsemiring Rᵐᵒᵖ} : S₁.unop ≤ S₂.unop ↔ S₁ ≤ S₂ 
Arguments: {R : Type u_2} [NonAssocSemiring R] {S₁ S₂ : Subsemiring Rᵐᵒᵖ}
Goal: S₁.unop ≤ S₂.unop ↔ S₁ ≤ S₂
-- Subsemiring.opEquiv_symm_apply
@[simps]
def opEquiv : Subsemiring R ≃o Subsemiring Rᵐᵒᵖ 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring Rᵐᵒᵖ)
Goal: (RelIso.symm Subsemiring.opEquiv) S = S.unop
-- Subsemiring.opEquiv_apply
@[simps]
def opEquiv : Subsemiring R ≃o Subsemiring Rᵐᵒᵖ 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R)
Goal: Subsemiring.opEquiv S = S.op
-- Subsemiring.op_bot
@[simp]
theorem op_bot : (⊥ : Subsemiring R).op = ⊥ 
Arguments: {R : Type u_2} [NonAssocSemiring R]
Goal: ⊥.op = ⊥
-- Subsemiring.unop_bot
@[simp]
theorem unop_bot : (⊥ : Subsemiring Rᵐᵒᵖ).unop = ⊥ 
Arguments: {R : Type u_2} [NonAssocSemiring R]
Goal: ⊥.unop = ⊥
-- Subsemiring.op_top
@[simp]
theorem op_top : (⊤ : Subsemiring R).op = ⊤ 
Arguments: {R : Type u_2} [NonAssocSemiring R]
Goal: ⊤.op = ⊤
-- Subsemiring.unop_top
@[simp]
theorem unop_top : (⊤ : Subsemiring Rᵐᵒᵖ).unop = ⊤ 
Arguments: {R : Type u_2} [NonAssocSemiring R]
Goal: ⊤.unop = ⊤
-- Subsemiring.op_sup
theorem op_sup (S₁ S₂ : Subsemiring R) : (S₁ ⊔ S₂).op = S₁.op ⊔ S₂.op 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S₁ S₂ : Subsemiring R)
Goal: (S₁ ⊔ S₂).op = S₁.op ⊔ S₂.op
-- Subsemiring.unop_sup
theorem unop_sup (S₁ S₂ : Subsemiring Rᵐᵒᵖ) : (S₁ ⊔ S₂).unop = S₁.unop ⊔ S₂.unop 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S₁ S₂ : Subsemiring Rᵐᵒᵖ)
Goal: (S₁ ⊔ S₂).unop = S₁.unop ⊔ S₂.unop
-- Subsemiring.op_inf
theorem op_inf (S₁ S₂ : Subsemiring R) : (S₁ ⊓ S₂).op = S₁.op ⊓ S₂.op 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S₁ S₂ : Subsemiring R)
Goal: (S₁ ⊓ S₂).op = S₁.op ⊓ S₂.op
-- Subsemiring.unop_inf
theorem unop_inf (S₁ S₂ : Subsemiring Rᵐᵒᵖ) : (S₁ ⊓ S₂).unop = S₁.unop ⊓ S₂.unop 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S₁ S₂ : Subsemiring Rᵐᵒᵖ)
Goal: (S₁ ⊓ S₂).unop = S₁.unop ⊓ S₂.unop
-- Subsemiring.op_sSup
theorem op_sSup (S : Set (Subsemiring R)) : (sSup S).op = sSup (.unop ⁻¹' S) 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Set (Subsemiring R))
Goal: (sSup S).op = sSup (Subsemiring.unop ⁻¹' S)
-- Subsemiring.unop_sSup
theorem unop_sSup (S : Set (Subsemiring Rᵐᵒᵖ)) : (sSup S).unop = sSup (.op ⁻¹' S) 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Set (Subsemiring Rᵐᵒᵖ))
Goal: (sSup S).unop = sSup (Subsemiring.op ⁻¹' S)
-- Subsemiring.op_sInf
theorem op_sInf (S : Set (Subsemiring R)) : (sInf S).op = sInf (.unop ⁻¹' S) 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Set (Subsemiring R))
Goal: (sInf S).op = sInf (Subsemiring.unop ⁻¹' S)
-- Subsemiring.unop_sInf
theorem unop_sInf (S : Set (Subsemiring Rᵐᵒᵖ)) : (sInf S).unop = sInf (.op ⁻¹' S) 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Set (Subsemiring Rᵐᵒᵖ))
Goal: (sInf S).unop = sInf (Subsemiring.op ⁻¹' S)
-- Subsemiring.op_iSup
theorem op_iSup (S : ι → Subsemiring R) : (iSup S).op = ⨆ i, (S i).op 
Arguments: {ι : Sort u_1} {R : Type u_2} [NonAssocSemiring R] (S : ι → Subsemiring R)
Goal: (iSup S).op = ⨆ i, (S i).op
-- Subsemiring.unop_iSup
theorem unop_iSup (S : ι → Subsemiring Rᵐᵒᵖ) : (iSup S).unop = ⨆ i, (S i).unop 
Arguments: {ι : Sort u_1} {R : Type u_2} [NonAssocSemiring R] (S : ι → Subsemiring Rᵐᵒᵖ)
Goal: (iSup S).unop = ⨆ i, (S i).unop
-- Subsemiring.op_iInf
theorem op_iInf (S : ι → Subsemiring R) : (iInf S).op = ⨅ i, (S i).op 
Arguments: {ι : Sort u_1} {R : Type u_2} [NonAssocSemiring R] (S : ι → Subsemiring R)
Goal: (iInf S).op = ⨅ i, (S i).op
-- Subsemiring.unop_iInf
theorem unop_iInf (S : ι → Subsemiring Rᵐᵒᵖ) : (iInf S).unop = ⨅ i, (S i).unop 
Arguments: {ι : Sort u_1} {R : Type u_2} [NonAssocSemiring R] (S : ι → Subsemiring Rᵐᵒᵖ)
Goal: (iInf S).unop = ⨅ i, (S i).unop
-- Subsemiring.op_closure
theorem op_closure (s : Set R) : (closure s).op = closure (MulOpposite.unop ⁻¹' s) 
Arguments: {R : Type u_2} [NonAssocSemiring R] (s : Set R)
Goal: (Subsemiring.closure s).op = Subsemiring.closure (MulOpposite.unop ⁻¹' s)
-- Subsemiring.unop_closure
theorem unop_closure (s : Set Rᵐᵒᵖ) : (closure s).unop = closure (MulOpposite.op ⁻¹' s) 
Arguments: {R : Type u_2} [NonAssocSemiring R] (s : Set Rᵐᵒᵖ)
Goal: (Subsemiring.closure s).unop = Subsemiring.closure (MulOpposite.op ⁻¹' s)
-- Subsemiring.addEquivOp_symm_apply_coe
@[simps!]
def addEquivOp (S : Subsemiring R) : S ≃+ S.op 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R) (b : { b // (fun x => x ∈ S.op) b })
Goal: ↑(S.addEquivOp.symm b) = MulOpposite.unop ↑b
-- Subsemiring.addEquivOp_apply_coe
@[simps!]
def addEquivOp (S : Subsemiring R) : S ≃+ S.op 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R) (a : { a // (fun x => x ∈ S.toSubmonoid) a })
Goal: ↑(S.addEquivOp a) = MulOpposite.op ↑a
-- Subsemiring.ringEquivOpMop_symm_apply_coe
@[simps!]
def ringEquivOpMop (S : Subsemiring R) : S ≃+* (S.op)ᵐᵒᵖ 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R)
Goal: ∀ (a : (↥S.op)ᵐᵒᵖ), ↑(S.ringEquivOpMop.symm a) = MulOpposite.unop ↑(MulOpposite.unop a)
-- Subsemiring.ringEquivOpMop_apply
@[simps!]
def ringEquivOpMop (S : Subsemiring R) : S ≃+* (S.op)ᵐᵒᵖ 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R)
Goal: ∀ (a : ↥S), S.ringEquivOpMop a = MulOpposite.op (S.addEquivOp a)
-- Subsemiring.mopRingEquivOp_apply_coe
@[simps!]
def mopRingEquivOp (S : Subsemiring R) : Sᵐᵒᵖ ≃+* S.op 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R)
Goal: ∀ (a : (↥S)ᵐᵒᵖ), ↑(S.mopRingEquivOp a) = MulOpposite.op ↑(MulOpposite.unop a)
-- Subsemiring.mopRingEquivOp_symm_apply
@[simps!]
def mopRingEquivOp (S : Subsemiring R) : Sᵐᵒᵖ ≃+* S.op 
Arguments: {R : Type u_2} [NonAssocSemiring R] (S : Subsemiring R)
Goal: ∀ (a : ↥S.op), S.mopRingEquivOp.symm a = MulOpposite.op (S.addEquivOp.symm a)
-- Unitization.ext
@[ext]
theorem ext {x y : Unitization R A} (h1 : x.fst = y.fst) (h2 : x.snd = y.snd) : x = y 
Arguments: {R : Type u_1} {A : Type u_2} {x y : Unitization R A} (h1 : x.fst = y.fst) (h2 : x.snd = y.snd)
Goal: x = y
-- Unitization.fst_inl
@[simp]
theorem fst_inl [Zero A] (r : R) : (inl r : Unitization R A).fst = r 
Arguments: {R : Type u_1} (A : Type u_2) [Zero A] (r : R)
Goal: (Unitization.inl r).fst = r
-- Unitization.snd_inl
@[simp]
theorem snd_inl [Zero A] (r : R) : (inl r : Unitization R A).snd = 0 
Arguments: {R : Type u_1} (A : Type u_2) [Zero A] (r : R)
Goal: (Unitization.inl r).snd = 0
-- Unitization.fst_inr
@[simp]
theorem fst_inr [Zero R] (a : A) : (a : Unitization R A).fst = 0 
Arguments: (R : Type u_1) {A : Type u_2} [Zero R] (a : A)
Goal: (↑a).fst = 0
-- Unitization.snd_inr
@[simp]
theorem snd_inr [Zero R] (a : A) : (a : Unitization R A).snd = a 
Arguments: (R : Type u_1) {A : Type u_2} [Zero R] (a : A)
Goal: (↑a).snd = a
-- Unitization.inl_injective
theorem inl_injective [Zero A] : Function.Injective (inl : R → Unitization R A) 
Arguments: {R : Type u_1} {A : Type u_2} [Zero A]
Goal: Function.Injective Unitization.inl
-- Unitization.inr_injective
theorem inr_injective [Zero R] : Function.Injective ((↑) : A → Unitization R A) 
Arguments: {R : Type u_1} {A : Type u_2} [Zero R]
Goal: Function.Injective Unitization.inr
-- Unitization.fst_zero
@[simp]
theorem fst_zero [Zero R] [Zero A] : (0 : Unitization R A).fst = 0 
Arguments: {R : Type u_3} {A : Type u_4} [Zero R] [Zero A]
Goal: Unitization.fst 0 = 0
-- Unitization.snd_zero
@[simp]
theorem snd_zero [Zero R] [Zero A] : (0 : Unitization R A).snd = 0 
Arguments: {R : Type u_3} {A : Type u_4} [Zero R] [Zero A]
Goal: Unitization.snd 0 = 0
-- Unitization.fst_add
@[simp]
theorem fst_add [Add R] [Add A] (x₁ x₂ : Unitization R A) : (x₁ + x₂).fst = x₁.fst + x₂.fst 
Arguments: {R : Type u_3} {A : Type u_4} [Add R] [Add A] (x₁ x₂ : Unitization R A)
Goal: (x₁ + x₂).fst = x₁.fst + x₂.fst
-- Unitization.snd_add
@[simp]
theorem snd_add [Add R] [Add A] (x₁ x₂ : Unitization R A) : (x₁ + x₂).snd = x₁.snd + x₂.snd 
Arguments: {R : Type u_3} {A : Type u_4} [Add R] [Add A] (x₁ x₂ : Unitization R A)
Goal: (x₁ + x₂).snd = x₁.snd + x₂.snd
-- Unitization.fst_neg
@[simp]
theorem fst_neg [Neg R] [Neg A] (x : Unitization R A) : (-x).fst = -x.fst 
Arguments: {R : Type u_3} {A : Type u_4} [Neg R] [Neg A] (x : Unitization R A)
Goal: (-x).fst = -x.fst
-- Unitization.snd_neg
@[simp]
theorem snd_neg [Neg R] [Neg A] (x : Unitization R A) : (-x).snd = -x.snd 
Arguments: {R : Type u_3} {A : Type u_4} [Neg R] [Neg A] (x : Unitization R A)
Goal: (-x).snd = -x.snd
-- Unitization.fst_smul
@[simp]
theorem fst_smul [SMul S R] [SMul S A] (s : S) (x : Unitization R A) : (s • x).fst = s • x.fst 
Arguments: {S : Type u_2} {R : Type u_3} {A : Type u_4} [SMul S R] [SMul S A] (s : S) (x : Unitization R A)
Goal: (s • x).fst = s • x.fst
-- Unitization.snd_smul
@[simp]
theorem snd_smul [SMul S R] [SMul S A] (s : S) (x : Unitization R A) : (s • x).snd = s • x.snd 
Arguments: {S : Type u_2} {R : Type u_3} {A : Type u_4} [SMul S R] [SMul S A] (s : S) (x : Unitization R A)
Goal: (s • x).snd = s • x.snd
-- Unitization.inl_zero
@[simp]
theorem inl_zero [Zero R] [Zero A] : (inl 0 : Unitization R A) = 0 
Arguments: {R : Type u_3} (A : Type u_4) [Zero R] [Zero A]
Goal: Unitization.inl 0 = 0
-- Unitization.inl_add
@[simp]
theorem inl_add [Add R] [AddZeroClass A] (r₁ r₂ : R) :
    (inl (r₁ + r₂) : Unitization R A) = inl r₁ + inl r₂ 
Arguments: {R : Type u_3} (A : Type u_4) [Add R] [AddZeroClass A] (r₁ r₂ : R)
Goal: Unitization.inl (r₁ + r₂) = Unitization.inl r₁ + Unitization.inl r₂
-- Unitization.inl_neg
@[simp]
theorem inl_neg [Neg R] [AddGroup A] (r : R) : (inl (-r) : Unitization R A) = -inl r 
Arguments: {R : Type u_3} (A : Type u_4) [Neg R] [AddGroup A] (r : R)
Goal: Unitization.inl (-r) = -Unitization.inl r
-- Unitization.inl_sub
@[simp]
theorem inl_sub [AddGroup R] [AddGroup A] (r₁ r₂ : R) :
    (inl (r₁ - r₂) : Unitization R A) = inl r₁ - inl r₂ 
Arguments: {R : Type u_3} (A : Type u_4) [AddGroup R] [AddGroup A] (r₁ r₂ : R)
Goal: Unitization.inl (r₁ - r₂) = Unitization.inl r₁ - Unitization.inl r₂