3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-28 19:35:50 +00:00

theory case split WIP

This commit is contained in:
Murphy Berzish 2016-12-20 11:14:42 -05:00
parent 94762d276d
commit a04bc9974b
2 changed files with 37 additions and 1 deletions

View file

@ -212,6 +212,16 @@ namespace smt {
literal2assumption m_literal2assumption; // maps an expression associated with a literal to the original assumption
expr_ref_vector m_unsat_core;
// -----------------------------------
//
// Theory case split
//
// -----------------------------------
typedef int_hashtable<int_hash, default_eq<int> > int_set;
int_set m_all_th_case_split_literals;
vector<int_set> m_th_case_split_sets;
u_map< vector<int_set> > m_literal2casesplitsets; // returns the case split literal sets that a literal participates in
// -----------------------------------
//
// Accessors
@ -814,6 +824,8 @@ namespace smt {
*/
void mk_th_case_split(unsigned num_lits, literal * lits);
bool propagate_th_case_split();
bool_var mk_bool_var(expr * n);
enode * mk_enode(app * n, bool suppress_args, bool merge_tf, bool cgc_enabled);