Nikolaj Bjorner
6202cd5394
fix #5842
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-16 17:38:19 +02:00
Nikolaj Bjorner
aa6ec418e3
move idiv test to after cuts/branch
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-14 19:50:49 +02:00
Nikolaj Bjorner
9a4d6cee6c
overhead with push-ite on shared terms
2022-02-14 19:36:14 +02:00
Nikolaj Bjorner
3d26b501e7
fix #5827 #5828
2022-02-14 10:31:04 +02:00
Nikolaj Bjorner
81e94b2154
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-09 12:10:01 +02:00
Nikolaj Bjorner
07d02ea415
fix #5829
2022-02-09 12:08:36 +02:00
Nikolaj Bjorner
0059e88036
fix #5808
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-07 20:10:32 +02:00
Nikolaj Bjorner
9958cab5cc
fix #5808
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-07 07:43:30 +02:00
Nikolaj Bjorner
3f3d058567
extract also units from search state
2022-02-07 06:16:22 +02:00
Nikolaj Bjorner
03ff3201b9
block recursive definitions with lambdas until they are properly supported #5813
2022-02-06 08:57:58 +02:00
Nikolaj Bjorner
1c10ce4070
#5815 - surface multi-arity arrays over python API
2022-02-06 08:40:56 +02:00
Nikolaj Bjorner
8a84cacfea
add tuple support for __getitem__ #5815
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-06 04:02:12 +02:00
Nikolaj Bjorner
e9dad84b85
update documentation comments
2022-02-06 03:35:32 +02:00
Nikolaj Bjorner
9d655cc658
track all unhandled operators instead of latest
2022-02-04 22:07:29 -08:00
Nikolaj Bjorner
474949542e
Merge branch 'master' of https://github.com/z3prover/z3
2022-02-04 13:08:59 -08:00
Nikolaj Bjorner
05e28e4344
fix #5812
2022-02-04 13:08:52 -08:00
Nikolaj Bjorner
6a412f7f04
allow to pass Booleans as arguments to arithmetic expressions
2022-01-31 12:00:54 -08:00
Nikolaj Bjorner
994c7ef52d
format
2022-01-31 12:00:26 -08:00
Nikolaj Bjorner
1e0d49512b
call mux finder
2022-01-31 12:00:16 -08:00
Nikolaj Bjorner
4392b88718
return negated literal when expression is "not"
2022-01-31 12:00:00 -08:00
Nikolaj Bjorner
7ddfc54250
shortcut negation
2022-01-31 11:58:02 -08:00
Nikolaj Bjorner
f3fc6a50f3
formatting
2022-01-31 11:57:42 -08:00
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
Nikolaj Bjorner
4b5ee91b44
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-21 20:40:58 -08:00
Nikolaj Bjorner
09ee60ccce
update comment
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-21 11:04:07 -08:00
zhouzhenghui
9d82c1d8a9
fix deadlock in scoped_timer destructor ( #5371 )
2021-12-21 18:47:13 +00:00
Nuno Lopes
94a2c91f39
fix a few compiler warnings
2021-12-21 18:30:22 +00:00
Margus Veanes
1d9aad6ea9
improved regex merging avoiding unsat nontermination ( #5728 )
2021-12-20 17:44:06 -08:00
Nikolaj Bjorner
e0d6e04493
fix c++
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-20 16:09:39 -08:00
Nikolaj Bjorner
7a6070506d
#5727
...
Expose diff function,
expose allchar in Java API
expose op codes for replace/re/all
2021-12-20 10:17:06 -08:00
Nikolaj Bjorner
f01d096fb5
fix again
2021-12-20 09:51:15 -08:00
Nikolaj Bjorner
ad91748b5f
Merge branch 'master' of https://github.com/z3prover/z3
2021-12-20 09:21:53 -08:00
Nikolaj Bjorner
83b47f1859
fix #5726
2021-12-20 09:21:40 -08:00
Margus Veanes
be38b256c8
fixed bug in is_char_const_range ( #5724 )
2021-12-19 17:46:42 -08:00
Margus Veanes
25d54ebb40
fixing regression of issue 1224 ( #5723 )
2021-12-19 14:07:53 -08:00
Nikolaj Bjorner
4b813bac1c
na
2021-12-19 12:31:47 -08:00
Nikolaj Bjorner
6a039c2700
Update z3++.h
...
simplify definition
2021-12-19 11:53:01 -08:00
Margus Veanes
a7b1db611c
State graph dgml update and fixes in condition simplifier ( #5721 )
...
* improved generated dgml graph
* fixed simplification of negated ranges and did some code cleanup
* do not make loops with lower=upper=0, this is epsilon
* do not add loops with lower=upper=1
* bug fix in normalization: forgotten eps case
2021-12-19 11:09:55 -08:00
Nikolaj Bjorner
bee742111a
na
2021-12-19 11:05:19 -08:00
Nikolaj Bjorner
7441bd706b
na
2021-12-19 10:57:42 -08:00
Nikolaj Bjorner
85e362277c
Update z3++.h
...
with bindings for user propagate functions
2021-12-18 11:56:05 -08:00
Nikolaj Bjorner
f0740bdf60
move user propagte declare to context level
...
declaration of user propagate functions are declared at context level instead of at solver scope.
2021-12-18 10:56:42 -08:00
Nikolaj Bjorner
4856581b68
na
2021-12-17 16:40:19 -08:00
Nikolaj Bjorner
8ca023d541
expose propagate created
2021-12-17 16:12:47 -08:00
Nikolaj Bjorner
e1ffaa7faf
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-17 11:34:57 -08:00
Nikolaj Bjorner
9c8800bdde
adding a new toy for Clemens
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-17 10:45:59 -08:00
Nikolaj Bjorner
6963451704
na
2021-12-16 20:13:29 -08:00
Nikolaj Bjorner
5974200444
fixes to previous push and streamlining
2021-12-16 20:06:49 -08:00
Nikolaj Bjorner
4e82a9af5f
pin expressions
2021-12-16 19:41:32 -08:00
Nikolaj Bjorner
6cc9aa3562
prepare user propagator declared functions for likely Clemens use case
2021-12-16 19:37:30 -08:00
Margus Veanes
a288f9048a
Update regex union and intersection to maintain ANF ( #5717 )
...
* added merge for unions and intersections
* added normalization rules to ensure ANF
* fixing PR comments related to merge
2021-12-16 19:19:36 -08:00
Nikolaj Bjorner
122b0fec0f
fix #5710
2021-12-16 12:30:29 -08:00
Nikolaj Bjorner
a099972354
fix #5714
...
It is not unlike other fuzz bugs: it exercises some behavior that applications are unlikely to expose. In this case, a rule body expanded into a conjunction with more than 1M formulas (with a lot of repetition). The original rule representation assumed silently that the number of constraints in a body would fit within 20 bits, but reality allowed bodies with as many as 2^{32} - 1 constraints.
So "minimizing" the bug as @agurfinkel asks for seems not to make too much sense.
Just running the samples in debug mode points to the root cause.
Since fuzz bugs are not from applications and fuzz tools have the potential for creating a large number of issues, I find it reasonable to push some basic pro-active asks on filers:
- reproduce bug in debug builds to assess whether a debug assert triggers.
- minimize or keep it simpler when possible (in this case it does not apply)
- perform basic diagnostics/triage. I am basically asking to push this part of the work on to the fuzzer. Otherwise, addressing random bugs doesn't scale. Triaging should have pointed to the root cause.
Now, there tends to be something to learn from bugs. In this case, the question was: "can we avoid constraints with duplications"? In particular, it points to a basic inefficiency of extracting conjunctions (and disjunctions). The function didn't deduplicate. So I added deduplication into this function. It is used throughout z3 code base so could expose latent issues. We will see.
2021-12-16 10:20:53 -08:00
Nikolaj Bjorner
dd6a11b526
fix #5715
2021-12-16 09:35:54 -08:00
Nikolaj Bjorner
2caa7e6e45
remove EnumToNative as it drops reference counts, fixes #5713
2021-12-16 03:22:54 -08:00
Margus Veanes
2be93870c8
Cleanup regex info and some fixes in Derivative code ( #5709 )
...
* removed unused regex info fields
* cleanup of info and fixes in antimirov derivatives
* removed extra qualification on operator
2021-12-15 10:59:34 -08:00
Nikolaj Bjorner
3b58f548f7
remove dead code
2021-12-14 13:42:52 -08:00
Nikolaj Bjorner
03b5380a20
na
2021-12-14 13:39:52 -08:00
Nikolaj Bjorner
b1d167de5b
fix co-factoring'
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-14 10:12:38 -08:00
Nikolaj Bjorner
5348af3c4c
fix co-factoring
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-14 10:05:09 -08:00
Nikolaj Bjorner
f40becf099
remove case for non-emptiness to combine with standard membership
...
as part of revising engine for addressing #5693
2021-12-13 18:17:40 -08:00
Nikolaj Bjorner
b2af7ea68f
stdout
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-13 15:19:29 -08:00
Nikolaj Bjorner
9ec0f94ab9
hoisting out blocker for empty
...
#5693
2021-12-13 14:25:05 -08:00
Nikolaj Bjorner
fcdf8d4948
include atomic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-13 11:40:45 -08:00
Nikolaj Bjorner
b85f2f7e86
#5704
2021-12-12 21:10:07 -08:00
Nikolaj Bjorner
0a7e003709
this one is for you Nuno
...
- pull request might have new bugs given that build is broken.
- this test doesn't expose race conditions under simple tests, yet. It is a starting point.
- run under cuzz (app-verifier) should expose races, this is what it was made for.
2021-12-12 17:51:05 -08:00
Nikolaj Bjorner
96e871c826
add stub for testing updates to scoped_timer
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-12 12:31:23 -08:00
Calvin Loncaric
0405a597d4
Fix return type of as_int64 ( #5703 )
2021-12-09 14:39:38 -08:00
Nikolaj Bjorner
51fa40ece5
fix spelling
2021-12-09 10:23:37 -08:00
Nikolaj Bjorner
b69ad786f2
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-08 09:04:13 -08:00
Nikolaj Bjorner
e45ae32685
unsound equality propagation #5676
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-08 09:02:05 -08:00
Nikolaj Bjorner
a5bd115235
replace_re axiom placeholder
...
@ahelwer - illustrates placeholder for one approach for axiomatizing replace_re
2021-12-08 03:40:24 -08:00
Nikolaj Bjorner
773a2ae7bc
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-07 15:08:43 -08:00
Nikolaj Bjorner
60d5a004ce
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-07 14:25:07 -08:00
Nikolaj Bjorner
04906bd957
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-07 14:21:46 -08:00
Nikolaj Bjorner
36f510553a
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-07 14:20:47 -08:00
Nikolaj Bjorner
d74ff29c25
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-07 13:55:31 -08:00
Nikolaj Bjorner
9f2b18cac5
add tactic name
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-07 13:37:57 -08:00
Nikolaj Bjorner
e3bd5badf2
pass through for unary tactical
2021-12-07 10:45:03 -08:00
Nikolaj Bjorner
1e95fb44d1
add ability to register expressions during callback
2021-12-07 09:47:05 -08:00
Nikolaj Bjorner
50d50cdb48
register forbidden functions with reduce_args for user-propagator
2021-12-07 09:03:19 -08:00
Nikolaj Bjorner
658a334ecf
clear tactic user propagate state on solver destructor
2021-12-07 03:14:50 -08:00
Nikolaj Bjorner
fdc253afdd
update arithmetic contract for unbounded ( #5696 )
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-06 08:19:18 -08:00
Lev Nachmanson
9b4f3a7075
start using lar_solver::is_feasible() ( #5697 )
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2021-12-06 08:16:57 -08:00
Lev Nachmanson
7758b519bc
Handle correctly cancelled run ( #5695 )
...
* remove the bound on total iterations in simplex
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* remove unncesseray checks in get_freedom_interval_for_column()
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* fix the build of test-z3
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* Revert "remove unncesseray checks in get_freedom_interval_for_column()"
This reverts commit 6770ed85e3
.
* optimize get_freedom_interval_for_column() for feasible case
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* add function lar_solver::status_feasible
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* rename status_is_feasible() to is_feasible()
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* fix the linux build
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2021-12-05 18:38:37 -08:00
Nikolaj Bjorner
f0e9363e78
fix bug in smt_tactic_core for translating user-ids
2021-12-05 11:13:27 -08:00
Nikolaj Bjorner
0d055b83eb
update input for doxygen #5400
2021-12-05 09:04:18 -08:00
Nikolaj Bjorner
c845b22c15
fix translation for equality propagation
2021-12-04 11:55:36 -08:00
Nikolaj Bjorner
1b0ac4940b
prevent stale user-propagators from being used on the same tactic after it was applied.
2021-12-04 11:51:00 -08:00
Nikolaj Bjorner
da765355e8
don't rely on cleanup
2021-12-04 11:48:41 -08:00
Nikolaj Bjorner
3d528c8ef6
typo
2021-12-04 11:19:49 -08:00
Nikolaj Bjorner
eae567ac3d
indirection for user ids
2021-12-04 11:04:32 -08:00
Nikolaj Bjorner
68b072e7f1
only use setup_and_check if there is no user propagator set.
2021-12-04 09:22:25 -08:00
Nikolaj Bjorner
1618c970df
adding checks
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-03 13:17:48 -08:00
Nikolaj Bjorner
970347e797
infeas
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-03 13:00:52 -08:00
Nikolaj Bjorner
0077ddf33c
try delay init for user propagator in smt_tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-03 09:45:07 -08:00
Nikolaj Bjorner
41aa7d7b60
stack
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-02 09:00:51 -08:00
Nikolaj Bjorner
bfd61fec00
enable user propagation on tactics
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-02 08:28:52 -08:00
Nikolaj Bjorner
71cbb160d2
fix regression from today, see #5676
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-01 14:29:53 -08:00
Nikolaj Bjorner
87aec8819f
fix #5687
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-01 10:08:29 -08:00
Nikolaj Bjorner
c6a5aa0cc4
try th_lemma, update documentation of api functions for creating strings
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-01 09:21:02 -08:00