Documentation

LeanPool.JacobianDiffgeo.CanonicalForms.MForm

MFormData X: raw chart-coefficient families for meromorphic 1-forms (D1–D3, data layer) #

Unit: canonical-forms (docs/design/canonical-forms.md §2 D1–D3, §4.1). Blueprint: "Meromorphic 1-form systems and the canonical divisor K."

MFormData X is the RAW DATA CARRIER for meromorphic 1-forms: the meromorphic analogue of Form1's chart-coefficient API (Jacobian/Forms/Coeffs.lean) and of dbar's Form01 (Jacobian/Dbar/Form01.lean) — a chartAt-indexed family of coefficient functions, junk-zero off the chart target, MeromorphicOn the target (mathlib's unconditional generalization of Form01's ContDiffOn/Form1's AnalyticOnNhd, allowing poles), related on chart overlaps by the CC1-style transition rule coeffAt y z = deriv (chartAt x ∘ (chartAt y).symm) z * coeffAt x (...)no conjugate (a meromorphic 1-form is still type (1,0), unlike Form01's (0,1)-conjugate rule).

Raw equality on MFormData is too fine (meromorphic coefficient functions carry junk values at poles, so "ord = ⊤ everywhere" does not pin the raw values): the ACTUAL meromorphic-1-form type is the quotient RS.MForm X by codiscrete/germ agreement (Quotient.lean, the same CC3 pattern as X := MeroGermOn X univ). Everything in this file is the foundation the quotient descends from.

Main declarations:

A meromorphic 1-form on X: the meromorphic analogue of Form1's coeffIn API and Form01's chart-family structure, generalized to allow poles (D1).

Instances For
    theorem RS.MFormData.ext {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] {θ η : MFormData X} (h : ∀ (x : X), z(chartAt x).target, θ.coeffAt x z = η.coeffAt x z) :
    θ = η

    A meromorphic 1-form is determined by its preferred-chart coefficients on chart targets.

    theorem RS.MFormData.ext_iff {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] {θ η : MFormData X} :
    θ = η ∀ (x : X), z(chartAt x).target, θ.coeffAt x z = η.coeffAt x z
    @[instance_reducible]
    Equations
    • RS.MFormData.instZero = { zero := { coeffAt := fun (x : X) (x_1 : ) => 0, coeffAt_zero_off := , meromorphicOn_coeffAt := , compat := } }
    @[instance_reducible]
    Equations
    • One or more equations did not get rendered due to their size.
    @[instance_reducible]
    Equations
    @[instance_reducible]
    Equations
    • One or more equations did not get rendered due to their size.
    @[instance_reducible]
    Equations
    • One or more equations did not get rendered due to their size.
    @[simp]
    theorem RS.MFormData.coeffAt_add {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] (θ η : MFormData X) (x : X) (z : ) :
    (θ + η).coeffAt x z = θ.coeffAt x z + η.coeffAt x z
    @[simp]
    theorem RS.MFormData.coeffAt_neg {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] (θ : MFormData X) (x : X) (z : ) :
    (-θ).coeffAt x z = -θ.coeffAt x z
    @[simp]
    theorem RS.MFormData.coeffAt_sub {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] (θ η : MFormData X) (x : X) (z : ) :
    (θ - η).coeffAt x z = θ.coeffAt x z - η.coeffAt x z
    @[simp]
    theorem RS.MFormData.coeffAt_smul {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] (c : ) (θ : MFormData X) (x : X) (z : ) :
    (c θ).coeffAt x z = c * θ.coeffAt x z
    @[instance_reducible]
    Equations
    • One or more equations did not get rendered due to their size.
    @[instance_reducible]
    Equations

    D3: constructing MFormData from arbitrary compatible chart data #

    structure RS.MFormCoeffData (X : Type u_2) [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] (ι : Type u_3) :
    Type (max u_2 u_3)

    Compatible meromorphic coefficient data for a meromorphic 1-form, over a covering family of ω-maximal-atlas charts (mirrors Form1CoeffData, MeromorphicOn in place of AnalyticOnNhd).

    Instances For
      noncomputable def RS.MFormCoeffData.idx {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] {ι : Type u_2} (D : MFormCoeffData X ι) (x : X) :
      ι

      A chosen chart index for each point.

      Equations
      Instances For

        The coefficient of the assembled family, read through an arbitrary maximal-atlas chart e', using the per-point chosen index (mirrors Form1CoeffData.toSection, without the bundle layer: MFormData has no covector-bundle backing, so this formula IS the assembled coefficient directly).

        Equations
        Instances For
          theorem RS.MFormCoeffData.rawCoeffAt_eq {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] {ι : Type u_2} (D : MFormCoeffData X ι) {e' : OpenPartialHomeomorph X } (he' : e' IsManifold.maximalAtlas (modelWithCornersSelf ) X) (i : ι) {z : } (hz : z e'.target) (hp : e'.symm z (D.chart i).source) :
          D.rawCoeffAt e' z = deriv ((D.chart i) e'.symm) z * D.coeff i ((D.chart i) (e'.symm z))

          Master computation: rawCoeffAt read through any maximal-atlas chart e', at a point whose base point lies in the i-th chart, equals the i-th coefficient transported by the transition derivative — independent of the internal idx choice, by compat.

          Assemble an MFormData from compatible chart-coefficient data (D3, mirrors Form1.ofCoeffs).

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            theorem RS.MFormData.coeffAt_ofCoeffs {X : Type u_1} [TopologicalSpace X] [ChartedSpace X] [IsManifold (modelWithCornersSelf ) X] {ι : Type u_2} (D : MFormCoeffData X ι) {x : X} {i : ι} (_hx : x (D.chart i).source) {z : } (hz : z (chartAt x) '' ((D.chart i).source (chartAt x).source)) :
            (ofCoeffs D).coeffAt x z = deriv ((D.chart i) (chartAt x).symm) z * D.coeff i ((D.chart i) ((chartAt x).symm z))

            The coefficient of MFormData.ofCoeffs D in the i-th chart of the data, read at a point of the preferred chart at x, is the given coefficient transported by the transition derivative (mirrors Form1.coeffAt_ofCoeffs).