Class of grading-preserving functions and isomorphisms #
We define GradedFunLike F π β¬ where π and β¬ represent some sort of grading. This class
assumes FunLike A B where A and B are the underlying types.
We also define GradedEquivLike E π β¬, which is similar to EquivLike, where here e : E is
required to satisfy x β π i β e x β β¬ i.
The class GradedFunLike F π β¬ expresses that terms of type F have an injective coercion to
grading-preserving functions from A to B, where π is a grading on A and β¬ is a grading on
B. This typeclass has [FunLike F A B] as one of the assumptions. This typeclass is used in the
characterisation of certain types of graded homomorphisms, such as GradedRingHom and
GradedAlgHom. For example, what would be called "GradedRingHomClass F π β¬" would be expressed
as [FunLike F A B] [GradedFunLike F π β¬] [RingHomClass F A B].
Instances
A graded map descends to a map on each component.
Equations
- Graded.subtypeMap f i x = β¨f βx, β―β©
Instances For
The class GradedEquivLike E π β¬ says that E is a type of grading-preserving isomorphisms
between π and β¬. It is the combination of GradedFunLike E π β¬ and EquivLike E A B.
Instances
Alias of the forward direction of Graded.map_mem_iff.
Alias of the reverse direction of Graded.map_mem_iff.
A graded isomorphism descends to an isomorphism on each component.
Equations
- Graded.equiv e i = { toFun := Graded.subtypeMap e i, invFun := fun (y : β₯(β¬ i)) => β¨EquivLike.inv e βy, β―β©, left_inv := β―, right_inv := β― }