Documentation

TauCeti.Geometry.Symplectic.Manifold.TwoForm

Nondegenerate, tame, and compatible two-forms on manifolds #

This file supplies the fiberwise part of a symplectic structure on a smooth manifold. A smooth two-form is nondegenerate when its value on every tangent space is a nondegenerate alternating bilinear form. Such a value is therefore a TauCeti.SymplecticForm, so the pointwise linear theory can be reused without restating it.

Tameness and compatibility with a smooth almost complex structure are kept as unbundled predicates. They are pointwise exactly SymplecticForm.Tames and SymplecticForm.Compatible. In particular, tameness already forces fiberwise nondegeneracy. The constant construction shows that every finite-dimensional symplectic vector space, and especially the standard doubled model, gives a non-vacuous manifold-level example.

Closedness is the separate predicate TauCeti.SmoothForm.IsClosed of TauCeti/Geometry/Manifold/DifferentialForm/Closed.lean, defined through the exterior derivative of the coordinate expressions of the form. A symplectic form on a manifold is a smooth two-form which is both closed and fiberwise nondegenerate; TauCeti.SmoothTwoForm.IsSymplectic bundles the two conditions, and a constant symplectic form on a finite-dimensional vector space is the basic example.

Main declarations #

The definitions follow McDuff--Salamon, J-holomorphic Curves and Symplectic Topology, Section 2.2.

A smooth two-form is fiberwise nondegenerate when its algebraic bilinear form on every tangent space is nondegenerate. Closedness is a separate condition.

