sig
  external ( + ) : float -> float -> float = "%addfloat"
  external ( - ) : float -> float -> float = "%subfloat"
  external ( * ) : float -> float -> float = "%mulfloat"
  external ( / ) : float -> float -> float = "%divfloat"
  val ( % ) : float -> float -> float
  val ( ** ) : float -> float -> float
  val ( < ) : float -> float -> bool
  val ( > ) : float -> float -> bool
  val ( = ) : float -> float -> bool
  val ( <= ) : float -> float -> bool
  val ( >= ) : float -> float -> bool
end