mirror of
https://github.com/Z3Prover/z3
synced 2026-04-24 12:53:32 +00:00
Create dummy sat-node to avoid problems in case the preprocessor solves the problem entirely
This commit is contained in:
parent
9f4e823c8b
commit
51f3996464
3 changed files with 32 additions and 11 deletions
|
|
@ -573,8 +573,8 @@ namespace seq {
|
|||
}
|
||||
|
||||
void nielsen_graph::add_str_eq(euf::snode* lhs, euf::snode* rhs, smt::enode* l, smt::enode* r) {
|
||||
if (!m_root)
|
||||
m_root = mk_node();
|
||||
if (!root())
|
||||
create_root();
|
||||
dep_tracker dep = m_dep_mgr.mk_leaf(enode_pair(l, r));
|
||||
str_eq eq(lhs, rhs, dep);
|
||||
eq.sort();
|
||||
|
|
@ -582,8 +582,8 @@ namespace seq {
|
|||
}
|
||||
|
||||
void nielsen_graph::add_str_mem(euf::snode* str, euf::snode* regex, sat::literal l) {
|
||||
if (!m_root)
|
||||
m_root = mk_node();
|
||||
if (!root())
|
||||
create_root();
|
||||
dep_tracker dep = m_dep_mgr.mk_leaf(l);
|
||||
euf::snode* history = m_sg.mk_empty_seq(str->get_sort());
|
||||
unsigned id = next_mem_id();
|
||||
|
|
@ -592,8 +592,8 @@ namespace seq {
|
|||
|
||||
// test-friendly overloads (no external dependency tracking)
|
||||
void nielsen_graph::add_str_eq(euf::snode* lhs, euf::snode* rhs) {
|
||||
if (!m_root)
|
||||
m_root = mk_node();
|
||||
if (root())
|
||||
create_root();
|
||||
dep_tracker dep = m_dep_mgr.mk_leaf(enode_pair(nullptr, nullptr));
|
||||
str_eq eq(lhs, rhs, dep);
|
||||
eq.sort();
|
||||
|
|
@ -601,8 +601,8 @@ namespace seq {
|
|||
}
|
||||
|
||||
void nielsen_graph::add_str_mem(euf::snode* str, euf::snode* regex) {
|
||||
if (!m_root)
|
||||
m_root = mk_node();
|
||||
if (!root())
|
||||
create_root();
|
||||
dep_tracker dep = nullptr;
|
||||
euf::snode* history = m_sg.mk_empty_seq(str->get_sort());
|
||||
unsigned id = next_mem_id();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue