3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-18 22:59:02 +00:00
Commit graph

120 commits

Author SHA1 Message Date
Nikolaj Bjorner c429455f10 visit parameters during occurs count
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-29 08:52:25 -07:00
Arie Gurfinkel bc6604441b Helpers in model_core 2018-06-27 22:49:35 -04:00
Nikolaj Bjorner 520ce9a5ee integrate lambda expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-26 07:23:04 -07:00
Nikolaj Bjorner 915983821b add rewrite to each branch of mbp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-24 17:06:49 -07:00
Nikolaj Bjorner 335d672bf1 fix #1675, regression in core processing in maxres
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-19 23:23:19 -07:00
Arie Gurfinkel 60888a93eb Minor fixes to model 2018-06-16 13:42:26 -07:00
Nikolaj Bjorner 450da5ea0c moving model_evaluator to model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 17:40:54 -07:00
Nikolaj Bjorner 6fc08e9c9f Merge branch 'master' of https://github.com/z3prover/z3 2018-06-15 14:58:10 -07:00
Nikolaj Bjorner a51d6cbcbc debug model evaluator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 14:58:02 -07:00
Nikolaj Bjorner baa96909cc mb-skolem for arithmetic with model repair
The contract is that users of mb-skolem ensure that
interface equalities are preserved (by adding a
sufficient set of disequalities, such as a chain
x1 < x2 < x3 .., to force that solutions for
x_i does not clash).

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 17:26:04 -07:00
Arie Gurfinkel 8ffbd5d1e5 model_evaluator: respect array_as_stores option 2018-06-14 16:08:49 -07:00
Arie Gurfinkel 7281616084 model_evaluator: optionally expand arrays as sequence of stores
commit on behalf of Nikolaj
2018-06-14 16:08:49 -07:00
Nikolaj Bjorner ff0f257102 remove iff
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:48 -07:00
Nikolaj Bjorner ecf15ab07d add model_evaluator_util features to model_evalautor
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:48 -07:00
Nikolaj Bjorner f525f43e43 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-30 09:30:43 -07:00
Nikolaj Bjorner 5cff0de844 fix #1567
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-08 11:19:00 -07:00
Nikolaj Bjorner c513f3ca09 merge with master
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-03-25 14:57:01 -07:00
Nikolaj Bjorner 5dd7e2c520 fix #1544
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-03-16 19:30:13 -07:00
Nikolaj Bjorner a738f5af12 fix #1512
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-03-02 20:14:59 +09:00
Bruce Mitchener 76eb7b9ede Use nullptr. 2018-02-12 14:05:55 +07:00
Bruce Mitchener b7d1753843 Use override rather than virtual. 2018-02-09 21:19:27 +07:00
Nikolaj Bjorner 4adb24ede5 fix model bugs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-01-13 16:12:59 -08:00
Nikolaj Bjorner edffdf857c use expr-vectors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-21 16:07:10 -08:00
Nuno Lopes 9b54b4e784 fix vector<> to support non-POD types
adjust code to std::move and avoid unnecessary/illegal
2017-10-16 00:54:29 +01:00
Nikolaj Bjorner d2ec927844 fix build break
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-08 12:34:08 +01:00
Nikolaj Bjorner 52217f0600 fix #1290
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-08 10:56:05 +01:00
Nikolaj Bjorner caa02c3c02 add match expression construct to SMT-LIB2.6 frontend
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-19 19:39:02 -07:00
Christoph M. Wintersteiger 00651f8f21 Tabs, formatting. 2017-09-17 14:54:09 +01:00
Christoph M. Wintersteiger 2688fd55cf Taught the model_evaluator to look for definitions of partial theory functions in the model upon evaluation failure. 2017-09-14 20:29:54 +01:00
Nikolaj Bjorner 5c8fa80c3f merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-03 14:58:14 -07:00
Christoph M. Wintersteiger 1a1c705376 Added global model completion for the SMT2 frontend. 2017-08-30 19:34:31 +01:00
Nikolaj Bjorner 7dd28781ab remove simplifier dependencies from cmakelist.txt files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-23 16:33:36 -07:00
Nikolaj Bjorner 2c8e9aeb9c another crash fix
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-21 15:23:52 -07:00
Nikolaj Bjorner e6145fa6df fix crash
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-21 14:53:16 -07:00
Nikolaj Bjorner ebe9db14d5 fix regression exposed by segfault2.smt2 crash
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-21 14:13:43 -07:00
Nikolaj Bjorner 276fdd0e97 register auxiliary constants from projection operation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-20 08:51:24 -07:00
Nikolaj Bjorner 2b82fd5d0c updated include directives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 10:51:47 -07:00
Arie Gurfinkel 25c6480e6e updated include directives 2017-07-31 23:16:42 -04:00
Nikolaj Bjorner b19f94ae5b make include paths uniformly use path relative to src. #534
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00
Arie Gurfinkel 972ab6298c (mev) only reduce function interpretation 2017-06-21 22:59:52 -04:00
Arie Gurfinkel 493a3a6312 (mev) call expand_value only at the end
There is no need to expand array values throughout evaluation.
They are expanded during array equality checking (if requested), and
can be expanded at the very end of evaluation (if needed).
2017-06-21 20:58:10 -04:00
Arie Gurfinkel d5ca902bf6 (mev) bug fix in expanding array equalities
The stores were processed in the wrong order so that

  (store (store a x y) x u)

was reduced to

  (store a x y)

instead of

  (store a x u)
2017-06-21 20:58:10 -04:00
Arie Gurfinkel e62e563e2d (mev) renamed variable to clarify that it is unused 2017-06-21 20:58:10 -04:00
Dan Liew 4b517b96df [CMake] Move CMake files into their intended location so the
`contrib/cmake/bootstrap.py` script no longer needs to be executed.

The previous location of the CMake files was a compromise proposed
by @agurfinkel in #461. While this has served us well (allowing progress
to be made) over time limitations of this approach have appeared.

The main problem is that doing many git operations (e.g. pull, rebase)
means the CMake files don't get updated unless the user remembers to
run the script. This can lead to broken and confusing build system
behaviour.

This commit only does the file moving and necessary changes to
`.gitignore`. Other changes will be done in subsequent commits.
2017-06-12 11:59:00 +01:00
Nikolaj Bjorner fcda4cee9f ensure evaluation of array equalities is enabled for external facing evaluator. Issue #917
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-09 05:29:56 +01:00
Nikolaj Bjorner 20790c46ee bail out on failure to properly project
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-11 04:23:07 +01:00
Christoph M. Wintersteiger dc0d29a00c Bugfix for model construction. Fixes #828. 2016-12-08 16:14:54 +00:00
Nikolaj Bjorner c0fb2eafe5 remove recursive expansion of else-case
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-02 23:08:10 +00:00
Nikolaj Bjorner be9d5c7088 fix evaluator for array store expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-02 21:33:24 +00:00
Christoph M. Wintersteiger ab4bb8194e Added unregister_decl to model_core 2016-10-15 18:35:39 +02:00