Diffeomorphisms #
This file implements diffeomorphisms.
Definitions #
Diffeomorph I I' M M' n:n-times continuously differentiable diffeomorphism betweenMandM'with respect to I and I'; we do not introduce a separate definition for the casen = ∞; we use notation instead.Diffeomorph.toHomeomorph: reinterpret a diffeomorphism as a homeomorphism.ContinuousLinearEquiv.toDiffeomorph: reinterpret a continuous equivalence as a diffeomorphism.ModelWithCorners.transDiffeomorph: compose a givenModelWithCornerswith a diffeomorphism between the old and the new target spaces. Useful, e.g, to turn any finite dimensional manifold into a manifold modelled on a Euclidean space.Diffeomorph.toTransDiffeomorph: the identity diffeomorphism betweenMwith modelIandMwith modelI.trans_diffeomorph e.
Notations #
M ≃ₘ^n⟮I, I'⟯ M':=Diffeomorph I J M N nM ≃ₘ⟮I, I'⟯ M':=Diffeomorph I J M N ⊤E ≃ₘ^n[𝕜] E':=E ≃ₘ^n⟮𝓘(𝕜, E), 𝓘(𝕜, E')⟯ E'E ≃ₘ[𝕜] E':=E ≃ₘ⟮𝓘(𝕜, E), 𝓘(𝕜, E')⟯ E'
Implementation notes #
This notion of diffeomorphism is needed although there is already a notion of structomorphism
because structomorphisms do not allow the model spaces H and H' of the two manifolds to be
different, i.e. for a structomorphism one has to impose H = H' which is often not the case in
practice.
Keywords #
diffeomorphism, manifold
n-times continuously differentiable diffeomorphism between M and M' with respect to I
and I'.
- toFun : M → M'
- invFun : M' → M
- left_inv : Function.LeftInverse self.invFun self.toFun
- right_inv : Function.RightInverse self.invFun self.toFun
- contMDiff_toFun : ContMDiff I I' n ⇑self.toEquiv
- contMDiff_invFun : ContMDiff I' I n ⇑self.symm
Instances For
n-times continuously differentiable diffeomorphism between M and M' with respect to I
and I'.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Infinitely differentiable diffeomorphism between M and M' with respect to I and I'.
Equations
- One or more equations did not get rendered due to their size.
Instances For
n-times continuously differentiable diffeomorphism between E and E'.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Infinitely differentiable diffeomorphism between E and E'.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Interpret a diffeomorphism as a ContMDiffMap.
Instances For
Equations
- Diffeomorph.instCoeDiffeomorphContMDiffMap = { coe := Diffeomorph.toContMDiffMap }
Coercion to function λ h : M ≃ₘ^n⟮I, I'⟯ M', (h : M → M') is injective.
Equations
- (_ : ContinuousMapClass (Diffeomorph I J M N ⊤) M N) = (_ : ContinuousMapClass (Diffeomorph I J M N ⊤) M N)
Identity map as a diffeomorphism.
Equations
- Diffeomorph.refl I M n = { toEquiv := Equiv.refl M, contMDiff_toFun := (_ : ContMDiff I I n id), contMDiff_invFun := (_ : ContMDiff I I n id) }
Instances For
Composition of two diffeomorphisms.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Inverse of a diffeomorphism.
Equations
- Diffeomorph.symm h = { toEquiv := h.symm, contMDiff_toFun := (_ : ContMDiff J I n ⇑h.symm), contMDiff_invFun := (_ : ContMDiff I J n ⇑h.toEquiv) }
Instances For
A diffeomorphism is a homeomorphism.
Equations
- Diffeomorph.toHomeomorph h = Homeomorph.mk h.toEquiv
Instances For
Product of two diffeomorphisms.
Equations
- One or more equations did not get rendered due to their size.
Instances For
M × N is diffeomorphic to N × M.
Equations
- One or more equations did not get rendered due to their size.
Instances For
(M × N) × N' is diffeomorphic to M × (N × N').
Equations
- One or more equations did not get rendered due to their size.
Instances For
A continuous linear equivalence between normed spaces is a diffeomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Apply a diffeomorphism (e.g., a continuous linear equivalence) to the model vector space.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- (_ : SmoothManifoldWithCorners (ModelWithCorners.transDiffeomorph I e) M) = (_ : SmoothManifoldWithCorners (ModelWithCorners.transDiffeomorph I e) M)
The identity diffeomorphism between a manifold with model I and the same manifold
with model I.trans_diffeomorph e.
Equations
- One or more equations did not get rendered due to their size.