Lifting groups with zero along injective/surjective maps #
Pull back a MulZeroClass instance along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.mulZeroClass f hf zero mul = MulZeroClass.mk ⋯ ⋯
Instances For
Push forward a MulZeroClass instance along a surjective function.
See note [reducible non-instances].
Equations
- Function.Surjective.mulZeroClass f hf zero mul = MulZeroClass.mk ⋯ ⋯
Instances For
Pull back a NoZeroDivisors instance along an injective function.
Pull back a MulZeroOneClass instance along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.mulZeroOneClass f hf zero one mul = MulZeroOneClass.mk ⋯ ⋯
Instances For
Push forward a MulZeroOneClass instance along a surjective function.
See note [reducible non-instances].
Equations
- Function.Surjective.mulZeroOneClass f hf zero one mul = MulZeroOneClass.mk ⋯ ⋯
Instances For
Pull back a SemigroupWithZero along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.semigroupWithZero f hf zero mul = SemigroupWithZero.mk ⋯ ⋯
Instances For
Push forward a SemigroupWithZero along a surjective function.
See note [reducible non-instances].
Equations
- Function.Surjective.semigroupWithZero f hf zero mul = SemigroupWithZero.mk ⋯ ⋯
Instances For
Pull back a MonoidWithZero along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.monoidWithZero f hf zero one mul npow = MonoidWithZero.mk ⋯ ⋯
Instances For
Push forward a MonoidWithZero along a surjective function.
See note [reducible non-instances].
Equations
- Function.Surjective.monoidWithZero f hf zero one mul npow = MonoidWithZero.mk ⋯ ⋯
Instances For
Pull back a CommMonoidWithZero along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.commMonoidWithZero f hf zero one mul npow = CommMonoidWithZero.mk ⋯ ⋯
Instances For
Push forward a CommMonoidWithZero along a surjective function.
See note [reducible non-instances].
Equations
- Function.Surjective.commMonoidWithZero f hf zero one mul npow = CommMonoidWithZero.mk ⋯ ⋯
Instances For
Pull back a CancelMonoidWithZero along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.cancelMonoidWithZero f hf zero one mul npow = CancelMonoidWithZero.mk
Instances For
Pull back a CancelCommMonoidWithZero along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.cancelCommMonoidWithZero f hf zero one mul npow = CancelCommMonoidWithZero.mk
Instances For
Pull back a GroupWithZero along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.groupWithZero f hf zero one mul inv div npow zpow = GroupWithZero.mk ⋯ DivInvMonoid.zpow ⋯ ⋯ ⋯ ⋯ ⋯
Instances For
Push forward a GroupWithZero along a surjective function.
See note [reducible non-instances].
Equations
- Function.Surjective.groupWithZero h01 f hf zero one mul inv div npow zpow = GroupWithZero.mk ⋯ DivInvMonoid.zpow ⋯ ⋯ ⋯ ⋯ ⋯
Instances For
Pull back a CommGroupWithZero along an injective function.
See note [reducible non-instances].
Equations
- Function.Injective.commGroupWithZero f hf zero one mul inv div npow zpow = CommGroupWithZero.mk ⋯ GroupWithZero.zpow ⋯ ⋯ ⋯ ⋯ ⋯
Instances For
Push forward a CommGroupWithZero along a surjective function.
See note [reducible non-instances].
Equations
- Function.Surjective.commGroupWithZero h01 f hf zero one mul inv div npow zpow = CommGroupWithZero.mk ⋯ GroupWithZero.zpow ⋯ ⋯ ⋯ ⋯ ⋯