Single-Crossing Winding Number Framework #
Unified framework for computing generalizedWindingNumber' γ a b s when the
curve γ crosses the point s at exactly one parameter value t₀ ∈ (a, b).
Overview #
The three edge/arc winding proofs (RightEdge, LeftEdge, UnitArc) share a common 5-step structure:
- Identify the unique crossing parameter
t₀ - Define a cutoff function
δ(ε)that maps the norm thresholdεto a parameter-space interval radius aroundt₀ - Prove far/near bounds: curve is ε-far from
soutside[t₀-δ, t₀+δ], and ε-close inside - Prove the FTC telescope: the far-segment integrals sum to some
E(ε) - Prove
E(ε) → Lasε → 0⁺, givinggWN = L / (2πi)
This file provides:
SingleCrossingData: a structure bundling all geometric ingredientsgWN_of_singleCrossing: the master theorem that assembles these ingredients into ageneralizedWindingNumber'computationgWN_eq_neg_half_of_singleCrossing: specialized version forgWN = -1/2
Design #
The key abstraction is that pv_tendsto_of_crossing_limit already handles
steps 3-5 at the level of the PV integral. This framework adds the final
conversion from PV Tendsto to generalizedWindingNumber', handling the
deriv (fun t => γ t - s) = deriv γ rewrite that every caller must perform.
The SingleCrossingData structure bundles the 8 obligations of
pv_tendsto_of_crossing_limit together with a target limit value,
making it easy to instantiate for each geometric case.
Data for a single-crossing winding number computation.
Bundles all the geometric ingredients needed by pv_tendsto_of_crossing_limit:
- A curve
γ : ℝ → ℂon[a, b]with a unique crossing att₀ - A cutoff function
δ : ℝ → ℝmapping norm thresholds to parameter radii - A threshold below which all bounds hold
- The far/near bounds, FTC telescope, integrability, and limit target
- L : ℂ
Target limit value for the PV integral.
- t₀ : ℝ
Unique crossing parameter in
(a, b). Proof that
t₀ ∈ (a, b).Cutoff function: maps norm threshold
εto parameter-space radius.- threshold : ℝ
Threshold below which all bounds hold.
Threshold is positive.
δ(ε)is positive for validε.δ(ε)is small enough: stays within(a, b)aroundt₀.- h_far (ε : ℝ) : 0 < ε → ε < self.threshold → ∀ t ∈ Set.Icc a b, self.δ ε < |t - self.t₀| → ε < ‖γ t - s‖
Far bound: curve is ε-far from
soutside the δ-neighborhood oft₀. Near bound: curve is within
εofsinside the δ-neighborhood.Expression that the far-segment integrals sum to.
- h_ftc (ε : ℝ) : 0 < ε → ε < self.threshold → (∫ (t : ℝ) in a..self.t₀ - self.δ ε, (γ t - s)⁻¹ * deriv γ t) + ∫ (t : ℝ) in self.t₀ + self.δ ε..b, (γ t - s)⁻¹ * deriv γ t = self.E ε
FTC telescope: far-segment integrals equal
E(ε). - hint_left (ε : ℝ) : 0 < ε → ε < self.threshold → IntervalIntegrable (fun (t : ℝ) => (γ t - s)⁻¹ * deriv γ t) MeasureTheory.volume a (self.t₀ - self.δ ε)
Integrability on the left segment.
- hint_right (ε : ℝ) : 0 < ε → ε < self.threshold → IntervalIntegrable (fun (t : ℝ) => (γ t - s)⁻¹ * deriv γ t) MeasureTheory.volume (self.t₀ + self.δ ε) b
Integrability on the right segment.
- h_limit : Filter.Tendsto self.E (nhdsWithin 0 (Set.Ioi 0)) (nhds self.L)
Limit:
E(ε) → Lasε → 0⁺.
Instances For
The PV integral of (γ - s)⁻¹ · γ' tends to L. This is the core intermediate
result, obtained directly from pv_tendsto_of_crossing_limit.
Master theorem: compute generalizedWindingNumber' from single-crossing data.
Given SingleCrossingData for curve γ, the generalized winding number
at s equals L / (2πi).
This handles the conversion from (γ t - s)⁻¹ * deriv γ t (used in
the PV integral) to the form (γ t - s)⁻¹ * deriv (fun t => γ t - s) t
expected by generalizedWindingNumber'.