3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-11-28 00:09:49 +00:00

Check whether one proof node is an ancestor of another on-demand

Instead of pre-computing sets
This commit is contained in:
Arie Gurfinkel 2018-06-07 09:07:17 -07:00
parent a40e0dce0c
commit e84ca25f05
2 changed files with 21 additions and 20 deletions

View file

@ -67,8 +67,6 @@ private:
// created sets of active hypothesis
ptr_vector<proof_set> m_pinned_active_hyps;
// created sets of parent hypothesis
ptr_vector<expr_set> m_pinned_parent_hyps;
// maps a proof to the transformed proof
obj_map<proof, proof*> m_cache;
@ -79,11 +77,6 @@ private:
// maps a proof node to the set of its active (i.e., in scope) hypotheses
obj_map<proof, proof_set*> m_active_hyps;
// maps a proof node to the set of all hypothesis-facts (active or
// not) that can reach it. Used for cycle detection and avoidance
// during proof transformation
obj_map<proof, expr_set*> m_parent_hyps;
/// marks if an expression is ever used as a hypothesis in a proof
expr_mark m_hyp_mark;
/// marks a proof as open, i.e., has a non-discharged hypothesis as ancestor