Theorem: IsIntegralCurveOn.comp_add
File: Mathlib/Geometry/Manifold/IntegralCurve.lean

Proof steps:
state_before: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt : ℝ
⊢ IsIntegralCurveOn (γ ∘ fun x => x + dt) v {t | t + dt ∈ s}
state_after: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasMFDerivAt 𝓘(ℝ, ℝ) I (γ ∘ fun x => x + dt) t (ContinuousLinearMap.smulRight 1 (v ((γ ∘ fun x => x + dt) t)))
tactic: intros t ht
state_before: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasMFDerivAt 𝓘(ℝ, ℝ) I (γ ∘ fun x => x + dt) t (ContinuousLinearMap.smulRight 1 (v ((γ ∘ fun x => x + dt) t)))
state_after: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasMFDerivAt 𝓘(ℝ, ℝ) I (γ ∘ fun x => x + dt) t
    ((ContinuousLinearMap.smulRight 1 (v (γ (t + dt)))).comp (ContinuousLinearMap.id ℝ ℝ))
tactic: rw [comp_apply, ← ContinuousLinearMap.comp_id (ContinuousLinearMap.smulRight 1 (v (γ (t + dt))))]
state_before: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasMFDerivAt 𝓘(ℝ, ℝ) I (γ ∘ fun x => x + dt) t
    ((ContinuousLinearMap.smulRight 1 (v (γ (t + dt)))).comp (ContinuousLinearMap.id ℝ ℝ))
state_after: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasMFDerivAt 𝓘(ℝ, ℝ) 𝓘(ℝ, ℝ) (fun x => x + dt) t (ContinuousLinearMap.id ℝ ℝ)
tactic: apply HasMFDerivAt.comp t (hγ (t + dt) ht)
state_before: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasMFDerivAt 𝓘(ℝ, ℝ) 𝓘(ℝ, ℝ) (fun x => x + dt) t (ContinuousLinearMap.id ℝ ℝ)
state_after: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasFDerivWithinAt (writtenInExtChartAt 𝓘(ℝ, ℝ) 𝓘(ℝ, ℝ) t fun x => x + dt) (ContinuousLinearMap.id ℝ ℝ)
    (range ↑𝓘(ℝ, ℝ)) (↑(extChartAt 𝓘(ℝ, ℝ) t) t)
tactic: refine ⟨(continuous_add_right _).continuousAt, ?_⟩
state_before: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasFDerivWithinAt (writtenInExtChartAt 𝓘(ℝ, ℝ) 𝓘(ℝ, ℝ) t fun x => x + dt) (ContinuousLinearMap.id ℝ ℝ)
    (range ↑𝓘(ℝ, ℝ)) (↑(extChartAt 𝓘(ℝ, ℝ) t) t)
state_after: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasFDerivAt (fun x => x + dt) (ContinuousLinearMap.id ℝ ℝ) t
tactic: simp only [mfld_simps, hasFDerivWithinAt_univ]
state_before: E : Type u_1
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace ℝ E
inst✝⁴ : CompleteSpace E
H : Type u_2
inst✝³ : TopologicalSpace H
I : ModelWithCorners ℝ E H
M : Type u_3
inst✝² : TopologicalSpace M
inst✝¹ : ChartedSpace H M
inst✝ : SmoothManifoldWithCorners I M
γ γ' : ℝ → M
v : (x : M) → TangentSpace I x
s s' : Set ℝ
t₀ : ℝ
hγ : IsIntegralCurveOn γ v s
dt t : ℝ
ht : t ∈ {t | t + dt ∈ s}
⊢ HasFDerivAt (fun x => x + dt) (ContinuousLinearMap.id ℝ ℝ) t
state_after: no goals
tactic: exact HasFDerivAt.add_const (hasFDerivAt_id _) _