summaryrefslogtreecommitdiff
path: root/Test/floats/test9.bpl
diff options
context:
space:
mode:
authorGravatar Checkmate50 <dgeisler50@gmail.com>2016-05-31 12:59:38 -0600
committerGravatar Checkmate50 <dgeisler50@gmail.com>2016-05-31 12:59:38 -0600
commitc19c2495497d0dfa7aaf871cf833cd5e5f986d33 (patch)
tree86c6f9fdd2baf6d8f8b2ebacda439d1ee6853dcc /Test/floats/test9.bpl
parent6f7fc01346c0ebe9072e61ace2cfede4fcedea09 (diff)
moved all the tests to the testing folder
Diffstat (limited to 'Test/floats/test9.bpl')
-rw-r--r--Test/floats/test9.bpl34
1 files changed, 34 insertions, 0 deletions
diff --git a/Test/floats/test9.bpl b/Test/floats/test9.bpl
new file mode 100644
index 00000000..c3a42e6b
--- /dev/null
+++ b/Test/floats/test9.bpl
@@ -0,0 +1,34 @@
+//Translation from feedback_diverge.c
+//Should give an error
+//Not sure on this one...
+
+procedure main() returns () {
+ var A : float;
+ var B : float;
+ var X : float;
+ var i : int;
+ var rand : int;
+
+ A := fp(0);
+ B := fp(0);
+
+ i := 0;
+ while (i < 3600000) {
+
+ havoc rand;
+ if (rand != 0) {
+ havoc X;
+ assume(X >= fp(-20) && X <= fp(20));
+ }
+ else {
+ X := B;
+ }
+
+ B := B - (B * fp(2.0) - A - X) * fp(.005);
+ A := X;
+
+ i := i + 1;
+ }
+
+ assert(A >= fp(-100) && A <= fp(100));
+} \ No newline at end of file