`sig type t = Complex.t = { re : float; im : float; } val zero : BatComplex.t val one : BatComplex.t val i : BatComplex.t val neg : BatComplex.t -> BatComplex.t val conj : BatComplex.t -> BatComplex.t val add : BatComplex.t -> BatComplex.t -> BatComplex.t val sub : BatComplex.t -> BatComplex.t -> BatComplex.t val mul : BatComplex.t -> BatComplex.t -> BatComplex.t val div : BatComplex.t -> BatComplex.t -> BatComplex.t val sqrt : BatComplex.t -> BatComplex.t val norm2 : BatComplex.t -> float val norm : BatComplex.t -> float val arg : BatComplex.t -> float val polar : float -> float -> BatComplex.t val exp : BatComplex.t -> BatComplex.t val log : BatComplex.t -> BatComplex.t val operations : BatComplex.t BatNumber.numeric val inv : BatComplex.t -> BatComplex.t val succ : BatComplex.t -> BatComplex.t val pred : BatComplex.t -> BatComplex.t val abs : BatComplex.t -> BatComplex.t val modulo : BatComplex.t -> BatComplex.t -> BatComplex.t val pow : BatComplex.t -> BatComplex.t -> BatComplex.t val compare : BatComplex.t -> BatComplex.t -> int val ord : BatComplex.t -> BatComplex.t -> BatOrd.order val equal : BatComplex.t -> BatComplex.t -> bool val of_int : int -> BatComplex.t val to_int : BatComplex.t -> int val of_string : string -> BatComplex.t val to_string : BatComplex.t -> string val ( + ) : BatComplex.t -> BatComplex.t -> BatComplex.t val ( - ) : BatComplex.t -> BatComplex.t -> BatComplex.t val ( * ) : BatComplex.t -> BatComplex.t -> BatComplex.t val ( / ) : BatComplex.t -> BatComplex.t -> BatComplex.t val ( ** ) : BatComplex.t -> BatComplex.t -> BatComplex.t val ( -- ) : BatComplex.t -> BatComplex.t -> BatComplex.t BatEnum.t val ( --- ) : BatComplex.t -> BatComplex.t -> BatComplex.t BatEnum.t val of_float : float -> BatComplex.t val to_float : BatComplex.t -> float module Infix : sig type bat__infix_t = t val ( + ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( - ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( * ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( / ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( ** ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( -- ) : bat__infix_t -> bat__infix_t -> bat__infix_t BatEnum.t val ( --- ) : bat__infix_t -> bat__infix_t -> bat__infix_t BatEnum.t end module Compare : sig type bat__compare_t = t val ( <> ) : bat__compare_t -> bat__compare_t -> bool val ( >= ) : bat__compare_t -> bat__compare_t -> bool val ( <= ) : bat__compare_t -> bat__compare_t -> bool val ( > ) : bat__compare_t -> bat__compare_t -> bool val ( < ) : bat__compare_t -> bat__compare_t -> bool val ( = ) : bat__compare_t -> bat__compare_t -> bool end val print : 'a BatInnerIO.output -> BatComplex.t -> unit end`