File: Mathlib/Algebra/Ring/Subsemiring/MulOpposite.lean

full_name: Subsemiring.op
code: /-- Pull a subsemiring back to an opposite subsemiring along `MulOpposite.unop` -/
@[simps toSubmonoid]
protected def op (S : Subsemiring R) : Subsemiring Rᵐᵒᵖ 
goal: Subsemiring Rᵐᵒᵖ

full_name: Subsemiring.op_toSubmonoid
code: /-- Pull a subsemiring back to an opposite subsemiring along `MulOpposite.unop` -/
@[simps toSubmonoid]
protected def op (S : Subsemiring R) : Subsemiring Rᵐᵒᵖ 
goal: S.op.toSubmonoid = S.op

full_name: Subsemiring.op_coe
code: @[simp, norm_cast]
theorem op_coe (S : Subsemiring R) : S.op = MulOpposite.unop ⁻¹' (S : Set R) 
goal: ↑S.op = MulOpposite.unop ⁻¹' ↑S

full_name: Subsemiring.mem_op
code: @[simp]
theorem mem_op {x : Rᵐᵒᵖ} {S : Subsemiring R} : x ∈ S.op ↔ x.unop ∈ S 
goal: x ∈ S.op ↔ MulOpposite.unop x ∈ S

full_name: Subsemiring.unop_toSubmonoid
code: /-- Pull an opposite subsemiring back to a subsemiring along `MulOpposite.op` -/
@[simps toSubmonoid]
protected def unop (S : Subsemiring Rᵐᵒᵖ) : Subsemiring R 
goal: S.unop.toSubmonoid = S.unop

full_name: Subsemiring.unop
code: /-- Pull an opposite subsemiring back to a subsemiring along `MulOpposite.op` -/
@[simps toSubmonoid]
protected def unop (S : Subsemiring Rᵐᵒᵖ) : Subsemiring R 
goal: Subsemiring R

full_name: Subsemiring.unop_coe
code: @[simp, norm_cast]
theorem unop_coe (S : Subsemiring Rᵐᵒᵖ) : S.unop = MulOpposite.op ⁻¹' (S : Set Rᵐᵒᵖ) 
goal: ↑S.unop = MulOpposite.op ⁻¹' ↑S

full_name: Subsemiring.mem_unop
code: @[simp]
theorem mem_unop {x : R} {S : Subsemiring Rᵐᵒᵖ} : x ∈ S.unop ↔ MulOpposite.op x ∈ S 
goal: x ∈ S.unop ↔ MulOpposite.op x ∈ S

full_name: Subsemiring.unop_op
code: @[simp]
theorem unop_op (S : Subsemiring R) : S.op.unop = S 
goal: S.op.unop = S

full_name: Subsemiring.op_unop
code: @[simp]
theorem op_unop (S : Subsemiring Rᵐᵒᵖ) : S.unop.op = S 
goal: S.unop.op = S

full_name: Subsemiring.op_le_iff
code: theorem op_le_iff {S₁ : Subsemiring R} {S₂ : Subsemiring Rᵐᵒᵖ} : S₁.op ≤ S₂ ↔ S₁ ≤ S₂.unop 
goal: S₁.op ≤ S₂ ↔ S₁ ≤ S₂.unop

full_name: Subsemiring.le_op_iff
code: theorem le_op_iff {S₁ : Subsemiring Rᵐᵒᵖ} {S₂ : Subsemiring R} : S₁ ≤ S₂.op ↔ S₁.unop ≤ S₂ 
goal: S₁ ≤ S₂.op ↔ S₁.unop ≤ S₂

full_name: Subsemiring.op_le_op_iff
code: @[simp]
theorem op_le_op_iff {S₁ S₂ : Subsemiring R} : S₁.op ≤ S₂.op ↔ S₁ ≤ S₂ 
goal: S₁.op ≤ S₂.op ↔ S₁ ≤ S₂

full_name: Subsemiring.unop_le_unop_iff
code: @[simp]
theorem unop_le_unop_iff {S₁ S₂ : Subsemiring Rᵐᵒᵖ} : S₁.unop ≤ S₂.unop ↔ S₁ ≤ S₂ 
goal: S₁.unop ≤ S₂.unop ↔ S₁ ≤ S₂

full_name: Subsemiring.opEquiv_symm_apply
code: /-- A subsemiring `S` of `R` determines a subsemiring `S.op` of the opposite ring `Rᵐᵒᵖ`. -/
@[simps]
def opEquiv : Subsemiring R ≃o Subsemiring Rᵐᵒᵖ 
goal: (RelIso.symm Subsemiring.opEquiv) S = S.unop

