├── XSAT_IN.txt ├── .DS_Store ├── docker ├── debug.py ├── entrypoint.sh ├── mytest.smt2 ├── mytest2.smt2 ├── mytest4.smt2 ├── include │ ├── R_square │ │ └── xsat.h │ └── R_verify │ │ └── xsat.h ├── Makefile ├── Makefile.verbose ├── mytest3.smt2 └── Dockerfile ├── benchmarks_small ├── test_v5_r15_vr10_c1_s11127.smt2 ├── square.smt2 ├── e1_1.c.smt2 ├── e1_2.c.smt2 ├── e1.c.smt2 ├── pow5.smt2 ├── e2a_3.c.smt2 ├── div2.c.3.smt2 ├── e2a_1.c.smt2 ├── div3.c.3.smt2 ├── div.c.3.smt2 ├── mult1.c.3.smt2 ├── e2a_2.c.smt2 ├── mult2.c.3.smt2 ├── sine.1.0.i.smt2 ├── e3_2.c.smt2 ├── e2_3.c.smt2 ├── sine.2.0.i.smt2 ├── sine.3.0.i.smt2 ├── sine.4.0.i.smt2 ├── sine.5.0.i.smt2 ├── sine.6.0.i.smt2 ├── sine.7.0.i.smt2 ├── sine.8.0.i.smt2 ├── f23.smt2 ├── e2_1.c.smt2 ├── e2_2.c.smt2 ├── e3_1.c.smt2 ├── square.1.0.i.smt2 ├── square.2.0.i.smt2 ├── square.3.0.i.smt2 ├── square.4.0.i.smt2 ├── square.5.0.i.smt2 ├── square.6.0.i.smt2 ├── square.7.0.i.smt2 ├── square.8.0.i.smt2 ├── e2.c.smt2 ├── newton.5.1.i.smt2 ├── newton.8.1.i.smt2 ├── newton.1.1.i.smt2 ├── newton.2.1.i.smt2 ├── newton.3.1.i.smt2 ├── newton.4.1.i.smt2 ├── newton.6.1.i.smt2 ├── newton.7.1.i.smt2 ├── e3.c.smt2 ├── test_v3_r3_vr10_c1_s14052.smt2 ├── test_v3_r3_vr10_c1_s24300.smt2 ├── test_v3_r3_vr10_c1_s29304.smt2 ├── test_v3_r3_vr1_c1_s10392.smt2 ├── test_v3_r3_vr1_c1_s5578.smt2 ├── test_v3_r3_vr1_c1_s6731.smt2 ├── test_v3_r3_vr5_c1_s16641.smt2 ├── test_v3_r3_vr5_c1_s16867.smt2 ├── test_v3_r3_vr5_c1_s26769.smt2 ├── add_01_100_1.smt2 ├── add_01_100_2.smt2 ├── add_01_100_3.smt2 ├── add_01_100_4.smt2 ├── add_01_10_1.smt2 ├── add_01_10_2.smt2 ├── add_01_10_3.smt2 └── add_01_10_4.smt2 ├── LICENSE.txt ├── include ├── R_square │ └── xsat.h └── R_verify │ └── xsat.h ├── test_benchmarks.py └── Makefile /XSAT_IN.txt: -------------------------------------------------------------------------------- 1 | Benchmarks/div.c.50.smt2 2 | -------------------------------------------------------------------------------- /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhoulaifu/xsat/HEAD/.DS_Store -------------------------------------------------------------------------------- /docker/debug.py: -------------------------------------------------------------------------------- 1 | # If this python does not throw any exceptions, then the pip packages were 2 | # probably installed correctly. 3 | print('debug.py') 4 | import sympy 5 | import numpy 6 | import scipy 7 | -------------------------------------------------------------------------------- /docker/entrypoint.sh: -------------------------------------------------------------------------------- 1 | # Set variables needed to run MYPYTHON 2 | export PATH=$HOME/bin/python/bin/:$PATH 3 | export MYPYTHON=$HOME/bin/python/bin/python 4 | export PYTHONINC=$HOME/bin/python/include/python2.7 5 | export PYTHONLIB=$HOME/bin/python/lib 6 | export LD_LIBRARY_PATH=$HOME/bin/python/lib 7 | 8 | # Set Z3 env vars 9 | export PYTHONPATH=$HOME/bin/python/ 10 | -------------------------------------------------------------------------------- /benchmarks_small/test_v5_r15_vr10_c1_s11127.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:55 8 | 9 | (check-sat) 10 | -------------------------------------------------------------------------------- /docker/mytest.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:56 8 | 9 | (declare-fun x () (_ FloatingPoint 8 24)) 10 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000001)) 11 | (define-fun _t_15 () Bool (fp.leq x _t_10)) 12 | (assert _t_15) 13 | (check-sat) 14 | -------------------------------------------------------------------------------- /docker/mytest2.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:56 8 | 9 | (declare-fun x () (_ FloatingPoint 8 24)) 10 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000001)) 11 | (define-fun _t_15 () Bool (fp.leq x _t_10)) 12 | (assert _t_15) 13 | (check-sat) 14 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /benchmarks_small/square.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x () (_ FloatingPoint 11 53)) 10 | (declare-fun y () (_ FloatingPoint 11 53)) 11 | (declare-fun z () (_ FloatingPoint 11 53)) 12 | (define-fun _t_9 () (_ FloatingPoint 11 53) z) 13 | (define-fun _t_10 () (_ FloatingPoint 11 53) y) 14 | (define-fun _t_11 () Bool (fp.eq _t_9 _t_10)) 15 | (assert _t_11) 16 | (define-fun _t_3 () RoundingMode RNE) 17 | (define-fun _t_12 () (_ FloatingPoint 11 53) x) 18 | (define-fun _t_13 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_9 _t_10)) 19 | (define-fun _t_14 () Bool (fp.eq _t_12 _t_13)) 20 | (assert _t_14) 21 | (define-fun _t_16 () (_ FloatingPoint 11 53) (fp #b0 #b00000000000 #b0000000000000000000000000000000000000000000000000000)) 22 | (define-fun _t_17 () Bool (fp.lt _t_12 _t_16)) 23 | (assert _t_17) 24 | (check-sat) 25 | -------------------------------------------------------------------------------- /docker/mytest4.smt2: -------------------------------------------------------------------------------- 1 | (set-info :smt-lib-version 2.0) 2 | (set-info :category "crafted") 3 | (set-info :source |Christoph M. Wintersteiger (cwinter@microsoft.com). Randomly generated floating-point testcases.|) 4 | ; Rounding mode: to zero 5 | ; Precision: double (11/53) 6 | ; X = -1.38922579557407299688520652125589549541473388671875p221 {- 1752917147910380 221 (-4.68168e+066)} 7 | ; Y = -1.47554587826108107861955431872047483921051025390625p142 {- 2141668240134180 142 (-8.22644e+042)} 8 | ; -1.38922579557407299688520652125589549541473388671875p221 / -1.47554587826108107861955431872047483921051025390625p142 == 1.8829991205848026769587022499763406813144683837890625p78 9 | ; [HW: 1.8829991205848026769587022499763406813144683837890625p78] 10 | 11 | ; mpf : + 3976674510434193 78 12 | ; mpfd: + 3976674510434193 78 (5.69102e+023) class: Pos. norm. non-zero 13 | ; hwf : + 3976674510434193 78 (5.69102e+023) class: Pos. norm. non-zero 14 | 15 | (set-logic QF_FP) 16 | (set-info :status unsat) 17 | (define-sort FPN () (_ FloatingPoint 11 53)) 18 | (declare-fun x () FPN) 19 | (declare-fun y () FPN) 20 | (declare-fun r () FPN) 21 | (assert (= x (fp #b1 #b10011011100 #b0110001110100100010011010011111011000000000011101100))) 22 | (assert (= y (fp #b1 #b10010001101 #b0111100110111101010111111110101011100001000000100100))) 23 | (assert (= r (fp #b0 #b10001001101 #b1110001000001100001110101111100101001110111110010001))) 24 | (assert (not (= (fp.div roundTowardZero x y) r))) 25 | (check-sat) 26 | 27 | -------------------------------------------------------------------------------- /benchmarks_small/e1_1.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b8 () (_ FloatingPoint 8 24)) 10 | (declare-fun b20 () (_ FloatingPoint 8 24)) 11 | (declare-fun b23 () (_ FloatingPoint 8 24)) 12 | (declare-fun b13 () (_ FloatingPoint 11 53)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) b8) 15 | (define-fun _t_10 () (_ FloatingPoint 8 24) b20) 16 | (define-fun _t_11 () Bool (fp.leq _t_9 _t_10)) 17 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_12)) 19 | (define-fun _t_14 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_13)) 20 | (define-fun _t_15 () (_ FloatingPoint 11 53) b13) 21 | (define-fun _t_16 () Bool (fp.lt _t_14 _t_15)) 22 | (define-fun _t_17 () Bool (and _t_11 _t_16)) 23 | (define-fun _t_18 () (_ FloatingPoint 8 24) b23) 24 | (define-fun _t_19 () Bool (fp.leq _t_18 _t_9)) 25 | (define-fun _t_20 () Bool (and _t_17 _t_19)) 26 | (assert _t_20) 27 | (check-sat) 28 | -------------------------------------------------------------------------------- /benchmarks_small/e1_2.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b21 () (_ FloatingPoint 8 24)) 10 | (declare-fun b18 () (_ FloatingPoint 8 24)) 11 | (declare-fun b8 () (_ FloatingPoint 8 24)) 12 | (declare-fun b13 () (_ FloatingPoint 11 53)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) b8) 15 | (define-fun _t_10 () (_ FloatingPoint 8 24) b18) 16 | (define-fun _t_11 () Bool (fp.leq _t_9 _t_10)) 17 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_12)) 19 | (define-fun _t_14 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_13)) 20 | (define-fun _t_15 () (_ FloatingPoint 11 53) b13) 21 | (define-fun _t_16 () Bool (fp.lt _t_14 _t_15)) 22 | (define-fun _t_17 () Bool (and _t_11 _t_16)) 23 | (define-fun _t_18 () (_ FloatingPoint 8 24) b21) 24 | (define-fun _t_19 () Bool (fp.leq _t_18 _t_9)) 25 | (define-fun _t_20 () Bool (and _t_17 _t_19)) 26 | (assert _t_20) 27 | (check-sat) 28 | -------------------------------------------------------------------------------- /benchmarks_small/e1.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b25 () (_ FloatingPoint 8 24)) 10 | (declare-fun b14 () (_ FloatingPoint 11 53)) 11 | (declare-fun b28 () (_ FloatingPoint 8 24)) 12 | (declare-fun b20 () (_ FloatingPoint 11 53)) 13 | (declare-fun b9 () (_ FloatingPoint 8 24)) 14 | (define-fun _t_3 () RoundingMode RNE) 15 | (define-fun _t_9 () (_ FloatingPoint 8 24) b9) 16 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 17 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_10)) 18 | (define-fun _t_12 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_11)) 19 | (define-fun _t_13 () (_ FloatingPoint 11 53) b20) 20 | (define-fun _t_14 () Bool (fp.lt _t_12 _t_13)) 21 | (define-fun _t_15 () Bool (not _t_14)) 22 | (define-fun _t_16 () (_ FloatingPoint 8 24) b28) 23 | (define-fun _t_17 () Bool (fp.leq _t_16 _t_9)) 24 | (define-fun _t_18 () (_ FloatingPoint 8 24) b25) 25 | (define-fun _t_19 () Bool (fp.leq _t_9 _t_18)) 26 | (define-fun _t_20 () Bool (and _t_17 _t_19)) 27 | (define-fun _t_21 () Bool (and _t_15 _t_20)) 28 | (define-fun _t_22 () (_ FloatingPoint 11 53) b14) 29 | (define-fun _t_23 () Bool (fp.lt _t_12 _t_22)) 30 | (define-fun _t_24 () Bool (and _t_21 _t_23)) 31 | (assert _t_24) 32 | (check-sat) 33 | -------------------------------------------------------------------------------- /benchmarks_small/pow5.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:53 8 | 9 | (declare-fun x () (_ FloatingPoint 11 53)) 10 | (declare-fun y () (_ FloatingPoint 11 53)) 11 | (define-fun _t_10 () (_ FloatingPoint 11 53) (fp #b0 #b00000000000 #b0000000000000000000000000000000000000000000000000000)) 12 | (define-fun _t_11 () (_ FloatingPoint 11 53) x) 13 | (define-fun _t_12 () Bool (fp.leq _t_10 _t_11)) 14 | (assert _t_12) 15 | (define-fun _t_14 () (_ FloatingPoint 11 53) (fp #b0 #b10000000010 #b0100000000000000000000000000000000000000000000000000)) 16 | (define-fun _t_15 () Bool (fp.leq _t_11 _t_14)) 17 | (assert _t_15) 18 | (define-fun _t_3 () RoundingMode RNE) 19 | (define-fun _t_16 () (_ FloatingPoint 11 53) y) 20 | (define-fun _t_17 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_11 _t_11)) 21 | (define-fun _t_18 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_11 _t_17)) 22 | (define-fun _t_19 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_11 _t_18)) 23 | (define-fun _t_20 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_11 _t_19)) 24 | (define-fun _t_21 () Bool (fp.eq _t_16 _t_20)) 25 | (assert _t_21) 26 | (define-fun _t_23 () (_ FloatingPoint 11 53) (fp #b0 #b10000001111 #b1000011010100000000000000000000000000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.lt _t_23 _t_16)) 28 | (assert _t_24) 29 | (check-sat) 30 | -------------------------------------------------------------------------------- /include/R_square/xsat.h: -------------------------------------------------------------------------------- 1 | #ifndef _XSAT_H_ 2 | #define _XSAT_H_ 3 | //MUST BE positive!! 4 | #define EPSILON 1e-10 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | 11 | 12 | double DLE(double x,double y); 13 | double DLT(double x,double y); 14 | double DGT(double x,double y); 15 | double DGE(double x,double y); 16 | double DEQ(double x,double y); 17 | double DNE(double x,double y); 18 | double DCONST(double c); 19 | double BAND(double x,double y); 20 | double BOR(double x,double y); 21 | 22 | 23 | 24 | 25 | 26 | 27 | double DLE(double x,double y){ 28 | return x<=y?0.0:(x-y)*(x-y); 29 | } 30 | double DLT(double x,double y){ 31 | 32 | return DLE(x,nextafter(y,-INFINITY)); 33 | // return DLE(x-y, - EPSILON); 34 | 35 | } 36 | 37 | double DGE(double x,double y) { 38 | return DLE(y,x); 39 | 40 | } 41 | double DGT(double x,double y) { 42 | return DLT(y,x); 43 | 44 | } 45 | double DEQ(double x, double y){ 46 | return (x-y)*(x-y); 47 | } 48 | double DNE(double x,double y) { 49 | //return 0; 50 | return (x!=y)?0.0:EPSILON; 51 | 52 | //return BOR(DLT(x,y),DGT(x,y)); 53 | 54 | } 55 | 56 | double DCONST(double c){ 57 | //return 0; 58 | return c; 59 | 60 | } 61 | 62 | 63 | 64 | //DIZ can be 2, 3 or undefined, or just defined, namely 1. 65 | 66 | 67 | //#if DIZ==2 68 | //double BAND(double x,double y){ return (x<=y)?y:x ;} 69 | //double BOR(double x,double y){return x<=y?x:y;} 70 | 71 | //#elif DIZ==3 72 | //double BAND(double x,double y){return (x==0.0 && y== 0.0)?0.0:1.0 ;} 73 | //double BOR(double x,double y){return (x==0.0 || y==0.0)?0.0:1.0;} 74 | 75 | 76 | //#else 77 | #define BAND(x,y) x+y 78 | //double BAND(double x,double y){return x+y;} 79 | double BOR(double x,double y){return x*y;} 80 | //#endif 81 | 82 | #endif 83 | -------------------------------------------------------------------------------- /docker/include/R_square/xsat.h: -------------------------------------------------------------------------------- 1 | #ifndef _XSAT_H_ 2 | #define _XSAT_H_ 3 | //MUST BE positive!! 4 | #define EPSILON 1e-10 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | 11 | 12 | double DLE(double x,double y); 13 | double DLT(double x,double y); 14 | double DGT(double x,double y); 15 | double DGE(double x,double y); 16 | double DEQ(double x,double y); 17 | double DNE(double x,double y); 18 | double DCONST(double c); 19 | double BAND(double x,double y); 20 | double BOR(double x,double y); 21 | 22 | 23 | 24 | 25 | 26 | 27 | double DLE(double x,double y){ 28 | return x<=y?0.0:(x-y)*(x-y); 29 | } 30 | double DLT(double x,double y){ 31 | 32 | return DLE(x,nextafter(y,-INFINITY)); 33 | // return DLE(x-y, - EPSILON); 34 | 35 | } 36 | 37 | double DGE(double x,double y) { 38 | return DLE(y,x); 39 | 40 | } 41 | double DGT(double x,double y) { 42 | return DLT(y,x); 43 | 44 | } 45 | double DEQ(double x, double y){ 46 | return (x-y)*(x-y); 47 | } 48 | double DNE(double x,double y) { 49 | //return 0; 50 | return (x!=y)?0.0:EPSILON; 51 | 52 | //return BOR(DLT(x,y),DGT(x,y)); 53 | 54 | } 55 | 56 | double DCONST(double c){ 57 | //return 0; 58 | return c; 59 | 60 | } 61 | 62 | 63 | 64 | //DIZ can be 2, 3 or undefined, or just defined, namely 1. 65 | 66 | 67 | //#if DIZ==2 68 | //double BAND(double x,double y){ return (x<=y)?y:x ;} 69 | //double BOR(double x,double y){return x<=y?x:y;} 70 | 71 | //#elif DIZ==3 72 | //double BAND(double x,double y){return (x==0.0 && y== 0.0)?0.0:1.0 ;} 73 | //double BOR(double x,double y){return (x==0.0 || y==0.0)?0.0:1.0;} 74 | 75 | 76 | //#else 77 | #define BAND(x,y) x+y 78 | //double BAND(double x,double y){return x+y;} 79 | double BOR(double x,double y){return x*y;} 80 | //#endif 81 | 82 | #endif 83 | -------------------------------------------------------------------------------- /docker/Makefile: -------------------------------------------------------------------------------- 1 | DLIBFLAG=-shared 2 | 3 | XSAT_ := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) 4 | OUT_=$(XSAT_)/out 5 | R_SQUARE_=$(OUT_)/R_square 6 | R_ULP_=$(OUT_)/R_ulp 7 | R_VERIFY_=$(OUT_)/R_verify 8 | 9 | XSAT_GEN=$(XSAT_)/xsat_gen.py 10 | 11 | ifdef IN 12 | $(shell echo $(IN) > XSAT_IN.txt) 13 | endif 14 | 15 | 16 | IN:= $(shell cat XSAT_IN.txt) 17 | 18 | define XSAT_echo 19 | @echo "[XSat] $1 " 20 | endef 21 | 22 | 23 | all: compile 24 | 25 | gen: build/foo.c xsat_gen.py 26 | build/foo.c: $(IN) XSAT_IN.txt #include/R_square/xsat.h include/R_ulp/xsat.h include/R_verify/xsat.h 27 | @mkdir -p build 28 | @$(MYPYTHON) xsat_gen.py $< > $@ 29 | 30 | compile_square: build/R_square/foo.so 31 | build/R_square/foo.so: build/foo.c include/R_square/xsat.h $(IN) 32 | @mkdir -p build/R_square 33 | @gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I $(PYTHONINC) -I include/R_square -L $(PYTHONLIB) -lpython2.7 34 | 35 | compile_verify: build/R_verify/foo.so 36 | build/R_verify/foo.so: build/foo.c include/R_verify/xsat.h $(IN) 37 | @mkdir -p build/R_verify 38 | @gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I $(PYTHONINC) -I include/R_verify -L $(PYTHONLIB) -lpython2.7 39 | 40 | compile_ulp: build/R_ulp/foo.so 41 | build/R_ulp/foo.so: build/foo.c include/R_ulp/xsat.h $(IN) 42 | @mkdir -p build/R_ulp 43 | @gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I $(PYTHONINC) -I include/R_ulp -L $(PYTHONLIB) -lpython2.7 44 | 45 | 46 | #compile: compile_square compile_verify compile_ulp 47 | compile: compile_ulp compile_verify 48 | 49 | solve: compile 50 | @echo [XSAT] Executing the solver. 51 | @python xsat.py 52 | 53 | 54 | 55 | 56 | 57 | 58 | clean: 59 | $(XSAT_echo) Cleaning build/ 60 | @rm -vf build/foo.c build/foo.symbolTable 61 | @rm -vfr build/R_square build/R_ulp build/R_verify 62 | 63 | 64 | 65 | .PHONY: copy gen clean compile compile_square 66 | 67 | 68 | -------------------------------------------------------------------------------- /benchmarks_small/e2a_3.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b9 () (_ FloatingPoint 11 53)) 10 | (declare-fun b43 () (_ FloatingPoint 11 53)) 11 | (declare-fun b13 () (_ FloatingPoint 11 53)) 12 | (declare-fun b33 () (_ FloatingPoint 11 53)) 13 | (declare-fun b11 () (_ FloatingPoint 11 53)) 14 | (declare-fun b40 () (_ FloatingPoint 11 53)) 15 | (declare-fun b36 () (_ FloatingPoint 11 53)) 16 | (define-fun _t_3 () RoundingMode RNE) 17 | (define-fun _t_9 () (_ FloatingPoint 11 53) b13) 18 | (define-fun _t_10 () (_ FloatingPoint 11 53) b9) 19 | (define-fun _t_11 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_10)) 20 | (define-fun _t_12 () (_ FloatingPoint 11 53) b11) 21 | (define-fun _t_13 () Bool (fp.lt _t_12 _t_11)) 22 | (define-fun _t_14 () Bool (fp.leq _t_10 _t_12)) 23 | (define-fun _t_15 () Bool (and _t_13 _t_14)) 24 | (define-fun _t_16 () (_ FloatingPoint 11 53) b33) 25 | (define-fun _t_17 () Bool (fp.leq _t_10 _t_16)) 26 | (define-fun _t_18 () Bool (and _t_15 _t_17)) 27 | (define-fun _t_19 () (_ FloatingPoint 11 53) b36) 28 | (define-fun _t_20 () Bool (fp.leq _t_19 _t_10)) 29 | (define-fun _t_21 () Bool (and _t_18 _t_20)) 30 | (define-fun _t_22 () (_ FloatingPoint 11 53) b40) 31 | (define-fun _t_23 () Bool (fp.leq _t_9 _t_22)) 32 | (define-fun _t_24 () Bool (and _t_21 _t_23)) 33 | (define-fun _t_25 () (_ FloatingPoint 11 53) b43) 34 | (define-fun _t_26 () Bool (fp.leq _t_25 _t_9)) 35 | (define-fun _t_27 () Bool (and _t_24 _t_26)) 36 | (assert _t_27) 37 | (check-sat) 38 | -------------------------------------------------------------------------------- /benchmarks_small/div2.c.3.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b20 () (_ FloatingPoint 8 24)) 10 | (declare-fun b11 () (_ FloatingPoint 8 24)) 11 | (declare-fun b10 () (_ FloatingPoint 8 24)) 12 | (declare-fun b17 () (_ FloatingPoint 8 24)) 13 | (declare-fun b14 () (_ FloatingPoint 8 24)) 14 | (define-fun _t_3 () RoundingMode RNE) 15 | (define-fun _t_9 () (_ FloatingPoint 8 24) b11) 16 | (define-fun _t_10 () (_ FloatingPoint 8 24) b10) 17 | (define-fun _t_11 () Bool (fp.lt _t_9 _t_10)) 18 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_10 _t_9)) 19 | (define-fun _t_13 () (_ FloatingPoint 8 24) b14) 20 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_12 _t_13)) 21 | (define-fun _t_15 () (_ FloatingPoint 8 24) b17) 22 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_14 _t_15)) 23 | (define-fun _t_17 () (_ FloatingPoint 8 24) b20) 24 | (define-fun _t_18 () Bool (fp.lt _t_16 _t_17)) 25 | (define-fun _t_19 () Bool (and _t_11 _t_18)) 26 | (define-fun _t_20 () Bool (fp.leq _t_17 _t_9)) 27 | (define-fun _t_21 () Bool (and _t_19 _t_20)) 28 | (define-fun _t_22 () Bool (fp.lt _t_13 _t_12)) 29 | (define-fun _t_23 () Bool (and _t_21 _t_22)) 30 | (define-fun _t_24 () Bool (fp.leq _t_17 _t_13)) 31 | (define-fun _t_25 () Bool (and _t_23 _t_24)) 32 | (define-fun _t_26 () Bool (fp.lt _t_15 _t_14)) 33 | (define-fun _t_27 () Bool (and _t_25 _t_26)) 34 | (define-fun _t_28 () Bool (fp.leq _t_17 _t_15)) 35 | (define-fun _t_29 () Bool (and _t_27 _t_28)) 36 | (assert _t_29) 37 | (check-sat) 38 | -------------------------------------------------------------------------------- /benchmarks_small/e2a_1.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b34 () (_ FloatingPoint 11 53)) 10 | (declare-fun b31 () (_ FloatingPoint 11 53)) 11 | (declare-fun b22 () (_ FloatingPoint 11 53)) 12 | (declare-fun b12 () (_ FloatingPoint 11 53)) 13 | (declare-fun b27 () (_ FloatingPoint 11 53)) 14 | (declare-fun b16 () (_ FloatingPoint 11 53)) 15 | (declare-fun b10 () (_ FloatingPoint 11 53)) 16 | (declare-fun b24 () (_ FloatingPoint 11 53)) 17 | (define-fun _t_3 () RoundingMode RNE) 18 | (define-fun _t_9 () (_ FloatingPoint 11 53) b10) 19 | (define-fun _t_10 () (_ FloatingPoint 11 53) b16) 20 | (define-fun _t_11 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_10)) 21 | (define-fun _t_12 () (_ FloatingPoint 11 53) b12) 22 | (define-fun _t_13 () Bool (fp.lt _t_12 _t_11)) 23 | (define-fun _t_14 () Bool (fp.leq _t_9 _t_12)) 24 | (define-fun _t_15 () Bool (and _t_13 _t_14)) 25 | (define-fun _t_16 () (_ FloatingPoint 11 53) b24) 26 | (define-fun _t_17 () Bool (fp.leq _t_9 _t_16)) 27 | (define-fun _t_18 () Bool (and _t_15 _t_17)) 28 | (define-fun _t_19 () (_ FloatingPoint 11 53) b27) 29 | (define-fun _t_20 () Bool (fp.leq _t_19 _t_9)) 30 | (define-fun _t_21 () Bool (and _t_18 _t_20)) 31 | (define-fun _t_22 () (_ FloatingPoint 11 53) b22) 32 | (define-fun _t_23 () (_ FloatingPoint 11 53) b31) 33 | (define-fun _t_24 () Bool (fp.leq _t_22 _t_23)) 34 | (define-fun _t_25 () Bool (and _t_21 _t_24)) 35 | (define-fun _t_26 () (_ FloatingPoint 11 53) b34) 36 | (define-fun _t_27 () Bool (fp.leq _t_26 _t_22)) 37 | (define-fun _t_28 () Bool (and _t_25 _t_27)) 38 | (assert _t_28) 39 | (check-sat) 40 | -------------------------------------------------------------------------------- /benchmarks_small/div3.c.3.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b35 () (_ FloatingPoint 8 24)) 10 | (declare-fun b11 () (_ FloatingPoint 8 24)) 11 | (declare-fun b17 () (_ FloatingPoint 8 24)) 12 | (declare-fun b20 () (_ FloatingPoint 8 24)) 13 | (declare-fun b10 () (_ FloatingPoint 8 24)) 14 | (declare-fun b14 () (_ FloatingPoint 8 24)) 15 | (define-fun _t_3 () RoundingMode RNE) 16 | (define-fun _t_9 () (_ FloatingPoint 8 24) b11) 17 | (define-fun _t_10 () (_ FloatingPoint 8 24) b20) 18 | (define-fun _t_11 () Bool (fp.lt _t_9 _t_10)) 19 | (define-fun _t_12 () (_ FloatingPoint 8 24) b10) 20 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_12 _t_9)) 21 | (define-fun _t_14 () (_ FloatingPoint 8 24) b14) 22 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_13 _t_14)) 23 | (define-fun _t_16 () (_ FloatingPoint 8 24) b17) 24 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_15 _t_16)) 25 | (define-fun _t_18 () Bool (fp.lt _t_17 _t_10)) 26 | (define-fun _t_19 () Bool (and _t_11 _t_18)) 27 | (define-fun _t_20 () (_ FloatingPoint 8 24) b35) 28 | (define-fun _t_21 () Bool (fp.lt _t_20 _t_9)) 29 | (define-fun _t_22 () Bool (and _t_19 _t_21)) 30 | (define-fun _t_23 () Bool (fp.lt _t_14 _t_10)) 31 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 32 | (define-fun _t_25 () Bool (fp.lt _t_20 _t_14)) 33 | (define-fun _t_26 () Bool (and _t_24 _t_25)) 34 | (define-fun _t_27 () Bool (fp.lt _t_16 _t_10)) 35 | (define-fun _t_28 () Bool (and _t_26 _t_27)) 36 | (define-fun _t_29 () Bool (fp.lt _t_20 _t_16)) 37 | (define-fun _t_30 () Bool (and _t_28 _t_29)) 38 | (assert _t_30) 39 | (check-sat) 40 | -------------------------------------------------------------------------------- /benchmarks_small/div.c.3.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b11 () (_ FloatingPoint 8 24)) 10 | (declare-fun b10 () (_ FloatingPoint 8 24)) 11 | (declare-fun b20 () (_ FloatingPoint 8 24)) 12 | (declare-fun b14 () (_ FloatingPoint 8 24)) 13 | (declare-fun b17 () (_ FloatingPoint 8 24)) 14 | (declare-fun b34 () (_ FloatingPoint 8 24)) 15 | (define-fun _t_3 () RoundingMode RNE) 16 | (define-fun _t_9 () (_ FloatingPoint 8 24) b11) 17 | (define-fun _t_10 () (_ FloatingPoint 8 24) b34) 18 | (define-fun _t_11 () Bool (fp.lt _t_9 _t_10)) 19 | (define-fun _t_12 () (_ FloatingPoint 8 24) b10) 20 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_12 _t_9)) 21 | (define-fun _t_14 () (_ FloatingPoint 8 24) b14) 22 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_13 _t_14)) 23 | (define-fun _t_16 () (_ FloatingPoint 8 24) b17) 24 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_15 _t_16)) 25 | (define-fun _t_18 () (_ FloatingPoint 8 24) b20) 26 | (define-fun _t_19 () Bool (fp.lt _t_17 _t_18)) 27 | (define-fun _t_20 () Bool (and _t_11 _t_19)) 28 | (define-fun _t_21 () Bool (fp.leq _t_18 _t_9)) 29 | (define-fun _t_22 () Bool (and _t_20 _t_21)) 30 | (define-fun _t_23 () Bool (fp.lt _t_14 _t_10)) 31 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 32 | (define-fun _t_25 () Bool (fp.leq _t_18 _t_14)) 33 | (define-fun _t_26 () Bool (and _t_24 _t_25)) 34 | (define-fun _t_27 () Bool (fp.lt _t_16 _t_10)) 35 | (define-fun _t_28 () Bool (and _t_26 _t_27)) 36 | (define-fun _t_29 () Bool (fp.leq _t_18 _t_16)) 37 | (define-fun _t_30 () Bool (and _t_28 _t_29)) 38 | (assert _t_30) 39 | (check-sat) 40 | -------------------------------------------------------------------------------- /docker/Makefile.verbose: -------------------------------------------------------------------------------- 1 | DLIBFLAG=-shared 2 | 3 | XSAT_ := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) 4 | OUT_=$(XSAT_)/out 5 | R_SQUARE_=$(OUT_)/R_square 6 | R_ULP_=$(OUT_)/R_ulp 7 | R_VERIFY_=$(OUT_)/R_verify 8 | 9 | XSAT_GEN=$(XSAT_)/xsat_gen.py 10 | 11 | ifdef IN 12 | $(shell echo $(IN) > XSAT_IN.txt) 13 | endif 14 | 15 | 16 | IN:= $(shell cat XSAT_IN.txt) 17 | 18 | define XSAT_echo 19 | @echo "[XSat] $1 " 20 | endef 21 | 22 | 23 | all: compile 24 | 25 | gen: build/foo.c xsat_gen.py 26 | build/foo.c: $(IN) XSAT_IN.txt #include/R_square/xsat.h include/R_ulp/xsat.h include/R_verify/xsat.h 27 | @echo "[XSAT] .smt2 -> .c" 28 | @mkdir -p build 29 | $(MYPYTHON) xsat_gen.py $< > $@ 30 | 31 | compile_square: build/R_square/foo.so 32 | build/R_square/foo.so: build/foo.c include/R_square/xsat.h $(IN) 33 | @echo [XSAT]Compiling the representing function as $@ 34 | @mkdir -p build/R_square 35 | gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I $(PYTHONINC) -I include/R_square -L $(PYTHONLIB) -lpython2.7 36 | 37 | compile_verify: build/R_verify/foo.so 38 | build/R_verify/foo.so: build/foo.c include/R_verify/xsat.h $(IN) 39 | @echo [XSAT]Compiling the representing function as $@ 40 | @mkdir -p build/R_verify 41 | gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I $(PYTHONINC) -I include/R_verify -L $(PYTHONLIB) -lpython2.7 42 | 43 | compile_ulp: build/R_ulp/foo.so 44 | build/R_ulp/foo.so: build/foo.c include/R_ulp/xsat.h $(IN) 45 | @echo [XSAT]Compiling the representing function as $@ 46 | @mkdir -p build/R_ulp 47 | gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I $(PYTHONINC) -I include/R_ulp -L $(PYTHONLIB) -lpython2.7 48 | 49 | 50 | #compile: compile_square compile_verify compile_ulp 51 | compile: compile_ulp compile_verify 52 | 53 | solve: compile 54 | @echo [XSAT] Executing the solver. 55 | python xsat.py 56 | 57 | 58 | 59 | 60 | 61 | 62 | clean: 63 | $(XSAT_echo) Cleaning build/ 64 | @rm -vf build/foo.c build/foo.symbolTable 65 | @rm -vfr build/R_square build/R_ulp build/R_verify 66 | 67 | 68 | 69 | .PHONY: copy gen clean compile compile_square 70 | 71 | 72 | -------------------------------------------------------------------------------- /benchmarks_small/mult1.c.3.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:52 8 | 9 | (declare-fun b37 () (_ FloatingPoint 8 24)) 10 | (declare-fun b20 () (_ FloatingPoint 11 53)) 11 | (declare-fun b11 () (_ FloatingPoint 8 24)) 12 | (declare-fun b13 () (_ FloatingPoint 8 24)) 13 | (declare-fun b16 () (_ FloatingPoint 8 24)) 14 | (declare-fun b34 () (_ FloatingPoint 8 24)) 15 | (define-fun _t_3 () RoundingMode RNE) 16 | (define-fun _t_9 () (_ FloatingPoint 8 24) b34) 17 | (define-fun _t_10 () (_ FloatingPoint 8 24) b11) 18 | (define-fun _t_11 () Bool (fp.lt _t_9 _t_10)) 19 | (define-fun _t_12 () (_ FloatingPoint 8 24) b13) 20 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_10 _t_12)) 21 | (define-fun _t_14 () (_ FloatingPoint 8 24) b16) 22 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_14)) 23 | (define-fun _t_16 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 24 | (define-fun _t_17 () (_ FloatingPoint 11 53) b20) 25 | (define-fun _t_18 () Bool (fp.lt _t_17 _t_16)) 26 | (define-fun _t_19 () Bool (and _t_11 _t_18)) 27 | (define-fun _t_20 () (_ FloatingPoint 8 24) b37) 28 | (define-fun _t_21 () Bool (fp.lt _t_10 _t_20)) 29 | (define-fun _t_22 () Bool (and _t_19 _t_21)) 30 | (define-fun _t_23 () Bool (fp.lt _t_9 _t_12)) 31 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 32 | (define-fun _t_25 () Bool (fp.lt _t_12 _t_20)) 33 | (define-fun _t_26 () Bool (and _t_24 _t_25)) 34 | (define-fun _t_27 () Bool (fp.lt _t_9 _t_14)) 35 | (define-fun _t_28 () Bool (and _t_26 _t_27)) 36 | (define-fun _t_29 () Bool (fp.lt _t_14 _t_20)) 37 | (define-fun _t_30 () Bool (and _t_28 _t_29)) 38 | (assert _t_30) 39 | (check-sat) 40 | -------------------------------------------------------------------------------- /include/R_verify/xsat.h: -------------------------------------------------------------------------------- 1 | #ifndef _XSAT_VERIFY_H_ 2 | #define _XSAT_VERIFY_H_ 3 | 4 | #include 5 | #include 6 | 7 | double DLE(double x,double y); 8 | double DLT(double x,double y); 9 | double DGT(double x,double y); 10 | double DGE(double x,double y); 11 | double DEQ(double x,double y); 12 | double DNE(double x,double y); 13 | double DCONST(double c); 14 | double BAND(double x,double y); 15 | double BOR(double x,double y); 16 | float TR32(double x); 17 | //double BAND(bool x,bool y); 18 | //bool BOR(bool x,bool y); 19 | double MAX(double a, double b); 20 | 21 | 22 | 23 | 24 | double DLE(double x,double y){ 25 | //return 1; 26 | // printf ("x = %g, y = %g, (x<=y) = %s \n", x,y, ((x<=y)? "true":"false")); 27 | return 1.0-(x<=y); 28 | } 29 | double DLT(double x,double y){ 30 | //return 1; 31 | //printf ("x = %g, y = %g, x=y); 38 | } 39 | double DGT(double x,double y) { 40 | //return 1; 41 | return 1.0-(x>y); 42 | } 43 | double DEQ(double x, double y){ 44 | //return 1; 45 | /* printf ("x = %.16f, y = %.16f, x==y=%s \n", x,y, ((x==y)? "true":"false")); */ 46 | /* if (x!=y) { */ 47 | /* printf ("++++++++++++++++++++++++Begin\n"); */ 48 | /* printf ("x = %.16f, y = %.16f\n", x,y); */ 49 | /* printf ("++++++++++++++++++++++++End\n"); */ 50 | /* } */ 51 | 52 | return 1.0-(x==y); 53 | } 54 | double DNE(double x,double y) { 55 | // return 1; 56 | return 1.0-(x!=y); 57 | } 58 | double BAND(double x,double y){ 59 | // printf ("x = %.16f, y = %.16f \n", x,y); 60 | if (x==0 && y ==0) return 0; 61 | else return 1.0; 62 | 63 | } 64 | 65 | double BOR(double x,double y){ 66 | if (x==0 || y ==0) return 0; 67 | else return 1.0; 68 | } 69 | 70 | double DCONST(double c){return c;} 71 | float TR32(double x){ 72 | return (float)x; 73 | } 74 | 75 | double MAX(double a, double b) { 76 | return (((a) > (b)) ? (a) : (b)); 77 | } 78 | 79 | 80 | #endif 81 | -------------------------------------------------------------------------------- /docker/include/R_verify/xsat.h: -------------------------------------------------------------------------------- 1 | #ifndef _XSAT_VERIFY_H_ 2 | #define _XSAT_VERIFY_H_ 3 | 4 | #include 5 | #include 6 | 7 | double DLE(double x,double y); 8 | double DLT(double x,double y); 9 | double DGT(double x,double y); 10 | double DGE(double x,double y); 11 | double DEQ(double x,double y); 12 | double DNE(double x,double y); 13 | double DCONST(double c); 14 | double BAND(double x,double y); 15 | double BOR(double x,double y); 16 | float TR32(double x); 17 | //double BAND(bool x,bool y); 18 | //bool BOR(bool x,bool y); 19 | double MAX(double a, double b); 20 | 21 | 22 | 23 | 24 | double DLE(double x,double y){ 25 | //return 1; 26 | // printf ("x = %g, y = %g, (x<=y) = %s \n", x,y, ((x<=y)? "true":"false")); 27 | return 1.0-(x<=y); 28 | } 29 | double DLT(double x,double y){ 30 | //return 1; 31 | //printf ("x = %g, y = %g, x=y); 38 | } 39 | double DGT(double x,double y) { 40 | //return 1; 41 | return 1.0-(x>y); 42 | } 43 | double DEQ(double x, double y){ 44 | //return 1; 45 | /* printf ("x = %.16f, y = %.16f, x==y=%s \n", x,y, ((x==y)? "true":"false")); */ 46 | /* if (x!=y) { */ 47 | /* printf ("++++++++++++++++++++++++Begin\n"); */ 48 | /* printf ("x = %.16f, y = %.16f\n", x,y); */ 49 | /* printf ("++++++++++++++++++++++++End\n"); */ 50 | /* } */ 51 | 52 | return 1.0-(x==y); 53 | } 54 | double DNE(double x,double y) { 55 | // return 1; 56 | return 1.0-(x!=y); 57 | } 58 | double BAND(double x,double y){ 59 | // printf ("x = %.16f, y = %.16f \n", x,y); 60 | if (x==0 && y ==0) return 0; 61 | else return 1.0; 62 | 63 | } 64 | 65 | double BOR(double x,double y){ 66 | if (x==0 || y ==0) return 0; 67 | else return 1.0; 68 | } 69 | 70 | double DCONST(double c){return c;} 71 | float TR32(double x){ 72 | return (float)x; 73 | } 74 | 75 | double MAX(double a, double b) { 76 | return (((a) > (b)) ? (a) : (b)); 77 | } 78 | 79 | 80 | #endif 81 | -------------------------------------------------------------------------------- /benchmarks_small/e2a_2.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b36 () (_ FloatingPoint 11 53)) 10 | (declare-fun b19 () (_ FloatingPoint 11 53)) 11 | (declare-fun b33 () (_ FloatingPoint 11 53)) 12 | (declare-fun b24 () (_ FloatingPoint 11 53)) 13 | (declare-fun b29 () (_ FloatingPoint 11 53)) 14 | (declare-fun b10 () (_ FloatingPoint 11 53)) 15 | (declare-fun b16 () (_ FloatingPoint 11 53)) 16 | (declare-fun b12 () (_ FloatingPoint 11 53)) 17 | (declare-fun b26 () (_ FloatingPoint 11 53)) 18 | (define-fun _t_3 () RoundingMode RNE) 19 | (define-fun _t_9 () (_ FloatingPoint 11 53) b10) 20 | (define-fun _t_10 () (_ FloatingPoint 11 53) b16) 21 | (define-fun _t_11 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_10)) 22 | (define-fun _t_12 () (_ FloatingPoint 11 53) b19) 23 | (define-fun _t_13 () Bool (fp.lt _t_12 _t_11)) 24 | (define-fun _t_14 () (_ FloatingPoint 11 53) b12) 25 | (define-fun _t_15 () Bool (fp.leq _t_9 _t_14)) 26 | (define-fun _t_16 () Bool (and _t_13 _t_15)) 27 | (define-fun _t_17 () (_ FloatingPoint 11 53) b26) 28 | (define-fun _t_18 () Bool (fp.leq _t_9 _t_17)) 29 | (define-fun _t_19 () Bool (and _t_16 _t_18)) 30 | (define-fun _t_20 () (_ FloatingPoint 11 53) b29) 31 | (define-fun _t_21 () Bool (fp.leq _t_20 _t_9)) 32 | (define-fun _t_22 () Bool (and _t_19 _t_21)) 33 | (define-fun _t_23 () (_ FloatingPoint 11 53) b24) 34 | (define-fun _t_24 () (_ FloatingPoint 11 53) b33) 35 | (define-fun _t_25 () Bool (fp.leq _t_23 _t_24)) 36 | (define-fun _t_26 () Bool (and _t_22 _t_25)) 37 | (define-fun _t_27 () (_ FloatingPoint 11 53) b36) 38 | (define-fun _t_28 () Bool (fp.leq _t_27 _t_23)) 39 | (define-fun _t_29 () Bool (and _t_26 _t_28)) 40 | (assert _t_29) 41 | (check-sat) 42 | -------------------------------------------------------------------------------- /benchmarks_small/mult2.c.3.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:52 8 | 9 | (declare-fun b14 () (_ FloatingPoint 8 24)) 10 | (declare-fun b17 () (_ FloatingPoint 8 24)) 11 | (declare-fun b37 () (_ FloatingPoint 8 24)) 12 | (declare-fun b10 () (_ FloatingPoint 8 24)) 13 | (declare-fun b11 () (_ FloatingPoint 8 24)) 14 | (declare-fun b20 () (_ FloatingPoint 8 24)) 15 | (declare-fun b34 () (_ FloatingPoint 8 24)) 16 | (define-fun _t_3 () RoundingMode RNE) 17 | (define-fun _t_9 () (_ FloatingPoint 8 24) b34) 18 | (define-fun _t_10 () (_ FloatingPoint 8 24) b11) 19 | (define-fun _t_11 () Bool (fp.lt _t_9 _t_10)) 20 | (define-fun _t_12 () (_ FloatingPoint 8 24) b10) 21 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_10 _t_12)) 22 | (define-fun _t_14 () (_ FloatingPoint 8 24) b14) 23 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_14)) 24 | (define-fun _t_16 () (_ FloatingPoint 8 24) b17) 25 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_15 _t_16)) 26 | (define-fun _t_18 () (_ FloatingPoint 8 24) b20) 27 | (define-fun _t_19 () Bool (fp.lt _t_17 _t_18)) 28 | (define-fun _t_20 () Bool (and _t_11 _t_19)) 29 | (define-fun _t_21 () (_ FloatingPoint 8 24) b37) 30 | (define-fun _t_22 () Bool (fp.lt _t_10 _t_21)) 31 | (define-fun _t_23 () Bool (and _t_20 _t_22)) 32 | (define-fun _t_24 () Bool (fp.lt _t_9 _t_14)) 33 | (define-fun _t_25 () Bool (and _t_23 _t_24)) 34 | (define-fun _t_26 () Bool (fp.lt _t_14 _t_21)) 35 | (define-fun _t_27 () Bool (and _t_25 _t_26)) 36 | (define-fun _t_28 () Bool (fp.lt _t_9 _t_16)) 37 | (define-fun _t_29 () Bool (and _t_27 _t_28)) 38 | (define-fun _t_30 () Bool (fp.lt _t_16 _t_21)) 39 | (define-fun _t_31 () Bool (and _t_29 _t_30)) 40 | (assert _t_31) 41 | (check-sat) 42 | -------------------------------------------------------------------------------- /test_benchmarks.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import os,sys 4 | import subprocess 5 | import csv 6 | import time 7 | import gc 8 | import collections 9 | import argparse 10 | 11 | OKGREEN = '\033[92m' 12 | WARNING = '\033[93m' 13 | ENDC = '\033[0m' 14 | 15 | def okay( msg): 16 | return OKGREEN + msg + ENDC 17 | 18 | def warn( msg): 19 | return WARNING + msg + ENDC 20 | 21 | parser = argparse.ArgumentParser(prog='test') 22 | parser.add_argument('--quick', help='specify how fast you want the test be done', type=int, required=False, default = 1) 23 | args = parser.parse_args() 24 | testFiles=["div2.c.30","mult1.c.30","div3.c.30","div.c.30","mult2.c.30",\ 25 | "test_v7_r7_vr10_c1_s24535","test_v5_r10_vr5_c1_s13195", "div2.c.40","mult1.c.40","test_v7_r7_vr1_c1_s24449",\ 26 | "div3.c.40","div.c.40","mult2.c.40","test_v7_r7_vr5_c1_s3582","test_v7_r7_vr1_c1_s22845",\ 27 | "test_v7_r7_vr5_c1_s19694","test_v7_r7_vr5_c1_s14675","test_v7_r7_vr10_c1_s32506","test_v7_r7_vr10_c1_s10625","test_v7_r7_vr1_c1_s4574",\ 28 | "test_v5_r10_vr5_c1_s8690","test_v5_r10_vr1_c1_s32538","test_v5_r10_vr5_c1_s13679","test_v5_r10_vr10_c1_s15708","test_v5_r10_vr10_c1_s7608",\ 29 | "test_v5_r10_vr1_c1_s19145","test_v5_r10_vr1_c1_s13516","test_v5_r10_vr10_c1_s21502","sin2.c.10","div2.c.50",\ 30 | "mult1.c.50","div3.c.50","mult2.c.50","div.c.50"] 31 | expected_results = ["sat", "sat","sat","sat","sat","sat","sat","sat","sat","unsat","sat","sat","sat","sat","sat","sat","sat","sat","sat","sat","unsat","unsat","sat","unsat","unsat","sat","sat","unsat","sat","sat","sat","sat","sat","sat"] 32 | 33 | 34 | 35 | for i,(f,expected) in enumerate (zip (testFiles,expected_results)): 36 | if (i+1)%args.quick!=0: continue 37 | fileName="Benchmarks/"+f+".smt2" 38 | print ("(%s)") %(i+1), "Working on", fileName 39 | COMMAND0='make -j IN=%s' %fileName 40 | print " Compiling ..." 41 | subprocess.check_call(COMMAND0.split(),stdout=open(os.devnull, 'wb')) 42 | print " Solving ..." 43 | 44 | COMMAND='python xsat.py --bench' 45 | satisfiability=subprocess.check_output(COMMAND.split()).rstrip() 46 | print " ==> "+ satisfiability, okay("[Expected]") if satisfiability==expected else warn("[Unexpected]") 47 | -------------------------------------------------------------------------------- /docker/mytest3.smt2: -------------------------------------------------------------------------------- 1 | ;;; Processed by pysmt to remove constant-real bitvector literals 2 | (set-logic QF_FP) 3 | (set-info :source |SPARK inspired floating point problems by Florian Schanda|) 4 | (set-info :smt-lib-version 2.0) 5 | (set-info :category crafted) 6 | (set-info :status unsat) 7 | (define-fun valid_input__first () Float32 ((_ to_fp 8 24) #xc5800000)) 8 | (define-fun valid_input__last () Float32 ((_ to_fp 8 24) #x45800000)) 9 | (define-fun in_valid_input_range ((f Float32)) Bool (and (fp.geq f valid_input__first) (fp.leq f valid_input__last))) 10 | (define-fun valid_result__first () Float32 ((_ to_fp 8 24) #xbf800008)) 11 | (define-fun valid_result__last () Float32 ((_ to_fp 8 24) #x3f800008)) 12 | (define-fun in_valid_result_range ((f Float32)) Bool (and (fp.geq f valid_result__first) (fp.leq f valid_result__last))) 13 | (declare-fun pt_a_x () Float32) 14 | (declare-fun pt_a_y () Float32) 15 | (declare-fun pt_b_x () Float32) 16 | (declare-fun pt_b_y () Float32) 17 | (declare-fun pt_c_x () Float32) 18 | (declare-fun pt_c_y () Float32) 19 | (assert (in_valid_input_range pt_a_x)) 20 | (assert (in_valid_input_range pt_a_y)) 21 | (assert (in_valid_input_range pt_b_x)) 22 | (assert (in_valid_input_range pt_b_y)) 23 | (assert (in_valid_input_range pt_c_x)) 24 | (assert (in_valid_input_range pt_c_y)) 25 | (define-fun vec_ba_x () Float32 (fp.sub RNE pt_a_x pt_b_x)) 26 | (define-fun vec_ba_y () Float32 (fp.sub RNE pt_a_y pt_b_y)) 27 | (define-fun vec_bc_x () Float32 (fp.sub RNE pt_c_x pt_b_x)) 28 | (define-fun vec_bc_y () Float32 (fp.sub RNE pt_c_y pt_b_y)) 29 | (define-fun ba_dot_bc () Float32 (fp.add RNE (fp.mul RNE vec_ba_x vec_bc_x) (fp.mul RNE vec_ba_y vec_bc_y))) 30 | (define-fun sqrt_arg_1 () Float32 (fp.add RNE (fp.mul RNE (fp.sub RNE pt_b_x pt_a_x) (fp.sub RNE pt_b_x pt_a_x)) (fp.mul RNE (fp.sub RNE pt_b_y pt_a_y) (fp.sub RNE pt_b_y pt_a_y)))) 31 | (define-fun length_ba () Float32 (fp.sqrt RNE sqrt_arg_1)) 32 | (define-fun sqrt_arg_2 () Float32 (fp.add RNE (fp.mul RNE (fp.sub RNE pt_b_x pt_c_x) (fp.sub RNE pt_b_x pt_c_x)) (fp.mul RNE (fp.sub RNE pt_b_y pt_c_y) (fp.sub RNE pt_b_y pt_c_y)))) 33 | (define-fun length_bc () Float32 (fp.sqrt RNE sqrt_arg_2)) 34 | (define-fun small () Float32 ((_ to_fp 8 24) #x3a83126f)) 35 | (assert (fp.lt small length_ba)) 36 | (assert (fp.lt small length_bc)) 37 | (define-fun arg () Float32 (fp.div RNE ba_dot_bc (fp.mul RNE length_ba length_bc))) 38 | (assert (not (in_valid_result_range arg))) 39 | (check-sat) 40 | (exit) 41 | 42 | -------------------------------------------------------------------------------- /docker/Dockerfile: -------------------------------------------------------------------------------- 1 | # This includes XSat and all of its depencies. 2 | 3 | # Set the base image 4 | FROM ubuntu:14.04 5 | 6 | # Dockerfile author / maintainer 7 | LABEL maintainer="marvelez@ucdavis.edu" 8 | 9 | # Update and upgrade packages. 10 | RUN DEBIAN_FRONTEND=noninteractive apt-get update 11 | 12 | # Install gcc. 13 | RUN DEBIAN_FRONTEND=noninteractive apt-get install -y software-properties-common gcc gdb vim make 14 | # root@bc6cc8f37ae0:/usr/src/app# gcc --version 15 | # gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4 16 | 17 | # Install fortran. 18 | RUN DEBIAN_FRONTEND=noninteractive apt-get install -y gfortran 19 | 20 | # Install wget. 21 | RUN DEBIAN_FRONTEND=noninteractive apt-get install -y wget 22 | 23 | # Install pip packages and dependecies. 24 | RUN DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential python-dev python-pip 25 | RUN apt-get install -y libatlas-base-dev 26 | RUN pip install sympy 27 | RUN pip install numpy 28 | RUN pip install scipy 29 | 30 | # Create user. 31 | RUN useradd -ms /bin/bash xsat 32 | USER xsat 33 | WORKDIR /home/xsat 34 | 35 | ENV MYPYTHON=/usr/bin/python 36 | #export PYTHONINC=$HOME/bin/python/include/python2.7 37 | ENV PYTHONINC /usr/include/python2.7/ 38 | #export PYTHONLIB=$HOME/bin/python/lib 39 | ENV PYTHONLIB /usr/lib/python2.7/ 40 | #export LD_LIBRARY_PATH=$HOME/bin/python/lib 41 | ENV LD_LIBRARY_PATH /usr/lib/python2.7/ 42 | 43 | # Build and install Z3. 44 | RUN wget https://github.com/Z3Prover/z3/archive/z3-4.5.0.tar.gz 45 | RUN tar xvzf z3-4.5.0.tar.gz 46 | WORKDIR /home/xsat/z3-z3-4.5.0 47 | RUN python scripts/mk_make.py --python 48 | WORKDIR /home/xsat/z3-z3-4.5.0/build 49 | RUN make 50 | USER root 51 | RUN make install 52 | WORKDIR /home/xsat 53 | USER xsat 54 | 55 | 56 | # Finally, you need to set two environment variables. If you do not set this, 57 | # then the **xsat.py** will not work. 58 | # ```bash 59 | # export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/marvelez/github/z3/build/python 60 | # export PYTHONPATH=/home/marvelez/github/z3/build/python/ 61 | # ``` 62 | 63 | ENV PYTHONPATH /home/xsat/z3-z3-4.5.0/build/python 64 | 65 | # Add XSat files. 66 | ADD xsat_gen.py /home/xsat/ 67 | ADD xsat.py /home/xsat/ 68 | ADD mytest.smt2 /home/xsat/ 69 | ADD mytest2.smt2 /home/xsat/ 70 | ADD mytest3.smt2 /home/xsat/ 71 | ADD mytest4.smt2 /home/xsat/ 72 | ADD Makefile /home/xsat/ 73 | ADD Makefile.verbose /home/xsat/ 74 | ADD debug.py /home/xsat/ 75 | ADD include /home/xsat/include 76 | ADD README.md /home/xsat/ 77 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | SHELL := /bin/bash 2 | # Set dynamic library flag 3 | UNAMES=$(shell uname -s) 4 | ifeq ($(UNAMES),Linux) 5 | DLIBFLAG=-shared 6 | PYTHONINC=/usr/include/python2.7/ 7 | PYTHONLIB=/usr/lib/python2.7/ 8 | endif 9 | ifeq ($(UNAMES),Darwin) 10 | DLIBFLAG=-dynamiclib 11 | PYTHONINC= 12 | #/usr/local/Cellar/python/2.7.14/Frameworks/Python.framework/Versions/2.7/include/python2.7/ 13 | PYTHONLIB= 14 | #/usr/local/Cellar/python/2.7.14/Frameworks/Python.framework/Versions/Current/lib/ 15 | endif 16 | 17 | 18 | XSAT_ := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) 19 | OUT_=$(XSAT_)/out 20 | R_SQUARE_=$(OUT_)/R_square 21 | R_ULP_=$(OUT_)/R_ulp 22 | R_VERIFY_=$(OUT_)/R_verify 23 | 24 | XSAT_GEN=$(XSAT_)/xsat_gen.py 25 | 26 | ifdef IN 27 | $(shell echo $(IN) > XSAT_IN.txt) 28 | endif 29 | 30 | 31 | IN:= $(shell cat XSAT_IN.txt) 32 | 33 | PYTHON_H:= 34 | 35 | define XSAT_echo 36 | @echo "[XSat] $1 " 37 | endef 38 | 39 | 40 | all: compile 41 | 42 | gen: build/foo.c xsat_gen.py 43 | build/foo.c: $(IN) XSAT_IN.txt 44 | @echo "[XSAT] .smt2 -> .c" 45 | @mkdir -p build 46 | python xsat_gen.py $< > $@ 47 | 48 | compile_square: build/R_square/foo.so 49 | build/R_square/foo.so: build/foo.c include/R_square/xsat.h $(IN) 50 | @echo [XSAT]Compiling the representing function as $@ 51 | @mkdir -p build/R_square 52 | @gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I $(PYTHONINC) -I include/R_square -L $(PYTHONLIB) -lpython2.7 -fbracket-depth=3000 53 | 54 | compile_verify: build/R_verify/foo.so 55 | build/R_verify/foo.so: build/foo.c include/R_verify/xsat.h $(IN) 56 | @echo [XSAT]Compiling the representing function as $@ 57 | @mkdir -p build/R_verify 58 | @gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I include/R_verify -I $(PYTHONINC) -L $(PYTHONLIB) -lpython2.7 -fbracket-depth=3000 59 | 60 | compile_ulp: build/R_ulp/foo.so 61 | build/R_ulp/foo.so: build/foo.c include/R_ulp/xsat.h $(IN) 62 | @echo [XSAT]Compiling the representing function as $@ 63 | @mkdir -p build/R_ulp 64 | @gcc -O3 -fPIC $< $(DLIBFLAG) -o $@ -I include/R_ulp -I $(PYTHONINC) -L $(PYTHONLIB) -lpython2.7 -fbracket-depth=3000 65 | 66 | compile: compile_ulp compile_verify 67 | 68 | solve: compile 69 | @echo [XSAT] Executing the solver. 70 | @python xsat.py 71 | 72 | test: test_benchmarks.py 73 | python $< 74 | 75 | helloworld: Benchmarks/div3.c.50.smt2 76 | make IN=$> 77 | python xsat.py 78 | 79 | clean: 80 | $(XSAT_echo) Cleaning build/ and Results/ 81 | @rm -vf build/foo.c build/foo.symbolTable 82 | @rm -vfr build/R_square build/R_ulp build/R_verify 83 | @rm -vf Results/* 84 | 85 | 86 | .PHONY: copy gen clean compile compile_square test 87 | 88 | 89 | -------------------------------------------------------------------------------- /benchmarks_small/sine.1.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10010010000111111011010)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10010010000111111011010)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_18 _t_20)) 21 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.neg _t_21)) 22 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_22)) 23 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 24 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 26 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_25 _t_27)) 27 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_23 _t_28)) 28 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 29 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_31 _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_29 _t_34)) 33 | (define-fun _t_36 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_35)) 34 | (define-fun _t_38 () (_ FloatingPoint 11 53) (fp #b0 #b01111111110 #b1111101011100001010001111010111000010100011110101101)) 35 | (define-fun _t_39 () Bool (fp.leq _t_36 _t_38)) 36 | (define-fun _t_40 () Bool (not _t_39)) 37 | (define-fun _t_41 () Bool (and _t_16 _t_40)) 38 | (assert _t_41) 39 | (check-sat) 40 | -------------------------------------------------------------------------------- /benchmarks_small/e3_2.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b51 () (_ FloatingPoint 11 53)) 10 | (declare-fun b13 () (_ FloatingPoint 11 53)) 11 | (declare-fun b10 () (_ FloatingPoint 11 53)) 12 | (declare-fun b11 () (_ FloatingPoint 11 53)) 13 | (declare-fun b17 () (_ FloatingPoint 11 53)) 14 | (declare-fun b54 () (_ FloatingPoint 11 53)) 15 | (declare-fun b20 () (_ FloatingPoint 11 53)) 16 | (define-fun _t_3 () RoundingMode RNE) 17 | (define-fun _t_9 () (_ FloatingPoint 11 53) b11) 18 | (define-fun _t_10 () (_ FloatingPoint 11 53) (fp.neg _t_9)) 19 | (define-fun _t_11 () (_ FloatingPoint 11 53) b10) 20 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_10 _t_11)) 21 | (define-fun _t_13 () (_ FloatingPoint 11 53) b17) 22 | (define-fun _t_14 () Bool (fp.lt _t_12 _t_13)) 23 | (define-fun _t_15 () (_ FloatingPoint 11 53) b20) 24 | (define-fun _t_16 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_11 _t_15)) 25 | (define-fun _t_17 () (_ FloatingPoint 11 53) b13) 26 | (define-fun _t_18 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_13 _t_17)) 27 | (define-fun _t_19 () Bool (fp.lt _t_18 _t_16)) 28 | (define-fun _t_20 () Bool (and _t_14 _t_19)) 29 | (define-fun _t_21 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_11)) 30 | (define-fun _t_22 () Bool (fp.lt _t_21 _t_17)) 31 | (define-fun _t_23 () Bool (and _t_20 _t_22)) 32 | (define-fun _t_24 () (_ FloatingPoint 11 53) b51) 33 | (define-fun _t_25 () Bool (fp.leq _t_11 _t_24)) 34 | (define-fun _t_26 () Bool (and _t_23 _t_25)) 35 | (define-fun _t_27 () (_ FloatingPoint 11 53) b54) 36 | (define-fun _t_28 () Bool (fp.leq _t_27 _t_11)) 37 | (define-fun _t_29 () Bool (and _t_26 _t_28)) 38 | (define-fun _t_30 () Bool (fp.leq _t_9 _t_24)) 39 | (define-fun _t_31 () Bool (and _t_29 _t_30)) 40 | (define-fun _t_32 () Bool (fp.leq _t_27 _t_9)) 41 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 42 | (define-fun _t_34 () Bool (fp.leq _t_17 _t_24)) 43 | (define-fun _t_35 () Bool (and _t_33 _t_34)) 44 | (define-fun _t_36 () Bool (fp.leq _t_27 _t_17)) 45 | (define-fun _t_37 () Bool (and _t_35 _t_36)) 46 | (define-fun _t_38 () Bool (fp.leq _t_13 _t_24)) 47 | (define-fun _t_39 () Bool (and _t_37 _t_38)) 48 | (define-fun _t_40 () Bool (fp.leq _t_27 _t_13)) 49 | (define-fun _t_41 () Bool (and _t_39 _t_40)) 50 | (assert _t_41) 51 | (check-sat) 52 | -------------------------------------------------------------------------------- /benchmarks_small/e2_3.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b9 () (_ FloatingPoint 11 53)) 10 | (declare-fun b44 () (_ FloatingPoint 11 53)) 11 | (declare-fun b30 () (_ FloatingPoint 11 53)) 12 | (declare-fun b37 () (_ FloatingPoint 11 53)) 13 | (declare-fun b34 () (_ FloatingPoint 11 53)) 14 | (declare-fun b54 () (_ FloatingPoint 11 53)) 15 | (declare-fun b51 () (_ FloatingPoint 11 53)) 16 | (declare-fun b41 () (_ FloatingPoint 11 53)) 17 | (declare-fun b29 () (_ FloatingPoint 11 53)) 18 | (declare-fun b11 () (_ FloatingPoint 11 53)) 19 | (declare-fun b13 () (_ FloatingPoint 11 53)) 20 | (define-fun _t_3 () RoundingMode RNE) 21 | (define-fun _t_9 () (_ FloatingPoint 11 53) b13) 22 | (define-fun _t_10 () (_ FloatingPoint 11 53) b9) 23 | (define-fun _t_11 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_10)) 24 | (define-fun _t_12 () (_ FloatingPoint 11 53) b11) 25 | (define-fun _t_13 () Bool (fp.lt _t_12 _t_11)) 26 | (define-fun _t_14 () Bool (fp.leq _t_10 _t_12)) 27 | (define-fun _t_15 () Bool (and _t_13 _t_14)) 28 | (define-fun _t_16 () (_ FloatingPoint 11 53) b29) 29 | (define-fun _t_17 () (_ FloatingPoint 11 53) b34) 30 | (define-fun _t_18 () Bool (fp.leq _t_16 _t_17)) 31 | (define-fun _t_19 () Bool (and _t_15 _t_18)) 32 | (define-fun _t_20 () (_ FloatingPoint 11 53) b37) 33 | (define-fun _t_21 () Bool (fp.leq _t_20 _t_16)) 34 | (define-fun _t_22 () Bool (and _t_19 _t_21)) 35 | (define-fun _t_23 () (_ FloatingPoint 11 53) b41) 36 | (define-fun _t_24 () Bool (fp.leq _t_10 _t_23)) 37 | (define-fun _t_25 () Bool (and _t_22 _t_24)) 38 | (define-fun _t_26 () (_ FloatingPoint 11 53) b44) 39 | (define-fun _t_27 () Bool (fp.leq _t_26 _t_10)) 40 | (define-fun _t_28 () Bool (and _t_25 _t_27)) 41 | (define-fun _t_29 () (_ FloatingPoint 11 53) b30) 42 | (define-fun _t_30 () Bool (fp.leq _t_29 _t_23)) 43 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 44 | (define-fun _t_32 () Bool (fp.leq _t_26 _t_29)) 45 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 46 | (define-fun _t_34 () (_ FloatingPoint 11 53) b51) 47 | (define-fun _t_35 () Bool (fp.leq _t_9 _t_34)) 48 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 49 | (define-fun _t_37 () (_ FloatingPoint 11 53) b54) 50 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_9)) 51 | (define-fun _t_39 () Bool (and _t_36 _t_38)) 52 | (assert _t_39) 53 | (check-sat) 54 | -------------------------------------------------------------------------------- /benchmarks_small/sine.2.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 13 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_10)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 15 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_11 _t_13)) 16 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 17 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_15)) 18 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 19 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 20 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 21 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_18 _t_20)) 22 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_16 _t_21)) 23 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 24 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 25 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 26 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 27 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00000000000000000000000)) 29 | (define-fun _t_32 () Bool (fp.leq _t_31 _t_28)) 30 | (define-fun _t_33 () Bool (not _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 32 | (define-fun _t_35 () Bool (fp.leq _t_28 _t_34)) 33 | (define-fun _t_36 () Bool (not _t_35)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10010010000111111011010)) 35 | (define-fun _t_39 () Bool (fp.lt _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10010010000111111011010)) 37 | (define-fun _t_42 () Bool (fp.lt _t_41 _t_9)) 38 | (define-fun _t_43 () Bool (and _t_39 _t_42)) 39 | (define-fun _t_44 () Bool (and _t_36 _t_43)) 40 | (define-fun _t_45 () Bool (and _t_33 _t_44)) 41 | (assert _t_45) 42 | (check-sat) 43 | -------------------------------------------------------------------------------- /benchmarks_small/sine.3.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 13 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_10)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 15 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_11 _t_13)) 16 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 17 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_15)) 18 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 19 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 20 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 21 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_18 _t_20)) 22 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_16 _t_21)) 23 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 24 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 25 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 26 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 27 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00000000010000011000101)) 29 | (define-fun _t_32 () Bool (fp.leq _t_31 _t_28)) 30 | (define-fun _t_33 () Bool (not _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000010000011000101)) 32 | (define-fun _t_35 () Bool (fp.leq _t_28 _t_34)) 33 | (define-fun _t_36 () Bool (not _t_35)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10010010000111111011010)) 35 | (define-fun _t_39 () Bool (fp.lt _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10010010000111111011010)) 37 | (define-fun _t_42 () Bool (fp.lt _t_41 _t_9)) 38 | (define-fun _t_43 () Bool (and _t_39 _t_42)) 39 | (define-fun _t_44 () Bool (and _t_36 _t_43)) 40 | (define-fun _t_45 () Bool (and _t_33 _t_44)) 41 | (assert _t_45) 42 | (check-sat) 43 | -------------------------------------------------------------------------------- /benchmarks_small/sine.4.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 13 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_10)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 15 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_11 _t_13)) 16 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 17 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_15)) 18 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 19 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 20 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 21 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_18 _t_20)) 22 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_16 _t_21)) 23 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 24 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 25 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 26 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 27 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00000010100011110101110)) 29 | (define-fun _t_32 () Bool (fp.leq _t_31 _t_28)) 30 | (define-fun _t_33 () Bool (not _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000010100011110101110)) 32 | (define-fun _t_35 () Bool (fp.leq _t_28 _t_34)) 33 | (define-fun _t_36 () Bool (not _t_35)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10010010000111111011010)) 35 | (define-fun _t_39 () Bool (fp.lt _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10010010000111111011010)) 37 | (define-fun _t_42 () Bool (fp.lt _t_41 _t_9)) 38 | (define-fun _t_43 () Bool (and _t_39 _t_42)) 39 | (define-fun _t_44 () Bool (and _t_36 _t_43)) 40 | (define-fun _t_45 () Bool (and _t_33 _t_44)) 41 | (assert _t_45) 42 | (check-sat) 43 | -------------------------------------------------------------------------------- /benchmarks_small/sine.5.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 13 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_10)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 15 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_11 _t_13)) 16 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 17 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_15)) 18 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 19 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 20 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 21 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_18 _t_20)) 22 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_16 _t_21)) 23 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 24 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 25 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 26 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 27 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00011001100110011001101)) 29 | (define-fun _t_32 () Bool (fp.leq _t_31 _t_28)) 30 | (define-fun _t_33 () Bool (not _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00011001100110011001101)) 32 | (define-fun _t_35 () Bool (fp.leq _t_28 _t_34)) 33 | (define-fun _t_36 () Bool (not _t_35)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10010010000111111011010)) 35 | (define-fun _t_39 () Bool (fp.lt _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10010010000111111011010)) 37 | (define-fun _t_42 () Bool (fp.lt _t_41 _t_9)) 38 | (define-fun _t_43 () Bool (and _t_39 _t_42)) 39 | (define-fun _t_44 () Bool (and _t_36 _t_43)) 40 | (define-fun _t_45 () Bool (and _t_33 _t_44)) 41 | (assert _t_45) 42 | (check-sat) 43 | -------------------------------------------------------------------------------- /benchmarks_small/sine.6.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 13 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_10)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 15 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_11 _t_13)) 16 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 17 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_15)) 18 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 19 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 20 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 21 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_18 _t_20)) 22 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_16 _t_21)) 23 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 24 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 25 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 26 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 27 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00110011001100110011001)) 29 | (define-fun _t_32 () Bool (fp.leq _t_31 _t_28)) 30 | (define-fun _t_33 () Bool (not _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00110011001100110011001)) 32 | (define-fun _t_35 () Bool (fp.leq _t_28 _t_34)) 33 | (define-fun _t_36 () Bool (not _t_35)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10010010000111111011010)) 35 | (define-fun _t_39 () Bool (fp.lt _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10010010000111111011010)) 37 | (define-fun _t_42 () Bool (fp.lt _t_41 _t_9)) 38 | (define-fun _t_43 () Bool (and _t_39 _t_42)) 39 | (define-fun _t_44 () Bool (and _t_36 _t_43)) 40 | (define-fun _t_45 () Bool (and _t_33 _t_44)) 41 | (assert _t_45) 42 | (check-sat) 43 | -------------------------------------------------------------------------------- /benchmarks_small/sine.7.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 13 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_10)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 15 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_11 _t_13)) 16 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 17 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_15)) 18 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 19 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 20 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 21 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_18 _t_20)) 22 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_16 _t_21)) 23 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 24 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 25 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 26 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 27 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10000000000000000000000)) 29 | (define-fun _t_32 () Bool (fp.leq _t_31 _t_28)) 30 | (define-fun _t_33 () Bool (not _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10000000000000000000000)) 32 | (define-fun _t_35 () Bool (fp.leq _t_28 _t_34)) 33 | (define-fun _t_36 () Bool (not _t_35)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10010010000111111011010)) 35 | (define-fun _t_39 () Bool (fp.lt _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10010010000111111011010)) 37 | (define-fun _t_42 () Bool (fp.lt _t_41 _t_9)) 38 | (define-fun _t_43 () Bool (and _t_39 _t_42)) 39 | (define-fun _t_44 () Bool (and _t_36 _t_43)) 40 | (define-fun _t_45 () Bool (and _t_33 _t_44)) 41 | (assert _t_45) 42 | (check-sat) 43 | -------------------------------------------------------------------------------- /benchmarks_small/sine.8.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 13 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_10)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 15 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_11 _t_13)) 16 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 17 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_15)) 18 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 19 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 20 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 21 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_18 _t_20)) 22 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_16 _t_21)) 23 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 24 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 25 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 26 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 27 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b1 #b10000000 #b00000000000000000000000)) 29 | (define-fun _t_32 () Bool (fp.leq _t_31 _t_28)) 30 | (define-fun _t_33 () Bool (not _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 32 | (define-fun _t_35 () Bool (fp.leq _t_28 _t_34)) 33 | (define-fun _t_36 () Bool (not _t_35)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10010010000111111011010)) 35 | (define-fun _t_39 () Bool (fp.lt _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b10010010000111111011010)) 37 | (define-fun _t_42 () Bool (fp.lt _t_41 _t_9)) 38 | (define-fun _t_43 () Bool (and _t_39 _t_42)) 39 | (define-fun _t_44 () Bool (and _t_36 _t_43)) 40 | (define-fun _t_45 () Bool (and _t_33 _t_44)) 41 | (assert _t_45) 42 | (check-sat) 43 | -------------------------------------------------------------------------------- /benchmarks_small/f23.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-sort U0 0) 10 | (declare-fun x () (_ FloatingPoint 8 24)) 11 | (declare-fun y () (_ FloatingPoint 8 24)) 12 | (define-fun _t_3 () RoundingMode RNE) 13 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b10000000000000000000000)) 14 | (define-fun _t_11 () (_ FloatingPoint 8 24) x) 15 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_11 _t_11)) 16 | (define-fun _t_13 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_11 _t_12)) 17 | (define-fun _t_14 () (_ FloatingPoint 8 24) y) 18 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_14 _t_14)) 19 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_14 _t_15)) 20 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_13 _t_16)) 21 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_11 _t_14)) 22 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_10 _t_18)) 23 | (define-fun _t_20 () Bool (fp.leq _t_19 _t_17)) 24 | (assert _t_20) 25 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_15)) 27 | (define-fun _t_24 () Bool (fp.leq _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b00000000000000000000000)) 30 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 31 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_11 _t_28)) 32 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_11 _t_29)) 33 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_30)) 34 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_23 _t_31)) 35 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_18 _t_26)) 36 | (define-fun _t_34 () Bool (fp.leq _t_32 _t_33)) 37 | (assert _t_34) 38 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp #b1 #b10000000 #b10000000000000000000000)) 39 | (define-fun _t_37 () Bool (fp.leq _t_11 _t_10)) 40 | (define-fun _t_38 () Bool (fp.leq _t_36 _t_11)) 41 | (define-fun _t_39 () Bool (and _t_37 _t_38)) 42 | (assert _t_39) 43 | (define-fun _t_40 () Bool (fp.leq _t_14 _t_10)) 44 | (define-fun _t_41 () Bool (fp.leq _t_36 _t_14)) 45 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 46 | (assert _t_42) 47 | (check-sat) 48 | -------------------------------------------------------------------------------- /benchmarks_small/e2_1.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b24 () (_ FloatingPoint 11 53)) 10 | (declare-fun b28 () (_ FloatingPoint 11 53)) 11 | (declare-fun b21 () (_ FloatingPoint 11 53)) 12 | (declare-fun b41 () (_ FloatingPoint 11 53)) 13 | (declare-fun b8 () (_ FloatingPoint 11 53)) 14 | (declare-fun b11 () (_ FloatingPoint 11 53)) 15 | (declare-fun b9 () (_ FloatingPoint 11 53)) 16 | (declare-fun b19 () (_ FloatingPoint 11 53)) 17 | (declare-fun b38 () (_ FloatingPoint 11 53)) 18 | (declare-fun b31 () (_ FloatingPoint 11 53)) 19 | (declare-fun b15 () (_ FloatingPoint 11 53)) 20 | (define-fun _t_3 () RoundingMode RNE) 21 | (define-fun _t_9 () (_ FloatingPoint 11 53) b9) 22 | (define-fun _t_10 () (_ FloatingPoint 11 53) b21) 23 | (define-fun _t_11 () Bool (fp.leq _t_9 _t_10)) 24 | (define-fun _t_12 () (_ FloatingPoint 11 53) b11) 25 | (define-fun _t_13 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_12)) 26 | (define-fun _t_14 () (_ FloatingPoint 11 53) b8) 27 | (define-fun _t_15 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_14)) 28 | (define-fun _t_16 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_13 _t_15)) 29 | (define-fun _t_17 () (_ FloatingPoint 11 53) b15) 30 | (define-fun _t_18 () Bool (fp.lt _t_17 _t_16)) 31 | (define-fun _t_19 () Bool (and _t_11 _t_18)) 32 | (define-fun _t_20 () (_ FloatingPoint 11 53) b24) 33 | (define-fun _t_21 () Bool (fp.leq _t_20 _t_9)) 34 | (define-fun _t_22 () Bool (and _t_19 _t_21)) 35 | (define-fun _t_23 () (_ FloatingPoint 11 53) b28) 36 | (define-fun _t_24 () Bool (fp.leq _t_14 _t_23)) 37 | (define-fun _t_25 () Bool (and _t_22 _t_24)) 38 | (define-fun _t_26 () (_ FloatingPoint 11 53) b31) 39 | (define-fun _t_27 () Bool (fp.leq _t_26 _t_14)) 40 | (define-fun _t_28 () Bool (and _t_25 _t_27)) 41 | (define-fun _t_29 () Bool (fp.leq _t_12 _t_23)) 42 | (define-fun _t_30 () Bool (and _t_28 _t_29)) 43 | (define-fun _t_31 () Bool (fp.leq _t_26 _t_12)) 44 | (define-fun _t_32 () Bool (and _t_30 _t_31)) 45 | (define-fun _t_33 () (_ FloatingPoint 11 53) b19) 46 | (define-fun _t_34 () (_ FloatingPoint 11 53) b38) 47 | (define-fun _t_35 () Bool (fp.leq _t_33 _t_34)) 48 | (define-fun _t_36 () Bool (and _t_32 _t_35)) 49 | (define-fun _t_37 () (_ FloatingPoint 11 53) b41) 50 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_33)) 51 | (define-fun _t_39 () Bool (and _t_36 _t_38)) 52 | (assert _t_39) 53 | (check-sat) 54 | -------------------------------------------------------------------------------- /benchmarks_small/e2_2.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b20 () (_ FloatingPoint 11 53)) 10 | (declare-fun b28 () (_ FloatingPoint 11 53)) 11 | (declare-fun b42 () (_ FloatingPoint 11 53)) 12 | (declare-fun b45 () (_ FloatingPoint 11 53)) 13 | (declare-fun b23 () (_ FloatingPoint 11 53)) 14 | (declare-fun b32 () (_ FloatingPoint 11 53)) 15 | (declare-fun b35 () (_ FloatingPoint 11 53)) 16 | (declare-fun b10 () (_ FloatingPoint 11 53)) 17 | (declare-fun b22 () (_ FloatingPoint 11 53)) 18 | (declare-fun b25 () (_ FloatingPoint 11 53)) 19 | (declare-fun b16 () (_ FloatingPoint 11 53)) 20 | (declare-fun b12 () (_ FloatingPoint 11 53)) 21 | (define-fun _t_3 () RoundingMode RNE) 22 | (define-fun _t_9 () (_ FloatingPoint 11 53) b10) 23 | (define-fun _t_10 () (_ FloatingPoint 11 53) b16) 24 | (define-fun _t_11 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_10)) 25 | (define-fun _t_12 () (_ FloatingPoint 11 53) b12) 26 | (define-fun _t_13 () Bool (fp.lt _t_12 _t_11)) 27 | (define-fun _t_14 () Bool (fp.leq _t_9 _t_12)) 28 | (define-fun _t_15 () Bool (and _t_13 _t_14)) 29 | (define-fun _t_16 () (_ FloatingPoint 11 53) b20) 30 | (define-fun _t_17 () (_ FloatingPoint 11 53) b25) 31 | (define-fun _t_18 () Bool (fp.leq _t_16 _t_17)) 32 | (define-fun _t_19 () Bool (and _t_15 _t_18)) 33 | (define-fun _t_20 () (_ FloatingPoint 11 53) b28) 34 | (define-fun _t_21 () Bool (fp.leq _t_20 _t_16)) 35 | (define-fun _t_22 () Bool (and _t_19 _t_21)) 36 | (define-fun _t_23 () (_ FloatingPoint 11 53) b32) 37 | (define-fun _t_24 () Bool (fp.leq _t_9 _t_23)) 38 | (define-fun _t_25 () Bool (and _t_22 _t_24)) 39 | (define-fun _t_26 () (_ FloatingPoint 11 53) b35) 40 | (define-fun _t_27 () Bool (fp.leq _t_26 _t_9)) 41 | (define-fun _t_28 () Bool (and _t_25 _t_27)) 42 | (define-fun _t_29 () (_ FloatingPoint 11 53) b22) 43 | (define-fun _t_30 () Bool (fp.leq _t_29 _t_23)) 44 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 45 | (define-fun _t_32 () Bool (fp.leq _t_26 _t_29)) 46 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 47 | (define-fun _t_34 () (_ FloatingPoint 11 53) b23) 48 | (define-fun _t_35 () (_ FloatingPoint 11 53) b42) 49 | (define-fun _t_36 () Bool (fp.leq _t_34 _t_35)) 50 | (define-fun _t_37 () Bool (and _t_33 _t_36)) 51 | (define-fun _t_38 () (_ FloatingPoint 11 53) b45) 52 | (define-fun _t_39 () Bool (fp.leq _t_38 _t_34)) 53 | (define-fun _t_40 () Bool (and _t_37 _t_39)) 54 | (assert _t_40) 55 | (check-sat) 56 | -------------------------------------------------------------------------------- /benchmarks_small/e3_1.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b13 () (_ FloatingPoint 11 53)) 10 | (declare-fun b54 () (_ FloatingPoint 11 53)) 11 | (declare-fun b22 () (_ FloatingPoint 11 53)) 12 | (declare-fun b57 () (_ FloatingPoint 11 53)) 13 | (declare-fun b11 () (_ FloatingPoint 11 53)) 14 | (declare-fun b10 () (_ FloatingPoint 11 53)) 15 | (declare-fun b19 () (_ FloatingPoint 11 53)) 16 | (define-fun _t_3 () RoundingMode RNE) 17 | (define-fun _t_9 () (_ FloatingPoint 11 53) b11) 18 | (define-fun _t_10 () (_ FloatingPoint 11 53) b10) 19 | (define-fun _t_11 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_10)) 20 | (define-fun _t_12 () (_ FloatingPoint 11 53) b13) 21 | (define-fun _t_13 () Bool (fp.lt _t_11 _t_12)) 22 | (define-fun _t_14 () (_ FloatingPoint 11 53) b22) 23 | (define-fun _t_15 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_10 _t_14)) 24 | (define-fun _t_16 () (_ FloatingPoint 11 53) b19) 25 | (define-fun _t_17 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_12 _t_16)) 26 | (define-fun _t_18 () Bool (fp.lt _t_17 _t_15)) 27 | (define-fun _t_19 () Bool (and _t_13 _t_18)) 28 | (define-fun _t_20 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_9 _t_10)) 29 | (define-fun _t_21 () Bool (fp.lt _t_20 _t_12)) 30 | (define-fun _t_22 () Bool (and _t_19 _t_21)) 31 | (define-fun _t_23 () (_ FloatingPoint 11 53) (fp.neg _t_9)) 32 | (define-fun _t_24 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_10 _t_23)) 33 | (define-fun _t_25 () Bool (fp.lt _t_24 _t_16)) 34 | (define-fun _t_26 () Bool (and _t_22 _t_25)) 35 | (define-fun _t_27 () (_ FloatingPoint 11 53) b54) 36 | (define-fun _t_28 () Bool (fp.leq _t_10 _t_27)) 37 | (define-fun _t_29 () Bool (and _t_26 _t_28)) 38 | (define-fun _t_30 () (_ FloatingPoint 11 53) b57) 39 | (define-fun _t_31 () Bool (fp.leq _t_30 _t_10)) 40 | (define-fun _t_32 () Bool (and _t_29 _t_31)) 41 | (define-fun _t_33 () Bool (fp.leq _t_9 _t_27)) 42 | (define-fun _t_34 () Bool (and _t_32 _t_33)) 43 | (define-fun _t_35 () Bool (fp.leq _t_30 _t_9)) 44 | (define-fun _t_36 () Bool (and _t_34 _t_35)) 45 | (define-fun _t_37 () Bool (fp.leq _t_12 _t_27)) 46 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 47 | (define-fun _t_39 () Bool (fp.leq _t_30 _t_12)) 48 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 49 | (define-fun _t_41 () Bool (fp.leq _t_16 _t_27)) 50 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 51 | (define-fun _t_43 () Bool (fp.leq _t_30 _t_16)) 52 | (define-fun _t_44 () Bool (and _t_42 _t_43)) 53 | (assert _t_44) 54 | (check-sat) 55 | -------------------------------------------------------------------------------- /benchmarks_small/square.1.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_14)) 16 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 17 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.neg _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_26)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b01000000000000000000000)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.neg _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_27 _t_34)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 34 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_35)) 35 | (define-fun _t_39 () Bool (not _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b01100011110101110000101)) 37 | (define-fun _t_42 () Bool (fp.lt _t_35 _t_41)) 38 | (define-fun _t_43 () Bool (not _t_42)) 39 | (define-fun _t_44 () Bool (fp.lt _t_9 _t_14)) 40 | (define-fun _t_45 () Bool (fp.leq _t_37 _t_9)) 41 | (define-fun _t_46 () Bool (and _t_44 _t_45)) 42 | (define-fun _t_47 () Bool (and _t_43 _t_46)) 43 | (define-fun _t_48 () Bool (and _t_39 _t_47)) 44 | (assert _t_48) 45 | (check-sat) 46 | -------------------------------------------------------------------------------- /benchmarks_small/square.2.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_14)) 16 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 17 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.neg _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_26)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b01000000000000000000000)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.neg _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_27 _t_34)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 34 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_35)) 35 | (define-fun _t_39 () Bool (not _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b01100101111000110101001)) 37 | (define-fun _t_42 () Bool (fp.lt _t_35 _t_41)) 38 | (define-fun _t_43 () Bool (not _t_42)) 39 | (define-fun _t_44 () Bool (fp.lt _t_9 _t_14)) 40 | (define-fun _t_45 () Bool (fp.leq _t_37 _t_9)) 41 | (define-fun _t_46 () Bool (and _t_44 _t_45)) 42 | (define-fun _t_47 () Bool (and _t_43 _t_46)) 43 | (define-fun _t_48 () Bool (and _t_39 _t_47)) 44 | (assert _t_48) 45 | (check-sat) 46 | -------------------------------------------------------------------------------- /benchmarks_small/square.3.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_14)) 16 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 17 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.neg _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_26)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b01000000000000000000000)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.neg _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_27 _t_34)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 34 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_35)) 35 | (define-fun _t_39 () Bool (not _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b01100101111111111000000)) 37 | (define-fun _t_42 () Bool (fp.lt _t_35 _t_41)) 38 | (define-fun _t_43 () Bool (not _t_42)) 39 | (define-fun _t_44 () Bool (fp.lt _t_9 _t_14)) 40 | (define-fun _t_45 () Bool (fp.leq _t_37 _t_9)) 41 | (define-fun _t_46 () Bool (and _t_44 _t_45)) 42 | (define-fun _t_47 () Bool (and _t_43 _t_46)) 43 | (define-fun _t_48 () Bool (and _t_39 _t_47)) 44 | (assert _t_48) 45 | (check-sat) 46 | -------------------------------------------------------------------------------- /benchmarks_small/square.4.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_14)) 16 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 17 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.neg _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_26)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b01000000000000000000000)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.neg _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_27 _t_34)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 34 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_35)) 35 | (define-fun _t_39 () Bool (not _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b01100110000000000010101)) 37 | (define-fun _t_42 () Bool (fp.lt _t_35 _t_41)) 38 | (define-fun _t_43 () Bool (not _t_42)) 39 | (define-fun _t_44 () Bool (fp.lt _t_9 _t_14)) 40 | (define-fun _t_45 () Bool (fp.leq _t_37 _t_9)) 41 | (define-fun _t_46 () Bool (and _t_44 _t_45)) 42 | (define-fun _t_47 () Bool (and _t_43 _t_46)) 43 | (define-fun _t_48 () Bool (and _t_39 _t_47)) 44 | (assert _t_48) 45 | (check-sat) 46 | -------------------------------------------------------------------------------- /benchmarks_small/square.5.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_14)) 16 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 17 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.neg _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_26)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b01000000000000000000000)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.neg _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_27 _t_34)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 34 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_35)) 35 | (define-fun _t_39 () Bool (not _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b01100110000001000001100)) 37 | (define-fun _t_42 () Bool (fp.lt _t_35 _t_41)) 38 | (define-fun _t_43 () Bool (not _t_42)) 39 | (define-fun _t_44 () Bool (fp.lt _t_9 _t_14)) 40 | (define-fun _t_45 () Bool (fp.leq _t_37 _t_9)) 41 | (define-fun _t_46 () Bool (and _t_44 _t_45)) 42 | (define-fun _t_47 () Bool (and _t_43 _t_46)) 43 | (define-fun _t_48 () Bool (and _t_39 _t_47)) 44 | (assert _t_48) 45 | (check-sat) 46 | -------------------------------------------------------------------------------- /benchmarks_small/square.6.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_14)) 16 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 17 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.neg _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_26)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b01000000000000000000000)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.neg _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_27 _t_34)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 34 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_35)) 35 | (define-fun _t_39 () Bool (not _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b01100110001001001101111)) 37 | (define-fun _t_42 () Bool (fp.lt _t_35 _t_41)) 38 | (define-fun _t_43 () Bool (not _t_42)) 39 | (define-fun _t_44 () Bool (fp.lt _t_9 _t_14)) 40 | (define-fun _t_45 () Bool (fp.leq _t_37 _t_9)) 41 | (define-fun _t_46 () Bool (and _t_44 _t_45)) 42 | (define-fun _t_47 () Bool (and _t_43 _t_46)) 43 | (define-fun _t_48 () Bool (and _t_39 _t_47)) 44 | (assert _t_48) 45 | (check-sat) 46 | -------------------------------------------------------------------------------- /benchmarks_small/square.7.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_14)) 16 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 17 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.neg _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_26)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b01000000000000000000000)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.neg _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_27 _t_34)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 34 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_35)) 35 | (define-fun _t_39 () Bool (not _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b01100110011001100110010)) 37 | (define-fun _t_42 () Bool (fp.lt _t_35 _t_41)) 38 | (define-fun _t_43 () Bool (not _t_42)) 39 | (define-fun _t_44 () Bool (fp.lt _t_9 _t_14)) 40 | (define-fun _t_45 () Bool (fp.leq _t_37 _t_9)) 41 | (define-fun _t_46 () Bool (and _t_44 _t_45)) 42 | (define-fun _t_47 () Bool (and _t_43 _t_46)) 43 | (define-fun _t_48 () Bool (and _t_39 _t_47)) 44 | (assert _t_48) 45 | (check-sat) 46 | -------------------------------------------------------------------------------- /benchmarks_small/square.8.0.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_12 _t_14)) 16 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 17 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_18)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.neg _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_26)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b01000000000000000000000)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.neg _t_33)) 32 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_27 _t_34)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 34 | (define-fun _t_38 () Bool (fp.leq _t_37 _t_35)) 35 | (define-fun _t_39 () Bool (not _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b10000000000000000000000)) 37 | (define-fun _t_42 () Bool (fp.lt _t_35 _t_41)) 38 | (define-fun _t_43 () Bool (not _t_42)) 39 | (define-fun _t_44 () Bool (fp.lt _t_9 _t_14)) 40 | (define-fun _t_45 () Bool (fp.leq _t_37 _t_9)) 41 | (define-fun _t_46 () Bool (and _t_44 _t_45)) 42 | (define-fun _t_47 () Bool (and _t_43 _t_46)) 43 | (define-fun _t_48 () Bool (and _t_39 _t_47)) 44 | (assert _t_48) 45 | (check-sat) 46 | -------------------------------------------------------------------------------- /benchmarks_small/e2.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b68 () (_ FloatingPoint 11 53)) 10 | (declare-fun b58 () (_ FloatingPoint 11 53)) 11 | (declare-fun b54 () (_ FloatingPoint 11 53)) 12 | (declare-fun b71 () (_ FloatingPoint 11 53)) 13 | (declare-fun b61 () (_ FloatingPoint 11 53)) 14 | (declare-fun b28 () (_ FloatingPoint 11 53)) 15 | (declare-fun b20 () (_ FloatingPoint 11 53)) 16 | (declare-fun b51 () (_ FloatingPoint 11 53)) 17 | (declare-fun b24 () (_ FloatingPoint 11 53)) 18 | (declare-fun b14 () (_ FloatingPoint 11 53)) 19 | (declare-fun b32 () (_ FloatingPoint 11 53)) 20 | (declare-fun b16 () (_ FloatingPoint 11 53)) 21 | (declare-fun b13 () (_ FloatingPoint 11 53)) 22 | (define-fun _t_3 () RoundingMode RNE) 23 | (define-fun _t_9 () (_ FloatingPoint 11 53) b13) 24 | (define-fun _t_10 () (_ FloatingPoint 11 53) b28) 25 | (define-fun _t_11 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_10)) 26 | (define-fun _t_12 () (_ FloatingPoint 11 53) b24) 27 | (define-fun _t_13 () Bool (fp.lt _t_12 _t_11)) 28 | (define-fun _t_14 () Bool (not _t_13)) 29 | (define-fun _t_15 () (_ FloatingPoint 11 53) b61) 30 | (define-fun _t_16 () Bool (fp.leq _t_15 _t_9)) 31 | (define-fun _t_17 () (_ FloatingPoint 11 53) b58) 32 | (define-fun _t_18 () Bool (fp.leq _t_9 _t_17)) 33 | (define-fun _t_19 () Bool (and _t_16 _t_18)) 34 | (define-fun _t_20 () (_ FloatingPoint 11 53) b54) 35 | (define-fun _t_21 () (_ FloatingPoint 11 53) b14) 36 | (define-fun _t_22 () Bool (fp.leq _t_20 _t_21)) 37 | (define-fun _t_23 () Bool (and _t_19 _t_22)) 38 | (define-fun _t_24 () (_ FloatingPoint 11 53) b51) 39 | (define-fun _t_25 () Bool (fp.leq _t_21 _t_24)) 40 | (define-fun _t_26 () Bool (and _t_23 _t_25)) 41 | (define-fun _t_27 () (_ FloatingPoint 11 53) b16) 42 | (define-fun _t_28 () Bool (fp.leq _t_15 _t_27)) 43 | (define-fun _t_29 () Bool (and _t_26 _t_28)) 44 | (define-fun _t_30 () Bool (fp.leq _t_27 _t_17)) 45 | (define-fun _t_31 () Bool (and _t_29 _t_30)) 46 | (define-fun _t_32 () (_ FloatingPoint 11 53) b71) 47 | (define-fun _t_33 () (_ FloatingPoint 11 53) b32) 48 | (define-fun _t_34 () Bool (fp.leq _t_32 _t_33)) 49 | (define-fun _t_35 () Bool (and _t_31 _t_34)) 50 | (define-fun _t_36 () (_ FloatingPoint 11 53) b68) 51 | (define-fun _t_37 () Bool (fp.leq _t_33 _t_36)) 52 | (define-fun _t_38 () Bool (and _t_35 _t_37)) 53 | (define-fun _t_39 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_21 _t_27)) 54 | (define-fun _t_40 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_21)) 55 | (define-fun _t_41 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_39 _t_40)) 56 | (define-fun _t_42 () (_ FloatingPoint 11 53) b20) 57 | (define-fun _t_43 () Bool (fp.lt _t_42 _t_41)) 58 | (define-fun _t_44 () Bool (not _t_43)) 59 | (define-fun _t_45 () Bool (and _t_38 _t_44)) 60 | (define-fun _t_46 () Bool (fp.leq _t_9 _t_12)) 61 | (define-fun _t_47 () Bool (and _t_45 _t_46)) 62 | (define-fun _t_48 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_33)) 63 | (define-fun _t_49 () Bool (fp.lt _t_12 _t_48)) 64 | (define-fun _t_50 () Bool (and _t_47 _t_49)) 65 | (define-fun _t_51 () Bool (and _t_14 _t_50)) 66 | (assert _t_51) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/newton.5.1.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:52 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00000000000000000000000)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_17 _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.neg _t_20)) 21 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_11 _t_21)) 22 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 23 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10000011 #b10000000000000000000000)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 26 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 27 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 28 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp #b0 #b10001000 #b01101000000000000000000)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_30 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_28 _t_33)) 32 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_23 _t_36)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp.neg _t_37)) 35 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 37 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_29 _t_41)) 38 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_39 _t_42)) 39 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 40 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 41 | (define-fun _t_47 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_44 _t_46)) 42 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_43 _t_47)) 43 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_48 _t_34)) 44 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.neg _t_49)) 45 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_50)) 46 | (define-fun _t_52 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_51)) 47 | (define-fun _t_54 () (_ FloatingPoint 11 53) (fp #b0 #b01111111011 #b1001100110011001100110011001100110011001100110011001)) 48 | (define-fun _t_55 () Bool (fp.lt _t_52 _t_54)) 49 | (define-fun _t_56 () Bool (not _t_55)) 50 | (define-fun _t_57 () Bool (and _t_16 _t_56)) 51 | (assert _t_57) 52 | (check-sat) 53 | -------------------------------------------------------------------------------- /benchmarks_small/newton.8.1.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:53 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b10000000 #b00000000000000000000000)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_17 _t_11)) 19 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.neg _t_18)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 21 | (define-fun _t_22 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_19 _t_21)) 22 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 23 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_23)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b10000011 #b10000000000000000000000)) 25 | (define-fun _t_27 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_24 _t_26)) 26 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_22 _t_27)) 27 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_24)) 28 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_29)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp #b0 #b10001000 #b01101000000000000000000)) 30 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_30 _t_32)) 31 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_28 _t_33)) 32 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 33 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_23 _t_36)) 34 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp.neg _t_37)) 35 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_38)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 37 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_29 _t_41)) 38 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_39 _t_42)) 39 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_30)) 40 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 41 | (define-fun _t_47 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_44 _t_46)) 42 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_43 _t_47)) 43 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_48 _t_34)) 44 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.neg _t_49)) 45 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_50)) 46 | (define-fun _t_52 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_51)) 47 | (define-fun _t_54 () (_ FloatingPoint 11 53) (fp #b0 #b01111111011 #b1001100110011001100110011001100110011001100110011001)) 48 | (define-fun _t_55 () Bool (fp.lt _t_52 _t_54)) 49 | (define-fun _t_56 () Bool (not _t_55)) 50 | (define-fun _t_57 () Bool (and _t_16 _t_56)) 51 | (assert _t_57) 52 | (check-sat) 53 | -------------------------------------------------------------------------------- /benchmarks_small/newton.1.1.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:52 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b10011001100110011001101)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b01111100 #b10011001100110011001101)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_17 _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.neg _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b10000011 #b10000000000000000000000)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_26 _t_28)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_24 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_26)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b10001000 #b01101000000000000000000)) 31 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_32 _t_34)) 32 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_30 _t_35)) 33 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 34 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_25 _t_38)) 35 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp.neg _t_39)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_40)) 37 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 38 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_31 _t_43)) 39 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_41 _t_44)) 40 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 41 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 42 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_46 _t_48)) 43 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_45 _t_49)) 44 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_50 _t_36)) 45 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.neg _t_51)) 46 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_52)) 47 | (define-fun _t_54 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_53)) 48 | (define-fun _t_56 () (_ FloatingPoint 11 53) (fp #b0 #b01111111011 #b1001100110011001100110011001100110011001100110011001)) 49 | (define-fun _t_57 () Bool (fp.lt _t_54 _t_56)) 50 | (define-fun _t_58 () Bool (not _t_57)) 51 | (define-fun _t_59 () Bool (and _t_16 _t_58)) 52 | (assert _t_59) 53 | (check-sat) 54 | -------------------------------------------------------------------------------- /benchmarks_small/newton.2.1.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:52 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b10011001100110011001100)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b10011001100110011001100)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_17 _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.neg _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b10000011 #b10000000000000000000000)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_26 _t_28)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_24 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_26)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b10001000 #b01101000000000000000000)) 31 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_32 _t_34)) 32 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_30 _t_35)) 33 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 34 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_25 _t_38)) 35 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp.neg _t_39)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_40)) 37 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 38 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_31 _t_43)) 39 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_41 _t_44)) 40 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 41 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 42 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_46 _t_48)) 43 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_45 _t_49)) 44 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_50 _t_36)) 45 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.neg _t_51)) 46 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_52)) 47 | (define-fun _t_54 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_53)) 48 | (define-fun _t_56 () (_ FloatingPoint 11 53) (fp #b0 #b01111111011 #b1001100110011001100110011001100110011001100110011001)) 49 | (define-fun _t_57 () Bool (fp.lt _t_54 _t_56)) 50 | (define-fun _t_58 () Bool (not _t_57)) 51 | (define-fun _t_59 () Bool (and _t_16 _t_58)) 52 | (assert _t_59) 53 | (check-sat) 54 | -------------------------------------------------------------------------------- /benchmarks_small/newton.3.1.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:52 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00110011001100110011001)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b00110011001100110011001)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_17 _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.neg _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b10000011 #b10000000000000000000000)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_26 _t_28)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_24 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_26)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b10001000 #b01101000000000000000000)) 31 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_32 _t_34)) 32 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_30 _t_35)) 33 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 34 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_25 _t_38)) 35 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp.neg _t_39)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_40)) 37 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 38 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_31 _t_43)) 39 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_41 _t_44)) 40 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 41 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 42 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_46 _t_48)) 43 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_45 _t_49)) 44 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_50 _t_36)) 45 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.neg _t_51)) 46 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_52)) 47 | (define-fun _t_54 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_53)) 48 | (define-fun _t_56 () (_ FloatingPoint 11 53) (fp #b0 #b01111111011 #b1001100110011001100110011001100110011001100110011001)) 49 | (define-fun _t_57 () Bool (fp.lt _t_54 _t_56)) 50 | (define-fun _t_58 () Bool (not _t_57)) 51 | (define-fun _t_59 () Bool (and _t_16 _t_58)) 52 | (assert _t_59) 53 | (check-sat) 54 | -------------------------------------------------------------------------------- /benchmarks_small/newton.4.1.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:52 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b10011001100110011001100)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b10011001100110011001100)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_17 _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.neg _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b10000011 #b10000000000000000000000)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_26 _t_28)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_24 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_26)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b10001000 #b01101000000000000000000)) 31 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_32 _t_34)) 32 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_30 _t_35)) 33 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 34 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_25 _t_38)) 35 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp.neg _t_39)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_40)) 37 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 38 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_31 _t_43)) 39 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_41 _t_44)) 40 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 41 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 42 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_46 _t_48)) 43 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_45 _t_49)) 44 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_50 _t_36)) 45 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.neg _t_51)) 46 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_52)) 47 | (define-fun _t_54 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_53)) 48 | (define-fun _t_56 () (_ FloatingPoint 11 53) (fp #b0 #b01111111011 #b1001100110011001100110011001100110011001100110011001)) 49 | (define-fun _t_57 () Bool (fp.lt _t_54 _t_56)) 50 | (define-fun _t_58 () Bool (not _t_57)) 51 | (define-fun _t_59 () Bool (and _t_16 _t_58)) 52 | (assert _t_59) 53 | (check-sat) 54 | -------------------------------------------------------------------------------- /benchmarks_small/newton.6.1.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:53 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00110011001100110011001)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00110011001100110011001)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_17 _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.neg _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b10000011 #b10000000000000000000000)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_26 _t_28)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_24 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_26)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b10001000 #b01101000000000000000000)) 31 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_32 _t_34)) 32 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_30 _t_35)) 33 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 34 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_25 _t_38)) 35 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp.neg _t_39)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_40)) 37 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 38 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_31 _t_43)) 39 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_41 _t_44)) 40 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 41 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 42 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_46 _t_48)) 43 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_45 _t_49)) 44 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_50 _t_36)) 45 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.neg _t_51)) 46 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_52)) 47 | (define-fun _t_54 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_53)) 48 | (define-fun _t_56 () (_ FloatingPoint 11 53) (fp #b0 #b01111111011 #b1001100110011001100110011001100110011001100110011001)) 49 | (define-fun _t_57 () Bool (fp.lt _t_54 _t_56)) 50 | (define-fun _t_58 () Bool (not _t_57)) 51 | (define-fun _t_59 () Bool (and _t_16 _t_58)) 52 | (assert _t_59) 53 | (check-sat) 54 | -------------------------------------------------------------------------------- /benchmarks_small/newton.7.1.i.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:53 8 | 9 | (declare-fun |c::main::1::IN!0@1#0| () (_ FloatingPoint 8 24)) 10 | (define-fun _t_3 () RoundingMode RNE) 11 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::IN!0@1#0|) 12 | (define-fun _t_11 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b01100110011001100110010)) 13 | (define-fun _t_12 () Bool (fp.lt _t_9 _t_11)) 14 | (define-fun _t_14 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b01100110011001100110010)) 15 | (define-fun _t_15 () Bool (fp.lt _t_14 _t_9)) 16 | (define-fun _t_16 () Bool (and _t_12 _t_15)) 17 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_9)) 18 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp #b0 #b10000000 #b00000000000000000000000)) 19 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_17 _t_19)) 20 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.neg _t_20)) 21 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 22 | (define-fun _t_24 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_21 _t_23)) 23 | (define-fun _t_25 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_17)) 24 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_25)) 25 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b10000011 #b10000000000000000000000)) 26 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_26 _t_28)) 27 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_24 _t_29)) 28 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_26)) 29 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_31)) 30 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b10001000 #b01101000000000000000000)) 31 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_32 _t_34)) 32 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_30 _t_35)) 33 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b10000000000000000000000)) 34 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_25 _t_38)) 35 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp.neg _t_39)) 36 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_40)) 37 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b11100000000000000000000)) 38 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_31 _t_43)) 39 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_41 _t_44)) 40 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_9 _t_32)) 41 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b0 #b10001011 #b00111011000000000000000)) 42 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_46 _t_48)) 43 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_45 _t_49)) 44 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.div _t_3 _t_50 _t_36)) 45 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.neg _t_51)) 46 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_52)) 47 | (define-fun _t_54 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_53)) 48 | (define-fun _t_56 () (_ FloatingPoint 11 53) (fp #b0 #b01111111011 #b1001100110011001100110011001100110011001100110011001)) 49 | (define-fun _t_57 () Bool (fp.lt _t_54 _t_56)) 50 | (define-fun _t_58 () Bool (not _t_57)) 51 | (define-fun _t_59 () Bool (and _t_16 _t_58)) 52 | (assert _t_59) 53 | (check-sat) 54 | -------------------------------------------------------------------------------- /benchmarks_small/e3.c.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun b13 () (_ FloatingPoint 11 53)) 10 | (declare-fun b25 () (_ FloatingPoint 11 53)) 11 | (declare-fun b22 () (_ FloatingPoint 11 53)) 12 | (declare-fun b82 () (_ FloatingPoint 11 53)) 13 | (declare-fun b14 () (_ FloatingPoint 11 53)) 14 | (declare-fun b34 () (_ FloatingPoint 11 53)) 15 | (declare-fun b43 () (_ FloatingPoint 11 53)) 16 | (declare-fun b85 () (_ FloatingPoint 11 53)) 17 | (declare-fun b16 () (_ FloatingPoint 11 53)) 18 | (declare-fun b131 () (_ FloatingPoint 11 53)) 19 | (declare-fun b126 () (_ FloatingPoint 11 53)) 20 | (define-fun _t_3 () RoundingMode RNE) 21 | (define-fun _t_9 () (_ FloatingPoint 11 53) b131) 22 | (define-fun _t_10 () (_ FloatingPoint 11 53) b43) 23 | (define-fun _t_11 () Bool (= _t_9 _t_10)) 24 | (define-fun _t_12 () Bool (not _t_11)) 25 | (define-fun _t_13 () (_ FloatingPoint 11 53) b126) 26 | (define-fun _t_14 () (_ FloatingPoint 11 53) b34) 27 | (define-fun _t_15 () Bool (= _t_13 _t_14)) 28 | (define-fun _t_16 () Bool (not _t_15)) 29 | (define-fun _t_17 () (_ FloatingPoint 11 53) b13) 30 | (define-fun _t_18 () (_ FloatingPoint 11 53) b25) 31 | (define-fun _t_19 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_17 _t_18)) 32 | (define-fun _t_20 () (_ FloatingPoint 11 53) b16) 33 | (define-fun _t_21 () (_ FloatingPoint 11 53) b22) 34 | (define-fun _t_22 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_20 _t_21)) 35 | (define-fun _t_23 () Bool (fp.lt _t_22 _t_19)) 36 | (define-fun _t_24 () Bool (not _t_23)) 37 | (define-fun _t_25 () (_ FloatingPoint 11 53) b14) 38 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp.neg _t_25)) 39 | (define-fun _t_27 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_17 _t_26)) 40 | (define-fun _t_28 () Bool (fp.lt _t_27 _t_21)) 41 | (define-fun _t_29 () Bool (not _t_28)) 42 | (define-fun _t_30 () (_ FloatingPoint 11 53) (fp.mul _t_3 _t_17 _t_25)) 43 | (define-fun _t_31 () Bool (fp.lt _t_30 _t_20)) 44 | (define-fun _t_32 () Bool (not _t_31)) 45 | (define-fun _t_33 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_17 _t_25)) 46 | (define-fun _t_34 () Bool (fp.lt _t_33 _t_20)) 47 | (define-fun _t_35 () Bool (not _t_34)) 48 | (define-fun _t_36 () Bool (= _t_13 _t_20)) 49 | (define-fun _t_37 () Bool (and _t_35 _t_36)) 50 | (define-fun _t_38 () Bool (= _t_9 _t_21)) 51 | (define-fun _t_39 () Bool (and _t_37 _t_38)) 52 | (define-fun _t_40 () (_ FloatingPoint 11 53) b85) 53 | (define-fun _t_41 () Bool (fp.leq _t_40 _t_25)) 54 | (define-fun _t_42 () Bool (and _t_39 _t_41)) 55 | (define-fun _t_43 () (_ FloatingPoint 11 53) b82) 56 | (define-fun _t_44 () Bool (fp.leq _t_25 _t_43)) 57 | (define-fun _t_45 () Bool (and _t_42 _t_44)) 58 | (define-fun _t_46 () Bool (fp.leq _t_40 _t_17)) 59 | (define-fun _t_47 () Bool (and _t_45 _t_46)) 60 | (define-fun _t_48 () Bool (fp.leq _t_17 _t_43)) 61 | (define-fun _t_49 () Bool (and _t_47 _t_48)) 62 | (define-fun _t_50 () Bool (fp.leq _t_40 _t_20)) 63 | (define-fun _t_51 () Bool (and _t_49 _t_50)) 64 | (define-fun _t_52 () Bool (fp.leq _t_20 _t_43)) 65 | (define-fun _t_53 () Bool (and _t_51 _t_52)) 66 | (define-fun _t_54 () Bool (fp.leq _t_40 _t_21)) 67 | (define-fun _t_55 () Bool (and _t_53 _t_54)) 68 | (define-fun _t_56 () Bool (fp.leq _t_21 _t_43)) 69 | (define-fun _t_57 () Bool (and _t_55 _t_56)) 70 | (define-fun _t_58 () (_ FloatingPoint 11 53) (fp.add _t_3 _t_9 _t_13)) 71 | (define-fun _t_59 () Bool (fp.lt _t_58 _t_19)) 72 | (define-fun _t_60 () Bool (and _t_57 _t_59)) 73 | (define-fun _t_61 () Bool (fp.lt _t_27 _t_9)) 74 | (define-fun _t_62 () Bool (and _t_60 _t_61)) 75 | (define-fun _t_63 () Bool (fp.lt _t_33 _t_13)) 76 | (define-fun _t_64 () Bool (and _t_62 _t_63)) 77 | (define-fun _t_65 () Bool (and _t_32 _t_64)) 78 | (define-fun _t_66 () Bool (and _t_29 _t_65)) 79 | (define-fun _t_67 () Bool (and _t_24 _t_66)) 80 | (define-fun _t_68 () Bool (and _t_16 _t_67)) 81 | (define-fun _t_69 () Bool (and _t_12 _t_68)) 82 | (assert _t_69) 83 | (check-sat) 84 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr10_c1_s14052.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b10000010 #b01000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b10000010 #b01000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b1 #b01111011 #b00001110010101100000010)) 32 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b0 #b01111010 #b11110011101101100100011)) 33 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_31)) 34 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_32)) 35 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b10100110011001100110011)) 36 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_35)) 37 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_33 _t_36)) 38 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b01110111010010111100011)) 39 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_39)) 40 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_37 _t_40)) 41 | (define-fun _t_42 () Bool (fp.leq _t_41 _t_29)) 42 | (assert _t_42) 43 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b00101100100010110100001)) 44 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b10111100011010100111111)) 45 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_48)) 46 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_49)) 47 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b11100010010011011101001)) 48 | (define-fun _t_54 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_53)) 49 | (define-fun _t_55 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_50 _t_54)) 50 | (define-fun _t_57 () (_ FloatingPoint 8 24) (fp #b0 #b01110111 #b11001010110000001000001)) 51 | (define-fun _t_58 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_57)) 52 | (define-fun _t_59 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_55 _t_58)) 53 | (define-fun _t_60 () Bool (fp.leq _t_45 _t_59)) 54 | (assert _t_60) 55 | (define-fun _t_62 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000111101011100001001)) 56 | (define-fun _t_64 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b01011101101100100010110)) 57 | (define-fun _t_65 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_64)) 58 | (define-fun _t_66 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_65)) 59 | (define-fun _t_68 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11001110010101100000001)) 60 | (define-fun _t_69 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_68)) 61 | (define-fun _t_70 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_66 _t_69)) 62 | (define-fun _t_73 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b01011100001010001111010)) 63 | (define-fun _t_74 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_73)) 64 | (define-fun _t_75 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_70 _t_74)) 65 | (define-fun _t_76 () Bool (fp.leq _t_62 _t_75)) 66 | (assert _t_76) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr10_c1_s24300.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b10000010 #b01000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b10000010 #b01000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b01011110001101010100000)) 32 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11000010000011000100100)) 33 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_30)) 34 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_31)) 35 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b00010011011101001011110)) 36 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_35)) 37 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_32 _t_36)) 38 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b10001000101101000011100)) 39 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_40)) 40 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_37 _t_41)) 41 | (define-fun _t_43 () Bool (fp.leq _t_42 _t_28)) 42 | (assert _t_43) 43 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b11001110110110010001010)) 44 | (define-fun _t_47 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b10101001111110111110011)) 45 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_47)) 46 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_48)) 47 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b01000101000111101011100)) 48 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_51)) 49 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_49 _t_52)) 50 | (define-fun _t_56 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b01011001000101101000100)) 51 | (define-fun _t_57 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_56)) 52 | (define-fun _t_58 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_53 _t_57)) 53 | (define-fun _t_59 () Bool (fp.leq _t_45 _t_58)) 54 | (assert _t_59) 55 | (define-fun _t_61 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11011011101001011110001)) 56 | (define-fun _t_63 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b00000000000000000000000)) 57 | (define-fun _t_64 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_63)) 58 | (define-fun _t_65 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_64)) 59 | (define-fun _t_68 () (_ FloatingPoint 8 24) (fp #b1 #b01111011 #b10101001111110111110011)) 60 | (define-fun _t_69 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_68)) 61 | (define-fun _t_70 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_65 _t_69)) 62 | (define-fun _t_72 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b00000011100101011000001)) 63 | (define-fun _t_73 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_72)) 64 | (define-fun _t_74 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_70 _t_73)) 65 | (define-fun _t_75 () Bool (fp.leq _t_61 _t_74)) 66 | (assert _t_75) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr10_c1_s29304.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b10000010 #b01000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b10000010 #b01000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b10000101101000011100100)) 32 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b01110001101010011111101)) 33 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_32)) 34 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_33)) 35 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b01111110111110011101101)) 36 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_36)) 37 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_34 _t_37)) 38 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111100 #b10010111100011010100111)) 39 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_41)) 40 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_38 _t_42)) 41 | (define-fun _t_44 () Bool (fp.leq _t_29 _t_43)) 42 | (assert _t_44) 43 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b01110101110000101001000)) 44 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b01100000010000011000100)) 45 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_49)) 46 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_50)) 47 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11111011111001110110110)) 48 | (define-fun _t_54 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_53)) 49 | (define-fun _t_55 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_51 _t_54)) 50 | (define-fun _t_57 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b10011000100100110111001)) 51 | (define-fun _t_58 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_57)) 52 | (define-fun _t_59 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_55 _t_58)) 53 | (define-fun _t_60 () Bool (fp.leq _t_46 _t_59)) 54 | (assert _t_60) 55 | (define-fun _t_63 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11110001001001101110100)) 56 | (define-fun _t_66 () (_ FloatingPoint 8 24) (fp #b1 #b01110111 #b00000110001001001101111)) 57 | (define-fun _t_67 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_66)) 58 | (define-fun _t_68 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_67)) 59 | (define-fun _t_71 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b01101001011110001101001)) 60 | (define-fun _t_72 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_71)) 61 | (define-fun _t_73 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_68 _t_72)) 62 | (define-fun _t_75 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b01000001100010010011100)) 63 | (define-fun _t_76 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_75)) 64 | (define-fun _t_77 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_73 _t_76)) 65 | (define-fun _t_78 () Bool (fp.leq _t_77 _t_63)) 66 | (assert _t_78) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr1_c1_s10392.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b11110011101101100100011)) 32 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11100000010000011000100)) 33 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_31)) 34 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_32)) 35 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b10011001000101101000100)) 36 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_36)) 37 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_33 _t_37)) 38 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11001100110011001100110)) 39 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_40)) 40 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_38 _t_41)) 41 | (define-fun _t_43 () Bool (fp.leq _t_42 _t_28)) 42 | (assert _t_43) 43 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b00011001100110011001100)) 44 | (define-fun _t_47 () (_ FloatingPoint 8 24) (fp #b0 #b01110111 #b01000111101011100001001)) 45 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_47)) 46 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_48)) 47 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11011110101110000101001)) 48 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_51)) 49 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_49 _t_52)) 50 | (define-fun _t_56 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b00101110000101000111100)) 51 | (define-fun _t_57 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_56)) 52 | (define-fun _t_58 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_53 _t_57)) 53 | (define-fun _t_59 () Bool (fp.leq _t_58 _t_45)) 54 | (assert _t_59) 55 | (define-fun _t_62 () (_ FloatingPoint 8 24) (fp #b1 #b01111010 #b00100110111010010111011)) 56 | (define-fun _t_64 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b01011001000101101000011)) 57 | (define-fun _t_65 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_64)) 58 | (define-fun _t_66 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_65)) 59 | (define-fun _t_68 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b01001011110001101010100)) 60 | (define-fun _t_69 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_68)) 61 | (define-fun _t_70 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_66 _t_69)) 62 | (define-fun _t_73 () (_ FloatingPoint 8 24) (fp #b1 #b01111100 #b00100110111010010111011)) 63 | (define-fun _t_74 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_73)) 64 | (define-fun _t_75 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_70 _t_74)) 65 | (define-fun _t_76 () Bool (fp.leq _t_75 _t_62)) 66 | (assert _t_76) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr1_c1_s5578.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11001001101110100101110)) 32 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b00111010010111100011010)) 33 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_31)) 34 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_32)) 35 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b01100101011000000100000)) 36 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_36)) 37 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_33 _t_37)) 38 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp #b1 #b01111000 #b00000110001001001101111)) 39 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_41)) 40 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_38 _t_42)) 41 | (define-fun _t_44 () Bool (fp.leq _t_43 _t_29)) 42 | (assert _t_44) 43 | (define-fun _t_47 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b01010100111111011111001)) 44 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b01011101101100100010110)) 45 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_49)) 46 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_50)) 47 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b11000110101001111111000)) 48 | (define-fun _t_54 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_53)) 49 | (define-fun _t_55 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_51 _t_54)) 50 | (define-fun _t_58 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b01001111010111000010100)) 51 | (define-fun _t_59 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_58)) 52 | (define-fun _t_60 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_55 _t_59)) 53 | (define-fun _t_61 () Bool (fp.leq _t_47 _t_60)) 54 | (assert _t_61) 55 | (define-fun _t_63 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11010001111010111000011)) 56 | (define-fun _t_66 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11011101101100100010110)) 57 | (define-fun _t_67 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_66)) 58 | (define-fun _t_68 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_67)) 59 | (define-fun _t_71 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11000011000100100110110)) 60 | (define-fun _t_72 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_71)) 61 | (define-fun _t_73 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_68 _t_72)) 62 | (define-fun _t_76 () (_ FloatingPoint 8 24) (fp #b1 #b01111001 #b00000110001001001101110)) 63 | (define-fun _t_77 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_76)) 64 | (define-fun _t_78 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_73 _t_77)) 65 | (define-fun _t_79 () Bool (fp.leq _t_63 _t_78)) 66 | (assert _t_79) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr1_c1_s6731.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b01111111 #b00000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b01111111 #b00000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b00011000100100110111001)) 32 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b01001100110011001100110)) 33 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_32)) 34 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_33)) 35 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11111101011100001010001)) 36 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_36)) 37 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_34 _t_37)) 38 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11011110001101010100000)) 39 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_40)) 40 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_38 _t_41)) 41 | (define-fun _t_43 () Bool (fp.leq _t_42 _t_29)) 42 | (assert _t_43) 43 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b00011011101001011110010)) 44 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp #b1 #b01111100 #b10000011000100100110110)) 45 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_49)) 46 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_50)) 47 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b01011011101001011110001)) 48 | (define-fun _t_54 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_53)) 49 | (define-fun _t_55 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_51 _t_54)) 50 | (define-fun _t_58 () (_ FloatingPoint 8 24) (fp #b1 #b01111011 #b10111110011101101100100)) 51 | (define-fun _t_59 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_58)) 52 | (define-fun _t_60 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_55 _t_59)) 53 | (define-fun _t_61 () Bool (fp.leq _t_46 _t_60)) 54 | (assert _t_61) 55 | (define-fun _t_63 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b10011100001010001111011)) 56 | (define-fun _t_66 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b10000101101000011100100)) 57 | (define-fun _t_67 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_66)) 58 | (define-fun _t_68 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_67)) 59 | (define-fun _t_70 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b10101001111110111110011)) 60 | (define-fun _t_71 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_70)) 61 | (define-fun _t_72 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_68 _t_71)) 62 | (define-fun _t_74 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11110110010001011010001)) 63 | (define-fun _t_75 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_74)) 64 | (define-fun _t_76 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_72 _t_75)) 65 | (define-fun _t_77 () Bool (fp.leq _t_63 _t_76)) 66 | (assert _t_77) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr5_c1_s16641.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b01000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b10000001 #b01000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11101000111101011100001)) 32 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp #b0 #b01110101 #b00000110001001001101111)) 33 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_30)) 34 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_31)) 35 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11111100011010100111110)) 36 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_35)) 37 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_32 _t_36)) 38 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b00101001011110001101001)) 39 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_40)) 40 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_37 _t_41)) 41 | (define-fun _t_43 () Bool (fp.leq _t_28 _t_42)) 42 | (assert _t_43) 43 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11001110110110010001011)) 44 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b01000001100010010011100)) 45 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_48)) 46 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_49)) 47 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11001110110110010001011)) 48 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_52)) 49 | (define-fun _t_54 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_50 _t_53)) 50 | (define-fun _t_57 () (_ FloatingPoint 8 24) (fp #b1 #b01111001 #b01011000000100000110001)) 51 | (define-fun _t_58 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_57)) 52 | (define-fun _t_59 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_54 _t_58)) 53 | (define-fun _t_60 () Bool (fp.leq _t_59 _t_45)) 54 | (assert _t_60) 55 | (define-fun _t_62 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11100001110010101100000)) 56 | (define-fun _t_64 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b00001010001111010111000)) 57 | (define-fun _t_65 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_64)) 58 | (define-fun _t_66 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_65)) 59 | (define-fun _t_68 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b01101000011100101011000)) 60 | (define-fun _t_69 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_68)) 61 | (define-fun _t_70 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_66 _t_69)) 62 | (define-fun _t_72 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b00011100101011000000011)) 63 | (define-fun _t_73 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_72)) 64 | (define-fun _t_74 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_70 _t_73)) 65 | (define-fun _t_75 () Bool (fp.leq _t_74 _t_62)) 66 | (assert _t_75) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr5_c1_s16867.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b01000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b10000001 #b01000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_28 () (_ FloatingPoint 8 24) (fp #b0 #b01111100 #b11101111100111011011000)) 32 | (define-fun _t_30 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11110111010010111100011)) 33 | (define-fun _t_31 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_30)) 34 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_31)) 35 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp #b0 #b01111110 #b11111110111110011101110)) 36 | (define-fun _t_35 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_34)) 37 | (define-fun _t_36 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_32 _t_35)) 38 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp #b1 #b01110111 #b11001010110000001000001)) 39 | (define-fun _t_40 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_39)) 40 | (define-fun _t_41 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_36 _t_40)) 41 | (define-fun _t_42 () Bool (fp.leq _t_41 _t_28)) 42 | (assert _t_42) 43 | (define-fun _t_45 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b01111110111110011101110)) 44 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11101111100111011011001)) 45 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_48)) 46 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_49)) 47 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b10111010010111100011010)) 48 | (define-fun _t_54 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_53)) 49 | (define-fun _t_55 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_50 _t_54)) 50 | (define-fun _t_58 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b11001100110011001100110)) 51 | (define-fun _t_59 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_58)) 52 | (define-fun _t_60 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_55 _t_59)) 53 | (define-fun _t_61 () Bool (fp.leq _t_45 _t_60)) 54 | (assert _t_61) 55 | (define-fun _t_63 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b11101001011110001101001)) 56 | (define-fun _t_65 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b01100101011000000100000)) 57 | (define-fun _t_66 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_65)) 58 | (define-fun _t_67 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_66)) 59 | (define-fun _t_70 () (_ FloatingPoint 8 24) (fp #b1 #b01111001 #b01111000110101001111110)) 60 | (define-fun _t_71 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_70)) 61 | (define-fun _t_72 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_67 _t_71)) 62 | (define-fun _t_75 () (_ FloatingPoint 8 24) (fp #b1 #b01111011 #b10111010010111100011010)) 63 | (define-fun _t_76 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_75)) 64 | (define-fun _t_77 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_72 _t_76)) 65 | (define-fun _t_78 () Bool (fp.leq _t_77 _t_63)) 66 | (assert _t_78) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/test_v3_r3_vr5_c1_s26769.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:54 8 | 9 | (declare-fun x0 () (_ FloatingPoint 8 24)) 10 | (declare-fun x1 () (_ FloatingPoint 8 24)) 11 | (declare-fun x2 () (_ FloatingPoint 8 24)) 12 | (define-fun _t_10 () (_ FloatingPoint 8 24) (fp #b0 #b10000001 #b01000000000000000000000)) 13 | (define-fun _t_12 () (_ FloatingPoint 8 24) (fp #b1 #b10000001 #b01000000000000000000000)) 14 | (define-fun _t_13 () (_ FloatingPoint 8 24) x0) 15 | (define-fun _t_14 () Bool (fp.leq _t_12 _t_13)) 16 | (define-fun _t_15 () Bool (fp.leq _t_13 _t_10)) 17 | (define-fun _t_16 () Bool (and _t_14 _t_15)) 18 | (assert _t_16) 19 | (define-fun _t_17 () (_ FloatingPoint 8 24) x1) 20 | (define-fun _t_18 () Bool (fp.leq _t_12 _t_17)) 21 | (define-fun _t_19 () Bool (fp.leq _t_17 _t_10)) 22 | (define-fun _t_20 () Bool (and _t_18 _t_19)) 23 | (assert _t_20) 24 | (define-fun _t_21 () (_ FloatingPoint 8 24) x2) 25 | (define-fun _t_22 () Bool (fp.leq _t_12 _t_21)) 26 | (define-fun _t_23 () Bool (fp.leq _t_21 _t_10)) 27 | (define-fun _t_24 () Bool (and _t_22 _t_23)) 28 | (assert _t_24) 29 | (define-fun _t_3 () RoundingMode RNE) 30 | (define-fun _t_26 () (_ FloatingPoint 8 24) (fp #b0 #b00000000 #b00000000000000000000000)) 31 | (define-fun _t_29 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b10011101001011110001100)) 32 | (define-fun _t_32 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b10001011010000111001011)) 33 | (define-fun _t_33 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_32)) 34 | (define-fun _t_34 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_33)) 35 | (define-fun _t_37 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b01010111100011010101000)) 36 | (define-fun _t_38 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_37)) 37 | (define-fun _t_39 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_34 _t_38)) 38 | (define-fun _t_42 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b00001100110011001100110)) 39 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_42)) 40 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_39 _t_43)) 41 | (define-fun _t_45 () Bool (fp.leq _t_44 _t_29)) 42 | (assert _t_45) 43 | (define-fun _t_48 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b01110011101101100100011)) 44 | (define-fun _t_51 () (_ FloatingPoint 8 24) (fp #b1 #b01111011 #b00111111011111001110110)) 45 | (define-fun _t_52 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_51)) 46 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_52)) 47 | (define-fun _t_55 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b10101101000011100101010)) 48 | (define-fun _t_56 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_55)) 49 | (define-fun _t_57 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_53 _t_56)) 50 | (define-fun _t_60 () (_ FloatingPoint 8 24) (fp #b1 #b01111110 #b00100000010000011000100)) 51 | (define-fun _t_61 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_60)) 52 | (define-fun _t_62 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_57 _t_61)) 53 | (define-fun _t_63 () Bool (fp.leq _t_62 _t_48)) 54 | (assert _t_63) 55 | (define-fun _t_65 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b01110000101000111101100)) 56 | (define-fun _t_67 () (_ FloatingPoint 8 24) (fp #b0 #b01111101 #b01100100010110100001101)) 57 | (define-fun _t_68 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_13 _t_67)) 58 | (define-fun _t_69 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_26 _t_68)) 59 | (define-fun _t_72 () (_ FloatingPoint 8 24) (fp #b1 #b01111101 #b11101110100101111000110)) 60 | (define-fun _t_73 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_17 _t_72)) 61 | (define-fun _t_74 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_69 _t_73)) 62 | (define-fun _t_77 () (_ FloatingPoint 8 24) (fp #b1 #b01111010 #b00101111000110101001111)) 63 | (define-fun _t_78 () (_ FloatingPoint 8 24) (fp.mul _t_3 _t_21 _t_77)) 64 | (define-fun _t_79 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_74 _t_78)) 65 | (define-fun _t_80 () Bool (fp.leq _t_79 _t_65)) 66 | (assert _t_80) 67 | (check-sat) 68 | -------------------------------------------------------------------------------- /benchmarks_small/add_01_100_1.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:50 8 | 9 | (declare-fun |c::main::1::b!0@1#1| () (_ FloatingPoint 8 24)) 10 | (declare-fun |c::main::1::a!0@1#1| () (_ FloatingPoint 8 24)) 11 | (declare-fun |c::main::1::c!0@1#1| () (_ FloatingPoint 8 24)) 12 | (declare-fun |goto_symex::&92;guard#1| () Bool) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::a!0@1#1|) 15 | (define-fun _t_10 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_9)) 16 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp #b0 #b10000001000 #b1111010000000000000000000000000000000000000000000000)) 17 | (define-fun _t_13 () Bool (fp.lt _t_10 _t_12)) 18 | (define-fun _t_14 () (_ FloatingPoint 8 24) |c::main::1::b!0@1#1|) 19 | (define-fun _t_15 () (_ FloatingPoint 8 24) |c::main::1::c!0@1#1|) 20 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_15)) 21 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_16)) 22 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.neg _t_17)) 23 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_14)) 24 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_19)) 25 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_18 _t_20)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b10010000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.leq _t_21 _t_23)) 28 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp #b1 #b10000001000 #b1111010000000000000000000000000000000000000000000000)) 29 | (define-fun _t_27 () Bool (fp.lt _t_26 _t_10)) 30 | (define-fun _t_28 () Bool (and _t_13 _t_27)) 31 | (define-fun _t_29 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_14)) 32 | (define-fun _t_30 () Bool (fp.lt _t_29 _t_12)) 33 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 34 | (define-fun _t_32 () Bool (fp.lt _t_26 _t_29)) 35 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 36 | (define-fun _t_34 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 37 | (define-fun _t_35 () Bool (fp.lt _t_34 _t_12)) 38 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 39 | (define-fun _t_37 () Bool (fp.lt _t_26 _t_34)) 40 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 41 | (define-fun _t_39 () Bool (fp.leq _t_14 _t_9)) 42 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 43 | (define-fun _t_41 () Bool (fp.leq _t_15 _t_14)) 44 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 45 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 46 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_43)) 47 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 48 | (define-fun _t_47 () Bool (fp.leq _t_44 _t_46)) 49 | (define-fun _t_48 () Bool (and _t_42 _t_47)) 50 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.neg _t_15)) 51 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_49)) 52 | (define-fun _t_51 () Bool (fp.leq _t_50 _t_46)) 53 | (define-fun _t_52 () Bool (and _t_48 _t_51)) 54 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_49)) 55 | (define-fun _t_54 () Bool (fp.leq _t_53 _t_46)) 56 | (define-fun _t_55 () Bool (and _t_52 _t_54)) 57 | (define-fun _t_56 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_20)) 58 | (define-fun _t_57 () (_ FloatingPoint 11 53) (_ +oo 11 53)) 59 | (define-fun _t_58 () Bool (fp.lt _t_56 _t_57)) 60 | (define-fun _t_59 () (_ FloatingPoint 11 53) (_ -oo 11 53)) 61 | (define-fun _t_60 () Bool (fp.lt _t_59 _t_56)) 62 | (define-fun _t_61 () Bool (and _t_58 _t_60)) 63 | (define-fun _t_62 () Bool (and _t_55 _t_61)) 64 | (define-fun _t_63 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_17)) 65 | (define-fun _t_64 () Bool (fp.lt _t_63 _t_57)) 66 | (define-fun _t_65 () Bool (fp.lt _t_59 _t_63)) 67 | (define-fun _t_66 () Bool (and _t_64 _t_65)) 68 | (define-fun _t_67 () Bool (and _t_62 _t_66)) 69 | (define-fun _t_68 () Bool (not _t_24)) 70 | (define-fun _t_69 () Bool (and _t_67 _t_68)) 71 | (assert _t_69) 72 | (check-sat) 73 | -------------------------------------------------------------------------------- /benchmarks_small/add_01_100_2.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:50 8 | 9 | (declare-fun |goto_symex::&92;guard#1| () Bool) 10 | (declare-fun |c::main::1::b!0@1#1| () (_ FloatingPoint 8 24)) 11 | (declare-fun |c::main::1::a!0@1#1| () (_ FloatingPoint 8 24)) 12 | (declare-fun |c::main::1::c!0@1#1| () (_ FloatingPoint 8 24)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::a!0@1#1|) 15 | (define-fun _t_10 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_9)) 16 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp #b0 #b10000001100 #b0011100010000000000000000000000000000000000000000000)) 17 | (define-fun _t_13 () Bool (fp.lt _t_10 _t_12)) 18 | (define-fun _t_14 () (_ FloatingPoint 8 24) |c::main::1::b!0@1#1|) 19 | (define-fun _t_15 () (_ FloatingPoint 8 24) |c::main::1::c!0@1#1|) 20 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_15)) 21 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_16)) 22 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.neg _t_17)) 23 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_14)) 24 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_19)) 25 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_18 _t_20)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b10010000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.leq _t_21 _t_23)) 28 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp #b1 #b10000001100 #b0011100010000000000000000000000000000000000000000000)) 29 | (define-fun _t_27 () Bool (fp.lt _t_26 _t_10)) 30 | (define-fun _t_28 () Bool (and _t_13 _t_27)) 31 | (define-fun _t_29 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_14)) 32 | (define-fun _t_30 () Bool (fp.lt _t_29 _t_12)) 33 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 34 | (define-fun _t_32 () Bool (fp.lt _t_26 _t_29)) 35 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 36 | (define-fun _t_34 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 37 | (define-fun _t_35 () Bool (fp.lt _t_34 _t_12)) 38 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 39 | (define-fun _t_37 () Bool (fp.lt _t_26 _t_34)) 40 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 41 | (define-fun _t_39 () Bool (fp.leq _t_14 _t_9)) 42 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 43 | (define-fun _t_41 () Bool (fp.leq _t_15 _t_14)) 44 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 45 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 46 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_43)) 47 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 48 | (define-fun _t_47 () Bool (fp.leq _t_44 _t_46)) 49 | (define-fun _t_48 () Bool (and _t_42 _t_47)) 50 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.neg _t_15)) 51 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_49)) 52 | (define-fun _t_51 () Bool (fp.leq _t_50 _t_46)) 53 | (define-fun _t_52 () Bool (and _t_48 _t_51)) 54 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_49)) 55 | (define-fun _t_54 () Bool (fp.leq _t_53 _t_46)) 56 | (define-fun _t_55 () Bool (and _t_52 _t_54)) 57 | (define-fun _t_56 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_20)) 58 | (define-fun _t_57 () (_ FloatingPoint 11 53) (_ +oo 11 53)) 59 | (define-fun _t_58 () Bool (fp.lt _t_56 _t_57)) 60 | (define-fun _t_59 () (_ FloatingPoint 11 53) (_ -oo 11 53)) 61 | (define-fun _t_60 () Bool (fp.lt _t_59 _t_56)) 62 | (define-fun _t_61 () Bool (and _t_58 _t_60)) 63 | (define-fun _t_62 () Bool (and _t_55 _t_61)) 64 | (define-fun _t_63 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_17)) 65 | (define-fun _t_64 () Bool (fp.lt _t_63 _t_57)) 66 | (define-fun _t_65 () Bool (fp.lt _t_59 _t_63)) 67 | (define-fun _t_66 () Bool (and _t_64 _t_65)) 68 | (define-fun _t_67 () Bool (and _t_62 _t_66)) 69 | (define-fun _t_68 () Bool (not _t_24)) 70 | (define-fun _t_69 () Bool (and _t_67 _t_68)) 71 | (assert _t_69) 72 | (check-sat) 73 | -------------------------------------------------------------------------------- /benchmarks_small/add_01_100_3.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:50 8 | 9 | (declare-fun |goto_symex::&92;guard#1| () Bool) 10 | (declare-fun |c::main::1::b!0@1#1| () (_ FloatingPoint 8 24)) 11 | (declare-fun |c::main::1::a!0@1#1| () (_ FloatingPoint 8 24)) 12 | (declare-fun |c::main::1::c!0@1#1| () (_ FloatingPoint 8 24)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::a!0@1#1|) 15 | (define-fun _t_10 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_9)) 16 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp #b0 #b10000001111 #b1000011010100000000000000000000000000000000000000000)) 17 | (define-fun _t_13 () Bool (fp.lt _t_10 _t_12)) 18 | (define-fun _t_14 () (_ FloatingPoint 8 24) |c::main::1::b!0@1#1|) 19 | (define-fun _t_15 () (_ FloatingPoint 8 24) |c::main::1::c!0@1#1|) 20 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_15)) 21 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_16)) 22 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.neg _t_17)) 23 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_14)) 24 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_19)) 25 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_18 _t_20)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b10010000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.leq _t_21 _t_23)) 28 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp #b1 #b10000001111 #b1000011010100000000000000000000000000000000000000000)) 29 | (define-fun _t_27 () Bool (fp.lt _t_26 _t_10)) 30 | (define-fun _t_28 () Bool (and _t_13 _t_27)) 31 | (define-fun _t_29 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_14)) 32 | (define-fun _t_30 () Bool (fp.lt _t_29 _t_12)) 33 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 34 | (define-fun _t_32 () Bool (fp.lt _t_26 _t_29)) 35 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 36 | (define-fun _t_34 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 37 | (define-fun _t_35 () Bool (fp.lt _t_34 _t_12)) 38 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 39 | (define-fun _t_37 () Bool (fp.lt _t_26 _t_34)) 40 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 41 | (define-fun _t_39 () Bool (fp.leq _t_14 _t_9)) 42 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 43 | (define-fun _t_41 () Bool (fp.leq _t_15 _t_14)) 44 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 45 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 46 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_43)) 47 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 48 | (define-fun _t_47 () Bool (fp.leq _t_44 _t_46)) 49 | (define-fun _t_48 () Bool (and _t_42 _t_47)) 50 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.neg _t_15)) 51 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_49)) 52 | (define-fun _t_51 () Bool (fp.leq _t_50 _t_46)) 53 | (define-fun _t_52 () Bool (and _t_48 _t_51)) 54 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_49)) 55 | (define-fun _t_54 () Bool (fp.leq _t_53 _t_46)) 56 | (define-fun _t_55 () Bool (and _t_52 _t_54)) 57 | (define-fun _t_56 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_20)) 58 | (define-fun _t_57 () (_ FloatingPoint 11 53) (_ +oo 11 53)) 59 | (define-fun _t_58 () Bool (fp.lt _t_56 _t_57)) 60 | (define-fun _t_59 () (_ FloatingPoint 11 53) (_ -oo 11 53)) 61 | (define-fun _t_60 () Bool (fp.lt _t_59 _t_56)) 62 | (define-fun _t_61 () Bool (and _t_58 _t_60)) 63 | (define-fun _t_62 () Bool (and _t_55 _t_61)) 64 | (define-fun _t_63 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_17)) 65 | (define-fun _t_64 () Bool (fp.lt _t_63 _t_57)) 66 | (define-fun _t_65 () Bool (fp.lt _t_59 _t_63)) 67 | (define-fun _t_66 () Bool (and _t_64 _t_65)) 68 | (define-fun _t_67 () Bool (and _t_62 _t_66)) 69 | (define-fun _t_68 () Bool (not _t_24)) 70 | (define-fun _t_69 () Bool (and _t_67 _t_68)) 71 | (assert _t_69) 72 | (check-sat) 73 | -------------------------------------------------------------------------------- /benchmarks_small/add_01_100_4.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:50 8 | 9 | (declare-fun |c::main::1::c!0@1#1| () (_ FloatingPoint 8 24)) 10 | (declare-fun |goto_symex::&92;guard#1| () Bool) 11 | (declare-fun |c::main::1::b!0@1#1| () (_ FloatingPoint 8 24)) 12 | (declare-fun |c::main::1::a!0@1#1| () (_ FloatingPoint 8 24)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::a!0@1#1|) 15 | (define-fun _t_10 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_9)) 16 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp #b0 #b10000010010 #b1110100001001000000000000000000000000000000000000000)) 17 | (define-fun _t_13 () Bool (fp.lt _t_10 _t_12)) 18 | (define-fun _t_14 () (_ FloatingPoint 8 24) |c::main::1::b!0@1#1|) 19 | (define-fun _t_15 () (_ FloatingPoint 8 24) |c::main::1::c!0@1#1|) 20 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_15)) 21 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_16)) 22 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.neg _t_17)) 23 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_14)) 24 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_19)) 25 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_18 _t_20)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b10000101 #b10010000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.leq _t_21 _t_23)) 28 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp #b1 #b10000010010 #b1110100001001000000000000000000000000000000000000000)) 29 | (define-fun _t_27 () Bool (fp.lt _t_26 _t_10)) 30 | (define-fun _t_28 () Bool (and _t_13 _t_27)) 31 | (define-fun _t_29 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_14)) 32 | (define-fun _t_30 () Bool (fp.lt _t_29 _t_12)) 33 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 34 | (define-fun _t_32 () Bool (fp.lt _t_26 _t_29)) 35 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 36 | (define-fun _t_34 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 37 | (define-fun _t_35 () Bool (fp.lt _t_34 _t_12)) 38 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 39 | (define-fun _t_37 () Bool (fp.lt _t_26 _t_34)) 40 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 41 | (define-fun _t_39 () Bool (fp.leq _t_14 _t_9)) 42 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 43 | (define-fun _t_41 () Bool (fp.leq _t_15 _t_14)) 44 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 45 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 46 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_43)) 47 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 48 | (define-fun _t_47 () Bool (fp.leq _t_44 _t_46)) 49 | (define-fun _t_48 () Bool (and _t_42 _t_47)) 50 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.neg _t_15)) 51 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_49)) 52 | (define-fun _t_51 () Bool (fp.leq _t_50 _t_46)) 53 | (define-fun _t_52 () Bool (and _t_48 _t_51)) 54 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_49)) 55 | (define-fun _t_54 () Bool (fp.leq _t_53 _t_46)) 56 | (define-fun _t_55 () Bool (and _t_52 _t_54)) 57 | (define-fun _t_56 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_20)) 58 | (define-fun _t_57 () (_ FloatingPoint 11 53) (_ +oo 11 53)) 59 | (define-fun _t_58 () Bool (fp.lt _t_56 _t_57)) 60 | (define-fun _t_59 () (_ FloatingPoint 11 53) (_ -oo 11 53)) 61 | (define-fun _t_60 () Bool (fp.lt _t_59 _t_56)) 62 | (define-fun _t_61 () Bool (and _t_58 _t_60)) 63 | (define-fun _t_62 () Bool (and _t_55 _t_61)) 64 | (define-fun _t_63 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_17)) 65 | (define-fun _t_64 () Bool (fp.lt _t_63 _t_57)) 66 | (define-fun _t_65 () Bool (fp.lt _t_59 _t_63)) 67 | (define-fun _t_66 () Bool (and _t_64 _t_65)) 68 | (define-fun _t_67 () Bool (and _t_62 _t_66)) 69 | (define-fun _t_68 () Bool (not _t_24)) 70 | (define-fun _t_69 () Bool (and _t_67 _t_68)) 71 | (assert _t_69) 72 | (check-sat) 73 | -------------------------------------------------------------------------------- /benchmarks_small/add_01_10_1.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:50 8 | 9 | (declare-fun |c::main::1::c!0@1#1| () (_ FloatingPoint 8 24)) 10 | (declare-fun |goto_symex::&92;guard#1| () Bool) 11 | (declare-fun |c::main::1::b!0@1#1| () (_ FloatingPoint 8 24)) 12 | (declare-fun |c::main::1::a!0@1#1| () (_ FloatingPoint 8 24)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::a!0@1#1|) 15 | (define-fun _t_10 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_9)) 16 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp #b0 #b10000001000 #b1111010000000000000000000000000000000000000000000000)) 17 | (define-fun _t_13 () Bool (fp.lt _t_10 _t_12)) 18 | (define-fun _t_14 () (_ FloatingPoint 8 24) |c::main::1::b!0@1#1|) 19 | (define-fun _t_15 () (_ FloatingPoint 8 24) |c::main::1::c!0@1#1|) 20 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_15)) 21 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_16)) 22 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.neg _t_17)) 23 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_14)) 24 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_19)) 25 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_18 _t_20)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b10000010 #b01000000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.leq _t_21 _t_23)) 28 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp #b1 #b10000001000 #b1111010000000000000000000000000000000000000000000000)) 29 | (define-fun _t_27 () Bool (fp.lt _t_26 _t_10)) 30 | (define-fun _t_28 () Bool (and _t_13 _t_27)) 31 | (define-fun _t_29 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_14)) 32 | (define-fun _t_30 () Bool (fp.lt _t_29 _t_12)) 33 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 34 | (define-fun _t_32 () Bool (fp.lt _t_26 _t_29)) 35 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 36 | (define-fun _t_34 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 37 | (define-fun _t_35 () Bool (fp.lt _t_34 _t_12)) 38 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 39 | (define-fun _t_37 () Bool (fp.lt _t_26 _t_34)) 40 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 41 | (define-fun _t_39 () Bool (fp.leq _t_14 _t_9)) 42 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 43 | (define-fun _t_41 () Bool (fp.leq _t_15 _t_14)) 44 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 45 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 46 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_43)) 47 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 48 | (define-fun _t_47 () Bool (fp.leq _t_44 _t_46)) 49 | (define-fun _t_48 () Bool (and _t_42 _t_47)) 50 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.neg _t_15)) 51 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_49)) 52 | (define-fun _t_51 () Bool (fp.leq _t_50 _t_46)) 53 | (define-fun _t_52 () Bool (and _t_48 _t_51)) 54 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_49)) 55 | (define-fun _t_54 () Bool (fp.leq _t_53 _t_46)) 56 | (define-fun _t_55 () Bool (and _t_52 _t_54)) 57 | (define-fun _t_56 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_20)) 58 | (define-fun _t_57 () (_ FloatingPoint 11 53) (_ +oo 11 53)) 59 | (define-fun _t_58 () Bool (fp.lt _t_56 _t_57)) 60 | (define-fun _t_59 () (_ FloatingPoint 11 53) (_ -oo 11 53)) 61 | (define-fun _t_60 () Bool (fp.lt _t_59 _t_56)) 62 | (define-fun _t_61 () Bool (and _t_58 _t_60)) 63 | (define-fun _t_62 () Bool (and _t_55 _t_61)) 64 | (define-fun _t_63 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_17)) 65 | (define-fun _t_64 () Bool (fp.lt _t_63 _t_57)) 66 | (define-fun _t_65 () Bool (fp.lt _t_59 _t_63)) 67 | (define-fun _t_66 () Bool (and _t_64 _t_65)) 68 | (define-fun _t_67 () Bool (and _t_62 _t_66)) 69 | (define-fun _t_68 () Bool (not _t_24)) 70 | (define-fun _t_69 () Bool (and _t_67 _t_68)) 71 | (assert _t_69) 72 | (check-sat) 73 | -------------------------------------------------------------------------------- /benchmarks_small/add_01_10_2.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:50 8 | 9 | (declare-fun |c::main::1::c!0@1#1| () (_ FloatingPoint 8 24)) 10 | (declare-fun |goto_symex::&92;guard#1| () Bool) 11 | (declare-fun |c::main::1::b!0@1#1| () (_ FloatingPoint 8 24)) 12 | (declare-fun |c::main::1::a!0@1#1| () (_ FloatingPoint 8 24)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::a!0@1#1|) 15 | (define-fun _t_10 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_9)) 16 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp #b0 #b10000001100 #b0011100010000000000000000000000000000000000000000000)) 17 | (define-fun _t_13 () Bool (fp.lt _t_10 _t_12)) 18 | (define-fun _t_14 () (_ FloatingPoint 8 24) |c::main::1::b!0@1#1|) 19 | (define-fun _t_15 () (_ FloatingPoint 8 24) |c::main::1::c!0@1#1|) 20 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_15)) 21 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_16)) 22 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.neg _t_17)) 23 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_14)) 24 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_19)) 25 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_18 _t_20)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b10000010 #b01000000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.leq _t_21 _t_23)) 28 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp #b1 #b10000001100 #b0011100010000000000000000000000000000000000000000000)) 29 | (define-fun _t_27 () Bool (fp.lt _t_26 _t_10)) 30 | (define-fun _t_28 () Bool (and _t_13 _t_27)) 31 | (define-fun _t_29 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_14)) 32 | (define-fun _t_30 () Bool (fp.lt _t_29 _t_12)) 33 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 34 | (define-fun _t_32 () Bool (fp.lt _t_26 _t_29)) 35 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 36 | (define-fun _t_34 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 37 | (define-fun _t_35 () Bool (fp.lt _t_34 _t_12)) 38 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 39 | (define-fun _t_37 () Bool (fp.lt _t_26 _t_34)) 40 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 41 | (define-fun _t_39 () Bool (fp.leq _t_14 _t_9)) 42 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 43 | (define-fun _t_41 () Bool (fp.leq _t_15 _t_14)) 44 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 45 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 46 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_43)) 47 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 48 | (define-fun _t_47 () Bool (fp.leq _t_44 _t_46)) 49 | (define-fun _t_48 () Bool (and _t_42 _t_47)) 50 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.neg _t_15)) 51 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_49)) 52 | (define-fun _t_51 () Bool (fp.leq _t_50 _t_46)) 53 | (define-fun _t_52 () Bool (and _t_48 _t_51)) 54 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_49)) 55 | (define-fun _t_54 () Bool (fp.leq _t_53 _t_46)) 56 | (define-fun _t_55 () Bool (and _t_52 _t_54)) 57 | (define-fun _t_56 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_20)) 58 | (define-fun _t_57 () (_ FloatingPoint 11 53) (_ +oo 11 53)) 59 | (define-fun _t_58 () Bool (fp.lt _t_56 _t_57)) 60 | (define-fun _t_59 () (_ FloatingPoint 11 53) (_ -oo 11 53)) 61 | (define-fun _t_60 () Bool (fp.lt _t_59 _t_56)) 62 | (define-fun _t_61 () Bool (and _t_58 _t_60)) 63 | (define-fun _t_62 () Bool (and _t_55 _t_61)) 64 | (define-fun _t_63 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_17)) 65 | (define-fun _t_64 () Bool (fp.lt _t_63 _t_57)) 66 | (define-fun _t_65 () Bool (fp.lt _t_59 _t_63)) 67 | (define-fun _t_66 () Bool (and _t_64 _t_65)) 68 | (define-fun _t_67 () Bool (and _t_62 _t_66)) 69 | (define-fun _t_68 () Bool (not _t_24)) 70 | (define-fun _t_69 () Bool (and _t_67 _t_68)) 71 | (assert _t_69) 72 | (check-sat) 73 | -------------------------------------------------------------------------------- /benchmarks_small/add_01_10_3.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:50 8 | 9 | (declare-fun |c::main::1::c!0@1#1| () (_ FloatingPoint 8 24)) 10 | (declare-fun |goto_symex::&92;guard#1| () Bool) 11 | (declare-fun |c::main::1::b!0@1#1| () (_ FloatingPoint 8 24)) 12 | (declare-fun |c::main::1::a!0@1#1| () (_ FloatingPoint 8 24)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::a!0@1#1|) 15 | (define-fun _t_10 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_9)) 16 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp #b0 #b10000001111 #b1000011010100000000000000000000000000000000000000000)) 17 | (define-fun _t_13 () Bool (fp.lt _t_10 _t_12)) 18 | (define-fun _t_14 () (_ FloatingPoint 8 24) |c::main::1::b!0@1#1|) 19 | (define-fun _t_15 () (_ FloatingPoint 8 24) |c::main::1::c!0@1#1|) 20 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_15)) 21 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_16)) 22 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.neg _t_17)) 23 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_14)) 24 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_19)) 25 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_18 _t_20)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b10000010 #b01000000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.leq _t_21 _t_23)) 28 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp #b1 #b10000001111 #b1000011010100000000000000000000000000000000000000000)) 29 | (define-fun _t_27 () Bool (fp.lt _t_26 _t_10)) 30 | (define-fun _t_28 () Bool (and _t_13 _t_27)) 31 | (define-fun _t_29 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_14)) 32 | (define-fun _t_30 () Bool (fp.lt _t_29 _t_12)) 33 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 34 | (define-fun _t_32 () Bool (fp.lt _t_26 _t_29)) 35 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 36 | (define-fun _t_34 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 37 | (define-fun _t_35 () Bool (fp.lt _t_34 _t_12)) 38 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 39 | (define-fun _t_37 () Bool (fp.lt _t_26 _t_34)) 40 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 41 | (define-fun _t_39 () Bool (fp.leq _t_14 _t_9)) 42 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 43 | (define-fun _t_41 () Bool (fp.leq _t_15 _t_14)) 44 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 45 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 46 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_43)) 47 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 48 | (define-fun _t_47 () Bool (fp.leq _t_44 _t_46)) 49 | (define-fun _t_48 () Bool (and _t_42 _t_47)) 50 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.neg _t_15)) 51 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_49)) 52 | (define-fun _t_51 () Bool (fp.leq _t_50 _t_46)) 53 | (define-fun _t_52 () Bool (and _t_48 _t_51)) 54 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_49)) 55 | (define-fun _t_54 () Bool (fp.leq _t_53 _t_46)) 56 | (define-fun _t_55 () Bool (and _t_52 _t_54)) 57 | (define-fun _t_56 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_20)) 58 | (define-fun _t_57 () (_ FloatingPoint 11 53) (_ +oo 11 53)) 59 | (define-fun _t_58 () Bool (fp.lt _t_56 _t_57)) 60 | (define-fun _t_59 () (_ FloatingPoint 11 53) (_ -oo 11 53)) 61 | (define-fun _t_60 () Bool (fp.lt _t_59 _t_56)) 62 | (define-fun _t_61 () Bool (and _t_58 _t_60)) 63 | (define-fun _t_62 () Bool (and _t_55 _t_61)) 64 | (define-fun _t_63 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_17)) 65 | (define-fun _t_64 () Bool (fp.lt _t_63 _t_57)) 66 | (define-fun _t_65 () Bool (fp.lt _t_59 _t_63)) 67 | (define-fun _t_66 () Bool (and _t_64 _t_65)) 68 | (define-fun _t_67 () Bool (and _t_62 _t_66)) 69 | (define-fun _t_68 () Bool (not _t_24)) 70 | (define-fun _t_69 () Bool (and _t_67 _t_68)) 71 | (assert _t_69) 72 | (check-sat) 73 | -------------------------------------------------------------------------------- /benchmarks_small/add_01_10_4.smt2: -------------------------------------------------------------------------------- 1 | (set-logic QF_FP) 2 | (set-info :smt-lib-version 2.0) 3 | (set-info :category "crafted") 4 | (set-info :source |Alberto Griggio . These benchmarks were used for the evaluation in the following paper: L. Haller, A. Griggio, M. Brain, D. Kroening: Deciding floating-point logic with systematic abstraction. FMCAD 2012. Real-numbered literals have been automatically translated by MathSAT|) 5 | (set-info :status unknown) 6 | ;; MathSAT API call trace 7 | ;; generated on 05/20/15 17:24:51 8 | 9 | (declare-fun |c::main::1::a!0@1#1| () (_ FloatingPoint 8 24)) 10 | (declare-fun |c::main::1::c!0@1#1| () (_ FloatingPoint 8 24)) 11 | (declare-fun |goto_symex::&92;guard#1| () Bool) 12 | (declare-fun |c::main::1::b!0@1#1| () (_ FloatingPoint 8 24)) 13 | (define-fun _t_3 () RoundingMode RNE) 14 | (define-fun _t_9 () (_ FloatingPoint 8 24) |c::main::1::a!0@1#1|) 15 | (define-fun _t_10 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_9)) 16 | (define-fun _t_12 () (_ FloatingPoint 11 53) (fp #b0 #b10000010010 #b1110100001001000000000000000000000000000000000000000)) 17 | (define-fun _t_13 () Bool (fp.lt _t_10 _t_12)) 18 | (define-fun _t_14 () (_ FloatingPoint 8 24) |c::main::1::b!0@1#1|) 19 | (define-fun _t_15 () (_ FloatingPoint 8 24) |c::main::1::c!0@1#1|) 20 | (define-fun _t_16 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_15)) 21 | (define-fun _t_17 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_16)) 22 | (define-fun _t_18 () (_ FloatingPoint 8 24) (fp.neg _t_17)) 23 | (define-fun _t_19 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_14)) 24 | (define-fun _t_20 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_15 _t_19)) 25 | (define-fun _t_21 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_18 _t_20)) 26 | (define-fun _t_23 () (_ FloatingPoint 8 24) (fp #b0 #b10000010 #b01000000000000000000000)) 27 | (define-fun _t_24 () Bool (fp.leq _t_21 _t_23)) 28 | (define-fun _t_26 () (_ FloatingPoint 11 53) (fp #b1 #b10000010010 #b1110100001001000000000000000000000000000000000000000)) 29 | (define-fun _t_27 () Bool (fp.lt _t_26 _t_10)) 30 | (define-fun _t_28 () Bool (and _t_13 _t_27)) 31 | (define-fun _t_29 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_14)) 32 | (define-fun _t_30 () Bool (fp.lt _t_29 _t_12)) 33 | (define-fun _t_31 () Bool (and _t_28 _t_30)) 34 | (define-fun _t_32 () Bool (fp.lt _t_26 _t_29)) 35 | (define-fun _t_33 () Bool (and _t_31 _t_32)) 36 | (define-fun _t_34 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_15)) 37 | (define-fun _t_35 () Bool (fp.lt _t_34 _t_12)) 38 | (define-fun _t_36 () Bool (and _t_33 _t_35)) 39 | (define-fun _t_37 () Bool (fp.lt _t_26 _t_34)) 40 | (define-fun _t_38 () Bool (and _t_36 _t_37)) 41 | (define-fun _t_39 () Bool (fp.leq _t_14 _t_9)) 42 | (define-fun _t_40 () Bool (and _t_38 _t_39)) 43 | (define-fun _t_41 () Bool (fp.leq _t_15 _t_14)) 44 | (define-fun _t_42 () Bool (and _t_40 _t_41)) 45 | (define-fun _t_43 () (_ FloatingPoint 8 24) (fp.neg _t_14)) 46 | (define-fun _t_44 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_43)) 47 | (define-fun _t_46 () (_ FloatingPoint 8 24) (fp #b0 #b01111011 #b10011001100110011001101)) 48 | (define-fun _t_47 () Bool (fp.leq _t_44 _t_46)) 49 | (define-fun _t_48 () Bool (and _t_42 _t_47)) 50 | (define-fun _t_49 () (_ FloatingPoint 8 24) (fp.neg _t_15)) 51 | (define-fun _t_50 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_9 _t_49)) 52 | (define-fun _t_51 () Bool (fp.leq _t_50 _t_46)) 53 | (define-fun _t_52 () Bool (and _t_48 _t_51)) 54 | (define-fun _t_53 () (_ FloatingPoint 8 24) (fp.add _t_3 _t_14 _t_49)) 55 | (define-fun _t_54 () Bool (fp.leq _t_53 _t_46)) 56 | (define-fun _t_55 () Bool (and _t_52 _t_54)) 57 | (define-fun _t_56 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_20)) 58 | (define-fun _t_57 () (_ FloatingPoint 11 53) (_ +oo 11 53)) 59 | (define-fun _t_58 () Bool (fp.lt _t_56 _t_57)) 60 | (define-fun _t_59 () (_ FloatingPoint 11 53) (_ -oo 11 53)) 61 | (define-fun _t_60 () Bool (fp.lt _t_59 _t_56)) 62 | (define-fun _t_61 () Bool (and _t_58 _t_60)) 63 | (define-fun _t_62 () Bool (and _t_55 _t_61)) 64 | (define-fun _t_63 () (_ FloatingPoint 11 53) ((_ to_fp 11 53) _t_3 _t_17)) 65 | (define-fun _t_64 () Bool (fp.lt _t_63 _t_57)) 66 | (define-fun _t_65 () Bool (fp.lt _t_59 _t_63)) 67 | (define-fun _t_66 () Bool (and _t_64 _t_65)) 68 | (define-fun _t_67 () Bool (and _t_62 _t_66)) 69 | (define-fun _t_68 () Bool (not _t_24)) 70 | (define-fun _t_69 () Bool (and _t_67 _t_68)) 71 | (assert _t_69) 72 | (check-sat) 73 | --------------------------------------------------------------------------------