Maps on the unit circle #
In this file we prove some basic lemmas about expMapCircle
and the restriction of Complex.arg
to the unit circle. These two maps define a partial equivalence between circle
and ℝ
, see
circle.argPartialEquiv
and circle.argEquiv
, that sends the whole circle to (-π, π]
.
Complex.arg ∘ (↑)
and expMapCircle
define a partial equivalence between circle
and ℝ
with source = Set.univ
and target = Set.Ioc (-π) π
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Complex.arg
and expMapCircle
define an equivalence between circle
and (-π, π]
.
Equations
- circle.argEquiv = { toFun := fun (z : ↥circle) => ⟨(↑z).arg, ⋯⟩, invFun := ⇑expMapCircle ∘ Subtype.val, left_inv := circle.argEquiv.proof_2, right_inv := circle.argEquiv.proof_3 }
Instances For
expMapCircle
, applied to a Real.Angle
.
Equations
- θ.expMapCircle = periodic_expMapCircle.lift θ
Instances For
Additive characters valued in the complex circle #
The additive character from ZMod N
to the unit circle in ℂ
, sending j mod N
to
exp (2 * π * I * j / N)
.
Equations
- ZMod.toCircle = { toFun := fun (j : ZMod N) => AddCircle.toCircle (ZMod.toAddCircle j), map_zero_eq_one' := ⋯, map_add_eq_mul' := ⋯ }
Instances For
Explicit formula for toCircle j
. Note that this is "evil" because it uses ZMod.val
. Where
possible, it is recommended to lift j
to ℤ
and use toCircle_intCast
instead.