Liouville–Arnold theorem
AbbreviationThe model space \(\mathbb{R}^{2n}\) of the Liouville–Arnold theorem#✓fully proved
For a natural number \(n\), \(E_n\) is the Euclidean space \(\mathbb{R}^{2n}\), with coordinates indexed by \(0, \dots, 2n-1\) and the standard inner product.
abbrev E (n : ℕ) := EuclideanSpace ℝ (Fin (2 * n))
DefinitionLiouville–Arnold coordinates: index of \(p_i\)#✓fully proved
For \(i \in \{0, \dots, n-1\}\), the coordinate \(p_i\) of \(\mathbb{R}^{2n}\) is coordinate number \(i\): this map sends \(i\) to the same number \(i\), regarded as an index in \(\{0, \dots, 2n-1\}\).
Used by 1
DefinitionLiouville–Arnold coordinates: index of \(q_i\)#✓fully proved
For \(i \in \{0, \dots, n-1\}\), the coordinate \(q_i\) of \(\mathbb{R}^{2n}\) is coordinate number \(n + i\): this map sends \(i\) to \(n + i \in \{0, \dots, 2n-1\}\).
Used by 1
DefinitionStandard Poisson bracket on \(\mathbb{R}^{2n}\)#✓fully proved
Write the coordinates of a point \(x \in \mathbb{R}^{2n}\) as \(p_i = x_i\) and \(q_i = x_{n+i}\) for \(i = 0, \dots, n-1\). For functions \(F, G \colon \mathbb{R}^{2n} \to \mathbb{R}\), the Poisson bracket for the symplectic form \(\omega_0 = \sum_i dp_i \wedge dq_i\) is the function
Partial derivatives are read off the Fréchet derivative, which is taken to be zero at points where the function is not differentiable.
noncomputable def poissonBracket {n : ℕ} (F G : E n → ℝ) (x : E n) : ℝ :=
∑ i : Fin n,
(fderiv ℝ F x (EuclideanSpace.single (idxP i) (1 : ℝ)) *
fderiv ℝ G x (EuclideanSpace.single (idxQ i) (1 : ℝ))
- fderiv ℝ F x (EuclideanSpace.single (idxQ i) (1 : ℝ)) *
fderiv ℝ G x (EuclideanSpace.single (idxP i) (1 : ℝ)))
abbrev E (n : ℕ) := EuclideanSpace ℝ (Fin (2 * n))
WantedExt/Geometry/LiouvilleArnoldWanted.lean:73
def idxP {n : ℕ} (i : Fin n) : Fin (2 * n) :=
⟨i.val, by have := i.isLt; omega⟩
WantedExt/Geometry/LiouvilleArnoldWanted.lean:76
def idxQ {n : ℕ} (i : Fin n) : Fin (2 * n) :=
⟨i.val + n, by have := i.isLt; omega⟩
WantedExt/Geometry/LiouvilleArnoldWanted.lean:80
DefinitionLiouville integrable system on a subset of \(\mathbb{R}^{2n}\)#✓fully proved
Functions \(F_0, \dots, F_{n-1} \colon \mathbb{R}^{2n} \to \mathbb{R}\) are Liouville integrable on a set \(U \subseteq \mathbb{R}^{2n}\) if each \(F_i\) is \(C^\infty\) on \(U\), the Poisson brackets \(\{F_i, F_j\}\) vanish at every point of \(U\) for all \(i, j\), and at every \(x \in U\) the Fréchet derivatives \(dF_0(x), \dots, dF_{n-1}(x)\) are linearly independent over \(\mathbb{R}\).
The set \(U\) is not required to be open; the Liouville–Arnold theorem assumes this separately.
def IsLiouvilleIntegrable {n : ℕ} (F : Fin n → E n → ℝ) (U : Set (E n)) : Prop :=
(∀ i, ContDiffOn ℝ ∞ (F i) U) ∧
(∀ i j, ∀ x ∈ U, poissonBracket (F i) (F j) x = 0) ∧
(∀ x ∈ U, LinearIndependent ℝ (fun i => fderiv ℝ (F i) x))
abbrev E (n : ℕ) := EuclideanSpace ℝ (Fin (2 * n))
WantedExt/Geometry/LiouvilleArnoldWanted.lean:73
noncomputable def poissonBracket {n : ℕ} (F G : E n → ℝ) (x : E n) : ℝ :=
∑ i : Fin n,
(fderiv ℝ F x (EuclideanSpace.single (idxP i) (1 : ℝ)) *
fderiv ℝ G x (EuclideanSpace.single (idxQ i) (1 : ℝ))
- fderiv ℝ F x (EuclideanSpace.single (idxQ i) (1 : ℝ)) *
fderiv ℝ G x (EuclideanSpace.single (idxP i) (1 : ℝ)))
WantedExt/Geometry/LiouvilleArnoldWanted.lean:86
Uses 2 · Used by 1
DefinitionCommon level set of \(n\) functions on \(\mathbb{R}^{2n}\)#✓fully proved
For functions \(F_0, \dots, F_{n-1} \colon \mathbb{R}^{2n} \to \mathbb{R}\) and values \(c_0, \dots, c_{n-1} \in \mathbb{R}\), the common level set is \(\{x \in \mathbb{R}^{2n} : F_i(x) = c_i \text{ for all } i\}\).
def levelSet {n : ℕ} (F : Fin n → E n → ℝ) (c : Fin n → ℝ) : Set (E n) :=
{x | ∀ i, F i x = c i}
abbrev E (n : ℕ) := EuclideanSpace ℝ (Fin (2 * n))
WantedExt/Geometry/LiouvilleArnoldWanted.lean:73
Uses 1 · Used by 1
TheoremLiouville–Arnold theorem#●ready to prove
Let \(U \subseteq \mathbb{R}^{2n}\) be open and let \(F_0, \dots, F_{n-1} \colon \mathbb{R}^{2n} \to \mathbb{R}\) be Liouville integrable on \(U\). For \(c = (c_0, \dots, c_{n-1}) \in \mathbb{R}^n\), let \(M_c = \{x \in \mathbb{R}^{2n} : F_i(x) = c_i \text{ for all } i\}\) be the common level set. If \(M_c \subseteq U\) and \(M_c\) is compact and connected (in particular nonempty), then \(M_c\) is homeomorphic to the \(n\)-torus \((\mathbb{R}/\mathbb{Z})^n\).
The hypotheses compact and connected on the level set, and its containment in the open set where the derivatives are independent, restore standard regularity assumptions that Knill elides; without them the conclusion fails.
public theorem_wanted liouville_arnold
{n : ℕ} (F : Fin n → E n → ℝ) (U : Set (E n)) (_hU : IsOpen U)
(_hLI : IsLiouvilleIntegrable F U)
(c : Fin n → ℝ)
(_hMc_sub : levelSet F c ⊆ U)
(_hMc_compact : IsCompact (levelSet F c))
(_hMc_connected : IsConnected (levelSet F c)) :
Nonempty ((levelSet F c) ≃ₜ (Fin n → AddCircle (1 : ℝ)))
abbrev E (n : ℕ) := EuclideanSpace ℝ (Fin (2 * n))
WantedExt/Geometry/LiouvilleArnoldWanted.lean:73
def IsLiouvilleIntegrable {n : ℕ} (F : Fin n → E n → ℝ) (U : Set (E n)) : Prop :=
(∀ i, ContDiffOn ℝ ∞ (F i) U) ∧
(∀ i j, ∀ x ∈ U, poissonBracket (F i) (F j) x = 0) ∧
(∀ x ∈ U, LinearIndependent ℝ (fun i => fderiv ℝ (F i) x))
WantedExt/Geometry/LiouvilleArnoldWanted.lean:97
def levelSet {n : ℕ} (F : Fin n → E n → ℝ) (c : Fin n → ℝ) : Set (E n) :=
{x | ∀ i, F i x = c i}
WantedExt/Geometry/LiouvilleArnoldWanted.lean:103
Sources
- V. I. Arnold, Mathematical Methods of Classical Mechanics (2nd ed., 1989), Theorem 49.A.1 (the standard modern reference). The result is due to Liouville (1855) for the local existence of action-angle coordinates and Arnold (1963) for the compact-connected-component topology. Listed as §45 in O. Knill, Some Fundamental Theorems in Mathematics (https://people.math.harvard.edu/~knill/graphgeometry/papers/fundamental.pdf). Problem
liouville_arnoldof the lean-eval benchmark.
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.