Module E_ACSL.Rational

Generation of rational numbers.

Create a real

val normalize_str : string -> string

Normalize the string so that it fits the representation used by the underlying real library. For example, "0.1" is a real number in ACSL whereas it is considered as a double by libgmp because it is written in decimal expansion. In order to make libgmp consider it to be a rational, it must be converted into "1/10".

Assumes that the given exp is of real type and casts it into Z

Assumes that the given exp is of real type and casts it into the given typ

Applies binop to the given expressions. The optional term indicates whether the comparison has a correspondance in the logic.

Compares two expressions according to the given binop. The optional term indicates whether the comparison has a correspondance in the logic.