3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-13 20:38:43 +00:00
Commit graph

251 commits

Author SHA1 Message Date
Nikolaj Bjorner fd49a0c89c added facility to persist model transformations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-02 00:05:52 -05:00
Nikolaj Bjorner 3de8c193ea implementing model updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-30 16:11:51 -05:00
Nikolaj Bjorner 0589a20b46 fix #1326
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-25 19:24:45 -07:00
Nikolaj Bjorner 651587ce01 merge with master branch
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-19 09:39:22 -07:00
Nikolaj Bjorner 2b82fd5d0c updated include directives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 10:51:47 -07:00
Nikolaj Bjorner b19f94ae5b make include paths uniformly use path relative to src. #534
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00
Nikolaj Bjorner b482dbd589 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 17:02:27 -07:00
Nikolaj Bjorner 7386f2e045 #1101
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-22 14:18:53 -07:00
Nikolaj Bjorner e0a86ccc1a add lrb/chb and experiment with them
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-28 10:48:31 -07:00
Nikolaj Bjorner f3a0b7e0cd change command-line experience for pareto fronts. It now requires multiple check-sat calls to loop over the fronts. This allows querying each model in turn. #1008 2017-05-23 20:05:10 -07:00
Nikolaj Bjorner cc7a176c89 update to retain original behavior
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-02 19:32:03 -07:00
Nikolaj Bjorner eeb79e1c3c update to retain original behavior
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-02 19:30:54 -07:00
Nikolaj Bjorner 8205b45839 initial integration of opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-04-27 19:13:00 -07:00
Nikolaj Bjorner a048d74bae adding interval designator to output of non-optimal objectives, fix python doc test
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-04-26 14:05:33 -07:00
Nikolaj Bjorner c99205fa7e return box model based on index. Issue #955
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-31 08:12:53 -07:00
Nikolaj Bjorner ec47706226 fix constant offset and handling of ite in difference logic optimizer code-path. Issue #946
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-24 02:23:50 -07:00
Nikolaj Bjorner 05c5b3b07b merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-09 22:45:52 +01:00
Nikolaj Bjorner 5f5819f029 fix xor handling, and defaults for cardinality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-09 22:44:41 +01:00
Nikolaj Bjorner 829519b837 fix bug for bit-vector optimization. Issue #928
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-08 10:19:35 +01:00
Nikolaj Bjorner 41e6fafc58 fix bug for bit-vector optimization. Issue #919
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-08 10:07:31 +01:00
Nikolaj Bjorner e02160c674 expose bounds as vector expressions instead of containing ad-hoc expressions. Issue #911
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-24 11:07:40 -08:00
Nikolaj Bjorner 9cfd412cd0 enable pb theory always as pb terms can be introduced during transformations. Issue #884
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-01 15:28:29 -08:00
Nikolaj Bjorner 2bd29548da improve parser error message over API, streamline names of statistics for arithmetic solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-25 17:27:56 -08:00
Nikolaj Bjorner 2307a7ffa7 fix bug in handling of repeated soft constraints. #815
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-11 10:19:57 +01:00
Nikolaj Bjorner 0ab2067b69 produce error message for cores with optimization. Issue #825
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-09 13:15:40 +01:00
Nikolaj Bjorner ba942af5a8 disable sat solver when proofs are turned on. Fixes issue #768
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-31 23:27:39 +01:00
Nikolaj Bjorner 23b9d3ef55 fix at-most-1 constraint compiler bug
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-22 18:50:16 -07:00
Nikolaj Bjorner b2db2f1eb6 allow negative weights for weighted maxsat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-02 10:21:58 -07:00
Nikolaj Bjorner 527c5191a6 Add C++ functions for set operations per stackoverflow post, set relevancy = 2 for quantified maxsmt per example from Aaron Gember, fix conversion of default weights based on bug report from Patrick Trentin on maxsat. Annotating soft constraints with weight=0 caused the weight to be adjusted to 1 and therefore produce wrong results
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-09-21 12:24:24 -07:00
Nikolaj Bjorner 56c78753f0 updating default solver selection. Add dt2bv transformation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-24 18:16:32 -07:00
Nikolaj Bjorner 3581f6de42 remove stale SLS option
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-21 18:18:42 -07:00
Nikolaj Bjorner 4f5b0667ef fix rounding mode for pseudo-boolean constraint creation, Issue #683
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-14 12:34:18 -07:00
Nikolaj Bjorner 0fdf01e410 avoid crash on box models under cancellation. Issue # SASSERT(!m_box_models.empty());
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-29 04:53:28 -07:00
Nikolaj Bjorner 9c099d6b1b fix mb maximization logic, so far not accessible
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-20 16:39:03 -07:00
Nikolaj Bjorner c7ff05cc78 enable core minimization with qsat in case it turns out to be useful
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-12 15:58:12 -07:00
Nikolaj Bjorner ea201a776d enable qsat-opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-11 10:39:27 -07:00
Nikolaj Bjorner c725fe7698 tune lra optimization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-22 17:03:29 -07:00
Nikolaj Bjorner 1aa3fdab8a remove min/max, use qmax; disable cancellation during model evaluation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-19 13:04:20 -07:00
Nikolaj Bjorner 5b31f54501 max/min
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-05 14:11:13 -07:00
Nikolaj Bjorner e29adbf304 fix issues #581: nested timeouts canceled each-other
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-30 11:18:34 -07:00
Nikolaj Bjorner 2428bf18f1 add model correction
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-29 19:08:10 -07:00
Nikolaj Bjorner c75fd02c95 qsat-opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-28 21:31:16 -07:00
Nikolaj Bjorner 0094b36636 fix bounds check to fix segfault reported in issue #565
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-16 12:25:29 -07:00
Nikolaj Bjorner 45fdb95f53 fix performance for model construction, recognize concats of values as a value for pre-processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-23 17:23:57 -07:00
Nikolaj Bjorner 55956df8d8 remove critical sections that are now redundant due to different cancellation model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-13 12:10:14 -04:00
Nikolaj Bjorner 5db84575f6 fix regression in o7.smt2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-08 22:27:47 -08:00
Nikolaj Bjorner 5994c5a948 fix partial model tracking over cancellation/exceptions, reported by August Shi. Fix regression test for fp-to-real, reset the pre-processor in inc_sat_solver on exceptions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-07 16:42:29 -08:00
Nikolaj Bjorner 2a65503235 fix #425 and report from Patrick Trentin of same bug in preprocessing soft constraints that are simplified to true/false
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-02-04 22:35:02 +00:00
Nikolaj Bjorner 85d44c5d66 fix axioms for extract, add extensionality checking for shared variables, convert exceptions to unknown status per #419
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-18 11:09:41 +05:30
Nikolaj Bjorner 32b6b2da44 moving to resource managed cancellation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 13:13:11 -08:00
Nuno Lopes b26735a887 fix build with gcc
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-11-22 11:24:30 +00:00
Nikolaj Bjorner 0592e76574 Enhancement for Valentin #332
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-19 10:26:01 -08:00
Nikolaj Bjorner c58e640563 extract labels for optimal model. Fix to #325
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-18 14:53:08 -08:00
Nikolaj Bjorner 1575dd06a7 expose labels from optimization. Move printing of objectives to after sat/unsat. Cahnge format to something that is somewhat related to how other output is created. Issue #325.
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-18 09:42:12 -08:00
Nikolaj Bjorner 0a26bcf14c ensure unique symbols when MaxSAT problems are extracted from linear objectives such that multiple objectives can be supported. Fixes issue #308
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-13 15:12:08 -05:00
Nikolaj Bjorner 2865f60f8c deal with case of unsatisfiable context and bit-vector objectives that are not normalized to maxsmt. Issue #304
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-11 11:39:34 -05:00
Nikolaj Bjorner 7838213675 eliminate to_real coersions to make mixed integer problems easier to digest. Issue #277
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-10-30 15:12:21 -07:00
Nikolaj Bjorner 9b3e242990 adding rlimit resource limit facility to provide platform and architecture independent method for canceling activities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-28 13:37:59 -07:00
Nikolaj Bjorner b25e8e2288 tune lexicographic products, avoid push/pop and ensure correction sets are not used for multiple objectives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-13 16:00:45 +02:00
Nikolaj Bjorner da0c12cdba move display method to before first SAT call
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-21 18:29:36 -07:00
Nikolaj Bjorner a9807878ea reworking pd-maxres
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-20 12:20:30 -07:00
Nikolaj Bjorner e3cb0e2d8b reworking pd-maxres
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-20 12:06:27 -07:00
Nikolaj Bjorner 980e74b4ff add tactic to recognize small discrete domains and convert them into bit-vectors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-20 06:39:11 -07:00
Nikolaj Bjorner eb5af100bd adding optimize bindings for ML, adding get_reason_unknown to optimize, mentioned in pull request issue #188, second edition
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-09 17:49:20 +02:00
Nikolaj Bjorner aa431bb67f ensure pb on lex > 1 constraints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-08 14:10:11 +02:00
Nikolaj Bjorner a3c43c34fb change default behavior of solver pretty printer to include declarations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-06 18:57:11 +02:00
Nikolaj Bjorner f96c0b6963 fixes #186, remove ite-lifting from opt_context to detect weighted maxsat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-06 11:52:59 +02:00
Nikolaj Bjorner 77c8e5b0a0 add model on unknown, to address issue #139
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-23 14:45:52 +02:00
Nikolaj Bjorner 564da787fb add count of memory allocations and way to limit allocations globally. Fix purification in nlsat_smt to fix regressions on QF_UFNRA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-22 07:45:40 +02:00
Nikolaj Bjorner d06207f072 remove ite terms from objectives to synchronize values in tableau with objective value. Fixes part of (three repros) from issue #120
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-06-02 10:38:22 -07:00
Nikolaj Bjorner 1714182c38 Merge branch 'unstable' of https://github.com/Z3Prover/z3 into unstable 2015-05-29 11:08:25 -07:00
Nikolaj Bjorner a2448be0cd print pareto model in check-sat too
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-05-29 08:55:44 -07:00
Nikolaj Bjorner ed7e0e11a8 n/a
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-05-28 20:55:13 -07:00
Nuno Lopes 6c22edc988 fix assorted compiler warnings
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-05-16 11:44:58 +01:00
Nikolaj Bjorner a0f0b53686 fixes to #52, #53
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-04-28 14:48:59 -07:00
Nikolaj Bjorner e944f89505 fix bug introduced when clearing state between calls to Pareto/Box
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-04-02 02:36:01 -07:00
Nikolaj Bjorner fc36d861a7 update default to maxres for MaxSAT, reset pareto and box state on every constraint update
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-04-01 19:32:50 -07:00
Nikolaj Bjorner f8d04118d8 switch models for multiple box objectives. Feature request at codeplex issue 194, George Karpenov. Usage model is same as Pareto fronts you call check-sat multiple times until retrieving unsat
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-01 16:21:56 -07:00
nikolajbjorner fbf8289394 probe also hard constraints before enabling SAT solver. Bug reported by Zvonimir Pavlinovic
Signed-off-by: nikolajbjorner <nbjorner@microsoft.com>
2015-02-24 14:02:23 -08:00
Nikolaj Bjorner c3232693f0 use PB solver instead of full arithmetic for bouding Pareto fronts so that difference logic theory isn't broken. Codeplex issue 175
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-02-22 09:46:21 -08:00
Nikolaj Bjorner 761c7d9a40 adding annotation to logging to show number of columns and rows, adding dual propagation sketch
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-25 04:01:18 -08:00
Nikolaj Bjorner 552cbd840f adding soft-assertions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-23 13:06:11 -08:00
Nikolaj Bjorner e24db56650 integrating new integer primal loop
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-20 16:38:45 -08:00
Nikolaj Bjorner ef57e4abe5 extract theory symbols from Boolean objectives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-05 19:42:06 -08:00
Nikolaj Bjorner 21ea48bfd8 epsilon should have real type, reported by GeorgeKarpenkov, codeplex issue 145
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-15 16:27:35 -08:00
Nikolaj Bjorner f4dfb9ac82 Merge branch 'opt' of https://git01.codeplex.com/z3 into opt 2014-12-09 20:57:34 +01:00
Nikolaj Bjorner 08cb8b8de8 address divergence in the case of shared theory symbols. Codeplex issue 147, thanks to George Karpenkov
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-09 16:04:25 +01:00
Nikolaj Bjorner f71fd2afb5 disable unconstrained elimination pre-processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-11-24 16:17:22 -08:00
Nikolaj Bjorner 301f441801 bypass simplifier if (m_is_clausal) {
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-22 09:02:08 -07:00
Nikolaj Bjorner 630a3d6ea8 integrate bounds from original model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-15 15:11:31 -07:00
Nikolaj Bjorner 69a5634e7e adding symba designated strategy (back?) to optsmt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-14 16:33:55 -07:00
Nikolaj Bjorner f7f4feaa47 fix lex bug for maxres case
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-11 01:05:30 -07:00
Nikolaj Bjorner cb88968588 tuning maxres
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-02 17:10:51 -07:00
Nikolaj Bjorner 0b1c180808 fix lexicographic product for MaxSMT
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-01 13:49:23 -07:00
Nikolaj Bjorner 08dcd51594 fix bugs in incremental operation of sat solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-27 12:04:54 -07:00
Nikolaj Bjorner e6725b2344 merge unstable into opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-26 12:12:24 -07:00
Nikolaj Bjorner 73070585b8 fix bug in core generation in legacy core: it ignores complementary literals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-14 13:06:01 -07:00
Nikolaj Bjorner a96fa0c555 remove deprecated maxsat solvers, adjust values inline
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-14 11:55:47 -07:00
Nikolaj Bjorner 019ff77613 fix sorting network bug, add network compilation,...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-11 18:47:21 -07:00
Nikolaj Bjorner 72f09e4729 better verbose pretty printing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-09 16:57:43 -07:00