Complex and real exponential #
In this file we prove that Complex.exp and Real.exp are analytic functions.
Tags #
exp, derivative
theorem
AnalyticAt.cexp
{E : Type}
[NormedAddCommGroup E]
[NormedSpace ℂ E]
{f : E → ℂ}
{x : E}
(fa : AnalyticAt ℂ f x)
 :
AnalyticAt ℂ (Complex.exp ∘ f) x
exp ∘ f is analytic
theorem
AnalyticAt.cexp'
{E : Type}
[NormedAddCommGroup E]
[NormedSpace ℂ E]
{f : E → ℂ}
{x : E}
(fa : AnalyticAt ℂ f x)
 :
AnalyticAt ℂ (fun (z : E) => Complex.exp (f z)) x
exp ∘ f is analytic
theorem
AnalyticWithinAt.cexp
{E : Type}
[NormedAddCommGroup E]
[NormedSpace ℂ E]
{f : E → ℂ}
{x : E}
{s : Set E}
(fa : AnalyticWithinAt ℂ f s x)
 :
AnalyticWithinAt ℂ (fun (z : E) => Complex.exp (f z)) s x
theorem
AnalyticOnNhd.cexp
{E : Type}
[NormedAddCommGroup E]
[NormedSpace ℂ E]
{f : E → ℂ}
{s : Set E}
(fs : AnalyticOnNhd ℂ f s)
 :
AnalyticOnNhd ℂ (fun (z : E) => Complex.exp (f z)) s
exp ∘ f is analytic
theorem
AnalyticOn.cexp
{E : Type}
[NormedAddCommGroup E]
[NormedSpace ℂ E]
{f : E → ℂ}
{s : Set E}
(fs : AnalyticOn ℂ f s)
 :
AnalyticOn ℂ (fun (z : E) => Complex.exp (f z)) s
The complex exponential is everywhere differentiable, with the derivative exp x.
@[simp]
@[simp]
theorem
Complex.differentiableAt_exp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{x : ℂ}
 :
DifferentiableAt 𝕜 exp x
theorem
Complex.contDiff_exp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{n : WithTop ℕ∞}
 :
