3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-13 04:28:17 +00:00
Commit graph

663 commits

Author SHA1 Message Date
Nikolaj Bjorner de9c959241 add support for re.nostr, re.all, fix bug in disequality handling of sequences, update signature of loop to handle integer arguments and variable arguments
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-14 10:56:03 +01:00
Nikolaj Bjorner a81c7c48d0 fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-14 00:56:52 +01:00
Nikolaj Bjorner e0215400e2 add empty/full regular languages, escape sequence fixes, check cancellation inside simplifier
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-13 20:13:17 +01:00
Nikolaj Bjorner 57e1d4dc1f model generation with strings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-13 10:39:38 +01:00
Nikolaj Bjorner 9909c056f0 add range / loop handling for re. Fix regression reading mixed numerals reported by Trentin
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-13 00:49:31 -08:00
Nikolaj Bjorner 22fbed18cc fix regressions exposed by build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-12 11:18:52 -08:00
Nikolaj Bjorner db746e0c2f fix more unused variable warning messages
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-12 09:52:16 -08:00
Nikolaj Bjorner db71563478 fix build compiler warnings on OSX
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-12 09:36:01 -08:00
Nikolaj Bjorner 0e6aaf0211 Issue #407 build break
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-07 20:05:49 -08:00
Nikolaj Bjorner ad778f87c7 change data-structures to concanetation decomposition normal form
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-07 16:03:37 -08:00
Nikolaj Bjorner 0c2334417c fix build warnigs with && vs ||, tuning seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-07 06:53:00 -08:00
Nikolaj Bjorner da63ac809e Merge branch 'master' of https://github.com/Z3Prover/z3 2016-01-05 10:16:12 -08:00
Nikolaj Bjorner fafdbfaf0e reset out_bits when blasting multiplication of bit-vectors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-05 10:16:02 -08:00
Christoph M. Wintersteiger 8b8dc95986 Merge pull request #398 from wintersteiger/jan4
Improvements for the FPA API.
2016-01-05 18:08:05 +00:00
Nikolaj Bjorner 9dfcaaa01d reset out_bits when blasting multiplication of bit-vectors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-05 10:07:44 -08:00
Christoph M. Wintersteiger de3cb7e5dc More FPA exponent/siginficand order consistency 2016-01-05 18:05:21 +00:00
Christoph M. Wintersteiger 1610e4fbd0 Merge branch 'master' of https://github.com/Z3Prover/z3 into jan4 2016-01-05 17:45:35 +00:00
Nikolaj Bjorner ee157e47e4 fix crash caused by recycling variable names. Stackoverflow segfault-in-bv-rewritermk-mul-eq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-05 09:19:21 -08:00
Nikolaj Bjorner 65de39f403 disabling mk_const_case_multiplier until debugged
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-05 08:45:10 -08:00
Christoph M. Wintersteiger 8b47a84598 Merge branch 'master' of https://github.com/Z3Prover/z3 into jan4 2016-01-05 11:34:35 +00:00
Nikolaj Bjorner 3f040dbd23 remove std::cout usage
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-04 22:26:54 -08:00
Nikolaj Bjorner 2c1d2aad44 seq, API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-04 22:06:32 -08:00
Nikolaj Bjorner c1ebf6b4fc seq + API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-04 18:01:48 -08:00
Christoph M. Wintersteiger 05b29df2cb Bugfix for FP API 2016-01-04 21:01:01 +00:00
Christoph M. Wintersteiger 677ff221f8 Internal consistency: FP exponents are always passed before significands. 2016-01-04 18:57:15 +00:00
Nikolaj Bjorner 0c03a87c82 merge with master
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-03 14:08:29 -08:00
Nikolaj Bjorner b5969326bc seq API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-02 23:31:36 -08:00
Nikolaj Bjorner 876fd1f7ba seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-01 09:00:21 -08:00
Nikolaj Bjorner 78550ec816 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-31 07:48:14 -08:00
Nikolaj Bjorner 746d26e744 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-29 21:14:52 -08:00
Nikolaj Bjorner bd9b5b5735 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-29 10:13:19 -08:00
Nikolaj Bjorner 739043e273 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-28 10:28:43 -08:00
Nikolaj Bjorner 071a654a9a seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-27 04:41:25 -08:00
Nikolaj Bjorner 31302ec851 automata
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-25 15:22:26 -08:00
Nikolaj Bjorner f414869456 add symbolic automaton
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-23 19:46:10 -08:00
Christoph M. Wintersteiger 077e801590 Assertion fix. Relates to #383. 2015-12-23 13:41:52 +01:00
Nikolaj Bjorner 9c6271dded add debugging facilities for github issues #384 #367
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-22 10:43:18 -08:00
Nikolaj Bjorner 8e26c97782 tuning bit-vector operations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-21 13:09:03 +02:00
Nikolaj Bjorner 284fcc2c04 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-20 09:43:56 +02:00
Nikolaj Bjorner b1459f4fa3 fix build warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-15 04:57:32 +02:00
Nikolaj Bjorner 43bc6caa55 fix warning messages
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-15 04:11:11 +02:00
Nikolaj Bjorner f3d94db889 bild on gcc #376
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-13 23:47:45 -08:00
Nikolaj Bjorner 72883df134 fix build, add seq features
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-13 16:02:17 -08:00
Nikolaj Bjorner 3c50508762 use ADT for strings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-12 20:46:28 -08:00
Nikolaj Bjorner a7e2fb31e3 updates to resource exceptions, update master possibly handle pull request issue
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-12 11:36:49 -08:00
Nikolaj Bjorner 4132fc2d91 ensure limit children are safe for race conditions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-12 10:18:51 -08:00
Nikolaj Bjorner 2a051719d8 cleanup deprecated critical sections, fix cancellation for par_or_else tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-12 09:43:00 -08:00
Nikolaj Bjorner c97db1722d fix index into reversed contains semantics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 22:00:01 -08:00
Nikolaj Bjorner 1aea9722cb moving to resource managed cancellation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 16:56:23 -08:00
Nikolaj Bjorner baee4225a7 reworking cancellation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 16:21:24 -08:00
Nikolaj Bjorner 32b6b2da44 moving to resource managed cancellation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 13:13:11 -08:00
Nikolaj Bjorner 5eb23e1e7a seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-10 19:20:16 -08:00
Nikolaj Bjorner 30580a012a seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-10 02:38:56 -08:00
Nikolaj Bjorner f9ca66d90b seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-09 23:19:16 -08:00
Nikolaj Bjorner c5a9d81d93 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-09 20:17:00 -08:00
Nikolaj Bjorner 035f2bb0da disable unsound simplification of root objects, and incorrect evaluation of negative even roots
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-09 08:41:59 -08:00
Nikolaj Bjorner b9302e6caf seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-09 00:38:03 -08:00
Nikolaj Bjorner 94bd2fdbe4 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-08 21:03:28 -08:00
Nikolaj Bjorner 895d032996 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-08 10:33:09 -08:00
Nikolaj Bjorner 2b190039d5 Merge branch 'master' of https://github.com/Z3Prover/z3 2015-12-08 03:35:03 -08:00
Nikolaj Bjorner e7687132ed seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-08 03:34:58 -08:00
Nikolaj Bjorner ca96fea2c0 add seq methods
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-07 16:28:20 -08:00
Nikolaj Bjorner a9f5c2f864 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-07 15:01:46 -08:00
Nikolaj Bjorner 03d1391ded merge seq and string operators
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 23:37:37 -08:00
Nikolaj Bjorner 8bb73c8eae merge seq and string operators
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 23:34:28 -08:00
Nikolaj Bjorner 08bfd08412 merging seq and string
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 22:15:56 -08:00
Nikolaj Bjorner 89fe24342d fix size_t mode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 11:06:58 -08:00
Nikolaj Bjorner 40e9e4c7f8 more rewrites
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 10:44:19 -08:00
Nikolaj Bjorner 4fe0e07080 indexof
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-05 16:36:11 -08:00
Nikolaj Bjorner 5296009f46 ground string rewriting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-05 15:38:54 -08:00
Nikolaj Bjorner 75359c580e add basic rewriting to strings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-05 12:02:33 -08:00
Christoph M. Wintersteiger 5f8f0b1280 Added bool rewriter case. 2015-11-12 14:49:21 +00:00
Christoph M. Wintersteiger 87ae5888ee whitespace 2015-11-12 14:48:29 +00:00
Christoph M. Wintersteiger 1807acdf26 tabs, whitespace 2015-11-09 17:50:50 +00:00
Christoph M. Wintersteiger bd94b59a92 Bugfix for arith rewriter to avoid rewriting loops. 2015-11-03 13:00:10 +00:00
Christoph M. Wintersteiger 27140c527c trailing whitespace 2015-11-03 12:56:29 +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
Nikolaj Bjorner 7838213675 eliminate to_real coersions to make mixed integer problems easier to digest. Issue #277
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-10-30 15:12:21 -07:00
Christoph M. Wintersteiger 8fffa9f188 Removed trailing whitespace. 2015-10-30 12:20:41 +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
Nuno Lopes 0e387b2abe use Z3_fallthrough instead of __falthrough directly to avoid messing with reserved identifiers
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-10-09 18:06:49 +01:00
Christoph M. Wintersteiger de39173f6f Corrected unspecified behavior of fp.min/fp.max corner cases in fpa2bv_converter and in theory_fpa.
Fixes #68
2015-10-07 20:44:08 +01: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
Nikolaj Bjorner d9b6623400 include rlimit in nlsat, include dedicated error message, for issue #216
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-29 09:16:46 -07:00
Nikolaj Bjorner 9b3e242990 adding rlimit resource limit facility to provide platform and architecture independent method for canceling activities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-28 13:37:59 -07:00
Christoph M. Wintersteiger 79d69cd5f0 Added FP to_ieee_bv to fpa_rewriter to enable model evaluation. 2015-09-16 12:57:05 +01:00
Christoph M. Wintersteiger a1073206f9 Bugfix for FP rewriter. 2015-09-15 16:23:24 +01:00
Christoph M. Wintersteiger 25f75b60fe Bugfix for fp.mul and fp.fma for small numbers of e/s bits.
Fixes #215.
2015-09-10 11:37:06 +01:00
Nikolaj Bjorner cc5d719d9e enable incremental bit-vector solving
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-01 09:48:35 -07:00
Nikolaj Bjorner ef7915858b add filter to detect circumventing the default semantics of bit-vector division with the use of the sat-based bit-vector solver. Provides a way to fix issue #190
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-24 16:27:07 -07:00
Nikolaj Bjorner 8505ca843b recognize more pb patterns
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-08 13:39:39 +02:00
Nikolaj Bjorner 4bc044c982 update header guards to be C++ style. Fixes issue #9
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-08 23:18:40 -07:00
Nuno Lopes b65d5797f8 optimize expr_safe_replace for when a subexpression has no substitutions
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-06-03 17:21:01 +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 9428acd578 Bugfix for FPA rewriter. 2015-05-29 13:58:33 +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 eee076b9f8 Bugfixes for fp.min, fp.max.
Fixes the fix for #68
2015-05-21 18:16:02 +01:00
Matthias Schlaipfer c82319b358 Refactor count_vars and count_rule_vars
ast_manager m was not used
2015-05-14 17:04:38 +01:00
Nikolaj Bjorner ab5022888c Merge branch 'opt' of https://github.com/Z3Prover/z3 into unstable 2015-05-14 12:11:17 +01:00
Christoph M. Wintersteiger 73eb7cbf5c Bugfix for mpf roundToIntegral.
Partially fixes #69
2015-05-05 23:53:33 +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
Nikolaj Bjorner 9377779e58 merge with unstable
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-04-30 10:40:03 -07:00
Nikolaj Bjorner 6c1a5390ef fix big-int bug for shift amounts, github issue 44, reported by Dejan
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-04-20 10:20:06 +02:00
Nikolaj Bjorner 52619b9dbb pull unstable
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-01 14:57:11 -07:00
Nuno Lopes 5676fbbc9e compiler love: make a few symbols static and avoid unneeded relocations
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-22 11:13:51 +00:00
Christoph M. Wintersteiger 359c7e4da9 Removed unnecessary variables and added initialization to others to silence warnings.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-07 14:47:26 +00:00
Christoph M. Wintersteiger 941d1063dd FPA rewriter and MPF bugfixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-06 18:48:14 +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 a4c599a435 typo
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-04 18:25:32 +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 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 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 c0a027fc80 FPA: Elminated nzero/pzero AST kinds
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-08 14:07:47 +00:00
Christoph M. Wintersteiger 5e5758bb25 More float -> fpa renaming
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-08 13:37:18 +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
Nikolaj Bjorner 129e048a1b Adding field update feature
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-03 01:27:52 -08:00
Christoph M. Wintersteiger 4d18e24fb4 FPA rewriter bugfix
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-31 14:48:45 +00:00
Christoph M. Wintersteiger d394b9579f FPA: new conversion
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-21 18:45:05 +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 d6ac98a494 FPA API: reintroduced to_ieee_bv
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-11 12:05:52 +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
Nikolaj Bjorner 08cb8b8de8 address divergence in the case of shared theory symbols. Codeplex issue 147, thanks to George Karpenkov
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-09 16:04:25 +01: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 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
Nikolaj Bjorner ce18421a7a fix box
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-15 14:29:39 -07:00
Christoph M. Wintersteiger 7fc95aff3c Minor cleanliness fix.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-10-07 14:24:28 +01:00
Nikolaj Bjorner 4e55f04942 use more efficient encoding of shift operations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-05 10:41:37 -07:00
Nikolaj Bjorner 4a286cfd1e fix two bugs in logarithmic shift operations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-02 16:02:40 -07:00
Nikolaj Bjorner 2c70e8d79f port logarithmic encoding to shr, add review comment on rotate
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-02 09:41:53 -07:00
Nikolaj Bjorner 8929c578c1 fix bug in mk_shl
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-02 09:29:49 -07:00
Nikolaj Bjorner 504709f0a1 change implementation of shl to use log(n)*n intermediary bits instead of n^2/2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-02 09:07:39 -07:00
Nikolaj Bjorner d8e62cac94 enable flattening even if som is set by default
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-01 14:51:14 -07:00
Nikolaj Bjorner 0914748184 revert changes to tactic.cpp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-01 12:56:00 -07:00
Nikolaj Bjorner cce287eed1 fix bug in Shannon decomposition for translating PB constraints into formulas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-01 12:51:40 -07:00
Nikolaj Bjorner c09903288f have free variable utility use a class for more efficient re-use
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-15 16:14:22 -07:00
Ken McMillan c007a5e5bd merged with unstable 2014-08-06 11:16:06 -07:00
Nikolaj Bjorner 19050d1c4c merge Fixedpoint.cs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-07-28 12:20:48 -07:00
Christoph M. Wintersteiger 1944283253 FPA unified function names 2014-07-28 19:36:11 +01:00
Nikolaj Bjorner 752a6b2e33 fix quantifier elimination bugs reported by Berdine and Bornat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-07-14 16:46:27 +02:00
Nikolaj Bjorner e4dedbbefc fix quantifier elimination bugs reported by Berdine and Bornat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-07-14 15:38:22 +02:00
Nikolaj Bjorner 8ef4ec7009 fix bit-vector rotation left bug
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-06-08 12:46:23 +01:00
Nikolaj Bjorner 25ad9d2ee1 tuning based on benchmarks from Robert White
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-05-05 14:43:06 -07:00
Nikolaj Bjorner 5b1f83a676 improved SLS
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-03-21 14:48:01 -07:00
Nikolaj Bjorner f8348d0bc4 trying to fix build problems
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-03-21 14:45:12 -07:00
Nikolaj Bjorner 88df909a6c merge with unstable
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-03-20 14:09:18 -07:00
Nikolaj Bjorner 9811054e72 adding pb sls
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-03-18 14:17:21 -07:00
Nikolaj Bjorner 4effa7f0c0 debug opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-03-17 21:13:31 -07:00
Nikolaj Bjorner af55088b78 debugging opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-03-17 10:34:32 -07:00
Nikolaj Bjorner 23313e5bdc remove unsound simplification for rem. Codeplex Issue 76
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-03-02 17:24:40 -08:00
Nikolaj Bjorner 3757f337e5 working on pb
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-02-26 09:06:25 -08:00
Nikolaj Bjorner 478b3160ac optimize theory pb
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-02-25 18:06:54 -08:00
Nikolaj Bjorner aff92f3ac1 Merge branch 'unstable' of https://git01.codeplex.com/z3 into opt 2014-01-27 11:19:19 -08:00
Christoph M. Wintersteiger 0e74362ecb Added support for the final draft of the FPA standard (and fpa2bv conversion).
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-01-24 15:36:23 +00:00
Nikolaj Bjorner 236b2d2ff3 working on incremtal PB theory
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-01-13 10:12:45 -08:00
Nikolaj Bjorner 0641c4f694 working on pre-processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-26 09:53:33 -08:00
Nikolaj Bjorner 70c4432bb4 working on pb pre-processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-23 13:22:21 -08:00
Nikolaj Bjorner 0c2ec6951a working on pre-processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-23 03:25:22 -08:00
Nikolaj Bjorner 24f2fd380c adding pre-processing of BP constraints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-23 01:33:24 -08:00
Nikolaj Bjorner fe5c42c90f fixes to bugs exposed by regressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-15 05:23:47 +02:00
Christoph M. Wintersteiger 65a202873f Bugfix for equality rewriting on floats.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2013-10-10 15:38:54 +01:00
Christoph M. Wintersteiger 9a9f8bbb34 rewriter and value recognition bugfixes for floats
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2013-10-08 20:01:39 +01:00
Nikolaj Bjorner 5c145dcd4b fix parameter checking on quantifiers (thanks to Esteban Pavese), fix query tracking in rel_context (thanks to Nuno Lopes), fix counter for free variables under quantfiers (thanks to Tomer Weiss)
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-08-22 15:00:52 -07:00
Nikolaj Bjorner 0f83e7a251 fix bug masked by default configuration
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-08-10 12:23:34 -07:00
Nikolaj Bjorner 324dc5869d fix substitution bug in qe, working on boogie trace
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-06-25 13:07:28 -05:00
Leonardo de Moura a60b53bfd8 Fix compilation errors/warnings when using GCC
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-06-20 17:52:20 -07:00
Christoph M. Wintersteiger 76c59cb85c MPF conversion bugfix.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2013-06-14 17:22:25 +01:00
Christoph M. Wintersteiger 455618bb2b FPA: added is_nan
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2013-06-07 18:34:31 +01:00
Christoph M. Wintersteiger d7639557d2 FPA: added rewriting and fpa2bv conversion rules for new operations.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2013-06-07 18:03:46 +01:00
Nikolaj Bjorner c0895e5548 remove hassel table from unstable: does not compile under other plantforms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-05-31 17:48:19 -07:00
Nikolaj Bjorner e35fd58968 add rewriting option to simplify store equalities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-05-13 11:43:30 -07:00
Christoph M. Wintersteiger 7053b7636b Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2013-05-01 14:11:21 +01:00
Christoph M. Wintersteiger 65af658fd7 FPA: min/max special cases fixed.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2013-05-01 14:08:53 +01:00
Nikolaj Bjorner 8038c719fb optimize rule preprocessing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-04-26 14:40:20 -07:00
Nikolaj Bjorner b644fb9875 optimize rule processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-04-26 12:02:19 -07:00
Nikolaj Bjorner c58b4f9a53 optimize rule processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-04-26 11:43:06 -07:00
Nikolaj Bjorner 359d2326f8 stash
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-04-03 17:06:45 -07:00
Nikolaj Bjorner b1fc6a5cac Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2013-03-24 18:26:48 -07:00
Nikolaj Bjorner bbe93ef610 fix build warning, make context simplifier traverse subterms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-03-24 18:26:22 -07:00
Leonardo de Moura a71bb549c6 Add option :bv-sort-ac true
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-03-24 14:59:29 -07:00
Nikolaj Bjorner 7c3ca302f0 missing hnf
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-03-23 16:56:47 -07:00
Nikolaj Bjorner fb5d2cae17 local changes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-03-23 16:44:07 -07:00
Nikolaj Bjorner 26f4d3be20 significant update to Horn routines: add module hnf to extract Horn normal form (removed from rule_manager). Associate proof objects with rules to track (all) rewrites, so that proof traces can be tracked back to original rules after transformations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-03-23 14:11:54 -07:00
Nikolaj Bjorner 5455704af2 move quantifier hoist routines to quant_hoist
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-03-19 15:00:23 -07:00
Nikolaj Bjorner 7e9f4e264d working on separating horn simplificaiton
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-03-18 21:46:42 -07:00
Christoph M. Wintersteiger e5307300de FPA: bugfixes in mul() and abs()
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2013-03-06 15:04:58 +00:00
Christoph M. Wintersteiger e5f03f999a FPA: Added conversion operator float -> float.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2013-03-04 20:21:14 +00:00
Leonardo de Moura 97bf9418f7 Add new probes for arithmetic. Check for LIA and LRA (and activate qe if applicable). Modify echo tactic to send results to the regular stream.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-02-20 13:41:08 -08:00
Leonardo de Moura c4f762028f Add support for abs (absolute value) function in theory arith (it is part of the SMT-LIB 2.0 standard)
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-02-03 15:28:56 -08:00
Leonardo de Moura 8515044f8b Add option bvnot2arith
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-27 20:28:42 -08:00
Leonardo de Moura 2a286541e0 Fix crash reported at http://z3.codeplex.com/workitem/11. Fix array rewriter bug, rewriter was producing sort incorrect expression.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-26 08:36:25 -08:00
Leonardo de Moura cec328cfdc Add get_sort(expr * n) function that does not depend on ast_manager. Move power_of_two to rational class. Add arith_recognizers and bv_recognizers classes. The two new classes contain the 'read-only' methods from arith_util and bv_util.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-18 14:44:51 -08:00
Leonardo de Moura 08789b69d4 Fix warning on FreeBSD
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-17 20:56:20 -08:00
Leonardo de Moura 7e66a65e98 Add blast_distinct_threshold option to rewriter. Enable blast_distinct in the QF_LIA default strategy
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-17 10:32:00 -08:00
Leonardo de Moura a07b459fdf Added is_unique_value. Its semantics is equal to the old is_value method. The contract for is_value changed. See comments at ast.h for more information.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-07 12:53:51 -08:00
Leonardo de Moura 75739fdf7b fixed memory smash
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-06 08:19:42 -08:00
Leonardo de Moura a99b8fe797 exposed rewriter parameters
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-02 22:03:30 -08:00
Leonardo de Moura 6107e8d9ce moved old params files
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-02 10:47:04 -08:00
Leonardo de Moura 32791204e7 merged
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-01 16:36:24 -08:00
Christoph M. Wintersteiger f78e595b56 Added QF_FPABV logic, default tactic, and the asIEEEBV conversion function.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2012-12-01 15:51:33 +00:00
Leonardo de Moura cf28cbab0a saved params work
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-29 17:19:12 -08:00
Leonardo de Moura 5e7436cb50 Removed (some) dead parameters. Added doxygen documentation for the whole code base.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-22 10:06:24 -08:00
Leonardo de Moura 26ffee95fc resurrecting assertion stack
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-01 12:37:24 -07:00
Leonardo de Moura cb8a6db51b minor fixes after feedback from regression tests... 2012-10-30 09:20:28 -07:00
Leonardo de Moura c5540c7de9 new xor simplification
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-26 14:57:06 -07:00
Leonardo de Moura 1ea606092c checkpoint
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-25 15:44:53 -07:00
Leonardo de Moura f57d4b1b19 reorganizing the code
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-25 11:28:03 -07:00
Leonardo de Moura 0a4446ae26 reorganizing the code
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-23 22:14:35 -07:00