Skip to content

Commit 17e1fb8

Browse files
committed
Fix comments; prove a few leftover sorries
1 parent f4f5a33 commit 17e1fb8

1 file changed

Lines changed: 20 additions & 19 deletions

File tree

Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative.lean

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ noncomputable def trivial : CovariantDerivative 𝓘(𝕜, E) E'
307307
/-- The trivial connection on the trivial bundle is smooth -/
308308
lemma trivial_isSmooth : IsCkConnection (𝕜 := 𝕜) (trivial E E') (⊤ : ℕ∞) where
309309
regularity X σ hX /-hσ-/ := by
310-
-- except for locla trivialisations, contDiff_infty_iff_fderiv covers this well
310+
-- except for local trivialisations, contDiff_infty_iff_fderiv covers this well
311311
simp only [trivial]
312312
-- use a local trivialisation
313313
intro x
@@ -854,9 +854,9 @@ lemma torsion_add_right_apply [CompleteSpace E] {x : M}
854854
(hX : MDifferentiableAt% (T% X) x)
855855
(hX' : MDifferentiableAt% (T% X') x) :
856856
torsion cov Y (X + X') x = torsion cov Y X x + torsion cov Y X' x := by
857-
rw [torsion_antisymm]
858-
sorry -- rw [cov.torsion_add_left_apply Y hX hX']
859-
--, torsion_add_left_apply _ hX hX', torsion_antisymm X, torsion_antisymm X']; module
857+
rw [torsion_antisymm, Pi.neg_apply,
858+
cov.torsion_add_left_apply _ hX hX', torsion_antisymm Y, torsion_antisymm Y]
859+
simp; abel
860860

861861
lemma torsion_add_right [CompleteSpace E]
862862
(hX : MDifferentiable% (T% X))
@@ -868,11 +868,10 @@ variable (Y) in
868868
lemma torsion_smul_left_apply [CompleteSpace E] {f : M → ℝ} {x : M} (hf : MDifferentiableAt% f x)
869869
(hX : MDifferentiableAt% (T% X) x) :
870870
torsion cov (f • X) Y x = f x • torsion cov X Y x := by
871-
simp only [torsion, cov.smulX]
872-
sorry /- rw [cov.leibniz Y X f x hX hf]
873-
rw [VectorField.mlieBracket_smul_left hf hX]
871+
simp only [torsion, cov.smulX, Pi.sub_apply, Pi.smul_apply']
872+
rw [cov.leibniz Y X f x hX hf, VectorField.mlieBracket_smul_left hf hX]
874873
simp [bar, smul_sub]
875-
abel -/
874+
abel
876875

877876
variable (Y) in
878877
lemma torsion_smul_left [CompleteSpace E] {f : M → ℝ} (hf : MDifferentiable% f)
@@ -881,17 +880,19 @@ lemma torsion_smul_left [CompleteSpace E] {f : M → ℝ} (hf : MDifferentiable%
881880
ext x
882881
exact cov.torsion_smul_left_apply _ (hf x) (hX x)
883882

884-
variable (X) in
885-
lemma torsion_smul_right [CompleteSpace E] {f : M → ℝ} (hf : MDifferentiable% f)
886-
(hY : MDifferentiable% (T% Y)) :
887-
torsion cov X (f • Y) = f • torsion cov X Y := by
888-
rw [torsion_antisymm, torsion_smul_left X hf hY, torsion_antisymm X]; module
889-
890883
variable (X) in
891884
lemma torsion_smul_right_apply [CompleteSpace E] {f : M → ℝ} {x : M} (hf : MDifferentiableAt% f x)
892885
(hX : MDifferentiableAt% (T% Y) x) :
893886
torsion cov X (f • Y) x = f x • torsion cov X Y x := by
894-
sorry
887+
rw [torsion_antisymm, Pi.neg_apply, torsion_smul_left_apply X hf hX, torsion_antisymm X]
888+
simp
889+
890+
variable (X) in
891+
lemma torsion_smul_right [CompleteSpace E] {f : M → ℝ} (hf : MDifferentiable% f)
892+
(hY : MDifferentiable% (T% Y)) :
893+
torsion cov X (f • Y) = f • torsion cov X Y := by
894+
ext x
895+
apply cov.torsion_smul_right_apply _ (hf x) (hY x)
895896

896897
omit [∀ (x : M), IsTopologicalAddGroup (V x)] [∀ (x : M), ContinuousSMul ℝ (V x)] in
897898
/-- The torsion of a covariant derivative is tensorial:
@@ -919,17 +920,17 @@ def IsTorsionFree : Prop := torsion cov = 0
919920

920921
lemma isTorsionFree_def : IsTorsionFree cov ↔ torsion cov = 0 := by simp [IsTorsionFree]
921922

922-
-- lemma: the trivial connection is torsion free
923+
-- lemma the trivial connection on a normed space is torsion-free
924+
-- lemma trivial.isTorsionFree : IsTorsionFree (TangentBundle 𝓘(ℝ, E) E) := sorry
923925

924-
-- API for the trivial bundle (does some of this exist already?)
925-
-- there is a single trivialisation, whose baseSet is univ
926+
-- lemma: tangent bundle of E is trivial -> there exists a single trivialisation with baseSet univ
926927
-- make a new abbrev Bundle.Trivial.globalFrame --- which is localFrame for the std basis of F,
927928
-- w.r.t. to this trivialisation
928929
-- add lemmas: globalFrame is contMDiff globally
929930

930931
-- proof of above lemma: write sections s and t in the global frame above
931932
-- by linearity (proven above), suffices to consider s = s^i and t = s^j (two sections in the frame)
932-
-- compute: their Lie bracket is zero (intuitively, as their flows commute)
933+
-- compute: their Lie bracket is zero
933934
-- compute: the other two terms cancel, done
934935

935936
end torsion

0 commit comments

Comments
 (0)