Documentation

Mathlib.Analysis.SpecialFunctions.Trigonometric.Arctan

The arctan function. #

Inequalities, identities and Real.tan as a PartialHomeomorph between (-(π / 2), π / 2) and the whole line.

The result of arctan x + arctan y is given by arctan_add, arctan_add_eq_add_pi or arctan_add_eq_sub_pi depending on whether x * y < 1 and 0 < x. As an application of arctan_add we give four Machin-like formulas (linear combinations of arctangents equal to π / 4 = arctan 1), including John Machin's original one at four_mul_arctan_inv_5_sub_arctan_inv_239.

theorem Real.tan_add {x : } {y : } (h : ((∀ (k : ), x (2 * k + 1) * Real.pi / 2) ∀ (l : ), y (2 * l + 1) * Real.pi / 2) (∃ (k : ), x = (2 * k + 1) * Real.pi / 2) ∃ (l : ), y = (2 * l + 1) * Real.pi / 2) :
(x + y).tan = (x.tan + y.tan) / (1 - x.tan * y.tan)
theorem Real.tan_add' {x : } {y : } (h : (∀ (k : ), x (2 * k + 1) * Real.pi / 2) ∀ (l : ), y (2 * l + 1) * Real.pi / 2) :
(x + y).tan = (x.tan + y.tan) / (1 - x.tan * y.tan)
theorem Real.tan_two_mul {x : } :
(2 * x).tan = 2 * x.tan / (1 - x.tan ^ 2)
theorem Real.tan_int_mul_pi_div_two (n : ) :
(n * Real.pi / 2).tan = 0
theorem Real.continuous_tan :
Continuous fun (x : {x : | x.cos 0}) => (x).tan

Real.tan as an OrderIso between (-(π / 2), π / 2) and .

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    noncomputable def Real.arctan (x : ) :

    Inverse of the tan function, returns values in the range -π / 2 < arctan x and arctan x < π / 2

    Equations
    Instances For
      @[simp]
      theorem Real.tan_arctan (x : ) :
      x.arctan.tan = x
      theorem Real.arctan_mem_Ioo (x : ) :
      x.arctan Set.Ioo (-(Real.pi / 2)) (Real.pi / 2)
      theorem Real.arctan_tan {x : } (hx₁ : -(Real.pi / 2) < x) (hx₂ : x < Real.pi / 2) :
      x.tan.arctan = x
      theorem Real.cos_arctan_pos (x : ) :
      0 < x.arctan.cos
      theorem Real.cos_sq_arctan (x : ) :
      x.arctan.cos ^ 2 = 1 / (1 + x ^ 2)
      theorem Real.sin_arctan (x : ) :
      x.arctan.sin = x / (1 + x ^ 2)
      theorem Real.cos_arctan (x : ) :
      x.arctan.cos = 1 / (1 + x ^ 2)
      theorem Real.arctan_lt_pi_div_two (x : ) :
      x.arctan < Real.pi / 2
      theorem Real.neg_pi_div_two_lt_arctan (x : ) :
      -(Real.pi / 2) < x.arctan
      theorem Real.arctan_eq_arcsin (x : ) :
      x.arctan = (x / (1 + x ^ 2)).arcsin
      theorem Real.arcsin_eq_arctan {x : } (h : x Set.Ioo (-1) 1) :
      x.arcsin = (x / (1 - x ^ 2)).arctan
      @[simp]
      @[simp]
      theorem Real.arctan_eq_zero_iff {x : } :
      x.arctan = 0 x = 0
      theorem Real.arctan_eq_of_tan_eq {x : } {y : } (h : x.tan = y) (hx : x Set.Ioo (-(Real.pi / 2)) (Real.pi / 2)) :
      y.arctan = x
      @[simp]
      theorem Real.arctan_neg (x : ) :
      (-x).arctan = -x.arctan
      theorem Real.arctan_eq_arccos {x : } (h : 0 x) :
      x.arctan = ((1 + x ^ 2))⁻¹.arccos
      theorem Real.arccos_eq_arctan {x : } (h : 0 < x) :
      x.arccos = ((1 - x ^ 2) / x).arctan
      theorem Real.arctan_inv_of_pos {x : } (h : 0 < x) :
      x⁻¹.arctan = Real.pi / 2 - x.arctan
      theorem Real.arctan_inv_of_neg {x : } (h : x < 0) :
      x⁻¹.arctan = -(Real.pi / 2) - x.arctan
      theorem Real.arctan_ne_mul_pi_div_two {x : } (k : ) :
      x.arctan (2 * k + 1) * Real.pi / 2
      theorem Real.arctan_add_arctan_lt_pi_div_two {x : } {y : } (h : x * y < 1) :
      x.arctan + y.arctan < Real.pi / 2
      theorem Real.arctan_add {x : } {y : } (h : x * y < 1) :
      x.arctan + y.arctan = ((x + y) / (1 - x * y)).arctan
      theorem Real.arctan_add_eq_add_pi {x : } {y : } (h : 1 < x * y) (hx : 0 < x) :
      x.arctan + y.arctan = ((x + y) / (1 - x * y)).arctan + Real.pi
      theorem Real.arctan_add_eq_sub_pi {x : } {y : } (h : 1 < x * y) (hx : x < 0) :
      x.arctan + y.arctan = ((x + y) / (1 - x * y)).arctan - Real.pi
      theorem Real.two_mul_arctan {x : } (h₁ : -1 < x) (h₂ : x < 1) :
      2 * x.arctan = (2 * x / (1 - x ^ 2)).arctan
      theorem Real.two_mul_arctan_add_pi {x : } (h : 1 < x) :
      2 * x.arctan = (2 * x / (1 - x ^ 2)).arctan + Real.pi
      theorem Real.two_mul_arctan_sub_pi {x : } (h : x < -1) :
      2 * x.arctan = (2 * x / (1 - x ^ 2)).arctan - Real.pi

      John Machin's 1706 formula, which he used to compute π to 100 decimal places.

      Real.tan as a PartialHomeomorph between (-(π / 2), π / 2) and the whole line.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For