- Boxes
- definitions
- Ellipses
- theorems and lemmas
- Orange (dashed) border
- the statement of this result is ready to be formalized; all prerequisites are done
- Red border
- the statement of this result is not ready to be formalized; the blueprint needs more work
- Orange (gradient) background
- the proof of this result is ready to be formalized; all prerequisites are done
- Green border
- the statement of this result is formalized
- Green background
- the proof of this result is formalized
- Dark green background
- the proof of this result and all its ancestors are formalized
At the right endpoint of the homotopy parameter, the induced loop homotopy recovers the associated loop of the terminal map.
theorem circleLoopHomotopy_one_left
[TopologicalSpace X] {f g : C(Circle, X)}
(H : f.Homotopy g) (t : I) :
circleLoopHomotopy H (1, t) =
(ContinuousMap.circleLoop g) t
At the left endpoint of the homotopy parameter, the induced loop homotopy recovers the associated loop of the initial map.
theorem circleLoopHomotopy_zero_left
[TopologicalSpace X] {f g : C(Circle, X)}
(H : f.Homotopy g) (t : I) :
circleLoopHomotopy H (0, t) =
(ContinuousMap.circleLoop f) t
If a map from the unit circle to \(\mathbb {C}^\times \) extends to the closed unit disk through maps into \(\mathbb {C}^\times \), then its winding number is zero.
theorem windingNumber_eq_zero_of_exists_extension
{f : C(Circle, ℂˣ)}
{F : C(Disk, ℂˣ)}
(hF :
∀ z : Circle,
F z = f z) :
windingNumber f = 0
Equivalently, the leading-term domination estimate holds eventually along the filter \(R\to +\infty \).
theorem eventually_leadingTerm_dominates_on_circle
(p : Polynomial ℂ) (hdeg : 0 < p.natDegree) :
∀ᶠ R : ℝ in Filter.atTop, ∀ z : Circle,
‖p.eval ((R : ℂ) * z) -
p.leadingCoeff * (((R : ℂ) * z) ^
p.natDegree)‖ <
‖p.leadingCoeff * (((R : ℂ) * z) ^
p.natDegree)‖
For all sufficiently large \(R\), the restriction of a nonconstant polynomial to the circle of radius \(R\) has winding number equal to the degree of the polynomial.
theorem eventually_windingNumber_eq_natDegree
(p : Polynomial ℂ) (hdeg : 0 < p.natDegree) :
∀ᶠ R : ℝ in Filter.atTop,
∃ f : C(Circle, ℂˣ), (∀ z, f z = p.eval
((R : ℂ) * z)) ∧ ContinuousMap.windingNumber f
= (p.natDegree : ℤ)
If two maps into \(\Bbbk ^\times \) satisfy the walking-dog inequality \(\lVert f(x)-g(x)\rVert {\lt} \lVert f(x)\rVert \) pointwise, then they are homotopic through maps into \(\Bbbk ^\times \).
theorem exists_homotopy_of_norm_sub_lt
[TopologicalSpace α] [RCLike 𝕜]
{f g : C(α, 𝕜ˣ)}
(hclose :
∀ z : α, ‖(f z : 𝕜) - g z‖ <
‖(f z : 𝕜)‖) :
Nonempty (f.Homotopy g)
For a nonconstant complex polynomial, there is a radius beyond which the leading term dominates the sum of the lower terms on every circle of larger radius.
theorem leadingTerm_dominates_on_circle
(p : Polynomial ℂ) (hdeg : 0 < p.natDegree) :
∃ R0 : ℝ, 0 < R0 ∧ ∀ R : ℝ, R0 ≤ R →
∀ z : Circle, ‖p.eval ((R : ℂ) * z) -
p.leadingCoeff * (((R : ℂ) * z) ^
p.natDegree)‖ < ‖p.leadingCoeff * (((R : ℂ) *
z) ^ p.natDegree)‖
Loops in \(\mathbb {C}^\times \) that are freely homotopic through loops have the same winding number.
theorem windingNumber_eq_of_homotopy
{u u' : ℂˣ} (γ : Path u u)
(γ' : Path u' u') (H : C(I × I, ℂˣ))
(hhom : ContinuousMap.IsLoopHomotopy H)
(hzero : ∀ t, H (0, t) = γ t)
(hone : ∀ t, H (1, t) = γ' t) :
Path.windingNumber γ = Path.windingNumber γ'
If \(\Gamma \) is any lift of a loop in \(\mathbb {C}^\times \), then the endpoint quotient \((\Gamma (1)-\Gamma (0))/(2\pi i)\) computes the winding number.
theorem windingNumber_eq_of_lift
{u : ℂˣ} (γ : Path u u) (Γ : C(I, ℂ))
(hlift : ∀ t, exp (Γ t) = γ t) :
(Γ 1 - Γ 0) / (2 * π * 𝓲) =
Path.windingNumber γ