The argument principle against the divisor #
TauCeti.Contour.argumentPrinciple asks its caller for the data of the counting problem: a finite
set S collecting the nonzero-order points, an order function ord, and proofs that the two agree
and that S is exhaustive. Mathlib's MeromorphicOn.divisor already packages exactly that data —
MeromorphicOn.divisor_apply evaluates it to (meromorphicOrderAt f z).untop₀, and
MeromorphicOn.divisor_ball_support_finite supplies the finiteness from the same
MeromorphicOn f (closedBall c R) hypothesis the argument principle already assumes. This file
restates the argument principle against that API, so callers that already speak divisor need not
rebuild the finset and the order function by hand.
The only hypothesis this adds is hsphere: the bounding circle carries no zeros or poles. It does
double duty.
- It confines the nonzero-order points to the open disc, so a divisor taken over
ball c Rstill accounts for every such point ofclosedBall c R. - It rules out order
⊤. This matters because(⊤ : WithTop ℤ).untop₀ = 0, so at a point wherefvanishes identically the divisor reads0while the order does not, and the exhaustiveness obligation ofargumentPrinciplewould fail exactly there. No separate hypothesis is needed:closedBall c Ris convex, hence preconnected, and the sphere is nonempty as0 < R, soMeromorphicOn.meromorphicOrderAt_ne_top_of_isPreconnectedpropagates the finite order at a boundary point to the whole disc.
Main results #
TauCeti.Contour.argumentPrinciple_divisor—∮_{C(c,R)} logDeriv f = 2πi · ∑ᶠ z, divisor f (ball c R) z, the argument principle with the counting data taken fromMeromorphicOn.divisor. The conclusion uses the canonical finitely supported sum∑ᶠ, which is well defined because the divisor vanishes offball c R; the finiteness witnessMeromorphicOn.divisor_ball_support_finitestays inside the proof rather than appearing in the statement.
References #
- N. Hungerbühler, M. Wasem, Non-integer valued winding numbers and a generalized Residue Theorem, arXiv:1808.00997.
Where a meromorphic function is analytic, its divisor records the order of vanishing. The
identity also holds at a point of infinite order, where both sides read 0.
This is the bridge between MeromorphicOn.divisor — whose support is finite on a ball by
MeromorphicOn.divisor_ball_support_finite — and the analyticOrderNatAt vocabulary that zero
counts are stated in, so zero-counting arguments can reuse it instead of rebuilding the
correspondence. Note the finiteness is of the divisor's support, equivalently of the zeros of
finite order: a point where f vanishes identically has divisor value 0 and is absent from it.
The argument principle, against the divisor. For f meromorphic on the closed disc
C(c, R) with no zero or pole on the bounding circle, the contour integral of the logarithmic
derivative is 2πi times the sum of MeromorphicOn.divisor over the open disc.
This is TauCeti.Contour.argumentPrinciple with the finite set and the order function supplied by
Mathlib's divisor API rather than by the caller.