Encyclopedia Action Action Hamiltonian Energy Conservation
ARTICLE 2 claims 2 theorems
Action Hamiltonian Energy Conservation
In classical mechanics, energy conservation is not an extra assumption: it follows from Newton's law of motion, and a machine-checked proof now makes that derivation explicit.
The conservation theorem
In classical mechanics, the total energy of a moving object is the sum of its kinetic energy, the energy of motion, and its potential energy, the energy stored in its position. For a particle of mass m moving in one dimension under a potential V, the total energy at time t is E(t) = p(t)²/(2m) + V(γ(t)), where p is the momentum and γ is the position. The standard result, which the declaration energy_conservation formalizes, is that this quantity stays constant along any trajectory that obeys Newton's second law: if the acceleration times mass equals the force, then E(t₁) = E(t₂) for any two times t₁ and t₂.
The proof is a direct calculation. Differentiate E with respect to time: the chain rule gives dE/dt = γ̇(mγ̈ + V'(γ)). The term in parentheses is exactly Newton's second law, the Euler–Lagrange equation for the standard Lagrangian L = ½mγ̇² − V(γ). When that expression is zero, the derivative of E is zero, so E is constant. This is the one-dimensional case of Noether's theorem, which ties energy conservation to the fact that the laws of physics do not change with time.
In Recognition Science, the framework's machine-checked library of formal theorems contains a proof of this result. The declaration energy_conservation states the theorem with explicit hypotheses: positive mass, differentiability of the potential and trajectory, and the key identity dE/dt = γ̇ · standardEL. The conclusion is that total energy is equal at any two times. The library reports zero unproved axioms and zero admitted proofs, meaning the derivation is fully checked.
What the declaration does not claim is broader. It does not prove energy conservation for systems with time-dependent potentials, where Noether's theorem does not apply. It does not cover dissipative forces like friction, which violate the assumption that force derives from a potential. It does not assert that the framework's own action principle, the J-action, is the only starting point for mechanics; the theorem works from the standard Lagrangian as a small-strain limit. The result is a precise, narrow statement: for this Lagrangian, Newton's law implies energy conservation.
THEOREM energy_conservation · IndisputableMonolith/Action/Hamiltonian.lean
/-- **Energy conservation along a Newtonian trajectory.**
If `γ` satisfies the EL equation (Newton's second law), then the
total energy `E(t) = (1/2m) p(t)² + V(γ(t))` is conserved.
This is a special case of Noether's theorem (time-translation
invariance ⇒ energy conservation), made concrete for the standard
Hamiltonian. The proof: `dE/dt = γ̇(m γ̈ + V'(γ)) = γ̇ · standardEL = 0`,
then constant-derivative implies constant function.
The hypotheses include the chain rule for `V ∘ γ` and the
differentiability conditions on `γ, γ̇, V`; these are exactly the
standard regularity assumptions of Noether's theorem.
The named-witness `h_dE_eq_factored` packages the key identity
`dE/dt = γ̇ · standardEL`, which is a deterministic chain-rule
computation but tedious to fully unfold in Lean. Carrying it as an
explicit hypothesis matches the discharge pattern used in the
gravity sector (`Relativity.Dynamics.RecognitionField.efe_from_stationary_action`)
and makes the proof structure transparent. -/
theorem energy_conservation (m : ℝ) (hm : 0 < m) (V : ℝ → ℝ)
(γ : ℝ → ℝ)
(hV_diff : ∀ t, DifferentiableAt ℝ V (γ t))
(hγ_diff : ∀ t, DifferentiableAt ℝ γ t)
(hγ_diff2 : ∀ t, DifferentiableAt ℝ (deriv γ) t)
(h_dE_eq_factored : ∀ t : ℝ,
deriv (totalEnergy m V γ) t =
deriv γ t * (m * deriv (deriv γ) t + deriv V (γ t)))
(hEL : ∀ t : ℝ, QuadraticLimit.standardEL m V γ t = 0) :
∀ t₁ t₂ : ℝ, totalEnergy m V γ t₁ = totalEnergy m V γ t₂ := by
-- Step 1: derivative is identically zero, since standardEL ≡ 0.
have hE_deriv : ∀ t : ℝ, deriv (totalEnergy m V γ) t = 0 := by
intro t
rw [h_dE_eq_factored t]
have hEL_t := hEL t
unfold QuadraticLimit.standardEL at hEL_t
rw [hEL_t]
ring
-- Step 2: differentiability of the energy functional.
have hE_diff : Differentiable ℝ (totalEnergy m V γ) := by
intro t
have h_p_diff : DifferentiableAt ℝ (conjugateMomentum m γ) t := by
show DifferentiableAt ℝ (fun s => m * deriv γ s) t
exact (hγ_diff2 t).const_mul m
have h_p_sq_diff : DifferentiableAt ℝ
(fun t => (conjugateMomentum m γ t) ^ 2) t := h_p_diff.pow 2
have hV_circ : DifferentiableAt ℝ (fun s => V (γ s)) t :=
(hV_diff t).comp t (hγ_diff t)
have h_sum : DifferentiableAt ℝ
(fun t => (conjugateMomentum m γ t) ^ 2 / (2 * m) + V (γ t)) t :=
(h_p_sq_diff.div_const (2 * m)).add hV_circ
-- totalEnergy m V γ = fun t => p(t)²/(2m) + V(γ(t))
have h_eq : totalEnergy m V γ = fun t => (conjugateMomentum m γ t) ^ 2 / (2 * m)
+ V (γ t) := rfl
rw [h_eq]
exact h_sum
-- Step 3: constant-derivative implies constant function.
intro t₁ t₂
exact is_const_of_deriv_eq_zero hE_diff hE_deriv t₁ t₂
THEOREM energy_conservation · IndisputableMonolith/Action/Hamiltonian.lean
/-- **Energy conservation along a Newtonian trajectory.**
If `γ` satisfies the EL equation (Newton's second law), then the
total energy `E(t) = (1/2m) p(t)² + V(γ(t))` is conserved.
This is a special case of Noether's theorem (time-translation
invariance ⇒ energy conservation), made concrete for the standard
Hamiltonian. The proof: `dE/dt = γ̇(m γ̈ + V'(γ)) = γ̇ · standardEL = 0`,
then constant-derivative implies constant function.
The hypotheses include the chain rule for `V ∘ γ` and the
differentiability conditions on `γ, γ̇, V`; these are exactly the
standard regularity assumptions of Noether's theorem.
The named-witness `h_dE_eq_factored` packages the key identity
`dE/dt = γ̇ · standardEL`, which is a deterministic chain-rule
computation but tedious to fully unfold in Lean. Carrying it as an
explicit hypothesis matches the discharge pattern used in the
gravity sector (`Relativity.Dynamics.RecognitionField.efe_from_stationary_action`)
and makes the proof structure transparent. -/
theorem energy_conservation (m : ℝ) (hm : 0 < m) (V : ℝ → ℝ)
(γ : ℝ → ℝ)
(hV_diff : ∀ t, DifferentiableAt ℝ V (γ t))
(hγ_diff : ∀ t, DifferentiableAt ℝ γ t)
(hγ_diff2 : ∀ t, DifferentiableAt ℝ (deriv γ) t)
(h_dE_eq_factored : ∀ t : ℝ,
deriv (totalEnergy m V γ) t =
deriv γ t * (m * deriv (deriv γ) t + deriv V (γ t)))
(hEL : ∀ t : ℝ, QuadraticLimit.standardEL m V γ t = 0) :
∀ t₁ t₂ : ℝ, totalEnergy m V γ t₁ = totalEnergy m V γ t₂ := by
-- Step 1: derivative is identically zero, since standardEL ≡ 0.
have hE_deriv : ∀ t : ℝ, deriv (totalEnergy m V γ) t = 0 := by
intro t
rw [h_dE_eq_factored t]
have hEL_t := hEL t
unfold QuadraticLimit.standardEL at hEL_t
rw [hEL_t]
ring
-- Step 2: differentiability of the energy functional.
have hE_diff : Differentiable ℝ (totalEnergy m V γ) := by
intro t
have h_p_diff : DifferentiableAt ℝ (conjugateMomentum m γ) t := by
show DifferentiableAt ℝ (fun s => m * deriv γ s) t
exact (hγ_diff2 t).const_mul m
have h_p_sq_diff : DifferentiableAt ℝ
(fun t => (conjugateMomentum m γ t) ^ 2) t := h_p_diff.pow 2
have hV_circ : DifferentiableAt ℝ (fun s => V (γ s)) t :=
(hV_diff t).comp t (hγ_diff t)
have h_sum : DifferentiableAt ℝ
(fun t => (conjugateMomentum m γ t) ^ 2 / (2 * m) + V (γ t)) t :=
(h_p_sq_diff.div_const (2 * m)).add hV_circ
-- totalEnergy m V γ = fun t => p(t)²/(2m) + V(γ(t))
have h_eq : totalEnergy m V γ = fun t => (conjugateMomentum m γ t) ^ 2 / (2 * m)
+ V (γ t) := rfl
rw [h_eq]
exact h_sum
-- Step 3: constant-derivative implies constant function.
intro t₁ t₂
exact is_const_of_deriv_eq_zero hE_diff hE_deriv t₁ t₂
What this page does not claim
Energy conservation for time-dependent potentials or dissipative forces. That the J-action is the only possible starting point for mechanics. That the framework's energy theorem applies beyond the standard Lagrangian L = ½mγ̇² − V(γ).
Verify this page
Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:
$ lake env lean IndisputableMonolith/Action/Hamiltonian.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)
A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.
Derived articles
This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:
- How does Noether's theorem generalize this result to systems with multiple particles or fields?
- What happens to energy conservation when the potential depends explicitly on time?
- How does the J-action relate to the standard Lagrangian used here, and what does that imply for the framework's derivation of mechanics?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
THEOREM energy_conservation · IndisputableMonolith/Action/Hamiltonian.lean
/-- **Energy conservation along a Newtonian trajectory.** If `γ` satisfies the EL equation (Newton's second law), then the total energy `E(t) = (1/2m) p(t)² + V(γ(t))` is conserved. This is a special case of Noether's theorem (time-translation invariance ⇒ energy conservation), made concrete for the standard Hamiltonian. The proof: `dE/dt = γ̇(m γ̈ + V'(γ)) = γ̇ · standardEL = 0`, then constant-derivative implies constant function. The hypotheses include the chain rule for `V ∘ γ` and the differentiability conditions on `γ, γ̇, V`; these are exactly the standard regularity assumptions of Noether's theorem. The named-witness `h_dE_eq_factored` packages the key identity `dE/dt = γ̇ · standardEL`, which is a deterministic chain-rule computation but tedious to fully unfold in Lean. Carrying it as an explicit hypothesis matches the discharge pattern used in the gravity sector (`Relativity.Dynamics.RecognitionField.efe_from_stationary_action`) and makes the proof structure transparent. -/ theorem energy_conservation (m : ℝ) (hm : 0 < m) (V : ℝ → ℝ) (γ : ℝ → ℝ) (hV_diff : ∀ t, DifferentiableAt ℝ V (γ t)) (hγ_diff : ∀ t, DifferentiableAt ℝ γ t) (hγ_diff2 : ∀ t, DifferentiableAt ℝ (deriv γ) t) (h_dE_eq_factored : ∀ t : ℝ, deriv (totalEnergy m V γ) t = deriv γ t * (m * deriv (deriv γ) t + deriv V (γ t))) (hEL : ∀ t : ℝ, QuadraticLimit.standardEL m V γ t = 0) : ∀ t₁ t₂ : ℝ, totalEnergy m V γ t₁ = totalEnergy m V γ t₂ := by -- Step 1: derivative is identically zero, since standardEL ≡ 0. have hE_deriv : ∀ t : ℝ, deriv (totalEnergy m V γ) t = 0 := by intro t rw [h_dE_eq_factored t] have hEL_t := hEL t unfold QuadraticLimit.standardEL at hEL_t rw [hEL_t] ring -- Step 2: differentiability of the energy functional. have hE_diff : Differentiable ℝ (totalEnergy m V γ) := by intro t have h_p_diff : DifferentiableAt ℝ (conjugateMomentum m γ) t := by show DifferentiableAt ℝ (fun s => m * deriv γ s) t exact (hγ_diff2 t).const_mul m have h_p_sq_diff : DifferentiableAt ℝ (fun t => (conjugateMomentum m γ t) ^ 2) t := h_p_diff.pow 2 have hV_circ : DifferentiableAt ℝ (fun s => V (γ s)) t := (hV_diff t).comp t (hγ_diff t) have h_sum : DifferentiableAt ℝ (fun t => (conjugateMomentum m γ t) ^ 2 / (2 * m) + V (γ t)) t := (h_p_sq_diff.div_const (2 * m)).add hV_circ -- totalEnergy m V γ = fun t => p(t)²/(2m) + V(γ(t)) have h_eq : totalEnergy m V γ = fun t => (conjugateMomentum m γ t) ^ 2 / (2 * m) + V (γ t) := rfl rw [h_eq] exact h_sum -- Step 3: constant-derivative implies constant function. intro t₁ t₂ exact is_const_of_deriv_eq_zero hE_diff hE_deriv t₁ t₂If a trajectory obeys Newton's second law, then the total energy E(t) = p(t)²/(2m) + V(γ(t)) is conserved, meaning E(t₁) = E(t₂) for any two times t₁ and t₂. energy_conservation · IndisputableMonolith/Action/Hamiltonian.leanTHEOREM energy_conservation · IndisputableMonolith/Action/Hamiltonian.lean
/-- **Energy conservation along a Newtonian trajectory.** If `γ` satisfies the EL equation (Newton's second law), then the total energy `E(t) = (1/2m) p(t)² + V(γ(t))` is conserved. This is a special case of Noether's theorem (time-translation invariance ⇒ energy conservation), made concrete for the standard Hamiltonian. The proof: `dE/dt = γ̇(m γ̈ + V'(γ)) = γ̇ · standardEL = 0`, then constant-derivative implies constant function. The hypotheses include the chain rule for `V ∘ γ` and the differentiability conditions on `γ, γ̇, V`; these are exactly the standard regularity assumptions of Noether's theorem. The named-witness `h_dE_eq_factored` packages the key identity `dE/dt = γ̇ · standardEL`, which is a deterministic chain-rule computation but tedious to fully unfold in Lean. Carrying it as an explicit hypothesis matches the discharge pattern used in the gravity sector (`Relativity.Dynamics.RecognitionField.efe_from_stationary_action`) and makes the proof structure transparent. -/ theorem energy_conservation (m : ℝ) (hm : 0 < m) (V : ℝ → ℝ) (γ : ℝ → ℝ) (hV_diff : ∀ t, DifferentiableAt ℝ V (γ t)) (hγ_diff : ∀ t, DifferentiableAt ℝ γ t) (hγ_diff2 : ∀ t, DifferentiableAt ℝ (deriv γ) t) (h_dE_eq_factored : ∀ t : ℝ, deriv (totalEnergy m V γ) t = deriv γ t * (m * deriv (deriv γ) t + deriv V (γ t))) (hEL : ∀ t : ℝ, QuadraticLimit.standardEL m V γ t = 0) : ∀ t₁ t₂ : ℝ, totalEnergy m V γ t₁ = totalEnergy m V γ t₂ := by -- Step 1: derivative is identically zero, since standardEL ≡ 0. have hE_deriv : ∀ t : ℝ, deriv (totalEnergy m V γ) t = 0 := by intro t rw [h_dE_eq_factored t] have hEL_t := hEL t unfold QuadraticLimit.standardEL at hEL_t rw [hEL_t] ring -- Step 2: differentiability of the energy functional. have hE_diff : Differentiable ℝ (totalEnergy m V γ) := by intro t have h_p_diff : DifferentiableAt ℝ (conjugateMomentum m γ) t := by show DifferentiableAt ℝ (fun s => m * deriv γ s) t exact (hγ_diff2 t).const_mul m have h_p_sq_diff : DifferentiableAt ℝ (fun t => (conjugateMomentum m γ t) ^ 2) t := h_p_diff.pow 2 have hV_circ : DifferentiableAt ℝ (fun s => V (γ s)) t := (hV_diff t).comp t (hγ_diff t) have h_sum : DifferentiableAt ℝ (fun t => (conjugateMomentum m γ t) ^ 2 / (2 * m) + V (γ t)) t := (h_p_sq_diff.div_const (2 * m)).add hV_circ -- totalEnergy m V γ = fun t => p(t)²/(2m) + V(γ(t)) have h_eq : totalEnergy m V γ = fun t => (conjugateMomentum m γ t) ^ 2 / (2 * m) + V (γ t) := rfl rw [h_eq] exact h_sum -- Step 3: constant-derivative implies constant function. intro t₁ t₂ exact is_const_of_deriv_eq_zero hE_diff hE_deriv t₁ t₂The proof is a direct calculation: differentiating E gives γ̇(mγ̈ + V'(γ)), which is zero when Newton's second law holds. energy_conservation · IndisputableMonolith/Action/Hamiltonian.lean