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

13775 commits

Author SHA1 Message Date
Nikolaj Bjorner 6422b783b2 fix mux extraction to check for top-level assertion 2022-01-31 11:57:16 -08:00
Nikolaj Bjorner 62bb234251 expose extract roots as separate 2022-01-31 11:56:44 -08:00
Nikolaj Bjorner a326ad4cd9 flag incomplete on lambdas #5803 2022-01-31 11:54:06 -08:00
Nikolaj Bjorner a189ca8b60 truncation directive #5805 2022-01-31 10:50:46 -08:00
Nikolaj Bjorner 773e829c58 #5804 2022-01-31 10:16:09 -08:00
Nikolaj Bjorner 913b90f7aa fix #5802
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-30 10:42:34 -08:00
Nikolaj Bjorner 2551631957 mul overflow #5797 2022-01-29 09:15:38 -08:00
Nikolaj Bjorner 5e81c1220c #5797 probably still wrong wrt underflow. 2022-01-27 12:48:15 -08:00
Nikolaj Bjorner 9e5b6e0c9c #5778 2022-01-27 12:12:58 -08:00
Nikolaj Bjorner 4da930b490 #5794
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-27 10:50:48 -08:00
Nikolaj Bjorner a621041308 fix #5795
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-27 10:45:38 -08:00
Nikolaj Bjorner 461e71017d fix #5792 again
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-26 15:54:44 -08:00
Nikolaj Bjorner c6539deb61 fixing null check
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-25 17:25:42 +01:00
Nikolaj Bjorner 435f79eab0 tup
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-25 16:40:55 +01:00
Nikolaj Bjorner 9294b2ceb2 created
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-25 16:33:23 +01:00
Nikolaj Bjorner 3de9d37772 fix overrides for created_eh
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-25 16:24:08 +01:00
Nikolaj Bjorner bf6454dccc throw error if created-eh has not been registered
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-25 13:01:57 +01:00
Nikolaj Bjorner ea6827505e add missing callback to m_created_eh
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-25 10:13:09 +01:00
Nikolaj Bjorner f639a7e1bc add marker for top-level expression in rule. 2022-01-24 15:20:44 +01:00
Nikolaj Bjorner 61ab72b6a3 fix #4869 2022-01-24 15:14:47 +01:00
Nikolaj Bjorner 3b8c0b7ae6 fix #5791 2022-01-24 15:11:24 +01:00
Nikolaj Bjorner 20f9814939 fix #5789
fix incorrect constant folding
2022-01-24 09:42:14 +01:00
Nikolaj Bjorner d02235fe08 #5778
not really specific to euf.true, but about rem(x,0) semantics that should align with mod semantics. It also reproduces without sat.euf=true.
2022-01-22 16:16:48 +01:00
Hennadii Chernyshchyk 85f6456655
Add missing constness (#5787) 2022-01-21 15:32:25 +01:00
Nikolaj Bjorner 9969809745 #5778 2022-01-21 09:40:06 +01:00
Nikolaj Bjorner a1f7676c81 remove assertion - literals could be assigned but propagation incomplete
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-21 03:10:41 +01:00
Nikolaj Bjorner 007af9cb8a fix #5784
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-21 03:08:03 +01:00
Nikolaj Bjorner 17280846f8 added comments to explain #5781 2022-01-21 01:40:31 +01:00
Nikolaj Bjorner b1ff4bc24a no normalize
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-20 19:21:19 +01:00
Nikolaj Bjorner 75a81af426 fix #5786
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-20 19:18:23 +01:00
Nikolaj Bjorner af9ae35984 term
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-20 14:43:16 +01:00
Nikolaj Bjorner c527fda0b6 term
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-20 14:41:27 +01:00
Nikolaj Bjorner f1a302bba7 term
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-20 14:38:34 +01:00
Nikolaj Bjorner 7a8c969033 ensure b_internalized
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-20 13:27:23 +01:00
Nikolaj Bjorner a3d4e9a4e8 adding created to sat/smt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-20 11:48:27 +01:00
Nikolaj Bjorner c00591daaf finish is-fixed
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-19 16:28:34 +01:00
Nikolaj Bjorner e5767bf2b8 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-19 15:19:07 +01:00
Nikolaj Bjorner 0f03ef4ab0 for Clemens: ensure fixed values are propagated after registration
Also allow to register expressions that the rewriter changes to ensure they get picked up.
2022-01-19 14:38:11 +01:00
Nikolaj Bjorner 5b0389615b #5780 2022-01-19 10:10:36 +01:00
Nikolaj Bjorner 06feb71eb1 fix bug in root setting exposed by incremental mode pb_solver 2022-01-18 10:55:27 +01:00
Nikolaj Bjorner 36cfb88f5f add preliminary stub to handle closure types 2022-01-17 22:01:31 -08:00
Nikolaj Bjorner d777306bb6 #5778 2022-01-17 10:43:15 -08:00
Nikolaj Bjorner fcc9f379e7 #5778 2022-01-16 19:36:00 -08:00
Nikolaj Bjorner a15da8f9ba #5778 2022-01-16 19:11:55 -08:00
Nikolaj Bjorner 637ddf9397 fix #5777
latest issue
2022-01-16 18:09:38 -08:00
Nikolaj Bjorner 0dd5a5e576 #5777 2022-01-16 17:46:08 -08:00
Nikolaj Bjorner a48d3fdbb1 #5777 2022-01-16 14:01:49 -08:00
Nikolaj Bjorner ea93345b75 #5777 2022-01-16 10:52:25 -08:00
Nikolaj Bjorner cd56d55e34 #5753 2022-01-16 09:31:16 -08:00
Nikolaj Bjorner bc9c6ad93d #5753 2022-01-15 18:01:31 -08:00
Nikolaj Bjorner 1b5f7cd9e5 na 2022-01-15 10:05:26 -08:00
Nikolaj Bjorner 17cfc1d034 #5753 2022-01-15 10:03:03 -08:00
Nikolaj Bjorner 74824ac901 #5753
get_antecedent has to be well-founded. It got broken when using eval during propagation and egraph explain during conflict resolution.
2022-01-15 09:35:25 -08:00
Nikolaj Bjorner d09abdf58e fix #5771
Missing congruence closure enforcement on auxiliary guard predicates.
It diverges but is sound.
2022-01-14 15:46:40 -08:00
Nikolaj Bjorner d5cc162fa7 bug in bounds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-13 15:42:23 -08:00
Nikolaj Bjorner 2363bfc132 internalize arithmetic sub-terms #5753 2022-01-13 15:34:04 -08:00
Nikolaj Bjorner e816946ddc handling unsimplified input 2022-01-13 14:40:46 -08:00
Nikolaj Bjorner b259f46f85 dependencies 2022-01-13 12:34:58 -08:00
Nikolaj Bjorner 4b6679e8e0 #5753 2022-01-13 12:19:54 -08:00
Nikolaj Bjorner 366cd9b16d missing pb cases 2022-01-12 14:50:40 -08:00
Nikolaj Bjorner dfe2b27f9a #5773 2022-01-12 13:28:15 -08:00
Nikolaj Bjorner 0720998bac #5753 2022-01-12 13:12:10 -08:00
Nikolaj Bjorner 10dc8d7313 #5753 2022-01-12 12:49:06 -08:00
Nikolaj Bjorner 56d3718cde add simplification with qe-lite as an option #5767
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-12 03:41:21 -08:00
Nikolaj Bjorner 08294d62e5 separate dependencies for qe_lite 2022-01-12 03:26:22 -08:00
Nikolaj Bjorner 2bcc814031 add macro to track closures declared in z3_api
This is to ease integration with external API wrappers that rely on accessing
information about type names that are used.
#5762
2022-01-12 02:47:39 -08:00
Nikolaj Bjorner e5eaea46aa ensure m_true is assigned #5753 2022-01-11 10:42:05 -08:00
Nikolaj Bjorner dbd5512d8c ensure enode without recursion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-11 08:35:57 -08:00
Nikolaj Bjorner 055732423c ensure enode without recursion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-11 08:35:25 -08:00
Nikolaj Bjorner 571a74c061 counting function applications #5766
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-10 14:51:25 -08:00
Nikolaj Bjorner 4cd818b578 #5766 2022-01-10 14:40:27 -08:00
Nikolaj Bjorner d3bc11dd3a bvs have to be expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-10 12:38:25 -08:00
Nikolaj Bjorner 21feefeac5 Add character access functions #5764 2022-01-10 12:33:58 -08:00
Kevin Gibbons 2b934b601d
Add WebAssembly/TypeScript bindings (#5762)
* Add TypeScript bindings

* mark Z3_eval_smtlib2_string as async
2022-01-09 17:16:38 -08:00
Nikolaj Bjorner f1bf660adc add case for abs (normally simplified, but not with default_tactic=smt). 2022-01-09 11:55:21 -08:00
Nikolaj Bjorner 671d071e54 #5753 2022-01-09 11:39:21 -08:00
Nikolaj Bjorner bf3c213fd3 #5753 2022-01-09 11:03:29 -08:00
Nikolaj Bjorner 90fd3d82fc enable propagation 2022-01-08 19:00:56 -08:00
Nadav Rotem 9f9543ef69
Fix unused variable warnings. (#5760)
This commit fixes a few cases of unused variables in release builds.
The commit uses the (void)xxx; syntax which is used in other parts of
the code.
2022-01-08 18:18:30 -08:00
Nikolaj Bjorner 36ed1ffac2 update name of artifact
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-08 15:13:46 -08:00
Nikolaj Bjorner ef481073b2 make static features avoid stack #5758 2022-01-08 11:20:18 -08:00
Nikolaj Bjorner 6013d5da47 #5755
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-07 14:05:06 -08:00
Nikolaj Bjorner 0bc8518cb5 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-07 11:53:27 -08:00
Nikolaj Bjorner 199daead50 remove Z3_bool_opt #5757
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-07 11:52:10 -08:00
Nikolaj Bjorner 7baa4f88b0 build failure 2022-01-06 15:17:57 -08:00
Nikolaj Bjorner 2be71cfc43 #5753 2022-01-06 15:17:37 -08:00
Nikolaj Bjorner 6a3fe514f0 build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-06 14:07:54 -08:00
Nikolaj Bjorner 592b1d7f65 #5752 2022-01-06 13:32:50 -08:00
Nikolaj Bjorner d14f00d61a with no last model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-06 13:02:13 -08:00
Nikolaj Bjorner dadda86bdc #5751 2022-01-06 11:43:17 -08:00
Nikolaj Bjorner 130a0c4aa0 resurrect infinitesimals from maximization function #5720
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-06 08:34:45 -08:00
Nikolaj Bjorner d7c7fbb8f1 setting roots breaks relevancy propagation 2022-01-05 21:16:25 -08:00
Nikolaj Bjorner bd8de964f7 more fixes on relevancy 2022-01-04 22:02:28 -08:00
Nikolaj Bjorner e943bee625 apply delcypher's todo
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-04 20:25:14 -08:00
Nikolaj Bjorner d1fb831030 relevancy overhaul 2022-01-04 16:03:31 -08:00
Nikolaj Bjorner 4a1975053f cleanup 2022-01-03 17:37:04 -08:00
Nikolaj Bjorner 614c66f1e2 missing relevancy propagation 2022-01-03 17:21:37 -08:00
Nikolaj Bjorner fc741cf018 rename module
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-03 14:23:22 -08:00
Nikolaj Bjorner a086f6218b na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-03 14:15:41 -08:00
Nikolaj Bjorner a2a5924e5c purge more 2022-01-03 14:14:09 -08:00
Nikolaj Bjorner 8e3185ffe3 remove dual solver approach
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-03 14:08:01 -08:00
Nikolaj Bjorner 1f964eea90 na 2022-01-03 11:12:28 -08:00
Nikolaj Bjorner 2944449884 #5641 2022-01-03 11:12:09 -08:00
Nikolaj Bjorner cf08cdff9c #5747 2022-01-03 08:54:54 -08:00
Nikolaj Bjorner a71aa113e0 #5641
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-02 19:36:17 -08:00
Nikolaj Bjorner 9cbec3b0ca #5641
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-02 19:15:23 -08:00
Nikolaj Bjorner 43e449a805 #5641 2022-01-02 17:53:26 -08:00
Nikolaj Bjorner d0fb3cba15 #5641 - projection that skips interpreted functions can violate model evaluation. 2022-01-02 17:45:43 -08:00
Nikolaj Bjorner 0ca5e7207e #5746 2022-01-02 11:35:55 -08:00
Nikolaj Bjorner e84ddb0d9a more #5746 2022-01-02 11:33:21 -08:00
Nikolaj Bjorner 88707f37e7 Better error reporting #5746 2022-01-02 11:31:50 -08:00
Nikolaj Bjorner 543c16c73e Trace unexpected exceptions in or-else code #5746 2022-01-02 10:22:51 -08:00
Nikolaj Bjorner 5cd1fe31fd propagate parent default not add parent default)
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-01 20:37:26 -08:00
Nikolaj Bjorner 8245935d41 #5641 add handlers for basic set operations to euf=true 2022-01-01 20:33:17 -08:00
Nikolaj Bjorner 9d3c8a6a2f na 2022-01-01 17:59:31 -08:00
Nikolaj Bjorner 42219204ed sketch replace_all 2022-01-01 17:39:37 -08:00
Nikolaj Bjorner 5672f5cc34 fix #5733 2022-01-01 16:40:48 -08:00
Nikolaj Bjorner 84f514a4f4 throttle ackerman on arrays 2022-01-01 15:33:33 -08:00
Nikolaj Bjorner a20b577b2f na 2022-01-01 11:26:38 -08:00
Nikolaj Bjorner ca18150c23 bypass append when src is empty
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-31 16:43:07 -08:00
Nikolaj Bjorner a44a46a514 fix #5745 2021-12-31 16:41:51 -08:00
Nikolaj Bjorner 9550321064 missed push lambdas 2021-12-31 16:33:06 -08:00
Nikolaj Bjorner 0ef0ed3b94 redoing arrays 2021-12-31 15:51:52 -08:00
Nikolaj Bjorner aa901c4e88 axiom solver improvements 2021-12-31 11:53:40 -08:00
Nikolaj Bjorner 79f0ceac4c na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-30 19:13:23 -08:00
Nikolaj Bjorner fc77345bec breaking change. Enforce append semantics everywhere for parameter updates #5744
Replace semantics doesn't work with assumptions made elsewhere in code.
The remedy is to apply append (override) semantics for parameter changes.
2021-12-30 19:11:14 -08:00
Nikolaj Bjorner e8833f4dac working on relevancy=3 2021-12-30 17:07:14 -08:00
Nikolaj Bjorner b87b464e69 set relevancy flag on enode 2021-12-29 17:57:28 -08:00
Nikolaj Bjorner a90b66134d make roots uniform for theory lemmas 2021-12-29 13:42:11 -08:00
Nikolaj Bjorner 69b4392210 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-29 13:04:31 -08:00
Nikolaj Bjorner f215b18e0e change registration mode for relevant_eh 2021-12-29 13:03:43 -08:00
Nikolaj Bjorner 1706f77b9e optimize propagation to only blocked literals 2021-12-28 18:53:37 -08:00
Nikolaj Bjorner 8ff8252e89 debug relevancy mode 2021-12-28 13:02:09 -08:00
Nikolaj Bjorner 743e56bda3 remove output
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-28 12:08:10 -08:00
Nikolaj Bjorner 5ed27a6c38 fix initialization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-28 12:06:56 -08:00
Nikolaj Bjorner 95e26aaad9 #5742
expose access to constructors/accessors/recognizers given datatype sort
2021-12-28 11:00:34 -08:00
Nikolaj Bjorner 28bce8f09c working on relevant 2021-12-28 11:00:02 -08:00
Nikolaj Bjorner 9527471967 build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-27 16:03:56 -08:00
Nikolaj Bjorner 6f1be09993 add direct and incremental relevancy propagator 2021-12-27 15:10:33 -08:00
Nikolaj Bjorner 42f206171d fix #5741 2021-12-27 15:10:09 -08:00
Nikolaj Bjorner d88f125818 build 2021-12-26 15:24:03 -08:00
Nikolaj Bjorner 0bd6725711 #5641
mark all literals duplicated in dual solver as external
2021-12-26 15:10:21 -08:00
Nikolaj Bjorner fcee2f5aa5 revert relevancy2 2021-12-26 15:10:21 -08:00
Nikolaj Bjorner 7d311ac2ef use netstandard 2.0 per recommendations
seems that now the recommended starting point is 2.0 and not lower.
2021-12-25 13:44:49 -08:00
Margus Veanes 5afb95b34a
improved subset checking for regexes with counters (#5731) 2021-12-22 17:53:34 -08:00
Nikolaj Bjorner 71b868d7f6 #5722 - internalize unary xnor 2021-12-22 13:32:53 -08:00
Nikolaj Bjorner 4d8bf2a874 wrong unit for xor in aig tactic #5722 2021-12-22 13:14:06 -08:00
Anton Kochkov f11fcec082
Migrate from deprecated distutils.sysconfig in scripts (#5729) 2021-12-22 07:59:13 -08:00
Anton Kochkov f3af2193d0
Use Stdlib. instead of Pervasives. due to deprecation (#5730) 2021-12-22 07:53:47 -08:00
Nikolaj Bjorner cf6486f990 bug in flatten/and/or introduced when skipping sub-expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-22 07:43:37 -08:00