Nikolaj Bjorner
622b2d3b39
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-29 10:12:33 -07:00
Nikolaj Bjorner
60972de562
use assert instead of explicit check
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-28 08:48:24 -07:00
Nikolaj Bjorner
efbb382646
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-27 22:52:59 -07:00
Jakob Rath
9e505d60f0
Separate constraint creation from activation; add sign/polarity to constraints ( #5217 )
...
* Separate constraint creation from activation
* Basic recursive handling of disjunctive lemmas for unit tests
* Set learned constraint to true immediately
* Preliminary support for negated constraints
2021-04-26 09:55:58 -07:00
Jakob Rath
2fac9e6e66
Add propagate/narrow for ule_constraint ( #5214 )
...
* Add helper to check whether pdd is univariate and linear
* Reorganize propagate/narrow of eq_constraint
* Implement propagate/narrow for ule constraints
* Also push trail instruction in push_viable
2021-04-23 08:41:02 -07:00
Jakob Rath
12444c7e8b
Phase saving and some minor changes ( #5209 )
...
* Implement phase saving
* Implement signed comparison on BDD vectors
* Add fdd::non_zero
* Simplify construction of fdds over disjoint variables
* Minor changes to adding constraint
2021-04-22 09:47:46 -07:00
Nikolaj Bjorner
09f31ebb0a
working on pivot
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 17:46:09 -07:00
Nikolaj Bjorner
2d8769dc64
working on pivot
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 17:42:33 -07:00
Nikolaj Bjorner
36cd80748f
working on pivot
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 17:42:01 -07:00
Nikolaj Bjorner
80751bdd12
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 14:20:39 -07:00
Nikolaj Bjorner
80492e65ea
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 14:11:46 -07:00
Nikolaj Bjorner
3049ec82de
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 14:08:38 -07:00
Nikolaj Bjorner
ee081f7434
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 14:05:28 -07:00
Nikolaj Bjorner
ce8184382d
add dummy implementations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 14:02:12 -07:00
Nikolaj Bjorner
fc60690742
tidy, initial polysat
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 12:21:50 -07:00
Nikolaj Bjorner
82bc6474a3
Merge branch 'polysat' of https://github.com/z3prover/z3 into polysat
2021-04-20 12:03:33 -07:00
Nikolaj Bjorner
831edba1c8
fixplex
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 12:03:28 -07:00
Jakob Rath
77350d97da
BDD vectors: add subtract and quot_rem, move finite domain abstraction out of bdd_manager ( #5201 )
...
* Coding style
* Simplify bddv class
* mk_eq: run loop from below
* Add unit test for bddv unsigned comparison
* Add test that shows contains_num/find_num fail after reordering
* Add BDD vector subtraction
* Call apply_rec in mk_ite_rec instead of apply
* Question about mk_quant
* Implement quot_rem over BDD vectors
* Move shl/shr to bddv
* Make unit test smaller
* Add class dd::fdd to manage association between BDDs and numbers
* Remove contains_num/find_num from bdd_manager
2021-04-20 09:09:32 -07:00
Jakob Rath
4da1b7b03c
Add functionality for BDD vectors ( #5198 )
...
* Fix XOR over BDDs
* Add operator<< for find_int_t
* Add equality assertion macro that prints expression values on failure
* Adapt contains_int and find_int to take externally-defined bits
* Add more operations on BDD vectors
* Remove old functions
* Additional bddv functions
* Rename some things
* Make bddv a class and add operators
* Fix find_num/contains_num calls
2021-04-19 09:05:19 -07:00
Nikolaj Bjorner
981839ee73
separate out search throttle
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-17 14:36:50 -07:00
Nikolaj Bjorner
4b35c75712
add code review and replacement for mk_int
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-17 14:19:17 -07:00
Nikolaj Bjorner
572197aede
add some code review comments, stubs for ule
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-16 12:43:23 -07:00
Nikolaj Bjorner
9df7e9a029
add outline for ule constraints, change bit to var constraints
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-16 12:31:11 -07:00
Nikolaj Bjorner
c7868579c0
add sample bdd vector operations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-16 10:22:48 -07:00
Nikolaj Bjorner
af2376e9e4
fix build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-16 10:00:44 -07:00
Jakob Rath
f72e30e539
Add BDD utilities; use them for narrowing/propagation of linear equality constraints ( #5192 )
...
* Add a few helper methods for encoding sets of integers as BDDs
* Use BDD functions in solver
* Add bdd::find_int
* Use bdd::find_int in solver
* Add narrowing for linear equality constraints
* Simplify code for linear propagation
* Add test for later
* Narrowing can only handle linear constraints with a single variable
* Need to push_cjust
2021-04-16 08:44:18 -07:00
Nikolaj Bjorner
e970fe5034
sketch bit-constraints
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 23:04:25 -07:00
Nikolaj Bjorner
dce9740a38
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 21:53:27 -07:00
Nikolaj Bjorner
12ccd99e84
trail
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 17:39:00 -07:00
Nikolaj Bjorner
549b984c88
move to self-contained trail instructions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 17:38:36 -07:00
Nikolaj Bjorner
2eadcd586a
add new file for eq_constraint
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 14:34:01 -07:00
Nikolaj Bjorner
c733789467
move more equality functionality
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 14:24:50 -07:00
Nikolaj Bjorner
5163492d5b
move constraint handler functionality to self-contained / separate classes.
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 13:08:25 -07:00
Nikolaj Bjorner
0d78a10630
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 12:11:33 -07:00
Jakob Rath
55a908e357
Fix Windows build ( #5188 )
2021-04-15 09:18:20 -07:00
Jakob Rath
cb9dda19dd
Polysat ( #5187 )
...
* test_l2 works now
* Linear propagation: test whether a is odd
* Linear propagation with even coefficients (wip)
2021-04-15 08:37:14 -07:00
Jakob Rath
feb31045f5
Add more logging to polysat ( #5186 )
...
* Add polysat logging support
* Don't really need the usual log levels
* Indent log headings
* Add display method to ptr_vector
* Add some logging to solver
* Use __FUNCSIG__ on MSVC
2021-04-15 08:35:57 -07:00
Nikolaj Bjorner
bb7754a767
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 22:41:56 -07:00
Nikolaj Bjorner
9a2b7677bf
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 22:03:28 -07:00
Nikolaj Bjorner
034132d245
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 21:46:59 -07:00
Nikolaj Bjorner
ce75656e2b
del-var
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 21:46:13 -07:00
Nikolaj Bjorner
e6c9f27de4
misc fixes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 14:15:43 -07:00
Jakob Rath
8a260d89cd
Small polysat fixes ( #5183 )
...
* Add some display functions
* Add new variables to free vars
2021-04-14 10:29:58 -07:00
Nikolaj Bjorner
de66c12b93
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 04:53:13 -07:00
Nikolaj Bjorner
332c123244
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 04:48:53 -07:00
Nikolaj Bjorner
57486f0b3d
split into parts, add stats
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 04:05:35 -07:00
Nikolaj Bjorner
a0d112b7b0
general form migration
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-13 13:00:47 -07:00
Nikolaj Bjorner
7025d85da3
migrating to general form
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-13 11:21:41 -07:00
Nikolaj Bjorner
c575aa3973
remove sub
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-12 11:20:39 -07:00
Nikolaj Bjorner
16df37c484
clean
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-12 11:20:39 -07:00