Prove2Me
Navigate
DiscoverCollectionsFormalpediaGalaxyBlogsUsersMomentumMy Missions+
Prove2Me
Log in
← Formalpedia

Theorem 5 (Giacomini–Llibre–Viano): limit cycles lie in the zero set of an inverse integrating factor

Open
HilbertSixteenth.inverse_integrating_factor_vanishes_on_limit_cycle

by Lucas · Sep 30, 2026 · Mathlib 0df444a (Lean v4.33.1)

dynamical-systemshilbert-16th-problemlimit-cycles

Let X=(P,Q)X=(P,Q)X=(P,Q) be a C1C^1C1 vector field on an open set U⊆R2U\subseteq\mathbb R^2U⊆R2 and let V:U→RV:U\to\mathbb RV:U→R be an inverse integrating factor of XXX, i.e. a C1C^1C1 function with

P∂V∂x+Q∂V∂y=(∂P∂x+∂Q∂y)Von U.P\frac{\partial V}{\partial x}+Q\frac{\partial V}{\partial y}=\Big(\frac{\partial P}{\partial x}+\frac{\partial Q}{\partial y}\Big)V\quad\text{on } U.P∂x∂V​+Q∂y∂V​=(∂x∂P​+∂y∂Q​)Von U.

If γ⊆U\gamma\subseteq Uγ⊆U is a limit cycle of XXX, then γ⊆{(x,y)∈U:V(x,y)=0}\gamma\subseteq\{(x,y)\in U : V(x,y)=0\}γ⊆{(x,y)∈U:V(x,y)=0}.

This result is used in the proofs of Theorems 1 and 4.

Formalization Note The vector field is a function on all of R2\mathbb R^2R2 required to be C1C^1C1 only on UUU; its values outside UUU are irrelevant because the limit cycle lies in the open set UUU.

Preamble
import Definitions.Def_HilbertSixteenth_Dynamics
Formal statement
namespace HilbertSixteenth
theorem inverse_integrating_factor_vanishes_on_limit_cycle (F : ℝ × ℝ → ℝ × ℝ)
    (U : Set (ℝ × ℝ)) (hU : IsOpen U) (hF : ContDiffOn ℝ 1 F U) (V : ℝ × ℝ → ℝ)
    (hV : IsInverseIntegratingFactor F U V) (O : Set (ℝ × ℝ)) (hOU : O ⊆ U)
    (hO : IsLimitCycle F O) : ∀ p ∈ O, V p = 0 := by sorry
end HilbertSixteenth
Source
J. Llibre, *Sobre el problema 16 de Hilbert*, La Gaceta de la RSME 18 (2015), no. 3, pp. 543–554, §7, Theorem 5 (H. Giacomini, J. Llibre, M. Viano, Nonlinearity 9 (1996) 501–516).
Read-back

What the Lean code literally says, in plain math · Aristotle (Harmonic) — same agent as the drafter; NON-BLIND

Disclosure — NON-BLIND read-back. This read-back was written by the same agent (Aristotle, by Harmonic) that drafted the Lean statements of this proposal, at the explicit request of the proposal owner. It is not independent testimony: its author knew the intended meaning of the code while writing it, so it may unconsciously read that intent into the code. Reviewers should compare the Lean code against the source directly and should not treat this text as an independent audit.

Let F:R2→R2F:\mathbb R^2\to\mathbb R^2F:R2→R2, let U⊆R2U\subseteq\mathbb R^2U⊆R2 be open, and assume FFF is C1C^1C1 on UUU (no assumption outside UUU). Let V:R2→RV:\mathbb R^2\to\mathbb RV:R2→R be an inverse integrating factor of FFF on UUU: VVV is C1C^1C1 on UUU and DV(p)(F(p))=div⁡F(p) V(p)DV(p)(F(p))=\operatorname{div}F(p)\,V(p)DV(p)(F(p))=divF(p)V(p) for all p∈Up\in Up∈U. Let O⊆UO\subseteq UO⊆U be a limit cycle of FFF (the image of a global non-constant periodic solution of γ′=F(γ)\gamma'=F(\gamma)γ′=F(γ) with an open neighbourhood UUU such that no other periodic orbit of FFF is contained in UUU — periodic orbits of FFF anywhere in R2\mathbb R^2R2 are considered). Then V(p)=0V(p)=0V(p)=0 for every p∈Op\in Op∈O. The case V≡0V\equiv0V≡0 satisfies all hypotheses and the conclusion trivially.

Human review
  • Endorsed by Shuze Chen · Sep 30, 2026

    Confirmed by the moderator at approval.

  • Endorsed by Lucas · Sep 30, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paperProve2Me Team
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me