residue-theorem: the ℙ¹ base case — atoms (file 1/1, PARTIAL DELIVERY) #
Unit: residue-theorem (docs/design/residue-theorem.md §6, docs/design/form-trace-tower.md
§RationalOnP1). Target headline: ∑ᶠ p, θ.resAt p = 0 for θ : MForm (OnePoint ℂ), as the
genus-0 base case feeding the general-X reduction via a nonconstant map to ℙ¹ (design §6).
Status: the headline theorem is NOT proved here — read this note before building on this
file. What follows is a complete (no open goals anywhere), independently useful collection of
atoms toward
it, plus an honest account of the one remaining gap and how to close it. See Jacobian/ ResidueTheorem.lean (unit root) for the full write-up of what is/isn't delivered and why.
What IS built, zero sorries #
RS.P1.formOfCoeFn: packages an arbitrary meromorphic "coefficient in the finite chart" functionR : ℂ → ℂinto a genuineMFormData (OnePoint ℂ), given that itsinvChart-transported readingfun w => -(w²)⁻¹ * R w⁻¹is also meromorphic. The two-chartcompatcheck reduces to "apply the transition rule twice returns to the start", independent of whatRis.RS.P1.coeffAt_coe_eq_coeffAt_coe: anyMFormData (OnePoint ℂ)'s finite-chart coefficient is the same raw function at every finite basepoint (all ofℙ¹'s finite points sharecoeChart).- The Liouville-free residue-at-infinity fact (
RS.P1.circleIntegral_inv_eq_neg+RS.P1.resAt_neg_sq_inv_mul_comp_inv_eq_zero): forR_middifferentiable on all ofℂ, the residue "at infinity" of itsinvChartreading vanishes — via Cauchy's theorem (an entire function's circle integral is0at every radius) transported through thez ↦ z⁻¹reindexing of the contour, NOT a polynomial-growth/degree argument. This is the "Liouville" ingredient the task brief anticipated, done more cheaply than the growth-bound route the non-quotientform-trace-towerdesign had budgeted for. RS.P1.meromorphicAt_neg_sq_inv_mul_sub_inv_zpow/RS.P1.resAt_neg_sq_inv_mul_sub_inv_zpow: the "companion pole at∞" bookkeeping for a single principal-part monomial(w⁻¹ - a) ^ k(k < 0) — meromorphic at0, with residue-1for the simple polek = -1(Miranda's "dz/(z-a)has residues1ataand-1at∞") and0otherwise.
What is NOT built: the assembly, and why (read before attempting it) #
The intended proof: extract θ's finite-chart coefficient R, subtract the finite sum of its
principal parts at its finitely many finite poles (RS.principalPartAt, already built) to get a
remainder R_mid, apply the Liouville-free fact above to conclude the remainder's residue at ∞
vanishes, then telescope (the tail's own residue at ∞ is exactly minus the sum of residues it
reproduces at the finite poles it was built to match, by resAt_neg_sq_inv_mul_sub_inv_zpow).
The blocker, found late and not resolved in the time available:
resAt_neg_sq_inv_mul_comp_inv_eq_zero
needs R_mid genuinely Differentiable ℂ — but R_mid := R - R_tail is built from MeromorphicAt
data, whose junk convention at a pole/removable point does not force the value there to match
the analytic-repair limit (MeromorphicAt f x with witness order n > 0 puts no constraint on
f x at all, since it is multiplied by (x - x) ^ n = 0). So R_mid, built by bare pointwise
subtraction, may fail to be continuous at the finitely many points of θ's pole set even though
its order is ≥ 0 there (checked and proved separately, via MeromorphicAt.orderAt_sub_ principalPartAt_nonneg + a Finset.analyticAt_fun_sum argument — that part of the assembly DID
work, it is only the final "hence Differentiable ℂ, hence apply the Liouville-free fact" step
that does not follow as stated). Two fixes, either workable, neither attempted:
(a) weaken resAt_neg_sq_inv_mul_comp_inv_eq_zero to take an explicit radius R₀ with
R_mid differentiable only on closedBall 0 R₀ \ {0} for R₀ small enough to exclude the
(finite) pole set — the circle-integral argument only ever needs one such disk, and resAt at 0
doesn't care which; or (b) repair R_mid first (canonical-forms' MeroGermOn.holoRepr-style
construction, already used elsewhere in this project, e.g. MForm.d) to an honestly continuous
representative before invoking Cauchy's theorem. Route (a) is probably the smaller patch — the
Set.Finite/Metric "there is a positive radius smaller than the nearest nonzero pole" lemma is
routine, and every other piece of the assembly (the finite-pole-sum construction, the order-≥0
argument, the θ.coeffAt ∞ transition formula, the finite pole set extraction from θ.divisor)
was fully worked out and test-compiled during this build and is recorded in this design's build
notes for the next attempt; none of it is included here as code because it was written against the
now-known-insufficient Differentiable ℂ R_mid hypothesis and would need re-threading through
whichever fix is chosen.
The chart-coefficient family assembled from a "finite-chart" function R, forced to be a
genuine MFormData (OnePoint ℂ) by requiring its invChart reading (the transition-rule image)
to also be meromorphic. The two-chart compat check is a single "apply the transition rule twice
returns to the start" computation, independent of what R is.
Equations
Instances For
The coeChart reading of an MFormData (OnePoint ℂ) is the same function for every finite
basepoint (ℙ¹'s finite points all share the identical coeChart, and compat with the
identity transition forces literal equality of the raw functions, not just a germ agreement).
The Liouville-free "residue at infinity of an entire function vanishes" fact #
Circle integral under z ↦ z⁻¹ reindexing: reading the same integrand through the inversion
at reciprocal radius reverses orientation (a -1 sign), the classical "residue at infinity"
substitution, via circleMap_zero_inv + a period-shift of the parametrizing integral.
The Liouville-free key fact. The residue "at infinity" (i.e. the residue at 0 of the
invChart-transported reading -(w²)⁻¹ R_mid w⁻¹) of an ENTIRE R_mid always vanishes: Cauchy's
theorem gives R_mid's own circle integral 0 at every radius, and circleIntegral_inv_eq_neg
transports this to the transported reading's circle integral at every (reciprocal) radius, hence
its residue is 0. No polynomial-growth/degree bookkeeping needed anywhere.
The finite-pole/z⁻¹ compatibility of principalPartAt's monomials #
Each monomial (w⁻¹ - a) ^ k composed with the inversion, weighted by the dz ↦ dw factor
-(w²)⁻¹, is meromorphic at 0 (the "companion pole at ∞" bookkeeping): the closed form
-(1 - a w) ^ k * w ^ (-k - 2) shows it directly, for any a : ℂ, k : ℤ.
The residue at 0 of the transported monomial -(w²)⁻¹ (w⁻¹ - a) ^ k, for k < 0 (the only
exponents RS.principalPartAt ever produces): -1 for the simple pole k = -1 (the "companion
at ∞"), 0 otherwise — the elementary case split.