summaryrefslogtreecommitdiff
path: root/Test/floats/float14.bpl
diff options
context:
space:
mode:
Diffstat (limited to 'Test/floats/float14.bpl')
-rw-r--r--Test/floats/float14.bpl17
1 files changed, 17 insertions, 0 deletions
diff --git a/Test/floats/float14.bpl b/Test/floats/float14.bpl
new file mode 100644
index 00000000..46c1b07d
--- /dev/null
+++ b/Test/floats/float14.bpl
@@ -0,0 +1,17 @@
+// RUN: %boogie -proverWarnings:1 "%s" > "%t"
+// RUN: %diff "%s.expect" "%t"
+
+function {:builtin "(_ to_fp 11 53) RNE"} TO_FLOAT64_INT(int) returns (float64);
+function {:builtin "(_ to_fp 11 53) RNE"} TO_FLOAT64_REAL(real) returns (float64);
+
+procedure main() returns () {
+ var x : float64;
+ var y : float64;
+ var r : float64;
+
+ x := TO_FLOAT64_INT(77617);
+ y := TO_FLOAT64_INT(33096);
+ r := y*y*y*y*y*y * TO_FLOAT64_REAL(333.75) + x*x * (x*x*y*y*TO_FLOAT64_INT(11) - y*y*y*y*y*y - y*y*y*y * TO_FLOAT64_INT(121) - TO_FLOAT64_INT(2)) + y*y*y*y*y*y*y*y * TO_FLOAT64_REAL(5.5) + x / (y*TO_FLOAT64_INT(2));
+
+ assert(r >= TO_FLOAT64_INT(0));
+} \ No newline at end of file