full_name: Subsemiring.opEquiv
code: /-- A subsemiring `S` of `R` determines a subsemiring `S.op` of the opposite ring `Rᵐᵒᵖ`. -/
@[simps]
def opEquiv : Subsemiring R ≃o Subsemiring Rᵐᵒᵖ 
goal: Subsemiring R ≃o Subsemiring Rᵐᵒᵖ

full_name: Subsemiring.opEquiv_apply
code: /-- A subsemiring `S` of `R` determines a subsemiring `S.op` of the opposite ring `Rᵐᵒᵖ`. -/
@[simps]
def opEquiv : Subsemiring R ≃o Subsemiring Rᵐᵒᵖ 
goal: Subsemiring.opEquiv S = S.op

full_name: Subsemiring.op_bot
code: @[simp]
theorem op_bot : (⊥ : Subsemiring R).op = ⊥ 
goal: ⊥.op = ⊥

full_name: Subsemiring.unop_bot
code: @[simp]
theorem unop_bot : (⊥ : Subsemiring Rᵐᵒᵖ).unop = ⊥ 
goal: ⊥.unop = ⊥

full_name: Subsemiring.op_top
code: @[simp]
theorem op_top : (⊤ : Subsemiring R).op = ⊤ 
goal: ⊤.op = ⊤

full_name: Subsemiring.unop_top
code: @[simp]
theorem unop_top : (⊤ : Subsemiring Rᵐᵒᵖ).unop = ⊤ 
goal: ⊤.unop = ⊤

full_name: Subsemiring.op_sup
code: theorem op_sup (S₁ S₂ : Subsemiring R) : (S₁ ⊔ S₂).op = S₁.op ⊔ S₂.op 
goal: (S₁ ⊔ S₂).op = S₁.op ⊔ S₂.op

full_name: Subsemiring.unop_sup
code: theorem unop_sup (S₁ S₂ : Subsemiring Rᵐᵒᵖ) : (S₁ ⊔ S₂).unop = S₁.unop ⊔ S₂.unop 
goal: (S₁ ⊔ S₂).unop = S₁.unop ⊔ S₂.unop

full_name: Subsemiring.op_inf
code: theorem op_inf (S₁ S₂ : Subsemiring R) : (S₁ ⊓ S₂).op = S₁.op ⊓ S₂.op 
goal: (S₁ ⊓ S₂).op = S₁.op ⊓ S₂.op

full_name: Subsemiring.unop_inf
code: theorem unop_inf (S₁ S₂ : Subsemiring Rᵐᵒᵖ) : (S₁ ⊓ S₂).unop = S₁.unop ⊓ S₂.unop 
goal: (S₁ ⊓ S₂).unop = S₁.unop ⊓ S₂.unop

