Ring involutions #
This file defines a ring involution as a structure extending R ≃+* Rᵐᵒᵖ,
with the additional fact f.involution : (f (f x).unop).unop = x.
Notations #
We provide a coercion to a function R → Rᵐᵒᵖ.
References #
Tags #
Ring involution
A ring involution
- left_inv : Function.LeftInverse self.invFun self.toFun
- right_inv : Function.RightInverse self.invFun self.toFun
The requirement that the ring homomorphism is its own inverse
Instances For
RingInvoClass F R states that F is a type of ring involutions.
You should extend this class when you extend RingInvo.
Every ring involution must be its own inverse
Instances
Turn an element of a type F satisfying RingInvoClass F R into an actual
RingInvo. This is declared as the default coercion from F to RingInvo R.
Instances For
Any type satisfying RingInvoClass can be cast into RingInvo via
RingInvoClass.toRingInvo.
Equations
Construct a ring involution from a ring homomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The identity function of a CommRing is a ring involution.
Equations
- RingInvo.id R = { toRingEquiv := RingEquiv.toOpposite R, involution' := ⋯ }
Instances For
Equations
- instInhabitedRingInvo R = { default := RingInvo.id R }