3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-13 14:40:55 +00:00

integrate lambda expressions

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2018-06-26 07:23:04 -07:00
parent bf4edef761
commit 520ce9a5ee
139 changed files with 2243 additions and 1506 deletions

View file

@ -48,7 +48,7 @@ public:
Otherwise, (VAR 0) is stored in the first position, (VAR 1) in the second, and so on.
*/
void operator()(expr * n, unsigned num_args, expr * const * args, expr_ref & result);
expr_ref operator()(expr * n, unsigned num_args, expr * const * args);
void reset() { m_reducer.reset(); }
};
@ -63,10 +63,10 @@ class unused_vars_eliminator {
bool m_ignore_patterns_on_ground_qbody;
public:
unused_vars_eliminator(ast_manager & m, params_ref const & params);
void operator()(quantifier* q, expr_ref& r);
expr_ref operator()(quantifier* q);
};
void elim_unused_vars(ast_manager & m, quantifier * q, params_ref const & params, expr_ref & r);
expr_ref elim_unused_vars(ast_manager & m, quantifier * q, params_ref const & params);
/**
\brief Instantiate quantifier q using the given exprs.
@ -77,7 +77,7 @@ void elim_unused_vars(ast_manager & m, quantifier * q, params_ref const & params
...
(VAR (q->get_num_decls() - 1)) is stored in the first position of the array.
*/
void instantiate(ast_manager & m, quantifier * q, expr * const * exprs, expr_ref & result);
expr_ref instantiate(ast_manager & m, quantifier * q, expr * const * exprs);
/**
\brief Enumerate set of free variables in expression.