3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 09:05:31 +00:00
Commit graph

15695 commits

Author SHA1 Message Date
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
Nikolaj Bjorner
d6e41de344 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-30 02:32:55 -07:00
Nikolaj Bjorner
c50e6bdbb1 fix #5229 2021-04-30 02:32:16 -07:00
Nikolaj Bjorner
381e502d30 fix #5224 2021-04-29 20:12:20 -07:00
Zachary Wimer
e4b660321f
Cpp api string const (#5228)
* string_const added

* typo fixed
2021-04-29 16:16:48 -07:00
Nikolaj Bjorner
decbf4be11 fix undo record for lblset
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-29 14:06:18 -07:00
Nikolaj Bjorner
a8ccbd7103 fix #5226 2021-04-29 13:36:25 -07:00
Nikolaj Bjorner
481d9ad14a na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-29 10:14:50 -07:00
Nikolaj Bjorner
6b2ce7fa65 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-29 10:13:25 -07:00
Jakob Rath
f83705bf9f
Polysat: first pass at forbidden intervals (not yet fully integrated into solver) (#5227)
* Add interval class

* Take dependency as const reference

* Compute forbidden intervals for ule-constraints

* Add class for evaluated interval

* We need the evaluated bounds as well

* Don't add constraint to cjust multiple times (hack, to be improved later)

* typo

* More interval helpers

* Add constraint::ult factory function

* Fix forbidden interval condition

* Add solver::has_viable

* Add conflict explanation using forbidden intervals (not yet fully integrated into solver)
2021-04-29 10:12:54 -07:00
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
Nikolaj Bjorner
30e904bfa4 disable threads for extensions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-27 21:46:56 -07:00
Nikolaj Bjorner
007b792e0f #5215 2021-04-27 21:05:02 -07:00
Nikolaj Bjorner
5ecc32e731 #5215
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-27 20:46:25 -07:00
Nikolaj Bjorner
308f399224 #5215 converting NYI 2021-04-27 16:19:54 -07:00
Nikolaj Bjorner
89373d5bf9 #5215 2021-04-27 16:02:08 -07:00
Nikolaj Bjorner
4da4591fe7 #5215 2021-04-27 15:40:17 -07:00
Nikolaj Bjorner
e5892e5e97 #5215
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-27 15:26:56 -07:00
Nikolaj Bjorner
a71b4fab23 na 2021-04-27 09:31:04 -07:00
Nikolaj Bjorner
78571b9a51 fix #5219 2021-04-27 09:30:10 -07:00
Nikolaj Bjorner
d731ec7cba
Revert "Cpp api fp to bv (#5218)" (#5221)
This reverts commit fa2d593739.
2021-04-27 08:44:15 -07:00
Zachary Wimer
fa2d593739
Cpp api fp to bv (#5218)
* fpa_to_ubv and fpa_to_sbv added to C++ API

* Bug fix

* fpa_fp method added to API

* Adjust types to prefer sort over expr and bug fix
2021-04-26 17:00:05 -07:00
Nikolaj Bjorner
ecfbc1cc06 trace
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-26 15:15:27 -07:00
Nikolaj Bjorner
22a76e4985 fix typos in comments 2021-04-26 15:15:27 -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
Nikolaj Bjorner
a1b036a4fa
Update README.md 2021-04-25 17:02:34 -07:00
Nikolaj Bjorner
3ff5d4226a
Update README.md 2021-04-25 16:59:53 -07:00
Nikolaj Bjorner
0422b59123 build 2021-04-24 16:37:03 -07:00
Nikolaj Bjorner
c03fac8390 Investigating std::vector and #5178 2021-04-24 14:50:59 -07:00
Nikolaj Bjorner
385109d484 regarding #5206 2021-04-24 14:25:26 -07:00
Nikolaj Bjorner
a19e469cc2 fix #5212 2021-04-24 13:27:41 -07:00
Nikolaj Bjorner
af5e7a1c48 #5211 2021-04-24 10:28:22 -07:00
Nikolaj Bjorner
b1e8303257 #5211 2021-04-24 10:23:09 -07:00
Nikolaj Bjorner
07e2ca100d fix #5213
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-04-23 10:05:08 -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
Nikolaj Bjorner
e0393f85fa #5211 2021-04-22 23:46:05 -07:00
Nikolaj Bjorner
b5496d823d #5211 2021-04-22 23:14:28 -07:00
Nikolaj Bjorner
d2f15d1b1a #5211 2021-04-22 23:04:54 -07:00
Nikolaj Bjorner
67ec86fc66 #5211 2021-04-22 22:53:18 -07:00
Nikolaj Bjorner
5d49cb5519 #5211 2021-04-22 22:42:05 -07:00
Nikolaj Bjorner
5cfe273460 #5211
```
 (declare-fun v5 () Bool)
 (declare-fun i1 () Int)
 (declare-fun i2 () Int)
 (declare-fun i4 () Int)
 (declare-fun i5 () Int)
 (declare-fun i6 () Int)
 (declare-fun i9 () Int)
 (declare-fun i10 () Int)
 (assert (or (not (=> (= 23 i6 i4 i2 85) v5)) (<= i1 8 i9 i9 (+ (+ i1 349 i10 i6) i5)) (>= i4 782)))
 (check-sat)
```
2021-04-22 22:10:39 -07:00
Nikolaj Bjorner
bcb33a5b3a remove unused functions 2021-04-22 21:46:31 -07:00
Nikolaj Bjorner
4c4810c611 fix #5207 2021-04-22 13:10:11 -07:00
Nikolaj Bjorner
d67919373e add bailout option for code review #5208
@levnach
Could you review and maybe make this much more streamlined?
The patch is to simply bail out the iterator if it fails to find canonical monics.
If m_ff could produce the existing canonical monics up front this kind of bail-out could maybe avoided.
2021-04-22 11:30:11 -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