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

55 commits

Author SHA1 Message Date
Nikolaj Bjorner 2f756da294
adding dt-solver (#4739)
* adding dt-solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* dt

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* move mbp to self-contained module

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* files

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Create CMakeLists.txt

* dt

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* rename to bool_var2expr to indicate type class

* mbp

* na
2020-10-18 15:28:21 -07:00
Arie Gurfinkel 5673ec046b qe_term_graph fix for #3526 2020-03-26 16:45:06 -04:00
Nikolaj Bjorner c8c088e80d fix #2891
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-26 17:50:00 -08:00
Nikolaj Bjorner eb3fc4f47e extend dcert to disunification constraints that arithmetic theory needs to satisfy
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-25 22:38:13 -06:00
Nikolaj Bjorner 794aafa6f8 fix warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-23 12:14:34 -06:00
Nikolaj Bjorner c816d45a7d share some equalities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-20 16:22:38 -06:00
Nikolaj Bjorner 453ef631a0 base working mbi
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-13 15:45:06 -08:00
Nikolaj Bjorner 78a1736bd2 prepare symbols to be more abstract, update mbi, delay initialize some modules
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-10 12:02:08 -08:00
Nikolaj Bjorner 9566d379d6 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-12 19:44:56 -07:00
Nikolaj Bjorner 8829fa96de change projection function
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-12-28 09:38:17 +08:00
Nikolaj Bjorner 076cfa5813 working on revising project0 to project
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-12-26 21:04:35 +08:00
Florian Pigorsch 326bf401b9 Fix some spelling errors (mostly in comments). 2018-10-20 17:07:41 +02:00
Michał Janiszewski cfd0486582 Catch exceptions by const-reference
Exceptions caught by value incur needless cost in C++, most of them can
be caught by const-reference, especially as nearly none are actually
used. This could allow compiler generate a slightly more efficient code.
2018-10-16 19:16:07 +02:00
Nikolaj Bjorner eceb92f5ef add utilities for purification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-05 09:50:39 -07:00
Nikolaj Bjorner 246df792df sign of life for CSQ using pogo
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-03 15:51:50 -07:00
Arie Gurfinkel 4abab8aaf5 Fix bug in qe_term_graph
In merge, parents of A instead of parents of B were traversed.
Among other things, it created stale marks that caused an
infinite loop in to_lits()
2018-06-27 22:54:55 -04:00
Nikolaj Bjorner 7844476a7d fixes to term-graph, add proof-checker routines for PR_BIND, remove orphaned file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-27 17:04:47 -07:00
Nikolaj Bjorner 20fc573d5b add laxer check for oeq_quant_intro
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-27 11:24:56 -07:00
Arie Gurfinkel f936c92efc Improve distinct constraint generation
still many more optimizations possible
2018-06-14 22:27:57 -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 05abf19009 comment 2018-06-14 16:38:27 -07:00
Arie Gurfinkel a3de478c93 typo 2018-06-14 16:13:53 -07:00
Arie Gurfinkel 87715620d9 Fix mk_distict in term_graph 2018-06-14 16:08:52 -07:00
Arie Gurfinkel e355123e37 Change declaration of projector 2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 9ba76a1332 fixing eufi
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel 535b8893ae Complete euf project with eq and diseq on pure representatives 2018-06-14 16:08:52 -07:00
Arie Gurfinkel b246389267 Don't reset m_is_var in project 2018-06-14 16:08:52 -07:00
Nikolaj Bjorner ec8e3f2aee consolidate use of plugin by moving declarations up front (separate from constructor at this point)
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel 5fce4a1d1a Wire qe_solve_plugin into qe_term_graph
Compiles. Not tested.
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 5dc2b7172d merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 74621e0b7d first eufi example running
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel 2288931b46 fix mk_unpure_equalities 2018-06-14 16:08:52 -07:00
Arie Gurfinkel 0f799eb2ae formatting. no change to code 2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 6d79b19170 fix a few bugs, debugging eufi
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner ba504e4243 debugging mbi
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel e0aaf4452b wip: term_graph::project and term_graph::solve 2018-06-14 16:08:52 -07:00
Arie Gurfinkel 144d8df5d5 Rewrite term_graph::project and term_graph::solve 2018-06-14 16:08:52 -07:00
Arie Gurfinkel 771d3b1349 wip: term_graph::project and term_graph::solve 2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 5ab6d6ca16 term_le -> term_lt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner f963fc06f4 sketch out euf-solver based on complete projection
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 44a32bc076 updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel 6e61a7c1b2 minor 2018-06-14 16:08:52 -07:00
Arie Gurfinkel 73486be590 fix typo in mk_pure 2018-06-14 16:08:52 -07:00
Arie Gurfinkel 9c7d9818d3 get_app --> get_expr + fix term_lt() 2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 9a0406d181 replace app by expr
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 0d71d85069 redo representative algorithm
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner ad153592a2 fix parent list
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner a6848c79b7 redo representative generator to respect stratification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner c4188fc4be initial working version
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 1f634efe04 initial working version
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00