Documentation

Mathlib.Geometry.Manifold.VectorBundle.MDifferentiable

Differentiability of functions in vector bundles #

theorem mdifferentiableWithinAt_totalSpace {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] (f : M β†’ Bundle.TotalSpace F E) {s : Set M} {xβ‚€ : M} :
MDifferentiableWithinAt IM (IB.prod (modelWithCornersSelf π•œ F)) f s xβ‚€ ↔ MDifferentiableWithinAt IM IB (fun (x : M) => (f x).proj) s xβ‚€ ∧ MDifferentiableWithinAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑(trivializationAt F E (f xβ‚€).proj) (f x)).2) s xβ‚€

Characterization of differentiable functions into a vector bundle. Version at a point within a set

theorem mdifferentiableAt_totalSpace {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] (f : M β†’ Bundle.TotalSpace F E) {xβ‚€ : M} :
MDifferentiableAt IM (IB.prod (modelWithCornersSelf π•œ F)) f xβ‚€ ↔ MDifferentiableAt IM IB (fun (x : M) => (f x).proj) xβ‚€ ∧ MDifferentiableAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑(trivializationAt F E (f xβ‚€).proj) (f x)).2) xβ‚€

Characterization of differentiable functions into a vector bundle. Version at a point

theorem mdifferentiableWithinAt_section {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] (s : (b : B) β†’ E b) {u : Set B} {bβ‚€ : B} :
MDifferentiableWithinAt IB (IB.prod (modelWithCornersSelf π•œ F)) (fun (b : B) => Bundle.TotalSpace.mk' F b (s b)) u bβ‚€ ↔ MDifferentiableWithinAt IB (modelWithCornersSelf π•œ F) (fun (b : B) => (↑(trivializationAt F E bβ‚€) { proj := b, snd := s b }).2) u bβ‚€

Characterization of differentiable sections of a vector bundle at a point within a set in terms of the preferred trivialization at that point.

theorem mdifferentiableAt_section {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] (s : (b : B) β†’ E b) {bβ‚€ : B} :
MDifferentiableAt IB (IB.prod (modelWithCornersSelf π•œ F)) (fun (b : B) => Bundle.TotalSpace.mk' F b (s b)) bβ‚€ ↔ MDifferentiableAt IB (modelWithCornersSelf π•œ F) (fun (b : B) => (↑(trivializationAt F E bβ‚€) { proj := b, snd := s b }).2) bβ‚€

Characterization of differentiable sections of a vector bundle at a point within a set in terms of the preferred trivialization at that point.

theorem Bundle.mdifferentiable_proj {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} (E : B β†’ Type u_6) [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] :
theorem Bundle.mdifferentiableOn_proj {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} (E : B β†’ Type u_6) [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] {s : Set (TotalSpace F E)} :
theorem Bundle.mdifferentiableAt_proj {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} (E : B β†’ Type u_6) [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] {p : TotalSpace F E} :
theorem Bundle.mdifferentiableWithinAt_proj {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} (E : B β†’ Type u_6) [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] {s : Set (TotalSpace F E)} {p : TotalSpace F E} :
theorem Bundle.mdifferentiable_zeroSection (π•œ : Type u_1) {B : Type u_2} {F : Type u_4} (E : B β†’ Type u_6) [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] :
theorem Bundle.mdifferentiableOn_zeroSection (π•œ : Type u_1) {B : Type u_2} {F : Type u_4} (E : B β†’ Type u_6) [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] {t : Set B} :
theorem Bundle.mdifferentiableAt_zeroSection (π•œ : Type u_1) {B : Type u_2} {F : Type u_4} (E : B β†’ Type u_6) [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] {x : B} :
theorem Bundle.mdifferentiableWithinAt_zeroSection (π•œ : Type u_1) {B : Type u_2} {F : Type u_4} (E : B β†’ Type u_6) [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] {t : Set B} {x : B} :
theorem mdifferentiableOn_coordChangeL {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] (e e' : Trivialization F Bundle.TotalSpace.proj) [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] :
MDifferentiableOn IB (modelWithCornersSelf π•œ (F β†’L[π•œ] F)) (fun (b : B) => ↑(Trivialization.coordChangeL π•œ e e' b)) (e.baseSet ∩ e'.baseSet)
theorem mdifferentiableOn_symm_coordChangeL {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] (e e' : Trivialization F Bundle.TotalSpace.proj) [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] :
MDifferentiableOn IB (modelWithCornersSelf π•œ (F β†’L[π•œ] F)) (fun (b : B) => ↑(Trivialization.coordChangeL π•œ e e' b).symm) (e.baseSet ∩ e'.baseSet)
theorem mdifferentiableAt_coordChangeL {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {x : B} (h : x ∈ e.baseSet) (h' : x ∈ e'.baseSet) :
MDifferentiableAt IB (modelWithCornersSelf π•œ (F β†’L[π•œ] F)) (fun (b : B) => ↑(Trivialization.coordChangeL π•œ e e' b)) x
theorem MDifferentiableWithinAt.coordChangeL {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {s : Set M} {f : M β†’ B} {x : M} (hf : MDifferentiableWithinAt IM IB f s x) (he : f x ∈ e.baseSet) (he' : f x ∈ e'.baseSet) :
MDifferentiableWithinAt IM (modelWithCornersSelf π•œ (F β†’L[π•œ] F)) (fun (y : M) => ↑(Trivialization.coordChangeL π•œ e e' (f y))) s x
theorem MDifferentiableAt.coordChangeL {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {f : M β†’ B} {x : M} (hf : MDifferentiableAt IM IB f x) (he : f x ∈ e.baseSet) (he' : f x ∈ e'.baseSet) :
MDifferentiableAt IM (modelWithCornersSelf π•œ (F β†’L[π•œ] F)) (fun (y : M) => ↑(Trivialization.coordChangeL π•œ e e' (f y))) x
theorem MDifferentiableOn.coordChangeL {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {s : Set M} {f : M β†’ B} (hf : MDifferentiableOn IM IB f s) (he : Set.MapsTo f s e.baseSet) (he' : Set.MapsTo f s e'.baseSet) :
MDifferentiableOn IM (modelWithCornersSelf π•œ (F β†’L[π•œ] F)) (fun (y : M) => ↑(Trivialization.coordChangeL π•œ e e' (f y))) s
theorem MDifferentiable.coordChangeL {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {f : M β†’ B} (hf : MDifferentiable IM IB f) (he : βˆ€ (x : M), f x ∈ e.baseSet) (he' : βˆ€ (x : M), f x ∈ e'.baseSet) :
MDifferentiable IM (modelWithCornersSelf π•œ (F β†’L[π•œ] F)) fun (y : M) => ↑(Trivialization.coordChangeL π•œ e e' (f y))
theorem MDifferentiableWithinAt.coordChange {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {s : Set M} {f : M β†’ B} {g : M β†’ F} {x : M} (hf : MDifferentiableWithinAt IM IB f s x) (hg : MDifferentiableWithinAt IM (modelWithCornersSelf π•œ F) g s x) (he : f x ∈ e.baseSet) (he' : f x ∈ e'.baseSet) :
MDifferentiableWithinAt IM (modelWithCornersSelf π•œ F) (fun (y : M) => e.coordChange e' (f y) (g y)) s x
theorem MDifferentiableAt.coordChange {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {f : M β†’ B} {g : M β†’ F} {x : M} (hf : MDifferentiableAt IM IB f x) (hg : MDifferentiableAt IM (modelWithCornersSelf π•œ F) g x) (he : f x ∈ e.baseSet) (he' : f x ∈ e'.baseSet) :
MDifferentiableAt IM (modelWithCornersSelf π•œ F) (fun (y : M) => e.coordChange e' (f y) (g y)) x
theorem MDifferentiableOn.coordChange {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {s : Set M} {f : M β†’ B} {g : M β†’ F} (hf : MDifferentiableOn IM IB f s) (hg : MDifferentiableOn IM (modelWithCornersSelf π•œ F) g s) (he : Set.MapsTo f s e.baseSet) (he' : Set.MapsTo f s e'.baseSet) :
MDifferentiableOn IM (modelWithCornersSelf π•œ F) (fun (y : M) => e.coordChange e' (f y) (g y)) s
theorem MDifferentiable.coordChange {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {f : M β†’ B} {g : M β†’ F} (hf : MDifferentiable IM IB f) (hg : MDifferentiable IM (modelWithCornersSelf π•œ F) g) (he : βˆ€ (x : M), f x ∈ e.baseSet) (he' : βˆ€ (x : M), f x ∈ e'.baseSet) :
MDifferentiable IM (modelWithCornersSelf π•œ F) fun (y : M) => e.coordChange e' (f y) (g y)
theorem MDifferentiableWithinAt.change_section_trivialization {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {e : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] {e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e'] {f : M β†’ Bundle.TotalSpace F E} {s : Set M} {xβ‚€ : M} (hf : MDifferentiableWithinAt IM IB (Bundle.TotalSpace.proj ∘ f) s xβ‚€) (he'f : MDifferentiableWithinAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑e (f x)).2) s xβ‚€) (he : f xβ‚€ ∈ e.source) (he' : f xβ‚€ ∈ e'.source) :
MDifferentiableWithinAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑e' (f x)).2) s xβ‚€
theorem Trivialization.mdifferentiableWithinAt_snd_comp_iffβ‚‚ {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] {f : M β†’ Bundle.TotalSpace F E} {s : Set M} {xβ‚€ : M} (hexβ‚€ : f xβ‚€ ∈ e.source) (he'xβ‚€ : f xβ‚€ ∈ e'.source) (hf : MDifferentiableWithinAt IM IB (Bundle.TotalSpace.proj ∘ f) s xβ‚€) :
MDifferentiableWithinAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑e (f x)).2) s xβ‚€ ↔ MDifferentiableWithinAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑e' (f x)).2) s xβ‚€
theorem Trivialization.mdifferentiableAt_snd_comp_iffβ‚‚ {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {e e' : Trivialization F Bundle.TotalSpace.proj} [MemTrivializationAtlas e] [MemTrivializationAtlas e'] {f : M β†’ Bundle.TotalSpace F E} {xβ‚€ : M} (he : f xβ‚€ ∈ e.source) (he' : f xβ‚€ ∈ e'.source) (hf : MDifferentiableAt IM IB (fun (x : M) => (f x).proj) xβ‚€) :
MDifferentiableAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑e (f x)).2) xβ‚€ ↔ MDifferentiableAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑e' (f x)).2) xβ‚€
theorem Trivialization.mdifferentiableWithinAt_totalSpace_iff {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] (e : Trivialization F Bundle.TotalSpace.proj) [MemTrivializationAtlas e] (f : M β†’ Bundle.TotalSpace F E) {s : Set M} {xβ‚€ : M} (he : f xβ‚€ ∈ e.source) :
MDifferentiableWithinAt IM (IB.prod (modelWithCornersSelf π•œ F)) f s xβ‚€ ↔ MDifferentiableWithinAt IM IB (fun (x : M) => (f x).proj) s xβ‚€ ∧ MDifferentiableWithinAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑e (f x)).2) s xβ‚€

Characterization of differentiable functions into a vector bundle in terms of any trivialization. Version at a point within at set.

theorem Trivialization.mdifferentiableAt_totalSpace_iff {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {M : Type u_5} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) {EM : Type u_10} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_11} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] (e : Trivialization F Bundle.TotalSpace.proj) [MemTrivializationAtlas e] (f : M β†’ Bundle.TotalSpace F E) {xβ‚€ : M} (he : f xβ‚€ ∈ e.source) :
MDifferentiableAt IM (IB.prod (modelWithCornersSelf π•œ F)) f xβ‚€ ↔ MDifferentiableAt IM IB (fun (x : M) => (f x).proj) xβ‚€ ∧ MDifferentiableAt IM (modelWithCornersSelf π•œ F) (fun (x : M) => (↑e (f x)).2) xβ‚€

Characterization of differentiable functions into a vector bundle in terms of any trivialization. Version at a point.

theorem Trivialization.mdifferentiableWithinAt_section_iff {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] (e : Trivialization F Bundle.TotalSpace.proj) [MemTrivializationAtlas e] (s : (b : B) β†’ E b) {u : Set B} {bβ‚€ : B} (hexβ‚€ : bβ‚€ ∈ e.baseSet) :
MDifferentiableWithinAt IB (IB.prod (modelWithCornersSelf π•œ F)) (fun (b : B) => Bundle.TotalSpace.mk' F b (s b)) u bβ‚€ ↔ MDifferentiableWithinAt IB (modelWithCornersSelf π•œ F) (fun (x : B) => (↑e { proj := x, snd := s x }).2) u bβ‚€

Characterization of differentiable sections a vector bundle in terms of any trivialization. Version at a point within at set.

theorem Trivialization.mdifferentiableAt_section_iff {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] (IB : ModelWithCorners π•œ EB HB) [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] (e : Trivialization F Bundle.TotalSpace.proj) [MemTrivializationAtlas e] (s : (b : B) β†’ E b) {bβ‚€ : B} (hexβ‚€ : bβ‚€ ∈ e.baseSet) :
MDifferentiableAt IB (IB.prod (modelWithCornersSelf π•œ F)) (fun (b : B) => Bundle.TotalSpace.mk' F b (s b)) bβ‚€ ↔ MDifferentiableAt IB (modelWithCornersSelf π•œ F) (fun (x : B) => (↑e { proj := x, snd := s x }).2) bβ‚€

Characterization of differentiable functions into a vector bundle in terms of any trivialization. Version at a point.

theorem Trivialization.mdifferentiableOn_section_iff {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {s : (x : B) β†’ E x} {a : Set B} (e : Trivialization F Bundle.TotalSpace.proj) [MemTrivializationAtlas e] (ha : IsOpen a) (ha' : a βŠ† e.baseSet) :
MDifferentiableOn IB (IB.prod (modelWithCornersSelf π•œ F)) (fun (x : B) => Bundle.TotalSpace.mk' F x (s x)) a ↔ MDifferentiableOn IB (modelWithCornersSelf π•œ F) (fun (x : B) => (↑e { proj := x, snd := s x }).2) a

Differentiability of a section on s can be determined using any trivialisation whose baseSet contains s.

theorem Trivialization.mdifferentiableOn_section_baseSet_iff {π•œ : Type u_1} {B : Type u_2} {F : Type u_4} {E : B β†’ Type u_6} [NontriviallyNormedField π•œ] [NormedAddCommGroup F] [NormedSpace π•œ F] [TopologicalSpace (Bundle.TotalSpace F E)] [(x : B) β†’ TopologicalSpace (E x)] {EB : Type u_7} [NormedAddCommGroup EB] [NormedSpace π•œ EB] {HB : Type u_8} [TopologicalSpace HB] {IB : ModelWithCorners π•œ EB HB} [TopologicalSpace B] [ChartedSpace HB B] [FiberBundle F E] [(x : B) β†’ AddCommMonoid (E x)] [(x : B) β†’ Module π•œ (E x)] [VectorBundle π•œ F E] [ContMDiffVectorBundle 1 F E IB] {s : (x : B) β†’ E x} (e : Trivialization F Bundle.TotalSpace.proj) [MemTrivializationAtlas e] :
MDifferentiableOn IB (IB.prod (modelWithCornersSelf π•œ F)) (fun (x : B) => Bundle.TotalSpace.mk' F x (s x)) e.baseSet ↔ MDifferentiableOn IB (modelWithCornersSelf π•œ F) (fun (x : B) => (↑e { proj := x, snd := s x }).2) e.baseSet

For any trivialization e, the differentiability of a section on e.baseSet can be determined using e.

theorem MDifferentiableWithinAt.clm_apply_of_inCoordinates {π•œ : Type u_1} {F₁ : Type u_2} {Fβ‚‚ : Type u_3} {B₁ : Type u_4} {Bβ‚‚ : Type u_5} {M : Type u_6} {E₁ : B₁ β†’ Type u_7} {Eβ‚‚ : Bβ‚‚ β†’ Type u_8} [NontriviallyNormedField π•œ] [(x : B₁) β†’ AddCommGroup (E₁ x)] [(x : B₁) β†’ Module π•œ (E₁ x)] [NormedAddCommGroup F₁] [NormedSpace π•œ F₁] [TopologicalSpace (Bundle.TotalSpace F₁ E₁)] [(x : B₁) β†’ TopologicalSpace (E₁ x)] [(x : Bβ‚‚) β†’ AddCommGroup (Eβ‚‚ x)] [(x : Bβ‚‚) β†’ Module π•œ (Eβ‚‚ x)] [NormedAddCommGroup Fβ‚‚] [NormedSpace π•œ Fβ‚‚] [TopologicalSpace (Bundle.TotalSpace Fβ‚‚ Eβ‚‚)] [(x : Bβ‚‚) β†’ TopologicalSpace (Eβ‚‚ x)] {EB₁ : Type u_9} [NormedAddCommGroup EB₁] [NormedSpace π•œ EB₁] {HB₁ : Type u_10} [TopologicalSpace HB₁] {IB₁ : ModelWithCorners π•œ EB₁ HB₁} [TopologicalSpace B₁] [ChartedSpace HB₁ B₁] {EBβ‚‚ : Type u_11} [NormedAddCommGroup EBβ‚‚] [NormedSpace π•œ EBβ‚‚] {HBβ‚‚ : Type u_12} [TopologicalSpace HBβ‚‚] {IBβ‚‚ : ModelWithCorners π•œ EBβ‚‚ HBβ‚‚} [TopologicalSpace Bβ‚‚] [ChartedSpace HBβ‚‚ Bβ‚‚] {EM : Type u_13} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_14} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [FiberBundle F₁ E₁] [VectorBundle π•œ F₁ E₁] [FiberBundle Fβ‚‚ Eβ‚‚] [VectorBundle π•œ Fβ‚‚ Eβ‚‚] {b₁ : M β†’ B₁} {bβ‚‚ : M β†’ Bβ‚‚} {mβ‚€ : M} {Ο• : (m : M) β†’ E₁ (b₁ m) β†’L[π•œ] Eβ‚‚ (bβ‚‚ m)} {v : (m : M) β†’ E₁ (b₁ m)} {s : Set M} (hΟ• : MDifferentiableWithinAt IM (modelWithCornersSelf π•œ (F₁ β†’L[π•œ] Fβ‚‚)) (fun (m : M) => ContinuousLinearMap.inCoordinates F₁ E₁ Fβ‚‚ Eβ‚‚ (b₁ mβ‚€) (b₁ m) (bβ‚‚ mβ‚€) (bβ‚‚ m) (Ο• m)) s mβ‚€) (hv : MDifferentiableWithinAt IM (IB₁.prod (modelWithCornersSelf π•œ F₁)) (fun (m : M) => { proj := b₁ m, snd := v m }) s mβ‚€) (hbβ‚‚ : MDifferentiableWithinAt IM IBβ‚‚ bβ‚‚ s mβ‚€) :
MDifferentiableWithinAt IM (IBβ‚‚.prod (modelWithCornersSelf π•œ Fβ‚‚)) (fun (m : M) => { proj := bβ‚‚ m, snd := (Ο• m) (v m) }) s mβ‚€

Consider a differentiable map v : M β†’ E₁ to a vector bundle, over a basemap b₁ : M β†’ B₁, and another basemap bβ‚‚ : M β†’ Bβ‚‚. Given linear maps Ο• m : E₁ (b₁ m) β†’ Eβ‚‚ (bβ‚‚ m) depending differentiably on m, one can apply Ο• m to g m, and the resulting map is differentiable.

Note that the differentiability of Ο• cannot be always be stated as differentiability of a map into a manifold, as the pullback bundles b₁ *α΅– E₁ and bβ‚‚ *α΅– Eβ‚‚ only make sense when b₁ and bβ‚‚ are globally smooth, but we want to apply this lemma with only local information. Therefore, we formulate it using differentiability of Ο• read in coordinates.

Version for MDifferentiableWithinAt. We also give a version for MDifferentiableAt, but no version for MDifferentiableOn or MDifferentiable as our assumption, written in coordinates, only makes sense around a point.

theorem MDifferentiableAt.clm_apply_of_inCoordinates {π•œ : Type u_1} {F₁ : Type u_2} {Fβ‚‚ : Type u_3} {B₁ : Type u_4} {Bβ‚‚ : Type u_5} {M : Type u_6} {E₁ : B₁ β†’ Type u_7} {Eβ‚‚ : Bβ‚‚ β†’ Type u_8} [NontriviallyNormedField π•œ] [(x : B₁) β†’ AddCommGroup (E₁ x)] [(x : B₁) β†’ Module π•œ (E₁ x)] [NormedAddCommGroup F₁] [NormedSpace π•œ F₁] [TopologicalSpace (Bundle.TotalSpace F₁ E₁)] [(x : B₁) β†’ TopologicalSpace (E₁ x)] [(x : Bβ‚‚) β†’ AddCommGroup (Eβ‚‚ x)] [(x : Bβ‚‚) β†’ Module π•œ (Eβ‚‚ x)] [NormedAddCommGroup Fβ‚‚] [NormedSpace π•œ Fβ‚‚] [TopologicalSpace (Bundle.TotalSpace Fβ‚‚ Eβ‚‚)] [(x : Bβ‚‚) β†’ TopologicalSpace (Eβ‚‚ x)] {EB₁ : Type u_9} [NormedAddCommGroup EB₁] [NormedSpace π•œ EB₁] {HB₁ : Type u_10} [TopologicalSpace HB₁] {IB₁ : ModelWithCorners π•œ EB₁ HB₁} [TopologicalSpace B₁] [ChartedSpace HB₁ B₁] {EBβ‚‚ : Type u_11} [NormedAddCommGroup EBβ‚‚] [NormedSpace π•œ EBβ‚‚] {HBβ‚‚ : Type u_12} [TopologicalSpace HBβ‚‚] {IBβ‚‚ : ModelWithCorners π•œ EBβ‚‚ HBβ‚‚} [TopologicalSpace Bβ‚‚] [ChartedSpace HBβ‚‚ Bβ‚‚] {EM : Type u_13} [NormedAddCommGroup EM] [NormedSpace π•œ EM] {HM : Type u_14} [TopologicalSpace HM] {IM : ModelWithCorners π•œ EM HM} [TopologicalSpace M] [ChartedSpace HM M] [FiberBundle F₁ E₁] [VectorBundle π•œ F₁ E₁] [FiberBundle Fβ‚‚ Eβ‚‚] [VectorBundle π•œ Fβ‚‚ Eβ‚‚] {b₁ : M β†’ B₁} {bβ‚‚ : M β†’ Bβ‚‚} {mβ‚€ : M} {Ο• : (m : M) β†’ E₁ (b₁ m) β†’L[π•œ] Eβ‚‚ (bβ‚‚ m)} {v : (m : M) β†’ E₁ (b₁ m)} (hΟ• : MDifferentiableAt IM (modelWithCornersSelf π•œ (F₁ β†’L[π•œ] Fβ‚‚)) (fun (m : M) => ContinuousLinearMap.inCoordinates F₁ E₁ Fβ‚‚ Eβ‚‚ (b₁ mβ‚€) (b₁ m) (bβ‚‚ mβ‚€) (bβ‚‚ m) (Ο• m)) mβ‚€) (hv : MDifferentiableAt IM (IB₁.prod (modelWithCornersSelf π•œ F₁)) (fun (m : M) => { proj := b₁ m, snd := v m }) mβ‚€) (hbβ‚‚ : MDifferentiableAt IM IBβ‚‚ bβ‚‚ mβ‚€) :
MDifferentiableAt IM (IBβ‚‚.prod (modelWithCornersSelf π•œ Fβ‚‚)) (fun (m : M) => { proj := bβ‚‚ m, snd := (Ο• m) (v m) }) mβ‚€

Consider a differentiable map v : M β†’ E₁ to a vector bundle, over a basemap b₁ : M β†’ B₁, and another basemap bβ‚‚ : M β†’ Bβ‚‚. Given linear maps Ο• m : E₁ (b₁ m) β†’ Eβ‚‚ (bβ‚‚ m) depending differentiably on m, one can apply Ο• m to g m, and the resulting map is differentiable.

Note that the differentiability of Ο• cannot be always be stated as differentiability of a map into a manifold, as the pullback bundles b₁ *α΅– E₁ and bβ‚‚ *α΅– Eβ‚‚ only make sense when b₁ and bβ‚‚ are globally smooth, but we want to apply this lemma with only local information. Therefore, we formulate it using differentiability of Ο• read in coordinates.

Version for MDifferentiableAt. We also give a version for MDifferentiableWithinAt, but no version for MDifferentiableOn or MDifferentiable as our assumption, written in coordinates, only makes sense around a point.