Documentation

SpherePacking.Tactic.NormNumI

theorem Mathlib.Meta.NormNumI.split_zero :
0 = { re := 0, im := 0 }
theorem Mathlib.Meta.NormNumI.split_one :
1 = { re := 1, im := 0 }
theorem Mathlib.Meta.NormNumI.split_add {z₁ z₂ : } {a₁ a₂ b₁ b₂ : } (h₁ : z₁ = { re := a₁, im := b₁ }) (h₂ : z₂ = { re := a₂, im := b₂ }) :
z₁ + z₂ = { re := a₁ + a₂, im := b₁ + b₂ }
theorem Mathlib.Meta.NormNumI.split_mul {z₁ z₂ : } {a₁ a₂ b₁ b₂ : } (h₁ : z₁ = { re := a₁, im := b₁ }) (h₂ : z₂ = { re := a₂, im := b₂ }) :
z₁ * z₂ = { re := a₁ * a₂ - b₁ * b₂, im := a₁ * b₂ + b₁ * a₂ }
theorem Mathlib.Meta.NormNumI.split_inv {z : } {x y : } (h : z = { re := x, im := y }) :
z⁻¹ = { re := x / (x * x + y * y), im := -y / (x * x + y * y) }
theorem Mathlib.Meta.NormNumI.split_neg {z : } {a b : } (h : z = { re := a, im := b }) :
-z = { re := -a, im := -b }
theorem Mathlib.Meta.NormNumI.split_conj {w : } {a b : } (hw : w = { re := a, im := b }) :
(starRingEnd ) w = { re := a, im := -b }
theorem Mathlib.Meta.NormNumI.eq_eq {z : } {a b a' b' : } (pf : z = { re := a, im := b }) (pf_a : a = a') (pf_b : b = b') :
z = { re := a', im := b' }
theorem Mathlib.Meta.NormNumI.eq_of_eq_of_eq_of_eq {z w : } {az bz aw bw : } (hz : z = { re := az, im := bz }) (hw : w = { re := aw, im := bw }) (ha : az = aw) (hb : bz = bw) :
z = w
theorem Mathlib.Meta.NormNumI.ne_of_re_ne {z w : } {az bz aw bw : } (hz : z = { re := az, im := bz }) (hw : w = { re := aw, im := bw }) (ha : az aw) :
z w
theorem Mathlib.Meta.NormNumI.ne_of_im_ne {z w : } {az bz aw bw : } (hz : z = { re := az, im := bz }) (hw : w = { re := aw, im := bw }) (hb : bz bw) :
z w
theorem Mathlib.Meta.NormNumI.re_eq_of_eq {z : } {a b : } (hz : z = { re := a, im := b }) :
z.re = a
theorem Mathlib.Meta.NormNumI.im_eq_of_eq {z : } {a b : } (hz : z = { re := a, im := b }) :
z.im = b
partial def Mathlib.Meta.NormNumI.parse (z : Q()) :
Lean.MetaM ((a : Q()) × (b : Q()) × Q(«$z» = { re := «$a», im := «$b» }))
def Mathlib.Meta.NormNumI.normalize (z : Q()) :
Lean.MetaM ((a : Q()) × (b : Q()) × Q(«$z» = { re := «$a», im := «$b» }))
Equations
  • One or more equations did not get rendered due to their size.
Instances For

    The norm_num extension which identifies expressions of the form (z : ℂ) = (w : ℂ), such that norm_num successfully recognises both the real and imaginary parts of both z and w.

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

      The norm_num extension which identifies expressions of the form Complex.re (z : ℂ), such that norm_num successfully recognises the real part of z.

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

        The norm_num extension which identifies expressions of the form Complex.im (z : ℂ), such that norm_num successfully recognises the imaginary part of z.

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