3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-28 05:58:55 +00:00

remove cache reset that causes crash

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-12-15 11:22:50 -08:00
parent 030868d8de
commit b3e5fade32
10 changed files with 98 additions and 26 deletions

View file

@ -34,13 +34,24 @@ namespace sat {
svector<int> m_left, m_right;
literal_vector m_root, m_parent;
void init_dfs_num(bool learned);
void init_dfs_num();
struct pframe;
public:
big();
/**
\brief initialize a BIG from a solver.
*/
void init_big(solver& s, bool learned);
/**
\brief initialize a BIG externally by adding implications.
*/
void init_adding_edges(unsigned num_vars);
void add_edge(literal u, literal v);
void done_adding_edges();
void ensure_big(solver& s, bool learned) { if (m_left.empty()) init_big(s, learned); }
int get_left(literal l) const { return m_left[l.index()]; }
int get_right(literal l) const { return m_right[l.index()]; }
@ -49,6 +60,7 @@ namespace sat {
bool reaches(literal u, literal v) const { return m_left[u.index()] < m_left[v.index()] && m_right[v.index()] < m_right[u.index()]; }
bool connected(literal u, literal v) const { return reaches(u, v) || reaches(~v, ~u); }
void display(std::ostream& out) const;
};
};