Nikolaj Bjorner
a0b0c1f428
with a fix
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-23 17:50:33 -07:00
Nikolaj Bjorner
4f0ec82957
functionally complete viable, needs to be debugged
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-23 17:44:52 -07:00
Nikolaj Bjorner
db242c28c6
make it C++17 friendly
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-23 15:20:59 -07:00
Jakob Rath
20a5baeb70
Polysat: expand conflict explanation rules ( #5366 )
...
* update example to match slides
* Add normalized view of inequalities
* workaround
* Add a conflict explanation rule
* unit clauses should be asserted at the base level
* Add src constraint to interval
* support non-strict case in first rule
* print conflict constraints only once
* update second rule
* update third rule as well
2021-06-23 10:12:39 -07:00
Nikolaj Bjorner
dec37aee34
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-22 21:01:17 -07:00
Nikolaj Bjorner
01c81405af
remove var-constraint alltogether
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-22 20:58:32 -07:00
Nikolaj Bjorner
b9719768a0
more viable scaffolding
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-22 20:55:56 -07:00
Nikolaj Bjorner
8f0c408c0a
prepare for new viable
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-22 20:44:21 -07:00
Jakob Rath
d7b8ea2f7f
Polysat: minor fixes ( #5364 )
...
* update include paths
* bdd fixes
* update/fix some tests
* work around assertion failure when constraint from clause becomes unit
* Remove old code
* use clause_builder
* Verify model when returning SAT
* log
* fix
2021-06-22 09:27:18 -07:00
Nikolaj Bjorner
52eb473c63
prepare viable
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-21 21:55:20 -07:00
Nikolaj Bjorner
f18dccebc2
move tbv
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-21 21:12:46 -07:00
Nikolaj Bjorner
ce5c8b3066
rename to some saner name
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-21 16:19:37 -07:00
Nikolaj Bjorner
63f3c841d8
remove var_constraint to get rid of bdd dependencies
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-21 16:14:30 -07:00
Nikolaj Bjorner
9173306adc
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-21 16:00:13 -07:00
Nikolaj Bjorner
6f93ed8dc2
moving out viable functionality
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-21 15:50:04 -07:00
Nikolaj Bjorner
19099244c4
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-20 12:38:20 -07:00
Nikolaj Bjorner
4fad0385de
tune multiplication slightly
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-20 11:07:06 -07:00
Nikolaj Bjorner
d78313e001
more pp
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-20 10:13:59 -07:00
Nikolaj Bjorner
4066087138
pretty printing
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-20 09:49:31 -07:00
Nikolaj Bjorner
4bcfcecbbb
fix initialization/finalization order for bdd
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-19 23:11:06 -07:00
Nikolaj Bjorner
3da37f4fb5
add unit test driver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-06-18 10:58:42 -07:00
Jakob Rath
c4963f4381
Polysat: add two more prototype rules ( #5355 )
...
* Add try_div to PDDs
* x>y is false when x==y
* First version of the other two prototype rules
* More band-aid fixes...
2021-06-18 08:48:50 -07:00
Jakob Rath
3e1cfcd538
Polysat: conflict explanation prototype ( #5353 )
...
* display constraint's extra info in one place
* Add stub for conflict explainer
* Add helper functions to check whether constraint is active at base level
* Add helper class tmp_assign
* Add clause_builder; it skips unnecessary literals during clause creation
* some fixes
* Use clause_builder for forbidden intervals
* remove old comments
* fixes/comments in solver
* print redundant clauses
* First pass at conflict_explainer
* remove unused model class
* Choose value for k
* also print min/max k
2021-06-17 10:35:32 -05:00
Jakob Rath
1fe7dc40fe
Polysat: add simpler monotonicity unit test + minor changes ( #5348 )
...
* Add simpler versions of monotonicity puzzle
* band-aid fix to conflicts during revert_decision
* minor changes
2021-06-15 12:18:37 -05:00
Jakob Rath
8757f04d20
Polysat: disjunctive lemmas ( #5311 )
...
* Add macro to disable linear solver for development
* Move new_* and add_* to header
* Add ref_vector_core::push_back(ref<T>&&)
* Attempt to simplify lifetime handling
* Make operator bool() explicit
* clause improvements
* display boolean assignment
* clause::resolve
* bug fixes
* more fixes
* final case of backtrack
2021-05-28 13:53:08 -07:00
Nikolaj Bjorner
5fd3ef6580
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-23 16:50:47 -07:00
Nikolaj Bjorner
befc47902e
track
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-22 17:57:23 -07:00
Nikolaj Bjorner
79e38c6477
notes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-22 17:47:48 -07:00
Nikolaj Bjorner
52ad5aaa58
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-22 14:39:31 -07:00
Nikolaj Bjorner
b22928bfc9
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-22 14:16:50 -07:00
Nikolaj Bjorner
5ad486901e
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-21 18:03:05 -07:00
Jakob Rath
28996429df
Polysat disjunctive lemmas (WIP) ( #5275 )
...
* Extend search state by boolean literals
* Only resolve against positive equality
* mk_dep_ref
* Make clause non-owning
* scoped_clause
* Use scoped_clause
* minor
* scoped_ptr move assignment
* WIP: internal handling of disjunctive constraints
* leaf_value
* disjunctive constraints continued
* Fix bool_lit
* Actually add constraints to storage
* Some fixes
* more fixes
* constraint should have a bool_lit instead of a bool_var
* propagate(bool_lit)
* updates
* interface changes
* small fixes
* Make sat::dimacs_lit's constructor explicit
(otherwise, calling operator<< with sat::literal is ambiguous)
* Use sat::literal
* Print test name at the beginning
* Convention: constraint corresponds to the positive boolean literal
* Make constraint ownership more explicit
* clause stores literals
2021-05-21 13:50:25 -07:00
Nikolaj Bjorner
7a1a2b2525
make unit types generic
2021-05-20 15:28:26 -07:00
Nikolaj Bjorner
973a32a015
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-16 13:50:41 -07:00
Nikolaj Bjorner
eaca24ac01
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-15 17:00:49 -07:00
Nikolaj Bjorner
88bbe9d54e
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-15 10:12:11 -07:00
Nikolaj Bjorner
683ce27c8f
linear solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-14 17:10:01 -07:00
Nikolaj Bjorner
17fcf79c04
interleave linear solver calls
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-14 11:31:35 -07:00
Nikolaj Bjorner
118dc0f3b4
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-14 10:25:42 -07:00
Nikolaj Bjorner
587750b9a3
outline layer between polysat solver and fixplex
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-13 18:04:44 -07:00
Nikolaj Bjorner
334bde7623
Merge branch 'polysat' of https://github.com/z3prover/z3 into polysat
2021-05-13 17:24:00 -07:00
Nikolaj Bjorner
49a903c875
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-13 17:23:55 -07:00
Nikolaj Bjorner
d833483ca0
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-13 17:18:09 -07:00
Nikolaj Bjorner
0d776ecf88
eliminate basic variables from new rows
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-12 15:58:35 -07:00
Nikolaj Bjorner
62b7719d5a
separate into self-contained mod interval
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-11 11:22:55 -07:00
Nikolaj Bjorner
04c0db75bf
test eqs1
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-10 21:21:50 -07:00
Nikolaj Bjorner
be7b964206
fix row pivot/del
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-10 19:53:34 -07:00
Nikolaj Bjorner
0b6c7cd7b4
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-09 20:13:33 -07:00
Nikolaj Bjorner
43cc0e6575
fixes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-07 18:03:34 -07:00
Nikolaj Bjorner
654892fec1
inverse approx
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-07 17:33:07 -07:00