Documentation

Mathlib.Algebra.Algebra.Opposite

Algebra structures on the multiplicative opposite #

Main definitions #

instance MulOpposite.instAlgebra {R : Type u_1} {A : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] :
Equations
@[simp]
theorem MulOpposite.algebraMap_apply {R : Type u_1} {A : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] (c : R) :
def AlgEquiv.opOp (R : Type u_1) (A : Type u_3) [CommSemiring R] [Semiring A] [Algebra R A] :

An algebra is isomorphic to the opposite of its opposite.

Equations
@[simp]
theorem AlgEquiv.opOp_symm_apply (R : Type u_1) (A : Type u_3) [CommSemiring R] [Semiring A] [Algebra R A] (a✝ : Aᵐᵒᵖᵐᵒᵖ) :
@[simp]
theorem AlgEquiv.opOp_apply (R : Type u_1) (A : Type u_3) [CommSemiring R] [Semiring A] [Algebra R A] (a✝ : A) :
@[simp]
theorem AlgEquiv.toRingEquiv_opOp (R : Type u_1) (A : Type u_3) [CommSemiring R] [Semiring A] [Algebra R A] :
(opOp R A) = RingEquiv.opOp A
def AlgHom.fromOpposite {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (hf : ∀ (x y : A), Commute (f x) (f y)) :

An algebra homomorphism f : A →ₐ[R] B such that f x commutes with f y for all x, y defines an algebra homomorphism from Aᵐᵒᵖ.

Equations
@[simp]
theorem AlgHom.fromOpposite_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (hf : ∀ (x y : A), Commute (f x) (f y)) :
@[simp]
theorem AlgHom.toLinearMap_fromOpposite {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (hf : ∀ (x y : A), Commute (f x) (f y)) :
@[simp]
theorem AlgHom.toRingHom_fromOpposite {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (hf : ∀ (x y : A), Commute (f x) (f y)) :
(f.fromOpposite hf) = (↑f).fromOpposite hf
def AlgHom.toOpposite {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (hf : ∀ (x y : A), Commute (f x) (f y)) :

An algebra homomorphism f : A →ₐ[R] B such that f x commutes with f y for all x, y defines an algebra homomorphism to Bᵐᵒᵖ.

Equations
  • f.toOpposite hf = { toFun := MulOpposite.op f, map_one' := , map_mul' := , map_zero' := , map_add' := , commutes' := }
@[simp]
theorem AlgHom.toOpposite_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (hf : ∀ (x y : A), Commute (f x) (f y)) :
@[simp]
theorem AlgHom.toLinearMap_toOpposite {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (hf : ∀ (x y : A), Commute (f x) (f y)) :
@[simp]
theorem AlgHom.toRingHom_toOpposite {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (hf : ∀ (x y : A), Commute (f x) (f y)) :
(f.toOpposite hf) = (↑f).toOpposite hf
def AlgHom.op {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] :

An algebra hom A →ₐ[R] B can equivalently be viewed as an algebra hom Aᵐᵒᵖ →ₐ[R] Bᵐᵒᵖ. This is the action of the (fully faithful) ᵐᵒᵖ-functor on morphisms.

Equations
  • One or more equations did not get rendered due to their size.
@[simp]
theorem AlgHom.op_symm_apply_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : Aᵐᵒᵖ →ₐ[R] Bᵐᵒᵖ) (a✝ : A) :
@[simp]
theorem AlgHom.op_apply_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) (a✝ : Aᵐᵒᵖ) :
theorem AlgHom.toRingHom_op {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₐ[R] B) :
@[reducible, inline]
abbrev AlgHom.unop {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] :

The 'unopposite' of an algebra hom Aᵐᵒᵖ →ₐ[R] Bᵐᵒᵖ. Inverse to RingHom.op.

Equations
def AlgHom.opComm {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] :

Swap the ᵐᵒᵖ on an algebra hom to the opposite side.

Equations
@[simp]
theorem AlgHom.opComm_symm_apply_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (a✝ : Aᵐᵒᵖ →ₐ[R] B) (a✝¹ : A) :
(opComm.symm a✝) a✝¹ = MulOpposite.op (a✝ (MulOpposite.op a✝¹))
@[simp]
theorem AlgHom.opComm_apply_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (a✝ : A →ₐ[R] Bᵐᵒᵖ) (a✝¹ : Aᵐᵒᵖ) :
(opComm a✝) a✝¹ = MulOpposite.unop (a✝ (MulOpposite.unop a✝¹))
def AlgEquiv.op {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] :

An algebra iso A ≃ₐ[R] B can equivalently be viewed as an algebra iso Aᵐᵒᵖ ≃ₐ[R] Bᵐᵒᵖ. This is the action of the (fully faithful) ᵐᵒᵖ-functor on morphisms.

Equations
  • One or more equations did not get rendered due to their size.
@[simp]
theorem AlgEquiv.op_symm_apply_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : Aᵐᵒᵖ ≃ₐ[R] Bᵐᵒᵖ) (a✝ : A) :
@[simp]
theorem AlgEquiv.op_apply_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ≃ₐ[R] B) (a✝ : Aᵐᵒᵖ) :
(op f) a✝ = MulOpposite.op (f (MulOpposite.unop a✝))
@[simp]
theorem AlgEquiv.op_symm_apply_symm_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : Aᵐᵒᵖ ≃ₐ[R] Bᵐᵒᵖ) (a✝ : B) :
(op.symm f).symm a✝ = MulOpposite.unop ((↑f).symm (MulOpposite.op a✝))
@[simp]
theorem AlgEquiv.op_apply_symm_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ≃ₐ[R] B) (a✝ : Bᵐᵒᵖ) :
(op f).symm a✝ = MulOpposite.op ((↑f).symm (MulOpposite.unop a✝))
theorem AlgEquiv.toAlgHom_op {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ≃ₐ[R] B) :
(op f) = AlgHom.op f
theorem AlgEquiv.toRingEquiv_op {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ≃ₐ[R] B) :
@[reducible, inline]
abbrev AlgEquiv.unop {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] :

The 'unopposite' of an algebra iso Aᵐᵒᵖ ≃ₐ[R] Bᵐᵒᵖ. Inverse to AlgEquiv.op.

Equations
theorem AlgEquiv.toAlgHom_unop {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : Aᵐᵒᵖ ≃ₐ[R] Bᵐᵒᵖ) :
(unop f) = AlgHom.unop f
def AlgEquiv.opComm {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] :

Swap the ᵐᵒᵖ on an algebra isomorphism to the opposite side.

Equations
@[simp]
theorem AlgEquiv.opComm_apply_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (a✝ : A ≃ₐ[R] Bᵐᵒᵖ) (a✝¹ : Aᵐᵒᵖ) :
(opComm a✝) a✝¹ = MulOpposite.unop (a✝ (MulOpposite.unop a✝¹))
@[simp]
theorem AlgEquiv.opComm_symm_apply_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (a✝ : Aᵐᵒᵖ ≃ₐ[R] B) (a✝¹ : A) :
(opComm.symm a✝) a✝¹ = MulOpposite.op (a✝ (MulOpposite.op a✝¹))
@[simp]
theorem AlgEquiv.opComm_apply_symm_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (a✝ : A ≃ₐ[R] Bᵐᵒᵖ) (a✝¹ : B) :
(opComm a✝).symm a✝¹ = (↑refl).symm ((↑((op a✝).trans (opOp R B).symm)).symm a✝¹)
@[simp]
theorem AlgEquiv.opComm_symm_apply_symm_apply {R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (a✝ : Aᵐᵒᵖ ≃ₐ[R] B) (a✝¹ : Bᵐᵒᵖ) :
(opComm.symm a✝).symm a✝¹ = MulOpposite.unop ((↑(refl.trans (a✝.trans (opOp R B)))).symm (MulOpposite.op a✝¹))
def AlgEquiv.toOpposite (R : Type u_1) (A : Type u_3) [CommSemiring R] [CommSemiring A] [Algebra R A] :

A commutative algebra is isomorphic to its opposite.

Equations
@[simp]
theorem AlgEquiv.toOpposite_symm_apply (R : Type u_1) (A : Type u_3) [CommSemiring R] [CommSemiring A] [Algebra R A] (a✝ : Aᵐᵒᵖ) :
@[simp]
theorem AlgEquiv.toOpposite_apply (R : Type u_1) (A : Type u_3) [CommSemiring R] [CommSemiring A] [Algebra R A] (a✝ : A) :
(toOpposite R A) a✝ = MulOpposite.op a✝