mathlib3 documentation

monlib / preq.complex

Some stuff about complex numbers #

This file contains some basic lemmas about complex numbers.

theorem abs_of_sum_sq_eq_sum_abs_sq_iff {n : Type u_1} [fintype n] (α : n ) :
complex.abs (finset.univ.sum (λ (i : n), α i ^ 2)) = finset.univ.sum (λ (i : n), complex.abs (α i) ^ 2) (i j : n), (α i).re * (α j).im = (α j).re * (α i).im

|iαi2|=i|αi|2 if and only if i,j[n]:(αi)(αj)=(αj)(αi)

theorem abs_of_sq_add_sq_eq_abs_sq_add_abs_sq_iff (α₁ α₂ : ) :
complex.abs (α₁ ^ 2 + α₂ ^ 2) = complex.abs α₁ ^ 2 + complex.abs α₂ ^ 2 α₁.re * α₂.im = α₂.re * α₁.im
theorem abs_of_sq_add_sq_abs_sq_add_abs_sq_iff' (α₁ α₂ : ) :
complex.abs (α₁ ^ 2 + α₂ ^ 2) = complex.abs α₁ ^ 2 + complex.abs α₂ ^ 2 α₁ * (star_ring_end ) α₂ = (star_ring_end ) α₁ * α₂
theorem abs_of_sum_sq_eq_sum_abs_sq_iff' {n : Type u_1} [fintype n] (α : n ) :
complex.abs (finset.univ.sum (λ (i : n), α i ^ 2)) = finset.univ.sum (λ (i : n), complex.abs (α i) ^ 2) (i j : n), α i * (star_ring_end ) (α j) = (star_ring_end ) (α i) * α j

|iαi2|=i|αi|2 is also equivalent to saying that for any i,j we get αiαj=αiαj

theorem abs_of_sq_add_sq_abs_sq_add_abs_sq_iff'' (α₁ α₂ : ) :
complex.abs (α₁ ^ 2 + α₂ ^ 2) = complex.abs α₁ ^ 2 + complex.abs α₂ ^ 2 (γ : ) (β₁ β₂ : ), α₁ = γ * β₁ α₂ = γ * β₂
theorem abs_of_sum_sq_eq_sum_abs_sq_iff'' {n : Type u_1} [fintype n] (α : n ) :
complex.abs (finset.univ.sum (λ (i : n), α i ^ 2)) = finset.univ.sum (λ (i : n), complex.abs (α i) ^ 2) (γ : ), (i : n), (β : ), α i = γ * β

|iαi2|=i|αi|2 is equivalent to saying that there exists some γC such that for any i[n] we get there exists some βR such that αi=γβ