SWI-Prolog represents floats using the C double
type. On
virtually all modern hardware this implies it uses 64-bit IEEEĀ 754
floating point numbers. See also section
4.27.2.4. All floating point arithmetic is performed using C.
Different C compilers, different C math libraries and different hardware
floating point support may yield different results for the same
expression on different instances of SWI-Prolog.