full_name: Subsemiring.op_sSup
code: theorem op_sSup (S : Set (Subsemiring R)) : (sSup S).op = sSup (.unop ⁻¹' S) 
goal: (sSup S).op = sSup (Subsemiring.unop ⁻¹' S)

full_name: Subsemiring.unop_sSup
code: theorem unop_sSup (S : Set (Subsemiring Rᵐᵒᵖ)) : (sSup S).unop = sSup (.op ⁻¹' S) 
goal: (sSup S).unop = sSup (Subsemiring.op ⁻¹' S)

full_name: Subsemiring.op_sInf
code: theorem op_sInf (S : Set (Subsemiring R)) : (sInf S).op = sInf (.unop ⁻¹' S) 
goal: (sInf S).op = sInf (Subsemiring.unop ⁻¹' S)

full_name: Subsemiring.unop_sInf
code: theorem unop_sInf (S : Set (Subsemiring Rᵐᵒᵖ)) : (sInf S).unop = sInf (.op ⁻¹' S) 
goal: (sInf S).unop = sInf (Subsemiring.op ⁻¹' S)

full_name: Subsemiring.op_iSup
code: theorem op_iSup (S : ι → Subsemiring R) : (iSup S).op = ⨆ i, (S i).op 
goal: (iSup S).op = ⨆ i, (S i).op

full_name: Subsemiring.unop_iSup
code: theorem unop_iSup (S : ι → Subsemiring Rᵐᵒᵖ) : (iSup S).unop = ⨆ i, (S i).unop 
goal: (iSup S).unop = ⨆ i, (S i).unop

full_name: Subsemiring.op_iInf
code: theorem op_iInf (S : ι → Subsemiring R) : (iInf S).op = ⨅ i, (S i).op 
goal: (iInf S).op = ⨅ i, (S i).op

full_name: Subsemiring.unop_iInf
code: theorem unop_iInf (S : ι → Subsemiring Rᵐᵒᵖ) : (iInf S).unop = ⨅ i, (S i).unop 
goal: (iInf S).unop = ⨅ i, (S i).unop

full_name: Subsemiring.op_closure
code: theorem op_closure (s : Set R) : (closure s).op = closure (MulOpposite.unop ⁻¹' s) 
goal: (Subsemiring.closure s).op = Subsemiring.closure (MulOpposite.unop ⁻¹' s)

full_name: Subsemiring.unop_closure
code: theorem unop_closure (s : Set Rᵐᵒᵖ) : (closure s).unop = closure (MulOpposite.op ⁻¹' s) 
goal: (Subsemiring.closure s).unop = Subsemiring.closure (MulOpposite.op ⁻¹' s)

full_name: Subsemiring.addEquivOp
code: /-- Bijection between a subsemiring `S` and its opposite. -/
@[simps!]
def addEquivOp (S : Subsemiring R) : S ≃+ S.op 
goal: ↥S ≃+ ↥S.op

full_name: Subsemiring.addEquivOp_symm_apply_coe
code: /-- Bijection between a subsemiring `S` and its opposite. -/
@[simps!]
def addEquivOp (S : Subsemiring R) : S ≃+ S.op 
goal: ↑(S.addEquivOp.symm b) = MulOpposite.unop ↑b

full_name: Subsemiring.addEquivOp_apply_coe
code: /-- Bijection between a subsemiring `S` and its opposite. -/
@[simps!]
def addEquivOp (S : Subsemiring R) : S ≃+ S.op 
goal: ↑(S.addEquivOp a) = MulOpposite.op ↑a

full_name: Subsemiring.ringEquivOpMop_symm_apply_coe
code: /-- Bijection between a subsemiring `S` and `MulOpposite` of its opposite. -/
@[simps!]
def ringEquivOpMop (S : Subsemiring R) : S ≃+* (S.op)ᵐᵒᵖ 
goal: ∀ (a : (↥S.op)ᵐᵒᵖ), ↑(S.ringEquivOpMop.symm a) = MulOpposite.unop ↑(MulOpposite.unop a)

full_name: Subsemiring.ringEquivOpMop_apply
code: /-- Bijection between a subsemiring `S` and `MulOpposite` of its opposite. -/
@[simps!]
def ringEquivOpMop (S : Subsemiring R) : S ≃+* (S.op)ᵐᵒᵖ 
goal: ∀ (a : ↥S), S.ringEquivOpMop a = MulOpposite.op (S.addEquivOp a)

full_name: Subsemiring.ringEquivOpMop
code: /-- Bijection between a subsemiring `S` and `MulOpposite` of its opposite. -/
@[simps!]
def ringEquivOpMop (S : Subsemiring R) : S ≃+* (S.op)ᵐᵒᵖ 
goal: ↥S ≃+* (↥S.op)ᵐᵒᵖ

full_name: Subsemiring.mopRingEquivOp_apply_coe
code: /-- Bijection between `MulOpposite` of a subsemiring `S` and its opposite. -/
@[simps!]
def mopRingEquivOp (S : Subsemiring R) : Sᵐᵒᵖ ≃+* S.op 
goal: ∀ (a : (↥S)ᵐᵒᵖ), ↑(S.mopRingEquivOp a) = MulOpposite.op ↑(MulOpposite.unop a)

full_name: Subsemiring.mopRingEquivOp_symm_apply
code: /-- Bijection between `MulOpposite` of a subsemiring `S` and its opposite. -/
@[simps!]
def mopRingEquivOp (S : Subsemiring R) : Sᵐᵒᵖ ≃+* S.op 
goal: ∀ (a : ↥S.op), S.mopRingEquivOp.symm a = MulOpposite.op (S.addEquivOp.symm a)

full_name: Subsemiring.mopRingEquivOp
code: /-- Bijection between `MulOpposite` of a subsemiring `S` and its opposite. -/
@[simps!]
def mopRingEquivOp (S : Subsemiring R) : Sᵐᵒᵖ ≃+* S.op 
goal: (↥S)ᵐᵒᵖ ≃+* ↥S.op