Theorem: hasStrictFDerivAt_exp_smul_const_of_mem_ball'
File: Mathlib/Analysis/SpecialFunctions/Exponential.lean

Proof steps:
state_before: 𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
⊢ HasStrictFDerivAt (fun u => exp 𝕂 (u • x)) ((ContinuousLinearMap.smulRight 1 x).smulRight (exp 𝕂 (t • x))) t
state_after: 𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
w✝ : FormalMultilinearSeries 𝕂 𝔸 𝔸
h✝ : HasFPowerSeriesAt (exp 𝕂) w✝ (t • x)
⊢ HasStrictFDerivAt (fun u => exp 𝕂 (u • x)) ((ContinuousLinearMap.smulRight 1 x).smulRight (exp 𝕂 (t • x))) t
tactic: let ⟨_, _⟩ := analyticAt_exp_of_mem_ball (t • x) htx
state_before: 𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
w✝ : FormalMultilinearSeries 𝕂 𝔸 𝔸
h✝ : HasFPowerSeriesAt (exp 𝕂) w✝ (t • x)
⊢ HasStrictFDerivAt (fun u => exp 𝕂 (u • x)) ((ContinuousLinearMap.smulRight 1 x).smulRight (exp 𝕂 (t • x))) t
state_after: case h.e'_10
𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
w✝ : FormalMultilinearSeries 𝕂 𝔸 𝔸
h✝ : HasFPowerSeriesAt (exp 𝕂) w✝ (t • x)
⊢ (ContinuousLinearMap.smulRight 1 x).smulRight (exp 𝕂 (t • x)) = exp 𝕂 (t • x) • ContinuousLinearMap.smulRight 1 x
tactic: convert hasStrictFDerivAt_exp_smul_const_of_mem_ball 𝕂 _ _ htx using 1
state_before: case h.e'_10
𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
w✝ : FormalMultilinearSeries 𝕂 𝔸 𝔸
h✝ : HasFPowerSeriesAt (exp 𝕂) w✝ (t • x)
⊢ (ContinuousLinearMap.smulRight 1 x).smulRight (exp 𝕂 (t • x)) = exp 𝕂 (t • x) • ContinuousLinearMap.smulRight 1 x
state_after: case h.e'_10.h
𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
w✝ : FormalMultilinearSeries 𝕂 𝔸 𝔸
h✝ : HasFPowerSeriesAt (exp 𝕂) w✝ (t • x)
t' : 𝕊
⊢ ((ContinuousLinearMap.smulRight 1 x).smulRight (exp 𝕂 (t • x))) t' =
    (exp 𝕂 (t • x) • ContinuousLinearMap.smulRight 1 x) t'
tactic: ext t'
state_before: case h.e'_10.h
𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
w✝ : FormalMultilinearSeries 𝕂 𝔸 𝔸
h✝ : HasFPowerSeriesAt (exp 𝕂) w✝ (t • x)
t' : 𝕊
⊢ ((ContinuousLinearMap.smulRight 1 x).smulRight (exp 𝕂 (t • x))) t' =
    (exp 𝕂 (t • x) • ContinuousLinearMap.smulRight 1 x) t'
state_after: case h.e'_10.h
𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
w✝ : FormalMultilinearSeries 𝕂 𝔸 𝔸
h✝ : HasFPowerSeriesAt (exp 𝕂) w✝ (t • x)
t' : 𝕊
⊢ Commute (t' • x) (exp 𝕂 (t • x))
tactic: show Commute (t' • x) (exp 𝕂 (t • x))
state_before: case h.e'_10.h
𝕂 : Type u_1
𝕊 : Type u_2
𝔸 : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕂
inst✝⁸ : CharZero 𝕂
inst✝⁷ : NormedCommRing 𝕊
inst✝⁶ : NormedRing 𝔸
inst✝⁵ : NormedSpace 𝕂 𝕊
inst✝⁴ : NormedAlgebra 𝕂 𝔸
inst✝³ : Algebra 𝕊 𝔸
inst✝² : ContinuousSMul 𝕊 𝔸
inst✝¹ : IsScalarTower 𝕂 𝕊 𝔸
inst✝ : CompleteSpace 𝔸
x : 𝔸
t : 𝕊
htx : t • x ∈ EMetric.ball 0 (expSeries 𝕂 𝔸).radius
w✝ : FormalMultilinearSeries 𝕂 𝔸 𝔸
h✝ : HasFPowerSeriesAt (exp 𝕂) w✝ (t • x)
t' : 𝕊
⊢ Commute (t' • x) (exp 𝕂 (t • x))
state_after: no goals
tactic: exact (((Commute.refl x).smul_left t').smul_right t).exp_right 𝕂