Instances For
    theorem TauCeti.SmoothTwoForm.isNondegenerate_iff_separatingLeft {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {form : SmoothTwoForm I M} :
    form.IsNondegenerate ↔ ∀ (x : M) (v : TangentSpace I x), (∀ (w : TangentSpace I x), SmoothBundleForm.eval₂ form x v w = 0) → v = 0

    Fiberwise nondegeneracy in terms of vectors annihilating every vector on the right. For an alternating form this one-sided condition implies the corresponding condition on the other side.

    Fiberwise nondegeneracy says that the null space {v | ∀ w, form x v w = 0} of the form is zero at every point.

    theorem TauCeti.SmoothTwoForm.IsNondegenerate.apply_ne_zero {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {form : SmoothTwoForm I M} [Nontrivial E] (h : form.IsNondegenerate) (x : M) :
    ↑form x ≠ 0

    On a manifold of positive dimension, a fiberwise nondegenerate smooth two-form vanishes nowhere.

    The negative of a fiberwise nondegenerate smooth two-form is fiberwise nondegenerate.

    A smooth two-form is symplectic when it is closed and fiberwise nondegenerate. This is the manifold-level notion of a symplectic form; a symplectic manifold is a manifold carrying one.

    Instances For

      A fiberwise nondegenerate smooth two-form gives a symplectic form on each tangent space.

      Instances For
        @[simp]
        theorem TauCeti.SmoothTwoForm.IsNondegenerate.symplecticFormAt_apply {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {form : SmoothTwoForm I M} (h : form.IsNondegenerate) (x : M) (v w : TangentSpace I x) :
        (fun (v w : TangentSpace I x) => ((h.symplecticFormAt x).toBilinForm v) w) v w = SmoothBundleForm.eval₂ form x v w

        The tangent-space symplectic form evaluates as the original smooth two-form.

        A fiberwise nondegenerate two-form is nondegenerate on the tangent space at each point.

        theorem TauCeti.SmoothTwoForm.inChartAt_extChartAt_self_nondegenerate {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] (form : SmoothTwoForm I M) {x : M} (hnd : (SmoothForm.bilinFormAt form x).Nondegenerate) (v : E) :
        (∀ (w : E), (RoughForm.inChartAt (↑form) x (↑(extChartAt I x) x)) ![v, w] = 0) → v = 0

        A two-form nondegenerate at x has a nondegenerate coordinate expression in the preferred chart at x, at the chart point of x.

        The bilinear form underlying the tangent-space symplectic form is the value of the two-form.

        theorem TauCeti.SmoothTwoForm.IsNondegenerate.symplecticFormAt_transport {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {E₂ : Type u_4} {H₂ : Type u_5} [NormedAddCommGroup E₂] [NormedSpace ℝ E₂] [TopologicalSpace H₂] {I₂ : ModelWithCorners ℝ E₂ H₂} {M₂ : Type u_6} [TopologicalSpace M₂] [ChartedSpace H₂ M₂] [IsManifold I₂ (↑⊤) M₂] {σ : SmoothTwoForm I M} {σ₂ : SmoothTwoForm I₂ M₂} (hσ : σ.IsNondegenerate) {hσ₂ : σ₂.IsNondegenerate} (ψ : Diffeomorph I I₂ M M₂ ↑⊤) (hψ : (SmoothForm.mpullback ⇑ψ ⋯) σ₂ = σ) (y : M) :

        At every point, the differential of a diffeomorphism pulling σ₂ back to σ transports the tangent-space symplectic form of σ to that of σ₂.

        theorem TauCeti.SmoothTwoForm.IsNondegenerate.isNondegenerate_mpullback_of_isLocalDiffeomorph {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {E₂ : Type u_4} {H₂ : Type u_5} [NormedAddCommGroup E₂] [NormedSpace ℝ E₂] [TopologicalSpace H₂] {I₂ : ModelWithCorners ℝ E₂ H₂} {M₂ : Type u_6} [TopologicalSpace M₂] [ChartedSpace H₂ M₂] [IsManifold I₂ (↑⊤) M₂] {σ : SmoothTwoForm I M} (hσ : σ.IsNondegenerate) {f : M₂ → M} (hf : IsLocalDiffeomorph I₂ I (↑⊤) f) :

        A local diffeomorphism, such as a diffeomorphism, pulls a nondegenerate form back to a nondegenerate form.

        theorem IsLocalDiffeomorph.isNondegenerate_mpullback_iff {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {E₂ : Type u_4} {H₂ : Type u_5} [NormedAddCommGroup E₂] [NormedSpace ℝ E₂] [TopologicalSpace H₂] {I₂ : ModelWithCorners ℝ E₂ H₂} {M₂ : Type u_6} [TopologicalSpace M₂] [ChartedSpace H₂ M₂] [IsManifold I₂ (↑⊤) M₂] {σ : TauCeti.SmoothTwoForm I M} {f : M₂ → M} (hf : IsLocalDiffeomorph I₂ I (↑⊤) f) (hsurj : Function.Surjective f) :

        A surjective local diffeomorphism, such as the projection of a covering space, pulls a two-form back to a nondegenerate form exactly when the form is nondegenerate.

        theorem IsLocalDiffeomorph.isSymplectic_mpullback_iff {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {E₂ : Type u_4} {H₂ : Type u_5} [NormedAddCommGroup E₂] [NormedSpace ℝ E₂] [TopologicalSpace H₂] {I₂ : ModelWithCorners ℝ E₂ H₂} {M₂ : Type u_6} [TopologicalSpace M₂] [ChartedSpace H₂ M₂] [IsManifold I₂ (↑⊤) M₂] {σ : TauCeti.SmoothTwoForm I M} {f : M₂ → M} (hf : IsLocalDiffeomorph I₂ I (↑⊤) f) (hsurj : Function.Surjective f) :

        A surjective local diffeomorphism, such as the projection of a covering space, pulls a two-form back to a symplectic form exactly when the form is symplectic.

        theorem TauCeti.SmoothTwoForm.isNondegenerate_iff_forall_ker_bilinFormAt_mpullback {E : Type u_4} {H : Type u_5} {Z : Type u_6} {E' : Type u_7} {H' : Type u_8} {Q : Type u_9} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace Z] [ChartedSpace H Z] [IsManifold I (↑⊤) Z] [NormedAddCommGroup E'] [NormedSpace ℝ E'] [TopologicalSpace H'] {J : ModelWithCorners ℝ E' H'} [TopologicalSpace Q] [ChartedSpace H' Q] [IsManifold J (↑⊤) Q] {p : Z → Q} {η : SmoothTwoForm J Q} (hp : ContMDiff I J (↑⊤) p) (hsurj : Function.Surjective p) (hdp : ∀ (z : Z), Function.Surjective ⇑(mfderiv% p z)) :
        η.IsNondegenerate ↔ ∀ (z : Z), LinearMap.ker (((SmoothForm.mpullback p hp) η).bilinFormAt z) = (↑(mfderiv% p z)).ker

        For a surjective p with surjective derivatives, η is nondegenerate exactly when, at every point z, the null space of the pullback p^* η is the kernel of the derivative of p.

        theorem TauCeti.SmoothTwoForm.isSymplectic_iff_of_mpullback_eq {E : Type u_4} {H : Type u_5} {Z : Type u_6} {E' : Type u_7} {H' : Type u_8} {Q : Type u_9} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace Z] [ChartedSpace H Z] [IsManifold I (↑⊤) Z] [NormedAddCommGroup E'] [NormedSpace ℝ E'] [TopologicalSpace H'] {J : ModelWithCorners ℝ E' H'} [TopologicalSpace Q] [ChartedSpace H' Q] [IsManifold J (↑⊤) Q] {p : Z → Q} {σ : SmoothTwoForm I Z} {η : SmoothTwoForm J Q} (hp : ContMDiff I J (↑⊤) p) (hsurj : Function.Surjective p) (hdp : ∀ (z : Z), Function.Surjective ⇑(mfderiv% p z)) (hη : (SmoothForm.mpullback p hp) η = σ) :
        η.IsSymplectic ↔ SmoothForm.IsClosed σ ∧ ∀ (z : Z), LinearMap.ker (SmoothForm.bilinFormAt σ z) = (↑(mfderiv% p z)).ker

        Symplectic forms through a smooth surjection. If p is a surjective smooth map with surjective derivatives and p^* η = σ, then η is symplectic exactly when σ is closed and its null space at every point is the kernel of the derivative of p.

        A smooth two-form tames a smooth almost complex structure when form_x(v, J_x v) > 0 for every nonzero tangent vector.

        Instances For
          theorem TauCeti.SmoothTwoForm.tames_iff {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {form : SmoothTwoForm I M} {J : SmoothAlmostComplexStructure I M} :
          form.Tames J ↔ ∀ (x : M) (v : TangentSpace I x), v ≠ 0 → 0 < SmoothBundleForm.eval₂ form x v ((fun (x : M) => ⇑(J.toEndomorphism x)) x v)

          Tameness is positivity on each nonzero tangent vector and its complex rotation.

          Manifold-level tameness is the pointwise linear tameness condition once nondegeneracy has identified each tangent-space form as a SymplecticForm.

          A tame smooth two-form is fiberwise nondegenerate.

          A smooth two-form is invariant under a smooth almost complex structure when applying the structure in both tangent arguments leaves the form unchanged.

          Instances For
            theorem TauCeti.SmoothTwoForm.invariant_iff {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {form : SmoothTwoForm I M} {J : SmoothAlmostComplexStructure I M} :
            form.Invariant J ↔ ∀ (x : M) (v w : TangentSpace I x), SmoothBundleForm.eval₂ form x ((fun (x : M) => ⇑(J.toEndomorphism x)) x v) ((fun (x : M) => ⇑(J.toEndomorphism x)) x w) = SmoothBundleForm.eval₂ form x v w

            Invariance is preservation of the form on each tangent fibre.

            theorem TauCeti.SmoothTwoForm.Invariant.apply {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {form : SmoothTwoForm I M} {J : SmoothAlmostComplexStructure I M} (h : form.Invariant J) (x : M) (v w : TangentSpace I x) :
            SmoothBundleForm.eval₂ form x ((fun (x : M) => ⇑(J.toEndomorphism x)) x v) ((fun (x : M) => ⇑(J.toEndomorphism x)) x w) = SmoothBundleForm.eval₂ form x v w

            Apply invariance at a point and two tangent vectors.

            Manifold-level invariance is the pointwise linear invariance condition once nondegeneracy has identified each tangent-space form as a SymplecticForm.

            Compatibility is the conjunction of invariance and tameness. Neither relation is stored in the smooth two-form or almost complex structure.

            • invariant : form.Invariant J

              Applying the almost complex structure in both entries preserves the two-form.

            • tames : form.Tames J

              The two-form is positive on every complex line.

            Instances For

              Compatibility implies fiberwise nondegeneracy.

              Manifold-level compatibility is compatibility of the induced linear pair on every tangent space.

              Manifold-level compatibility gives the existing compatible-pair structure on each tangent space.

              A symplectic form on a finite-dimensional normed vector space, regarded as a constant smooth two-form on the corresponding model manifold.

              Instances For
                @[simp]
                theorem TauCeti.SymplecticForm.constSmooth_apply {V : Type u_4} [NormedAddCommGroup V] [NormedSpace ℝ V] [FiniteDimensional ℝ V] (omegaForm : SymplecticForm V) (x v w : V) :
                SmoothBundleForm.eval₂ omegaForm.constSmooth x v w = (fun (v w : V) => (omegaForm.toBilinForm v) w) v w

                A constant smooth symplectic form evaluates as its defining algebraic form.

                Under the canonical identification of a self-model tangent fiber with the model space, evaluating a constant smooth symplectic form is evaluating its defining bilinear form.

                theorem TauCeti.SymplecticForm.eval₂_constSmooth_mfderiv_eq {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] {V : Type u_4} [NormedAddCommGroup V] [NormedSpace ℝ V] [FiniteDimensional ℝ V] (omegaForm : SymplecticForm V) (f : M → V) (x : M) (v w : TangentSpace I x) :
                SmoothBundleForm.eval₂ omegaForm.constSmooth (f x) ((mfderiv% f x) v) ((mfderiv% f x) w) = (fun (v w : V) => (omegaForm.toBilinForm v) w) ((d% f x) v) ((d% f x) w)

                Evaluating the constant smooth two-form omegaForm.constSmooth on mfderiv of a model-valued map agrees with evaluating omegaForm directly on mvfderiv.

                @[simp]

                A constant smooth symplectic form is fiberwise nondegenerate.

                @[simp]

                On every tangent fiber, the symplectic form of a constant smooth symplectic form is the defining algebraic form.

                A constant smooth symplectic form is closed.

                A symplectic vector space is a symplectic manifold: a constant smooth symplectic form is symplectic.

                @[simp]

                Tameness of a pair of constant smooth structures is exactly tameness of the underlying linear pair.

                @[simp]

                Invariance of a pair of constant smooth structures is exactly invariance of the underlying linear pair.

                @[simp]

                Compatibility of a pair of constant smooth structures is exactly compatibility of the underlying linear pair.

                theorem TauCeti.SmoothTwoForm.mpullback_constSmooth_eq_mpullback_subtype_val_iff {E : Type u_1} {H : Type u_2} {M : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [TopologicalSpace H] {I : ModelWithCorners ℝ E H} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (↑⊤) M] {F : Type u_4} [NormedAddCommGroup F] [NormedSpace ℝ F] [FiniteDimensional ℝ F] (form : SmoothTwoForm I M) (form₀ : SymplecticForm F) (chart : PartialDiffeomorph I (modelWithCornersSelf ℝ F) M F ↑⊤) :
                (SmoothForm.mpullback (fun (x : ↥{ carrier := chart.source, is_open' := ⋯ }) => ↑chart.toPartialEquiv ↑x) ⋯) form₀.constSmooth = (SmoothForm.mpullback Subtype.val ⋯) form ↔ ∀ x ∈ chart.source, ∀ (v w : TangentSpace I x), SmoothBundleForm.eval₂ form x v w = (fun (v w : F) => (form₀.toBilinForm v) w) ((d% ↑chart.toPartialEquiv x) v) ((d% ↑chart.toPartialEquiv x) w)

                A partial diffeomorphism chart : M → F pulls the constant smooth form form₀.constSmooth back to the restriction of form on the open submanifold chart.source if and only if form agrees pointwise on chart.source with form₀ pulled back by mvfderiv I chart.