mirror of
https://github.com/Z3Prover/z3
synced 2025-06-22 13:53:39 +00:00
#5259 - the Ranjit 2s shave
shave a couple of seconds from the Ranjit regression
This commit is contained in:
parent
cd82205b06
commit
7869cdbbc8
4 changed files with 31 additions and 9 deletions
|
@ -72,6 +72,7 @@ class skolemizer {
|
|||
cache m_cache;
|
||||
cache m_cache_pr;
|
||||
bool m_proofs_enabled;
|
||||
used_vars m_uv;
|
||||
|
||||
|
||||
void process(quantifier * q, expr_ref & r, proof_ref & p) {
|
||||
|
@ -81,14 +82,14 @@ class skolemizer {
|
|||
p = nullptr;
|
||||
return;
|
||||
}
|
||||
used_vars uv;
|
||||
uv(q);
|
||||
m_uv.reset();
|
||||
m_uv(q);
|
||||
SASSERT(is_well_sorted(m, q));
|
||||
unsigned sz = uv.get_max_found_var_idx_plus_1();
|
||||
unsigned sz = m_uv.get_max_found_var_idx_plus_1();
|
||||
ptr_buffer<sort> sorts;
|
||||
expr_ref_vector args(m);
|
||||
for (unsigned i = 0; i < sz; i++) {
|
||||
sort * s = uv.get(i);
|
||||
sort * s = m_uv.get(i);
|
||||
if (s != nullptr) {
|
||||
sorts.push_back(s);
|
||||
args.push_back(m.mk_var(i, s));
|
||||
|
@ -111,7 +112,7 @@ class skolemizer {
|
|||
// (VAR num_decls-1) is in the last position.
|
||||
//
|
||||
for (unsigned i = 0; i < sz; i++) {
|
||||
sort * s = uv.get(i);
|
||||
sort * s = m_uv.get(i);
|
||||
if (s != nullptr)
|
||||
substitution.push_back(m.mk_var(i, s));
|
||||
else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue