3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-18 06:39:02 +00:00
Commit graph

448 commits

Author SHA1 Message Date
Nikolaj Bjorner a617eac010 enable bounding for various domains
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-06 19:36:12 -08:00
Nikolaj Bjorner 437a545c3b fix pretty printer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-06 13:12:35 -08:00
Nikolaj Bjorner 4d6aa1a0f3 add to_string and get_help methods to optimize API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-06 11:34:41 -08:00
Anh-Dung Phan d38e2b9b78 Expose objective indices to .NET API 2013-12-05 17:30:40 -08:00
Nikolaj Bjorner 192ce11ca6 change model binding time
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-05 11:42:04 -08:00
Nikolaj Bjorner 56c4fa8f6d expose models, working on network flow
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-04 17:39:54 -08:00
Nikolaj Bjorner b980a15177 fix leak by commenting out probe experiment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-04 13:02:49 -08:00
Nikolaj Bjorner e3fe80fd4d add .NET interface and finish C interface for optimization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-03 20:20:24 -08:00
Nikolaj Bjorner 9e2908c3f5 exposing lower/upper
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-03 17:46:52 -08:00
Nikolaj Bjorner 838a32206c adjust parsing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-03 14:10:07 -08:00
Nikolaj Bjorner 18815e3e53 reorganizing input
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-03 13:36:25 -08:00
Nikolaj Bjorner 51704b7b95 tweaking input processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-03 08:51:46 -08:00
Nikolaj Bjorner 03f5020d0b Nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-02 22:06:15 -08:00
Nikolaj Bjorner af5d989d6c change verbosity level
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-02 21:51:20 -08:00
Nikolaj Bjorner c14c778735 debugging multi-objective interface and pb revisions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-02 14:30:17 -08:00
Nikolaj Bjorner faa59ba7f9 debugging multi-objective interface and pb revisions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-02 14:14:44 -08:00
Nikolaj Bjorner 191efbb72f use expression structure for objectives instead of custom s-expression
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-02 13:00:51 -08:00
Nikolaj Bjorner a016caa5d8 add expression conversion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-02 09:47:59 -08:00
Anh-Dung Phan 5ed8a48ac2 Add push/pop to box optimization 2013-11-26 14:16:59 -08:00
Anh-Dung Phan 4aa9c742ab Revise optimize commands 2013-11-26 12:54:18 -08:00
Anh-Dung Phan dbc791d385 Reorganize combination of objectives 2013-11-26 09:20:11 +01:00
Anh-Dung Phan 87a2b99091 Clean up 2013-11-25 12:16:34 -08:00
Nikolaj Bjorner 2ff51e9a60 move model_evaluator from pdr to model, call it model_implicant
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-23 21:33:35 +01:00
Nikolaj Bjorner 97dfb6d521 moving to rational coefficients
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-21 15:55:08 -08:00
Nikolaj Bjorner ee0abfbfe9 rename card->pb
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-18 21:25:02 -08:00
Nikolaj Bjorner 2b2d0e155c debugged new pb solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-18 18:03:49 -08:00
Nikolaj Bjorner 86e22c1186 add validation option
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-18 09:44:20 -08:00
Nikolaj Bjorner 9734bab205 pb theory
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-17 21:10:15 -08:00
Anh-Dung Phan 761c95129b Merge branch 'opt' of https://git01.codeplex.com/z3 into opt 2013-11-15 16:59:01 -08:00
Anh-Dung Phan c837f62863 Use quick explain for unsat core in Fu Malik algorithm by default 2013-11-15 16:58:42 -08:00
Nikolaj Bjorner 314f03c12c started new PB solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-15 16:44:08 -08:00
Anh-Dung Phan 074e851d49 Display Fu Malik statistics 2013-11-15 12:58:11 -08:00
Anh-Dung Phan 0acf331ed1 Merge conflicts 2013-11-14 19:07:23 -08:00
Anh-Dung Phan 4be11f24e1 Instrument fu_malik to use the new SAT solver (WIP) 2013-11-14 19:02:15 -08:00
Nikolaj Bjorner e034331f2e working on pb solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-14 18:04:55 -08:00
Nikolaj Bjorner 06ae0db116 working on pb solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-14 18:04:05 -08:00
Anh-Dung Phan d729e89a7b Fix a minor bug on cardinality solver 2013-11-14 12:36:39 -08:00
Anh-Dung Phan 5921628f53 Dump opt_solver checksat calls for profiling 2013-11-13 18:46:18 -08:00
Nikolaj Bjorner d1937b2032 add PB operators to C-based API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-13 17:09:10 -08:00
Anh-Dung Phan 64daa2977d Fix termination conditions on core_maxsat 2013-11-12 16:14:21 -08:00
Nikolaj Bjorner 293a97bdfc working on core-maxsat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-09 15:54:38 -08:00
Nikolaj Bjorner 2349a0fcdd adding core-based max-sat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-09 12:35:20 -08:00
Nikolaj Bjorner dc78da4873 case analysis for commit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 23:29:31 -08:00
Nikolaj Bjorner ba05f79415 bug fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 22:40:43 -08:00
Nikolaj Bjorner b573b94f84 nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 21:59:38 -08:00
Nikolaj Bjorner 21058c38fd fix bounds for weighted maxsmt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 21:26:05 -08:00
Nikolaj Bjorner 6e1c186017 enable answer generation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 20:55:01 -08:00
Nikolaj Bjorner 816029c862 missing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 20:04:30 -08:00
Nikolaj Bjorner c6c7093a4c make max-smt solvers generic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 18:22:07 -08:00
Nikolaj Bjorner 9f53a4aa18 working on supporting multiple max-sat objectives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 16:54:34 -08:00
Nikolaj Bjorner f350efffc7 working on pareto and upper/lower bound facilities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 13:52:27 -08:00
Nikolaj Bjorner 6caee5e3ca more refactoring
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 13:16:10 -08:00
Nikolaj Bjorner 29cc9025cb renaming to optsmt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 12:41:05 -08:00
Nikolaj Bjorner 33be06c6dc continued re-factoring
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 09:00:24 -08:00
Nikolaj Bjorner 401fced400 separate out file for objectives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-07 18:09:44 -08:00
Anh-Dung Phan 034b33b6da Remove m_final from spanning tree representation 2013-11-06 13:30:29 -08:00
Nikolaj Bjorner 9467806a5c debugging cardinality theory
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-05 09:39:28 -08:00
Nikolaj Bjorner 2853b322ca sketch cardinality plugin module
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-05 01:30:34 -08:00
Nikolaj Bjorner acb26d0cf9 review of network flow
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-04 16:00:50 -08:00
Nikolaj Bjorner 89989627d0 add blast method for ite terms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-04 13:33:02 -08:00
Nikolaj Bjorner 883018b405 v1 of conflict driven optimization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-03 19:27:06 -08:00
Nikolaj Bjorner a26bd69a5e missing new files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-03 14:55:48 -08:00
Nikolaj Bjorner c0de1e34ac working on upper bound optimziation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-03 14:54:42 -08:00
Nikolaj Bjorner e5698119d7 debugging infinite upper bound checking
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-01 17:27:24 -07:00
Nikolaj Bjorner 3c6f0c737a debugging infinite upper bound checking
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-01 17:26:27 -07:00
Nikolaj Bjorner 2a907ea52a fix objective value regression in simplex maximation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-01 12:45:26 -07:00
Nikolaj Bjorner 87141f4cb3 fix bugs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-31 22:09:52 -07:00
Nikolaj Bjorner 72e82532b2 enabling upper bound test
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-31 09:43:15 -07:00
Nikolaj Bjorner 637b63cbe1 preparing for inf extension of arithmetic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-31 02:15:08 -07:00
Nikolaj Bjorner 5106c74b3e preparing for inf extension of arithmetic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-31 02:13:24 -07:00
Nikolaj Bjorner 0b65aa83e8 preparing for inf extension of arithmetic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-31 02:02:37 -07:00
Nikolaj Bjorner acc7aa1636 use iterative weighted algorithm
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-31 00:57:36 -07:00
Nikolaj Bjorner 86151b4d52 dealing with cancel
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-30 13:38:47 -07:00
Nikolaj Bjorner 946b888b32 adding timeout, parameters, statistics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-30 13:24:21 -07:00
Nikolaj Bjorner 9fc84f1389 adding timeout, parameters, statistics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-30 13:23:04 -07:00
Nikolaj Bjorner 42cbbe830e working on wmaxsmt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-30 01:28:50 -07:00
Nikolaj Bjorner 6302d1b7db wmax nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-30 01:18:10 -07:00
Nikolaj Bjorner f5e6a18015 working on wmaxsmt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-29 21:16:02 -07:00
Nikolaj Bjorner bc44bcad10 push blocking code to optimizer context
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-29 20:26:54 -07:00
Nikolaj Bjorner 96562962fa working on wmaxsat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-29 17:40:37 -07:00
Nikolaj Bjorner 1878d64b02 working on weighted maxsat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-28 21:32:41 -07:00
Nikolaj Bjorner d30f183476 working on weighted maxsat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-28 21:30:57 -07:00
Nikolaj Bjorner d78d22deb6 working on weighted max smt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-28 17:13:23 -07:00
Anh-Dung Phan 6919f335a1 Sketch a skeleton of Difference Logic optimizer 2013-10-22 16:28:03 -07:00
Nikolaj Bjorner 36d7948399 fixing optimizer for multi-objectives and epsilon
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-22 10:36:13 +08:00
Anh-Dung Phan 3441fc2942 A few changes based on previous reviews
Tested the optimization procedure with:
- unbounded objectives
- bounded with rational solutions
- bounded with irrational solutions
2013-10-21 17:25:34 -07:00
Nikolaj Bjorner 3dd72f8f16 more updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-19 17:43:59 -07:00
Nikolaj Bjorner 3996f58a8e tidy & todo notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-19 12:22:56 -07:00
Phan Anh Dung 53f78f7d19 Replace the use of optional<rational> by inf_eps_rational<rational>
Also handle composite objectives correctly.
2013-10-19 06:03:21 +02:00
Anh-Dung Phan a44044fb15 A rudimentary version of MathSAT optimization
Remarks:
(1) The core procedure accepts maximization only
(2) Add lazy initialization to min_maximize_cmd
(3) The procedure isn't working with composite objective yet.
2013-10-18 18:00:24 -07:00
Nikolaj Bjorner 898609a3ef cleanup macro usage
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-17 20:50:33 -07:00
Nikolaj Bjorner cfedbe3dfd add opt_solver layer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-17 17:33:43 -07:00
Anh-Dung Phan f4e2b23238 Create placeholders to optimization methods 2013-10-16 17:56:35 -07:00
Anh-Dung Phan 3da47a280e Complete Fu & Malik MAXSAT implementation
Mistakes:
(1) ast_manager shouldn't be replicated.
(2) assumptions should be used to compare with unsat cores
2013-10-16 17:55:53 -07:00
Nikolaj Bjorner 8ae0b06912 fill in details on max sat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-16 02:07:30 -07:00
Nikolaj Bjorner 45eda6c6ad Fu&Malik v1
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-15 17:03:52 -07:00
Anh-Dung Phan ac97a12bb8 Create callbacks for min_maximize_cmd
Enable VS_PROJ = true for temporary use
2013-10-15 11:52:27 -07:00
Nikolaj Bjorner 726f66a77c initial opt commands
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-10-14 17:08:24 -07:00