Bruce Mitchener
5d0dea05aa
Remove empty leaf destructors. ( #6211 )
2022-07-30 10:07:03 +01:00
Bruce Mitchener
1eb84fe4b9
Mark override methods appropriately. ( #6207 )
2022-07-29 23:29:15 +02:00
Bruce Mitchener
3e38bbb009
Make sure all headers do #pragma once
. ( #6188 )
2022-07-23 10:41:14 -07:00
Nikolaj Bjorner
004139b320
rewrites for characters
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-07-02 11:37:21 -07:00
Nikolaj Bjorner
ea2a843325
flat only
...
remove option for uzers (users who are in reality fuzzers) to toggle flat option. The legacy arithmetic solver bakes in assumptions about flat format so it isn't helpful to expose this to fuzzers, I mean uzers.
2022-06-30 19:59:46 -07:00
Nuno Lopes
41deed59a3
fix bug in array rewriter introduced in 202ce1e
2022-06-21 22:40:40 +01:00
Nikolaj Bjorner
36a1f758bc
mask regression
2022-06-21 14:34:47 -07:00
Nikolaj Bjorner
ab9aee189b
perf #6100
2022-06-21 13:49:52 -07:00
Nikolaj Bjorner
202ce1edf0
#6100 - two perf fixes
...
remaining perf bug is dealing with very large bit-widths. mod 2^n should be computed natively based on n instead of 2^n because we pre-populate an array with all values up to n. Suppose n is 10000, the array has size 10000.
2022-06-21 12:45:29 -07:00
Nikolaj Bjorner
477e9625ef
Don't reset the cache between applications of replace
...
tactic/lia2card shows a huge slowdown because the same replace function is called on thousands of assertions. Each time the cache gets reset with thousands of entries - they are all the same.
So don't reset the cache just because... Instead reset the cache if m_refs grows large.
2022-06-16 15:40:01 -07:00
Nikolaj Bjorner
9cd339841a
for Arie
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-10 18:07:54 -07:00
Nikolaj Bjorner
994dab8eb6
add pre-filter for F* use case
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-10 17:56:48 -07:00
Nikolaj Bjorner
72a6384353
time overflow before stack overflow
2022-06-08 10:00:16 -07:00
Christoph M. Wintersteiger
f77608ed88
Add interpreted versions of unspecified cases of fp.to_ieee_bv and fp.to_real ( #6077 )
2022-06-04 17:53:23 +01:00
Nikolaj Bjorner
6abea2de2c
fix nightly, fix regression identified by Nuno
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 18:03:15 -07:00
Nikolaj Bjorner
8d980ea704
remove internal configuration
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 12:13:18 -07:00
Nikolaj Bjorner
de892ed9f2
fix #6054
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-26 15:51:57 -04:00
Nikolaj Bjorner
f77037e9a5
expand select/store when I/J are values #6053
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-25 20:23:43 -04:00
Nikolaj Bjorner
4d8e4b5bd3
fix #6052
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-25 17:21:01 -04:00
Nikolaj Bjorner
c850259f89
rw
2022-05-22 07:54:27 -04:00
Nikolaj Bjorner
87d2a3b4e5
map/mapi/foldl/foldli
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-04 01:10:18 -07:00
Nikolaj Bjorner
98c7069f75
add rewrite for hoisting multipliers over modular inverses
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-18 14:29:16 +02:00
Clemens Eisenhofer
0b20a4ebf4
Added rewriting distinct with bitvectors to false if bit-size is too low ( #5956 )
...
* Fixed problem with registering bitvector functions
* Added rewriting distinct with bitvectors to false if bit-size is too low
* Removed debug output
* Incorporated Nikolaj's comments
* Simplifications
2022-04-09 21:46:21 +02:00
Nikolaj Bjorner
431c3af409
fix #5929 - add parameter bv_le2extract to allow disabling the disassembly to extract
2022-03-27 18:23:41 -10:00
Nikolaj Bjorner
f1806d32d6
remove buggy code, close, fix #5825
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-20 13:25:44 -07:00
Nikolaj Bjorner
c51ca86203
add another constant folding case
2022-03-10 17:39:40 -08:00
Nikolaj Bjorner
e839e18381
minimal addition to rewrite bit-vector to character conversion using constant folding.
2022-03-10 17:31:17 -08:00
Nikolaj Bjorner
081c62d006
allow range comparison for bit-vectors and int/real
2022-03-10 17:08:49 -08:00
Nikolaj Bjorner
11030fc81d
disable unsound mk_seq_butlast
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-21 18:56:49 -08:00
Nikolaj Bjorner
91045d3e4a
two words
2022-02-20 10:29:57 +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
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
4da930b490
#5794
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-27 10:50:48 -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
20f9814939
fix #5789
...
fix incorrect constant folding
2022-01-24 09:42:14 +01:00
Nikolaj Bjorner
007af9cb8a
fix #5784
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-21 03:08:03 +01: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
199daead50
remove Z3_bool_opt #5757
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-07 11:52:10 -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
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
aa901c4e88
axiom solver improvements
2021-12-31 11:53:40 -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
Margus Veanes
5afb95b34a
improved subset checking for regexes with counters ( #5731 )
2021-12-22 17:53:34 -08:00
Margus Veanes
1d9aad6ea9
improved regex merging avoiding unsat nontermination ( #5728 )
2021-12-20 17:44:06 -08:00
Margus Veanes
be38b256c8
fixed bug in is_char_const_range ( #5724 )
2021-12-19 17:46:42 -08:00