Group actions by isometries #
In this file we define two typeclasses:
IsometricSMul M X
says thatM
multiplicatively acts on a (pseudo extended) metric spaceX
by isometries;IsometricVAdd
is an additive version ofIsometricSMul
.
We also prove basic facts about isometric actions and define bundled isometries
IsometryEquiv.constSMul
, IsometryEquiv.mulLeft
, IsometryEquiv.mulRight
,
IsometryEquiv.divLeft
, IsometryEquiv.divRight
, and IsometryEquiv.inv
, as well as their
additive versions.
If G
is a group, then IsometricSMul G G
means that G
has a left-invariant metric while
IsometricSMul Gᵐᵒᵖ G
means that G
has a right-invariant metric. For a commutative group,
these two notions are equivalent. A group with a right-invariant metric can be also represented as a
NormedGroup
.
An additive action is isometric if each map x ↦ c +ᵥ x
is an isometry.
Instances
A multiplicative action is isometric if each map x ↦ c • x
is an isometry.
Instances
If a group G
acts on X
by isometries, then IsometryEquiv.constSMul
is the isometry of
X
given by multiplication of a constant element of the group.
Equations
- IsometryEquiv.constSMul c = { toEquiv := MulAction.toPerm c, isometry_toFun := ⋯ }
Instances For
If an additive group G
acts on X
by isometries,
then IsometryEquiv.constVAdd
is the isometry of X
given by addition of a constant element of the
group.
Equations
- IsometryEquiv.constVAdd c = { toEquiv := AddAction.toPerm c, isometry_toFun := ⋯ }
Instances For
Multiplication y ↦ x * y
as an IsometryEquiv
.
Equations
- IsometryEquiv.mulLeft c = { toEquiv := Equiv.mulLeft c, isometry_toFun := ⋯ }
Instances For
Addition y ↦ x + y
as an IsometryEquiv
.
Equations
- IsometryEquiv.addLeft c = { toEquiv := Equiv.addLeft c, isometry_toFun := ⋯ }
Instances For
Multiplication y ↦ y * x
as an IsometryEquiv
.
Equations
- IsometryEquiv.mulRight c = { toEquiv := Equiv.mulRight c, isometry_toFun := ⋯ }
Instances For
Addition y ↦ y + x
as an IsometryEquiv
.
Equations
- IsometryEquiv.addRight c = { toEquiv := Equiv.addRight c, isometry_toFun := ⋯ }
Instances For
Division y ↦ y / x
as an IsometryEquiv
.
Equations
- IsometryEquiv.divRight c = { toEquiv := Equiv.divRight c, isometry_toFun := ⋯ }
Instances For
Subtraction y ↦ y - x
as an IsometryEquiv
.
Equations
- IsometryEquiv.subRight c = { toEquiv := Equiv.subRight c, isometry_toFun := ⋯ }
Instances For
Division y ↦ x / y
as an IsometryEquiv
.
Equations
- IsometryEquiv.divLeft c = { toEquiv := Equiv.divLeft c, isometry_toFun := ⋯ }
Instances For
Subtraction y ↦ x - y
as an IsometryEquiv
.
Equations
- IsometryEquiv.subLeft c = { toEquiv := Equiv.subLeft c, isometry_toFun := ⋯ }
Instances For
Inversion x ↦ x⁻¹
as an IsometryEquiv
.
Equations
- IsometryEquiv.inv G = { toEquiv := Equiv.inv G, isometry_toFun := ⋯ }
Instances For
Negation x ↦ -x
as an IsometryEquiv
.
Equations
- IsometryEquiv.neg G = { toEquiv := Equiv.neg G, isometry_toFun := ⋯ }
Instances For
If G
acts isometrically on X
, then the image of a bounded set in X
under scalar
multiplication by c : G
is bounded. See also Bornology.IsBounded.smul₀
for a similar lemma about
normed spaces.
Given an additive isometric action of G
on X
, the image of a bounded set in X
under translation by c : G
is bounded