mirror of
https://github.com/Z3Prover/z3
synced 2025-06-29 09:28:45 +00:00
pipeline with release mode (#4206)
* pipeline with release mode Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * na Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
be998c308c
commit
b81ab94db7
6 changed files with 152 additions and 82 deletions
|
@ -48,7 +48,7 @@ namespace smt {
|
|||
/**
|
||||
* Synthesize induction lemmas from induction candidates
|
||||
*/
|
||||
class create_induction_lemmas {
|
||||
class induction_lemmas {
|
||||
context& ctx;
|
||||
ast_manager& m;
|
||||
value_sweep& vs;
|
||||
|
@ -82,6 +82,8 @@ namespace smt {
|
|||
}
|
||||
};
|
||||
typedef vector<abstraction_arg> abstraction_args;
|
||||
typedef std::pair<expr_ref_vector, expr_ref> cond_subst_t;
|
||||
typedef vector<cond_subst_t> cond_substs_t;
|
||||
|
||||
bool viable_induction_sort(sort* s);
|
||||
bool viable_induction_parent(enode* p, enode* n);
|
||||
|
@ -92,12 +94,15 @@ namespace smt {
|
|||
void abstract1(enode* n, enode* t, expr* x, abstractions& result);
|
||||
void filter_abstractions(bool sign, abstractions& abs);
|
||||
void create_lemmas(expr* sk, abstraction& a, literal lit);
|
||||
void create_hypotheses(unsigned depth, expr* sk0, expr_ref& alpha, expr* sk, literal_vector& lits);
|
||||
void mk_hypothesis_substs(unsigned depth, expr* x, cond_substs_t& subst);
|
||||
void mk_hypothesis_substs_rec(unsigned depth, sort* s, expr* y, expr_ref_vector& conds, cond_substs_t& subst);
|
||||
void mk_hypothesis_lemma(expr_ref_vector const& conds, expr_pair_vector const& subst, literal alpha);
|
||||
void create_hypotheses(unsigned depth, expr* sk, literal alpha);
|
||||
literal mk_literal(expr* e);
|
||||
void add_th_lemma(literal_vector const& lits);
|
||||
|
||||
public:
|
||||
create_induction_lemmas(context& ctx, ast_manager& m, value_sweep& vs);
|
||||
induction_lemmas(context& ctx, ast_manager& m, value_sweep& vs);
|
||||
|
||||
bool operator()(literal lit);
|
||||
};
|
||||
|
@ -111,7 +116,7 @@ namespace smt {
|
|||
ast_manager& m;
|
||||
value_sweep vs;
|
||||
collect_induction_literals m_collect_literals;
|
||||
create_induction_lemmas m_create_lemmas;
|
||||
induction_lemmas m_create_lemmas;
|
||||
|
||||
void init_values();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue