3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-13 12:28:44 +00:00
Commit graph

15580 commits

Author SHA1 Message Date
Lev Nachmanson 536f4f84bb Merge branch 'master' of https://github.com/z3prover/z3 2023-12-12 15:23:43 -10:00
Nikolaj Bjorner 70d4f32ffd port updates from poly/polysat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-09 13:00:43 -08:00
Nikolaj Bjorner e580c384b8 import updates to rational from polysat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-09 12:46:06 -08:00
Nikolaj Bjorner 575538d325 follow error message to put dependencies in setup args
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-08 18:38:29 -08:00
Nikolaj Bjorner 4123405d17 add version
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-08 15:50:09 -08:00
Nikolaj Bjorner 6282f40255 try add name to project
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-08 14:57:45 -08:00
Nikolaj Bjorner 7e716f7cfe try fix suggested in #7041
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-08 13:12:05 -08:00
Nikolaj Bjorner 8e26c2af17 fix #7049
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-08 13:05:21 -08:00
Nikolaj Bjorner 6cd619d377 kludge to fixup osver in python for Mac
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-08 11:39:55 -08:00
Nikolaj Bjorner 4d1d067d42 fix divergence reported by Guido Martinez 2023-12-07 13:34:35 -08:00
Nikolaj Bjorner 1d6616afac make var-queue a template
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-05 15:41:35 -08:00
Nikolaj Bjorner 111ce01702 update path reference to readme 2023-12-05 13:47:05 -08:00
Nikolaj Bjorner d566eb3df7 include readme in package
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-05 13:04:25 -08:00
Nikolaj Bjorner 76c05f171a specify a readme file with the nuget package
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-05 12:32:30 -08:00
Asger Hautop Drewsen a9513c1998
Improve BoolRef addition (#7045) 2023-12-05 09:12:25 -08:00
Asger Hautop Drewsen 764f0d54a4
Overload xor operator for BoolRef (#7043) 2023-12-05 07:48:57 -08:00
Nikolaj Bjorner 4a9b38e531 clean up nla_grobner 2023-12-04 17:08:17 -08:00
Nikolaj Bjorner 84a7a79e90 fix #7037 2023-12-04 17:08:01 -08:00
Lev Nachmanson fc23a498c4 a simple version of choosing a column for gomory cut 2023-12-04 15:06:50 -10:00
Nikolaj Bjorner f98b42ae42 install importlib-resources for ubuntu doc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-04 10:33:29 -08:00
Nikolaj Bjorner de75692cb0 install importlib-resources for ubuntu doc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-04 10:32:02 -08:00
Nikolaj Bjorner f7415bb677 install importlib-resources for ubuntu doc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-04 10:32:02 -08:00
Nikolaj Bjorner 17913f3ec8 remove braces 2023-12-04 10:32:02 -08:00
Andrey Andreyevich Bienkowski 18f14921ba
Clarify optimizer guarantees (#7030)
* Clarify optimizer guarantees (python)

* Clarify optimization guarantees (OCaml)

* Clarify optimizer guarantees (java)

* Clarify optimizer guarantees (.net)
2023-12-04 09:32:26 -08:00
Christoph M. Wintersteiger 6910a4e18c
Fix to_fp_signed (#7034) 2023-12-03 16:38:06 -08:00
Nikolaj Bjorner ea3628e50b remove hoist functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-03 16:28:43 -08:00
Nikolaj Bjorner bd8bed1759 handle ac-op in legacy special relations procedure by adding warning
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-03 12:55:37 -08:00
Nikolaj Bjorner 1b1ebaa3b0 minor simplification during internalization 2023-12-03 12:43:39 -08:00
Nikolaj Bjorner 36725383d3 minor simplification of terms during internalization. 2023-12-03 12:43:14 -08:00
Nikolaj Bjorner f06e07ad0a fix cone of influence computation for terms with nested variables
exposed by #7027, but generally missing. It is less likely to be exposed if input is normalized by distributing multiplication over addition.
2023-12-03 12:42:42 -08:00
Nikolaj Bjorner 25dd29907b refine no-effect predicate to include value of ret 2023-12-03 12:41:21 -08:00
Nikolaj Bjorner 9cc2ce42f7 #7027
fix lossy function declaration inclusion functionality exposed when fixing a bug for incomplete model generation.
2023-12-03 11:14:18 -08:00
Nikolaj Bjorner a8f3396b24 #7033 2023-12-03 10:34:16 -08:00
Nikolaj Bjorner 965bee5801 fix build 2023-12-02 19:52:59 -08:00
Nikolaj Bjorner 1de25ed09c pending files 2023-12-02 19:43:51 -08:00
Nikolaj Bjorner b22daa9816 missing header 2023-12-02 19:39:43 -08:00
Nikolaj Bjorner 362d299a5c #7027 2023-12-02 19:34:36 -08:00
Nikolaj Bjorner ba8d8f0af7 Disable hoist entirely, it is bad on QF_LIA and does not help on other observed cases 2023-12-02 15:40:47 -08:00
Nikolaj Bjorner 585d027668 remove assert #7032
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-02 14:12:41 -08:00
Nikolaj Bjorner 331507c4cd #7027
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-02 12:05:06 -08:00
Nikolaj Bjorner 7eab26e3ef try with missed bounds 2023-12-02 10:48:40 -08:00
Nikolaj Bjorner 5c1e7f7112 fix #7029 2023-12-02 10:48:40 -08:00
Nikolaj Bjorner a15a7cee7b touch
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-01 14:13:05 -08:00
Nikolaj Bjorner faf14012ba Regressions reported by Guido 2023-12-01 13:32:13 -08:00
Nikolaj Bjorner 99e2794a6d update output
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-30 17:20:43 -08:00
Nikolaj Bjorner 8a0dec1a4b fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-30 14:08:29 -08:00
Nikolaj Bjorner b52fd8d954 add EUF plugin framework.
plugin setting allows adding equality saturation within the E-graph propagation without involving externalizing theory solver dispatch. It makes equality saturation independent of SAT integration.
Add a special relation operator to support ad-hoc AC symbols.
2023-11-30 13:58:30 -08:00
Lev Nachmanson 5784c2da79 remove an unnecessary if 2023-11-30 08:59:05 -10:00
Alper Altuntas d540d881ef
Add __enter__ and __exit__ methods to Solver class (#7025)
To enable the usage of the with statement for the Solver class
instances, this commit adds __enter__ and __exit__ methods.
The with statement should offer a more concise and safer
alternative to explicit usage of push() and pop() methods.
2023-11-30 08:35:08 -08:00
Nikolaj Bjorner 26440ed3d8 deal with ubuntu/clang warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-29 15:45:19 -08:00
Nikolaj Bjorner e9abdbb7a4 fix #7011
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-29 15:08:08 -08:00
Nikolaj Bjorner 9efe6f6afa fix regression in fix for #7006
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-29 14:54:54 -08:00
Nikolaj Bjorner faa2d8ac6c re-enable delayed literal propagation 2023-11-29 14:00:37 -08:00
Nikolaj Bjorner 2f01b5b567 re-enable delayed literal propagation 2023-11-29 14:00:17 -08:00
Nikolaj Bjorner 4289cfac8d revert some fixes to euf
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-29 13:47:59 -08:00
Nikolaj Bjorner 41a3196c89 fix #7024 2023-11-29 13:35:30 -08:00
Nikolaj Bjorner d469c1054e remove separate to_add_literal queue 2023-11-29 12:45:43 -08:00
Nikolaj Bjorner e972eb33b2 #6523 - contains_ptr bug regarding etable reinserts 2023-11-29 10:44:36 -08:00
Nikolaj Bjorner 79bbbf76d0 fix #7006 2023-11-28 15:06:27 -08:00
Nikolaj Bjorner 8179f8b5d7 fix #7017 2023-11-28 14:32:56 -08:00
Nikolaj Bjorner f36f21fa8c add comments for API versions of bit-vector overflow/underflow checks for #7011 2023-11-28 13:36:41 -08:00
Nikolaj Bjorner f90b10a0c8 fix #7012
omitting constructor, simplifying operator definitions, omitting incorrect type annotations
2023-11-28 13:26:10 -08:00
Nikolaj Bjorner 69f9640fdf fix #7018 2023-11-28 13:14:44 -08:00
Bruce Mitchener 9d1ceab1f2
cmake: Use FindPython3. (#7019)
`FindPythonInterp` has been deprecated for a long time and is more
verbal about that deprecation now.

The build system no longer uses `PYTHON_EXECUTABLE` but instead uses
`Python3_EXECUTABLE`.
2023-11-27 11:20:21 +01:00
Bruce Mitchener b5e8f59eae
mbp: term: Fix reorder ctor warning. (#7016)
Initialize members in same order they are defined.
2023-11-26 16:34:08 +01:00
Bruce Mitchener 2354998cd2
z3.h: Don't include stdio.h (#7014)
This doesn't seem to actually be used or needed here.
2023-11-24 16:46:32 +01:00
Christoph M. Wintersteiger 16753e43f1
Add accessors for RCF numeral internals (#7013) 2023-11-23 17:54:23 +01:00
Nikolaj Bjorner 9382b96a32 add API to access symbols associated with quantifiers 2023-11-19 16:30:09 -08:00
Nikolaj Bjorner d272acc3ac fix crash when api_solver sets reset_tracked_assertions 2023-11-19 12:48:33 -08:00
Nikolaj Bjorner ac105b7d8c remove unused code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-19 11:47:00 -08:00
Nikolaj Bjorner 4350bd77ac check cancel flag to avoid unsound conflicts 2023-11-19 11:43:52 -08:00
Nikolaj Bjorner 32f8705ac3 #7001 - align is_numeral without to behavior if is_numeral with return numeral. 2023-11-19 10:43:14 -08:00
Nikolaj Bjorner 35bc522dae #7003
minor tweaks to gomory and reset n3 within loop (but the entire function is dead code).
2023-11-19 09:59:44 -08:00
Nikolaj Bjorner 924c296704 add logging 2023-11-18 12:30:40 -08:00
Nikolaj Bjorner 5bec982cc5 chores in theory_lra 2023-11-18 10:05:26 -08:00
Nikolaj Bjorner e40b8a2d13 household chores in legacy arithmetic solver 2023-11-18 09:56:06 -08:00
Nikolaj Bjorner 5ab1afe5c2 expose enode pp convenciences 2023-11-18 09:53:20 -08:00
Nikolaj Bjorner 1710fe4927 use iterator shortcut 2023-11-18 09:52:58 -08:00
Nikolaj Bjorner a9f9d3ddf4 build fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-17 10:15:01 -08:00
Nikolaj Bjorner b9455c3692 #6999 deal with implicit assumptions, more robust pattern matching
The code is making some assumptions that arrays are 1-dimensional. This is not generally true.
Introducing pattern matching to ensure the assumption is met.
Avoid get_arg(..) especially when there is an approach based on pattern matching recognizers.
2023-11-17 10:06:20 -08:00
Nikolaj Bjorner 6d6d6b8ed0 build issue
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-17 09:20:17 -08:00
Hari Govind V K f94a475da3
Qel fixes (#6999)
* dont use qel for sequences. fix #6950

* handle negation of read-write. fix #6991

* handle neg-peq terms produced by distinct. fix #6889

* dbg print
2023-11-17 09:18:04 -08:00
Nikolaj Bjorner 1b6c7d6541 fix #6996 2023-11-16 18:58:24 -08:00
Christoph M. Wintersteiger 36382ccb57
Fix memory and concurrency issues in OCaml API (#6992)
* Fix memory and concurrency issues in OCaml API

* Undo locking changes
2023-11-16 18:28:12 -08:00
Nikolaj Bjorner 5b9fdcf462 fix #6997
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-15 18:08:48 -08:00
Nikolaj Bjorner f1a39b8884 add comment regarding usage model for flush_objects() to relate with pr #6992
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-15 11:54:59 -08:00
Christoph M. Wintersteiger 3baaba5edd
Revert unsound NaN constraints in theory_fpa (#6993) 2023-11-14 14:28:30 -08:00
Nikolaj Bjorner 37b283fab9 use python3 in nightly
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-14 08:54:10 -08:00
Nikolaj Bjorner ad2107f079 fix #6978 2023-11-14 08:45:22 -08:00
Nikolaj Bjorner 4406011881 fix #6984 2023-11-14 07:40:32 -08:00
Nikolaj Bjorner 3c2e97ddb6 fix #6988 2023-11-14 07:30:32 -08:00
Nikolaj Bjorner c2610cb37c #6523
malformed models on giveup status
2023-11-13 14:32:53 -08:00
Nikolaj Bjorner 8a4e857294 #6523
regressions from changes inside math/lp/int_solver
2023-11-13 14:28:03 -08:00
Nikolaj Bjorner 3de5af3cb0 fix bug in bound simplification in Gomory for mixed integer linear cuts, enable fixed variable redution after bugfix, add notes that rewriting bounds does not work
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-10 16:39:04 +01:00
EyalBrilling aa9c7912dc
fixed possible undefined variable assigment (#6985) 2023-11-10 11:36:24 +01:00
Nikolaj Bjorner 0556059bdf change to expr_ref to allow trying simplification 2023-11-08 13:50:48 +01:00
Nikolaj Bjorner bd4d580b17 fix #6986 2023-11-08 13:49:30 +01:00
Nikolaj Bjorner e6385f8c85 disable bound validation in debug mode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-11-07 20:49:26 +01:00
Nikolaj Bjorner 3d99ed9dd4 Gomory cut / branch and bound improvements
Improve fairness of cut generation by switching to find_infeasible_int_var with cascading priorities, allow stronger cuts by inlining terms.
2023-11-07 19:59:02 +01:00
Nikolaj Bjorner 9f0b3cdc25 Add utility to expand sub-terms 2023-11-07 19:58:32 +01:00