type 'a dist
val (+~) : int dist -> int dist -> int distval (-~) : int dist -> int dist -> int distval (*~) : int dist -> int dist -> int distval (/~) : int dist -> int dist -> int distval (+.~) : float dist -> float dist -> float distval (-.~) : float dist -> float dist -> float distval (*.~) : float dist -> float dist -> float distval (/.~) : float dist -> float dist -> float distval (&~) : bool dist -> bool dist -> bool distval (|~) : bool dist -> bool dist -> bool distval not : bool dist -> bool distval (^~) : string dist -> string dist -> string dist