Documentation

Mathlib.Analysis.SpecialFunctions.Complex.Log

The complex log function #

Basic properties, relationship with exp.

noncomputable def Complex.log (x : โ„‚) :

Inverse of the exp function. Returns values such that (log x).im > - ฯ€ and (log x).im โ‰ค ฯ€. log 0 = 0

Instances For
    theorem Complex.exp_log {x : โ„‚} (hx : x โ‰  0) :
    exp (log x) = x
    theorem Complex.log_exp {x : โ„‚} (hxโ‚ : -Real.pi < x.im) (hxโ‚‚ : x.im โ‰ค Real.pi) :
    log (exp x) = x
    theorem Complex.exp_inj_of_neg_pi_lt_of_le_pi {x y : โ„‚} (hxโ‚ : -Real.pi < x.im) (hxโ‚‚ : x.im โ‰ค Real.pi) (hyโ‚ : -Real.pi < y.im) (hyโ‚‚ : y.im โ‰ค Real.pi) (hxy : exp x = exp y) :
    x = y
    theorem Complex.ofReal_log {x : โ„} (hx : 0 โ‰ค x) :
    โ†‘(Real.log x) = log โ†‘x
    @[simp]
    theorem Complex.natCast_log {n : โ„•} :
    โ†‘(Real.log โ†‘n) = log โ†‘n
    @[simp]
    theorem Complex.ofNat_log {n : โ„•} [n.AtLeastTwo] :
    โ†‘(Real.log (OfNat.ofNat n)) = log (OfNat.ofNat n)
    theorem Complex.log_ofReal_mul {r : โ„} (hr : 0 < r) {x : โ„‚} (hx : x โ‰  0) :
    log (โ†‘r * x) = โ†‘(Real.log r) + log x
    theorem Complex.log_mul_ofReal (r : โ„) (hr : 0 < r) (x : โ„‚) (hx : x โ‰  0) :
    log (x * โ†‘r) = โ†‘(Real.log r) + log x
    theorem Complex.log_mul_eq_add_log_iff {x y : โ„‚} (hxโ‚€ : x โ‰  0) (hyโ‚€ : y โ‰  0) :
    log (x * y) = log x + log y โ†” x.arg + y.arg โˆˆ Set.Ioc (-Real.pi) Real.pi
    theorem Complex.log_mul {x y : โ„‚} (hxโ‚€ : x โ‰  0) (hyโ‚€ : y โ‰  0) :
    x.arg + y.arg โˆˆ Set.Ioc (-Real.pi) Real.pi โ†’ log (x * y) = log x + log y

    Alias of the reverse direction of Complex.log_mul_eq_add_log_iff.

    @[simp]
    theorem Complex.log_div_self (x : โ„‚) :
    log (x / x) = 0

    This holds true for all x : โ„‚ because of the junk values 0 / 0 = 0 and log 0 = 0.

    theorem Complex.two_pi_I_ne_zero :
    2 * โ†‘Real.pi * I โ‰  0
    theorem Complex.exp_eq_one_iff {x : โ„‚} :
    exp x = 1 โ†” โˆƒ (n : โ„ค), x = โ†‘n * (2 * โ†‘Real.pi * I)
    theorem Complex.exp_eq_exp_iff_exists_int {x y : โ„‚} :
    exp x = exp y โ†” โˆƒ (n : โ„ค), x = y + โ†‘n * (2 * โ†‘Real.pi * I)
    theorem Complex.log_exp_exists (z : โ„‚) :
    โˆƒ (n : โ„ค), log (exp z) = z + โ†‘n * (2 * โ†‘Real.pi * I)
    theorem Filter.Tendsto.clog {ฮฑ : Type u_1} {l : Filter ฮฑ} {f : ฮฑ โ†’ โ„‚} {x : โ„‚} (h : Tendsto f l (nhds x)) (hx : x โˆˆ Complex.slitPlane) :
    Tendsto (fun (t : ฮฑ) => Complex.log (f t)) l (nhds (Complex.log x))
    theorem ContinuousAt.clog {ฮฑ : Type u_1} [TopologicalSpace ฮฑ] {f : ฮฑ โ†’ โ„‚} {x : ฮฑ} (hโ‚ : ContinuousAt f x) (hโ‚‚ : f x โˆˆ Complex.slitPlane) :
    ContinuousAt (fun (t : ฮฑ) => Complex.log (f t)) x
    theorem ContinuousWithinAt.clog {ฮฑ : Type u_1} [TopologicalSpace ฮฑ] {f : ฮฑ โ†’ โ„‚} {s : Set ฮฑ} {x : ฮฑ} (hโ‚ : ContinuousWithinAt f s x) (hโ‚‚ : f x โˆˆ Complex.slitPlane) :
    ContinuousWithinAt (fun (t : ฮฑ) => Complex.log (f t)) s x
    theorem ContinuousOn.clog {ฮฑ : Type u_1} [TopologicalSpace ฮฑ] {f : ฮฑ โ†’ โ„‚} {s : Set ฮฑ} (hโ‚ : ContinuousOn f s) (hโ‚‚ : โˆ€ x โˆˆ s, f x โˆˆ Complex.slitPlane) :
    ContinuousOn (fun (t : ฮฑ) => Complex.log (f t)) s
    theorem Continuous.clog {ฮฑ : Type u_1} [TopologicalSpace ฮฑ] {f : ฮฑ โ†’ โ„‚} (hโ‚ : Continuous f) (hโ‚‚ : โˆ€ (x : ฮฑ), f x โˆˆ Complex.slitPlane) :
    Continuous fun (t : ฮฑ) => Complex.log (f t)

    Complex.exp as an OpenPartialHomeomorph with source = {z | -ฯ€ < im z < ฯ€} and target = {z | 0 < re z} โˆช {z | im z โ‰  0} (a.k.a. slitPlane). This definition is used to prove that Complex.log is complex differentiable at all points but the negative real semi-axis.

    Instances For
      @[deprecated Complex.expOpenPartialHomeomorph (since := "2026-01-13")]

      Alias of Complex.expOpenPartialHomeomorph.


      Complex.exp as an OpenPartialHomeomorph with source = {z | -ฯ€ < im z < ฯ€} and target = {z | 0 < re z} โˆช {z | im z โ‰  0} (a.k.a. slitPlane). This definition is used to prove that Complex.log is complex differentiable at all points but the negative real semi-axis.

      Instances For