Skip to content

Commit 5fa6a5b

Browse files
committed
Hessian
1 parent f54cd03 commit 5fa6a5b

2 files changed

Lines changed: 57 additions & 0 deletions

File tree

β€ŽMathlib.leanβ€Ž

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4750,6 +4750,7 @@ public import Mathlib.Geometry.Manifold.Submersion
47504750
public import Mathlib.Geometry.Manifold.VectorBundle.Basic
47514751
public import Mathlib.Geometry.Manifold.VectorBundle.ContMDiffSection
47524752
public import Mathlib.Geometry.Manifold.VectorBundle.CovariantDerivative.Basic
4753+
public import Mathlib.Geometry.Manifold.VectorBundle.CovariantDerivative.Hessian
47534754
public import Mathlib.Geometry.Manifold.VectorBundle.CovariantDerivative.Hom
47544755
public import Mathlib.Geometry.Manifold.VectorBundle.CovariantDerivative.LeviCivita
47554756
public import Mathlib.Geometry.Manifold.VectorBundle.CovariantDerivative.Metric
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/-
2+
Copyright (c) 2026 MichaΕ‚ Pacholski. All rights reserved.
3+
Released under Apache 2.0 license as described in the file LICENSE.
4+
Authors: MichaΕ‚ Pacholski
5+
-/
6+
module
7+
8+
public import Mathlib.Geometry.Manifold.VectorBundle.CovariantDerivative.Hom
9+
10+
/-!
11+
# Hessian
12+
13+
...
14+
-/
15+
16+
open Bundle
17+
open scoped Manifold
18+
19+
public noncomputable section
20+
21+
variable {π•œ : Type*} [NontriviallyNormedField π•œ] [CompleteSpace π•œ]
22+
23+
-- Base manifold
24+
variable {E : Type*} [NormedAddCommGroup E] [NormedSpace π•œ E] [FiniteDimensional π•œ E]
25+
{H : Type*} [TopologicalSpace H] {I : ModelWithCorners π•œ E H}
26+
{M : Type*} [TopologicalSpace M] [ChartedSpace H M]
27+
[IsManifold I 1 M] [ContMDiffVectorBundle 1 E (TangentSpace I : M β†’ _) I]
28+
29+
-- Fiber bundle
30+
variable {F : Type*} [NormedAddCommGroup F] [NormedSpace π•œ F]
31+
{V : M β†’ Type*} [TopologicalSpace (TotalSpace F V)]
32+
[βˆ€ x, AddCommGroup (V x)] [βˆ€ x, Module π•œ (V x)]
33+
[βˆ€ x : M, TopologicalSpace (V x)]
34+
[βˆ€ x, IsTopologicalAddGroup (V x)] [βˆ€ x, ContinuousSMul π•œ (V x)]
35+
[FiberBundle F V] [VectorBundle π•œ F V]
36+
37+
-- Covariant derivatives and the tangent bundle and on the fiber bundle V
38+
variable (covTM : CovariantDerivative I E (TangentSpace I : M β†’ _))
39+
(cov : CovariantDerivative I F V)
40+
41+
-- Section of the bundle V
42+
variable (v : (x : M) β†’ V x)
43+
44+
namespace CovariantDerivative
45+
46+
/-- Covariant Hessian acting on a section `v` of a vector bundle `V`. -/
47+
def hessian (x : M) : TangentSpace I x β†’L[π•œ] TangentSpace I x β†’L[π•œ] V x :=
48+
(covTM.homBundle cov) (cov v) x
49+
50+
theorem hessian_apply_eq_extend {x : M} (hv : MDiffAt T% (cov v) x)
51+
(X Y : TangentSpace I x) : hessian covTM cov v x X Y =
52+
(cov (fun y ↦ (cov v y) (FiberBundle.extend E Y y)) x) X
53+
- (cov v x) ((covTM (FiberBundle.extend E Y) x) X) := by
54+
simp_all [hessian, covTM.homBundle_apply_eq_extend cov]
55+
56+
end CovariantDerivative

0 commit comments

Comments
Β (0)