Nikolaj Bjorner
57a7bef96b
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-01 13:58:34 -07:00
Nikolaj Bjorner
20277f4a3f
test 1
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-01 13:10:34 -07:00
Nikolaj Bjorner
82a364ed7b
compile
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-30 17:53:09 -07:00
Jakob Rath
0c4824f194
Polysat: forbidden intervals updates ( #5230 )
...
* Pop assign_eh
* Fix scoped_ptr_vector constructors, add detach()
* Need to copy the returned lemma
* Add test
* Basic inequality tests
* Return disjunctive lemma to caller
2021-04-30 08:41:50 -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
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
fc60690742
tidy, initial polysat
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-20 12:21:50 -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
alexandernutz
bc695a5a97
monotonicity unit tests ( #5202 )
...
* monotonicity unit tests
* indentation
2021-04-20 09:09:17 -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
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
549b984c88
move to self-contained trail instructions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-15 17:38:36 -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
7067fc16ae
Test and fix PDD subst_val ( #5185 )
2021-04-15 08:35:46 -07:00
Nikolaj Bjorner
9a2b7677bf
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 22:03:28 -07:00
Nikolaj Bjorner
a45687d5db
add very basic unit tests
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 05:03:44 -07:00
Jakob Rath
324d9ed461
Add more PDD utilities (div, pow) ( #5180 )
...
* Expose 'inv' on rationals to get reciprocal value
* Align parameter names with implementation
* Add cached operation that divides PDD by a constant
* Fix display for constant PDDs
* operator^ should probably call ^ instead of + (mk_xor instead of add)
* Add helper function 'pow' on PDDs
2021-04-14 04:48:42 -07:00
Nikolaj Bjorner
2f7069a8b7
move include path in test
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-14 04:06:50 -07:00
Nikolaj Bjorner
21baa2a70a
Merge branch 'master' of https://github.com/z3prover/z3 into polysat
2021-04-14 03:51:12 -07:00
Nikolaj Bjorner
4a6083836a
call it data instead of c_ptr for approaching C++11 std::vector convention.
2021-04-13 18:17:35 -07:00
Jakob Rath
0e9fc4762a
Fix PDD factor cache in case GC happens while factoring ( #5170 )
...
* Add method to find largest power of two that is a divisor
* Binary resolve on PDDs
* Add unit tests for binary resolve
* Fix factor cache access in case GC happens while factoring
* Coding conventions
* Change to gc_generation
2021-04-12 11:20:40 -07:00
Jakob Rath
75c87a2869
Test and memoize pdd factoring ( #5163 )
...
* Test and fix pdd_manager::factor
* Memoize pdd_manager::factor
* Fix Windows build (maybe)
2021-04-12 11:20:40 -07:00
Jakob Rath
f8562380d6
Fix pdd_manager::degree(PDD, unsigned) and add unit tests ( #5155 )
...
* Fix pdd_manager::degree(PDD, unsigned) and add unit tests
* Another marking opportunity
2021-04-12 11:20:40 -07:00
Nikolaj Bjorner
446654b680
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-12 11:20:39 -07:00
Nikolaj Bjorner
52d37f131d
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-12 11:20:38 -07:00
Nikolaj Bjorner
bd04b5e8bd
add testing stubs
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-12 11:20:36 -07:00
Nikolaj Bjorner
23ae7e59d6
add unit test stub
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-12 11:20:35 -07:00
Luca Bruno
b918f121ef
zstring: fix encode rountrip for '\' as printable ASCII ( #5120 )
...
This fixes encode roundtripping for all printable ASCII characters.
In particular, this now leaves a plain '\' untouched by the
encoding logic, instead of converting it to escaped hex-digits.
It also adds unit testing covering this specific zstring encoding
property, in order to avoid future regressions.
2021-03-23 11:25:59 -07:00
Nikolaj Bjorner
2fef6dc502
more scaffolding
2021-03-21 11:31:14 -07:00
Nikolaj Bjorner
0949ad26c2
fix #5107
2021-03-16 15:24:34 -07:00
Nuno Lopes
7b6eff6967
fix user-after-free in smt_ctx test
2021-02-20 16:20:32 +00:00
Nikolaj Bjorner
8f577d3943
remove ast_manager get_sort method entirely
2021-02-02 13:57:01 -08:00
Nikolaj Bjorner
3ae4c6e9de
refactor get_sort
2021-02-02 04:45:54 -08:00
Nikolaj Bjorner
20870c43ec
build test
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-31 20:49:53 -08:00
Nikolaj Bjorner
5da71dc847
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-12-30 16:10:11 -08:00
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
Nikolaj Bjorner
549753845e
bv and gc of literals ( #4692 )
...
* bv and gc of literals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* overload
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* diseq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* diseq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-17 14:24:07 -07:00
Nikolaj Bjorner
796e2fd9eb
arrays ( #4684 )
...
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fill
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* update drat and fix euf bugs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* const qualifiers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* reorg ba
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* reorg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* build warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-13 19:29:59 -07:00
Nikolaj Bjorner
cfa7c733db
fixing #4670 ( #4682 )
...
* fixing #4670
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* init
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* arrays
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-10 04:35:11 -07:00
Nikolaj Bjorner
d02b0cde7a
running updates to bv_solver ( #4674 )
...
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* dbg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* bv
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* drat and fresh
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* move ackerman functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* debugability
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* towards debugability
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* missing file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove csp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-07 20:35:32 -07:00
Nikolaj Bjorner
ab10616b77
fix build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-25 13:19:55 -07:00
Nikolaj Bjorner
ecd3315a74
add sat-euf
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-25 12:16:57 -07:00
Nikolaj Bjorner
22aee4d08d
fix issue in #4655
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-24 17:45:50 -07:00
Nikolaj Bjorner
e46ad45968
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-24 02:20:30 -07:00
Nikolaj Bjorner
65e6d942ac
euf
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-24 01:55:13 -07:00
Nuno Lopes
23e6adcad3
fix a couple hundred deref-after-free bugs due to .c_str() on a temporary string
2020-07-11 20:24:45 +01:00
Nikolaj Bjorner
d0e20e44ff
booyah
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:56:30 -07:00
Andrew V. Jones
9fac010d8e
Fixing build errors when building test-z3 ( #4496 )
...
Signed-off-by: Andrew V. Jones <andrew.jones@vector.com>
2020-06-03 13:34:43 -07:00
Nikolaj Bjorner
f5cd4e3ac0
janitor services
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 10:15:55 -07:00
Andrew V. Jones
a23ca1792b
Ensure that Z3 uses the correct SMT-LIB2 syntax for push and pop ( #4495 )
...
* When pretty-printing SMTLIB2, ensure that Z3 uses the correct syntax for 'push'
Signed-off-by: Andrew V. Jones <andrew.jones@vector.com>
* When pretty-printing SMTLIB2, ensure that Z3 uses the correct syntax for 'pop'
Signed-off-by: Andrew V. Jones <andrew.jones@vector.com>
2020-06-03 09:35:14 -07:00