sig   type t = { re : float; im : float; }   val zero : Complex.t   val one : Complex.t   val i : Complex.t   val neg : Complex.t -> Complex.t   val conj : Complex.t -> Complex.t   val add : Complex.t -> Complex.t -> Complex.t   val sub : Complex.t -> Complex.t -> Complex.t   val mul : Complex.t -> Complex.t -> Complex.t   val inv : Complex.t -> Complex.t   val div : Complex.t -> Complex.t -> Complex.t   val sqrt : Complex.t -> Complex.t   val norm2 : Complex.t -> float   val norm : Complex.t -> float   val arg : Complex.t -> float   val polar : float -> float -> Complex.t   val exp : Complex.t -> Complex.t   val log : Complex.t -> Complex.t   val pow : Complex.t -> Complex.t -> Complex.t end