3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-14 04:48:45 +00:00
Commit graph

200 commits

Author SHA1 Message Date
Christoph M. Wintersteiger 1cc8146aba Bugfixes for FP UFs and arrays. 2016-05-20 19:53:57 +01:00
Christoph M. Wintersteiger 44b0a6ddbc Tentative fix for #586. 2016-05-14 18:42:10 +01:00
Christoph M. Wintersteiger bb2c5972c7 Bugfixes for UFs in theory_fpa.
Fixes #591, but performance issues remain.
2016-05-14 18:21:53 +01:00
Christoph M. Wintersteiger be424d9cbb Bugfixes for fp.roundToIntegral and fp.rem.
Relates to #561
2016-04-24 15:14:16 +01:00
Christoph M. Wintersteiger 6db0a15d29 Fixed potential memory leakage issues in fpa2bv_converfter 2016-04-18 17:17:31 +01:00
Christoph M. Wintersteiger cdc8e1303a Bugfix for fp.to_*_unspecified.
Fixes #507
2016-03-16 16:16:29 +00:00
Christoph M. Wintersteiger 99d7a47f82 Bugfixes for unspecified results from fp.to_* (models are still incomplete).
Relates to #507
2016-03-15 21:45:54 +00:00
Christoph M. Wintersteiger 3101d281e4 Removed unused variable 2016-03-15 15:12:54 +00:00
Christoph M. Wintersteiger 371573cbff More implementation of fp.to_ieee_bv for unspecified input/output
Relates to #507
2016-03-15 15:11:37 +00:00
Christoph M. Wintersteiger a9df4a208f More bugfixes for fp.to_ieee_bv for unspecified input/output.
Relates to #507
2016-03-15 14:58:55 +00:00
Christoph M. Wintersteiger 176782d62b Bugfix for fp.to_ieee_bv for unspecified input/output. 2016-03-15 14:38:11 +00:00
Christoph M. Wintersteiger 5463167a84 Bugfix for fp.rem (denormal numbers)
Fixes #508.
2016-03-14 15:52:09 +00:00
Christoph M. Wintersteiger 3e61ee2331 disabled "hardware interpretation" of fp.min/fp.max because the unspecified, standard-compliant behaviour is cheap anyways. 2016-03-11 12:52:00 +00:00
Christoph M. Wintersteiger 9dfc2bc61e Fixed memory leaks in fpa2bv converter.
Fixes #480
2016-03-05 16:47:08 +00:00
Christoph M. Wintersteiger 92b6a3e134 Fixed exponent cap for fp.add in fpa2bv_converter (was unsound for combinations of many sbits but few ebits).
Fixes #439.
2016-02-07 17:33:33 +00:00
Christoph M. Wintersteiger 4dba5270ad Efficiency fix for fp.div. 2016-01-18 18:09:29 +00:00
Christoph M. Wintersteiger de3cb7e5dc More FPA exponent/siginficand order consistency 2016-01-05 18:05:21 +00:00
Christoph M. Wintersteiger 677ff221f8 Internal consistency: FP exponents are always passed before significands. 2016-01-04 18:57:15 +00:00
Christoph M. Wintersteiger 8eea6fd775 Bugfix for FPA float to float conversion.
Fixes #337
2015-11-24 17:21:40 +00:00
Christoph M. Wintersteiger 59c1944f92 Bugfix for FP casts (float to float conversion).
Fixes #331.
2015-11-22 14:49:04 +00:00
Christoph M. Wintersteiger 4cb96bfe76 Fixed assertion failure in fpa2bv_converter.
Partially addresses #307
2015-11-13 15:55:01 +00:00
Christoph M. Wintersteiger 92152b16ca Bugfixes for model verification of unspecified values of fp.min/fp.max 2015-11-02 19:25:44 +00:00
Christoph M. Wintersteiger 89fb5a44fb Made fresh variable generation in fpa2bv lazy so that it doesn't create unnecessary variables. 2015-10-26 18:10:15 +00:00
Christoph M. Wintersteiger 5b39d8fa0d bugfix for fpa2bv converter 2015-10-26 15:59:00 +00:00
Christoph M. Wintersteiger ed94bc2f6b Bugfix for fpa2bv converter. 2015-10-25 13:10:40 +00:00
Christoph M. Wintersteiger 9b5abcd55a Improved support for FPA unspecified min/max values, model validation, and proof generation. 2015-10-25 13:10:40 +00:00
Christoph M. Wintersteiger ca496f20cb Partial refactoring of fpa2bv conversion to support proofs. 2015-10-25 13:10:40 +00:00
Christoph M. Wintersteiger 099775947e Partial fix for fp,min/fp.max models 2015-10-25 13:10:40 +00:00
Christoph M. Wintersteiger 8a026c355f Corrected unspecified behavior of corner cases in fp.min/fp.max.
Partially addresses #68.
2015-10-07 20:39:36 +01:00
Christoph M. Wintersteiger 076e680433 Improved UF suppport in fpa2bv_converter. 2015-09-25 17:28:31 +01:00
Christoph M. Wintersteiger 2744d80642 Fixed reference counting in fpa2bv converter. 2015-09-23 14:22:02 +01:00
Christoph M. Wintersteiger 4d39108808 Bugfix for fp.to_sbv
Fixes #162
2015-09-17 12:21:59 +01:00
Christoph M. Wintersteiger 52df2224e9 Disabled FP debug variables. 2015-09-16 18:04:26 +01:00
Christoph M. Wintersteiger 27f8ad288c Bugfix for fp.to_ubv.
Fixes #162.,
2015-09-16 14:26:53 +01:00
Christoph M. Wintersteiger 869cd6074d Bugfix for fp.to_sbv and fp.to_ubv.
Fixes #162.
2015-09-15 19:03:31 +01:00
Christoph M. Wintersteiger d0fa4e992f Bugfix for fp.to_sbv.
Fixes #162
2015-09-14 14:04:31 +01:00
Christoph M. Wintersteiger 081ba9093a Bugfix for FP theory; handling of UFs and interpreted functions from other theories. 2015-08-27 18:17:26 +01:00
Christoph M. Wintersteiger f9e2ad76fa Bugfix for fp.to_sbv
Fixes #114.
2015-07-14 12:05:45 -07:00
Christoph M. Wintersteiger 6980fb3035 Bugfix for distinct of floats. 2015-06-12 12:58:19 +01:00
Christoph M. Wintersteiger 31cb81111d Bugfix for fp.roundToIntegral 2015-06-11 16:56:36 +01:00
Christoph M. Wintersteiger 81218c0983 Bugfix for fp.fma 2015-06-02 18:36:19 +01:00
Christoph M. Wintersteiger a7b12e6321 Bugfix for fp.fma with sbits <= 3 2015-06-02 18:31:09 +01:00
Christoph M. Wintersteiger 8d55159dc8 Proper declaration of locals to make clang happy. 2015-05-30 15:23:30 +01:00
Christoph M. Wintersteiger fde873ac09 Bugfix for rounding in FP to_sbv.
Fixes #113
2015-05-30 14:50:15 +01:00
Christoph M. Wintersteiger fec815b41e Various variable renamings to avoid conflicts with previously defined local variables, function parameters, or members (Visual Studio 2015 warnings). 2015-05-29 18:13:39 +01:00
Christoph M. Wintersteiger d35ebd6e57 Bugfix for FP to_fp from non-numeral reals. 2015-05-29 14:49:26 +01:00
Christoph M. Wintersteiger 7619d609f9 FPA min/max -+0.0 special cases changed to +0.0 instead of second argument.
Fixes #68
2015-05-28 12:20:48 +01:00
Christoph M. Wintersteiger 6f6cd61817 Bugfix for float-to-float conversion.
Fixes #77
2015-05-22 20:30:12 +01:00
Christoph M. Wintersteiger 8fc0ba0ab5 Moved auxiliary fp.isNaN lemma injection to the right place.
Fixes #102
2015-05-22 12:33:53 +01:00
Christoph M. Wintersteiger 6f575689b1 Added injection of auxiliary lemmas for fp.isNaN, so that the value propagation can pick up these values and propagate them.
Fixes #96.
2015-05-21 19:02:09 +01:00
Christoph M. Wintersteiger eee076b9f8 Bugfixes for fp.min, fp.max.
Fixes the fix for #68
2015-05-21 18:16:02 +01:00
Christoph M. Wintersteiger 8c18bdcca9 Bugfix for fp.roundToIntegral.
Fixes #69
2015-05-21 18:12:14 +01:00
Christoph M. Wintersteiger 51040d3e19 Bugfix for fp.isNormal 2015-05-20 18:32:40 +01:00
Christoph M. Wintersteiger 1e3952406c disabled debug output 2015-05-20 18:14:38 +01:00
Christoph M. Wintersteiger 0197f6e010 Bugfix for fp.rem when the result is zero.
Fixes #91
2015-05-19 16:51:56 +01:00
Christoph M. Wintersteiger a63481de85 New implementations of fp.roundToIntegral in mpf and fpa2bv.
Partially fixes #69
2015-05-06 19:19:03 +01:00
Christoph M. Wintersteiger 53b479e1c3 Bugfix for fp.rem(0, 0).
Fixes #70.
2015-05-06 12:24:18 +01:00
Christoph M. Wintersteiger 57af3a4c6e FPA min/max refactoring and fixes.
Fixes #68

Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-05-04 13:47:04 +01:00
Christoph M. Wintersteiger 4768a360f8 FP: Fix for conversion functions from non-FP 0 to +0.0 even when the rounding mode is ToNegative. 2015-04-25 15:01:20 +01:00
Nikolaj Bjorner 841c1c2290 scope precedence of ||, github issue 24
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-03 12:06:31 -07:00
Christoph M. Wintersteiger 5911f788c3 Improved translation from reals to floats (fp.to_real).
Fixes #14
2015-03-29 14:39:47 +01:00
Christoph M. Wintersteiger 0ed16c09f9 Bugfix for fp.isNegative.
Fixes #13
2015-03-29 13:57:11 +01:00
Christoph M. Wintersteiger 690eb8eaca Bugfix for fp.isSubnormal.
Fixes #10
2015-03-29 13:31:44 +01:00
Christoph M. Wintersteiger 9cbf45f689 Added int to float conversion. 2015-03-26 14:48:55 +00:00
Christoph M. Wintersteiger 5e60bcd920 FPA: fixes for the fpa_rewriter to enable model extraction and validation.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-06 16:53:31 +00:00
Christoph M. Wintersteiger 880cbb936e fixed portability issue 2015-01-21 19:37:49 +00:00
Christoph M. Wintersteiger 826d295981 build fixes and removed unused variables 2015-01-21 19:29:31 +00:00
Christoph M. Wintersteiger 95300e801d fixed build errors and warnings
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-21 18:24:36 +00:00
Christoph M. Wintersteiger 74e60fc955 disabled debug output
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-21 15:01:35 +00:00
Christoph M. Wintersteiger 052baaabe4 FPA API bugfixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-21 14:22:35 +00:00
Christoph M. Wintersteiger c3247d7598 FPA: bugfix for rounding mode bv translation
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-17 16:36:33 +00:00
Christoph M. Wintersteiger 5344d6f3c0 various bugfixes and extensions for FPA
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-15 19:25:49 +00:00
Christoph M. Wintersteiger 0381e4317a Formatting, mostly tabs.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-08 17:54:04 +00:00
Christoph M. Wintersteiger cad841cff4 to_fp_real marked as NIY for now
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-08 17:23:13 +00:00
Christoph M. Wintersteiger c0bc2518b0 Renaming for consistency mk_value -> mk_numeral
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-08 14:22:44 +00:00
Christoph M. Wintersteiger dd17f3c7d6 Renaming floats, float, Floats, Float -> FPA, fpa
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-08 13:18:56 +00:00
Christoph M. Wintersteiger 5ff923f504 Added fp.to_sbv
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-04 19:01:02 +00:00
Christoph M. Wintersteiger cf81f86c67 build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-04 18:52:23 +00:00
Christoph M. Wintersteiger 3266e96e80 fpa2bv slight refactoring
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-02 18:59:27 +00:00
Christoph M. Wintersteiger 3fe11e4c38 improved handling of unspecified values in FP
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-31 17:31:11 +00:00
Christoph M. Wintersteiger 01d78b7274 added internal functions to fpa2bv converter
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-31 14:49:52 +00:00
Christoph M. Wintersteiger 33af7e8468 FPA: bugfixes for fp.to_ubv
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-29 17:09:18 +00:00
Christoph M. Wintersteiger 05121e25d4 FPA theory support for conversion functions
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-28 19:28:48 +00:00
Christoph M. Wintersteiger 621be0f47f FPA: Added fp.to_ubv
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-28 18:01:18 +00:00
Christoph M. Wintersteiger 4d1f71775d FPA: added to_fp_unsigned
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-28 15:26:52 +00:00
Christoph M. Wintersteiger 55662bcf6b fpa2bv: added reset(), adjustments for consistency
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-28 13:33:19 +00:00
Christoph M. Wintersteiger a1b4ef9e1b fpa2bv refactoring
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-21 18:44:12 +00:00
Christoph M. Wintersteiger 47325c5fd3 FPA: bugfixes, naming convention, core theory additions
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-16 23:59:27 +00:00
Christoph M. Wintersteiger f11ee40c38 FPA: bug and leak fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-14 19:09:17 +00:00
Christoph M. Wintersteiger b30e61e528 FPA: bugfixes, leakfixes, added fp.to_real
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-13 19:34:55 +00:00
Christoph M. Wintersteiger 657595818e FPA API: Renaming for consistency with final SMT standard.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-10 18:45:44 +00:00
Christoph M. Wintersteiger 261fe01cea FPA API bug and consistency fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-11-11 12:38:59 +00:00
Christoph M. Wintersteiger 8d3ef92383 Merge branch 'unstable' of https://git01.codeplex.com/z3 into fpa-api
Conflicts:
	scripts/mk_project.py
	src/api/z3.h
	src/ast/float_decl_plugin.cpp
	src/ast/float_decl_plugin.h
	src/ast/fpa/fpa2bv_converter.cpp
	src/ast/fpa/fpa2bv_rewriter.h
	src/ast/rewriter/float_rewriter.cpp
	src/ast/rewriter/float_rewriter.h

Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-11-11 11:53:39 +00:00
Christoph M. Wintersteiger 005bb82a17 eliminated unused variables 2014-11-07 16:04:02 +00:00
Christoph M. Wintersteiger 31a017e99e FPA: standard function names consistency, improved error messages, bugfixes.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-10-22 19:47:50 +01:00
Christoph M. Wintersteiger 7af410e6d6 FPA updates and bugfixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-10-18 13:42:28 +01:00
Ken McMillan c007a5e5bd merged with unstable 2014-08-06 11:16:06 -07:00
Christoph M. Wintersteiger 4610acca0f FPA: reduced number of temporary variables.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-08-04 17:10:56 +01:00
Christoph M. Wintersteiger b423418810 FPA fixed omissions reported by user xor88 (codeplex discussion 554193)
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-07-28 19:37:58 +01:00
Christoph M. Wintersteiger fb4c07a2ea FPA refactoring in preparation for FPA support in the kernel.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-04-23 18:36:38 +01:00
Renamed from src/tactic/fpa/fpa2bv_converter.cpp (Browse further)