Documentation

TauCeti.Analysis.Contour.Chord.TangentBound

Chord-to-tangent bounds in the plane #

The elementary plane geometry behind the Hungerbühler–Wasem connecting-arc analysis: decompose a vector w ∈ ℂ into its projection on a direction L and the orthogonal remainder, and bound the chord from w to the "natural" tangent target (‖w‖/‖L‖) • L — the point of the ray ℝ₊ • L at the same distance — by the orthogonal deviation:

‖w - (‖w‖/‖L‖) • L‖ ≤ ‖tangentDeviation w L‖ + ‖tangentDeviation w L‖² / ‖w‖.

For a curve flat of order n at an on-cycle singularity the deviation is o(‖w‖ⁿ) (Contour.FlatOfOrder), so the chord to the tangent target is too — the radius-based bound the sector analysis of the generalized residue theorem consumes.

Main definitions #

This is a scalar formula on ℂ, deliberately not routed through Mathlib's submodule-valued orthogonalProjection: the contour development needs only the one-line projection onto a known direction, not the inner-product-space machinery.

Main results #

Provenance #

Migrated from FlatChordBound.lean (with the orthogonalProjectionComplex and tangentDeviation definitions of FlatnessConditions.lean) of the AINTLIB LeanModularForms development. See N. Hungerbühler, M. Wasem, Non-integer valued winding numbers and a generalized Residue Theorem, arXiv:1808.00997, §3.

noncomputable def TauCeti.Contour.tangentDeviation (w L : ℂ) :

Orthogonal deviation of w from the direction L: the remainder w - orthogonalProjectionComplex w L, the component of w perpendicular to the line ℝ • L.

Equations
Instances For
    @[simp]

    tangentDeviation is additive in its vector argument.

    @[simp]

    tangentDeviation sends the zero vector to 0.

    @[simp]

    tangentDeviation respects subtraction in its vector argument.

    @[simp]

    tangentDeviation negates in its vector argument.

    tangentDeviation is homogeneous over real scalars in its vector argument. (Not @[simp]: simp normalizes the real smul c • w to ↑c * w, so this left-hand side never fires.)

    @[simp]

    The simp-normal companion of tangentDeviation_real_smul: simp normalizes the real smul c • w to ↑c * w, so this is the form that fires for simp-driven automation.

    The norm of the orthogonal deviation is the distance from w to the line ℝ • L: ‖tangentDeviation w L‖ = |Im(w · conj L)| / ‖L‖ — the quantity Contour.FlatOfOrder bounds.

    @[simp]

    A direction has no deviation from its own line.

    Every real multiple of the direction lies on its line, so has no deviation. Not a simp lemma: simp already reaches it through tangentDeviation_ofReal_mul and tangentDeviation_self.

    The deviation norm is bounded by the vector norm: the perpendicular component is no longer than the vector. At L = 0 the deviation is w itself and the bound is an equality.

    The deviation norm is at most the distance to any point of the line. The perpendicular component of w is bounded by ‖w - r • L‖ for every real r. At L = 0 both sides are ‖w‖, and at r = 0 this is norm_tangentDeviation_le.

    The deviation norm is direction-line invariant: measuring against -L gives the same distance to the line ℝ • L.

    The deviation norm is invariant under real rescaling of the direction: it measures the distance to the line ℝ • L.

    theorem TauCeti.Contour.exists_real_smul_of_im_mul_conj_eq_zero {L v : ℂ} (hv : v ≠ 0) (h : (L * (starRingEnd ℂ) v).im = 0) :
    ∃ (c : ℝ), L = c • v

    A complex number with real pairing against a nonzero direction lies on its real line: Im(L · conj v) = 0 forces L = c • v for a real c.

    Chord-to-tangent-target bound. For w in the +L hemisphere with ‖w‖ > 0, the chord from w to the natural tangent target (‖w‖/‖L‖) • L is controlled by the orthogonal deviation: ‖w - (‖w‖/‖L‖) • L‖ ≤ ‖tangentDeviation w L‖ + ‖tangentDeviation w L‖² / ‖w‖.