Torsors of group actions #
Further results for torsors, that are not in Mathlib/Algebra/AddTorsor/Defs.lean to avoid
increasing imports there.
Dividing by the point p is an injective function.
Subtracting the point p is an injective function.
Dividing the point p by other points is an injective function.
Subtracting a point from the point p is an injective function.
A product of Torsors is a Torsor.
Equations
- Pi.instTorsor = { toMulAction := Pi.mulAction', sdiv := fun (p₁ p₂ : (i : I) → fp i) (i : I) => p₁ i /ₛ p₂ i, nonempty := ⋯, sdiv_smul' := ⋯, smul_sdiv' := ⋯ }
A product of AddTorsors is an AddTorsor.
Equations
- Pi.instAddTorsor = { toAddAction := Pi.addAction', vsub := fun (p₁ p₂ : (i : I) → fp i) (i : I) => p₁ i -ᵥ p₂ i, nonempty := ⋯, vsub_vadd' := ⋯, vadd_vsub' := ⋯ }
Equiv.constVAdd as a homomorphism from Multiplicative G to Equiv.perm P
Equations
- Equiv.constVAddHom G P = { toFun := fun (v : Multiplicative G) => Equiv.constVAdd P (Multiplicative.toAdd v), map_one' := ⋯, map_mul' := ⋯ }
Instances For
Equiv.constSMul as a homomorphism from G to Equiv.perm P
Equations
- Equiv.constSMulHom P = { toFun := fun (v : G) => Equiv.constSMul P v, map_one' := ⋯, map_mul' := ⋯ }
Instances For
x is the only fixed point of pointReflection x. This lemma requires
x + x = y + y ↔ x = y. There is no typeclass to use here, so we add it as an explicit argument.
In the special case of additive commutative groups (as opposed to just additive torsors),
Equiv.pointReflection x coincides with Equiv.subLeft (2 • x).
Pullback of a torsor along an injective map.
Equations
- Function.Injective.torsor f hf smul sdiv = { toMulAction := Function.Injective.mulAction f hf smul, toSDiv := inst✝¹, nonempty := inst✝, sdiv_smul' := ⋯, smul_sdiv' := ⋯ }
Instances For
Pullback of an add torsor along an injective map.
Equations
- Function.Injective.addTorsor f hf smul sdiv = { toAddAction := Function.Injective.addAction f hf smul, toVSub := inst✝¹, nonempty := inst✝, vsub_vadd' := ⋯, vadd_vsub' := ⋯ }
Instances For
Pushforward of a torsor along a surjective map.
Equations
- Function.Surjective.torsor f hf smul sdiv = { toMulAction := Function.Surjective.mulAction f hf smul, toSDiv := inst✝, nonempty := ⋯, sdiv_smul' := ⋯, smul_sdiv' := ⋯ }
Instances For
Pushforward of an add torsor along a surjective map.
Equations
- Function.Surjective.addTorsor f hf smul sdiv = { toAddAction := Function.Surjective.addAction f hf smul, toVSub := inst✝, nonempty := ⋯, vsub_vadd' := ⋯, vadd_vsub' := ⋯ }