theorem
HasStrictDerivAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{f : 𝕜 → ℂ}
{f' : ℂ}
{x : 𝕜}
(hf : HasStrictDerivAt f f' x)
 :
HasStrictDerivAt (fun (x : 𝕜) => Complex.exp (f x)) (Complex.exp (f x) * f') x
theorem
HasDerivAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{f : 𝕜 → ℂ}
{f' : ℂ}
{x : 𝕜}
(hf : HasDerivAt f f' x)
 :
HasDerivAt (fun (x : 𝕜) => Complex.exp (f x)) (Complex.exp (f x) * f') x
theorem
HasDerivWithinAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{f : 𝕜 → ℂ}
{f' : ℂ}
{x : 𝕜}
{s : Set 𝕜}
(hf : HasDerivWithinAt f f' s x)
 :
HasDerivWithinAt (fun (x : 𝕜) => Complex.exp (f x)) (Complex.exp (f x) * f') s x
theorem
derivWithin_cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{f : 𝕜 → ℂ}
{x : 𝕜}
{s : Set 𝕜}
(hf : DifferentiableWithinAt 𝕜 f s x)
(hxs : UniqueDiffWithinAt 𝕜 s x)
 :
@[simp]
theorem
deriv_cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{f : 𝕜 → ℂ}
{x : 𝕜}
(hc : DifferentiableAt 𝕜 f x)
 :
theorem
HasStrictFDerivAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{f' : E →L[𝕜] ℂ}
{x : E}
(hf : HasStrictFDerivAt f f' x)
 :
HasStrictFDerivAt (fun (x : E) => Complex.exp (f x)) (Complex.exp (f x) • f') x
theorem
HasFDerivWithinAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{f' : E →L[𝕜] ℂ}
{x : E}
{s : Set E}
(hf : HasFDerivWithinAt f f' s x)
 :
HasFDerivWithinAt (fun (x : E) => Complex.exp (f x)) (Complex.exp (f x) • f') s x
theorem
HasFDerivAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{f' : E →L[𝕜] ℂ}
{x : E}
(hf : HasFDerivAt f f' x)
 :
HasFDerivAt (fun (x : E) => Complex.exp (f x)) (Complex.exp (f x) • f') x
theorem
DifferentiableWithinAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{x : E}
{s : Set E}
(hf : DifferentiableWithinAt 𝕜 f s x)
 :
DifferentiableWithinAt 𝕜 (fun (x : E) => Complex.exp (f x)) s x
@[simp]
theorem
DifferentiableAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{x : E}
(hc : DifferentiableAt 𝕜 f x)
 :
DifferentiableAt 𝕜 (fun (x : E) => Complex.exp (f x)) x
theorem
DifferentiableOn.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{s : Set E}
(hc : DifferentiableOn 𝕜 f s)
 :
DifferentiableOn 𝕜 (fun (x : E) => Complex.exp (f x)) s
@[simp]
theorem
Differentiable.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
(hc : Differentiable 𝕜 f)
 :
Differentiable 𝕜 fun (x : E) => Complex.exp (f x)
theorem
ContDiff.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{n : WithTop ℕ∞}
(h : ContDiff 𝕜 n f)
 :
ContDiff 𝕜 n fun (x : E) => Complex.exp (f x)
theorem
ContDiffAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{x : E}
{n : WithTop ℕ∞}
(hf : ContDiffAt 𝕜 n f x)
 :
ContDiffAt 𝕜 n (fun (x : E) => Complex.exp (f x)) x
theorem
ContDiffOn.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{s : Set E}
{n : WithTop ℕ∞}
(hf : ContDiffOn 𝕜 n f s)
 :
ContDiffOn 𝕜 n (fun (x : E) => Complex.exp (f x)) s
theorem
ContDiffWithinAt.cexp
{𝕜 : Type u_1}
[NontriviallyNormedField 𝕜]
[NormedAlgebra 𝕜 ℂ]
{E : Type u_2}
[NormedAddCommGroup E]
[NormedSpace 𝕜 E]
{f : E → ℂ}
{x : E}
{s : Set E}
{n : WithTop ℕ∞}
(hf : ContDiffWithinAt 𝕜 n f s x)
 :
ContDiffWithinAt 𝕜 n (fun (x : E) => Complex.exp (f x)) s x
@[simp]
theorem
AnalyticAt.rexp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{x : E}
(fa : AnalyticAt ℝ f x)
 :
AnalyticAt ℝ (Real.exp ∘ f) x
exp ∘ f is analytic
theorem
AnalyticAt.rexp'
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{x : E}
(fa : AnalyticAt ℝ f x)
 :
AnalyticAt ℝ (fun (z : E) => Real.exp (f z)) x
exp ∘ f is analytic
theorem
AnalyticWithinAt.rexp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{s : Set E}
{x : E}
(fa : AnalyticWithinAt ℝ f s x)
 :
AnalyticWithinAt ℝ (fun (z : E) => Real.exp (f z)) s x
theorem
AnalyticOnNhd.rexp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{s : Set E}
(fs : AnalyticOnNhd ℝ f s)
 :
AnalyticOnNhd ℝ (fun (z : E) => Real.exp (f z)) s
exp ∘ f is analytic
theorem
AnalyticOn.rexp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{s : Set E}
(fs : AnalyticOn ℝ f s)
 :
AnalyticOn ℝ (fun (z : E) => Real.exp (f z)) s
Register lemmas for the derivatives of the composition of Real.exp with a differentiable
function, for standalone use and use with simp.
theorem
HasStrictDerivAt.exp
{f : ℝ → ℝ}
{f' x : ℝ}
(hf : HasStrictDerivAt f f' x)
 :
HasStrictDerivAt (fun (x : ℝ) => Real.exp (f x)) (Real.exp (f x) * f') x
theorem
HasDerivAt.exp
{f : ℝ → ℝ}
{f' x : ℝ}
(hf : HasDerivAt f f' x)
 :
HasDerivAt (fun (x : ℝ) => Real.exp (f x)) (Real.exp (f x) * f') x
theorem
HasDerivWithinAt.exp
{f : ℝ → ℝ}
{f' x : ℝ}
{s : Set ℝ}
(hf : HasDerivWithinAt f f' s x)
 :
HasDerivWithinAt (fun (x : ℝ) => Real.exp (f x)) (Real.exp (f x) * f') s x
theorem
derivWithin_exp
{f : ℝ → ℝ}
{x : ℝ}
{s : Set ℝ}
(hf : DifferentiableWithinAt ℝ f s x)
(hxs : UniqueDiffWithinAt ℝ s x)
 :
Register lemmas for the derivatives of the composition of Real.exp with a differentiable
function, for standalone use and use with simp.
theorem
ContDiff.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{n : WithTop ℕ∞}
(hf : ContDiff ℝ n f)
 :
theorem
ContDiffAt.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{x : E}
{n : WithTop ℕ∞}
(hf : ContDiffAt ℝ n f x)
 :
ContDiffAt ℝ n (fun (x : E) => Real.exp (f x)) x
theorem
ContDiffOn.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{s : Set E}
{n : WithTop ℕ∞}
(hf : ContDiffOn ℝ n f s)
 :
ContDiffOn ℝ n (fun (x : E) => Real.exp (f x)) s
theorem
ContDiffWithinAt.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{x : E}
{s : Set E}
{n : WithTop ℕ∞}
(hf : ContDiffWithinAt ℝ n f s x)
 :
ContDiffWithinAt ℝ n (fun (x : E) => Real.exp (f x)) s x
theorem
HasFDerivWithinAt.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{f' : E →L[ℝ] ℝ}
{x : E}
{s : Set E}
(hf : HasFDerivWithinAt f f' s x)
 :
HasFDerivWithinAt (fun (x : E) => Real.exp (f x)) (Real.exp (f x) • f') s x
theorem
HasFDerivAt.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{f' : E →L[ℝ] ℝ}
{x : E}
(hf : HasFDerivAt f f' x)
 :
HasFDerivAt (fun (x : E) => Real.exp (f x)) (Real.exp (f x) • f') x
theorem
HasStrictFDerivAt.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{f' : E →L[ℝ] ℝ}
{x : E}
(hf : HasStrictFDerivAt f f' x)
 :
HasStrictFDerivAt (fun (x : E) => Real.exp (f x)) (Real.exp (f x) • f') x
theorem
DifferentiableWithinAt.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{x : E}
{s : Set E}
(hf : DifferentiableWithinAt ℝ f s x)
 :
DifferentiableWithinAt ℝ (fun (x : E) => Real.exp (f x)) s x
@[simp]
theorem
DifferentiableAt.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{x : E}
(hc : DifferentiableAt ℝ f x)
 :
DifferentiableAt ℝ (fun (x : E) => Real.exp (f x)) x
theorem
DifferentiableOn.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{s : Set E}
(hc : DifferentiableOn ℝ f s)
 :
DifferentiableOn ℝ (fun (x : E) => Real.exp (f x)) s
@[simp]
theorem
Differentiable.exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
(hc : Differentiable ℝ f)
 :
Differentiable ℝ fun (x : E) => Real.exp (f x)
theorem
fderivWithin_exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{x : E}
{s : Set E}
(hf : DifferentiableWithinAt ℝ f s x)
(hxs : UniqueDiffWithinAt ℝ s x)
 :
@[simp]
theorem
fderiv_exp
{E : Type u_1}
[NormedAddCommGroup E]
[NormedSpace ℝ E]
{f : E → ℝ}
{x : E}
(hc : DifferentiableAt ℝ f x)
 :