mirror of
https://github.com/Z3Prover/z3
synced 2025-08-24 20:16:00 +00:00
removing dependencies on simplifier
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
82a937d1af
commit
bcf229dcfd
26 changed files with 52 additions and 1849 deletions
50
src/ast/rewriter/bv_elim.h
Normal file
50
src/ast/rewriter/bv_elim.h
Normal file
|
@ -0,0 +1,50 @@
|
|||
/*++
|
||||
Copyright (c) 2006 Microsoft Corporation
|
||||
|
||||
Module Name:
|
||||
|
||||
bv_elim.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Eliminate bit-vectors variables from clauses, by
|
||||
replacing them by bound Boolean variables.
|
||||
|
||||
Author:
|
||||
|
||||
Nikolaj Bjorner (nbjorner) 2008-12-16.
|
||||
|
||||
Revision History:
|
||||
|
||||
--*/
|
||||
#ifndef BV_ELIM_H_
|
||||
#define BV_ELIM_H_
|
||||
|
||||
#include "ast/ast.h"
|
||||
#include "ast/rewriter/rewriter.h"
|
||||
|
||||
class bv_elim_cfg : public default_rewriter_cfg {
|
||||
ast_manager& m;
|
||||
public:
|
||||
bv_elim_cfg(ast_manager& m) : m(m) {}
|
||||
|
||||
bool reduce_quantifier(quantifier * old_q,
|
||||
expr * new_body,
|
||||
expr * const * new_patterns,
|
||||
expr * const * new_no_patterns,
|
||||
expr_ref & result,
|
||||
proof_ref & result_pr);
|
||||
};
|
||||
|
||||
class bv_elim_rw : public rewriter_tpl<bv_elim_cfg> {
|
||||
protected:
|
||||
bv_elim_cfg m_cfg;
|
||||
public:
|
||||
bv_elim_rw(ast_manager & m):
|
||||
rewriter_tpl<bv_elim_cfg>(m, m.proofs_enabled(), m_cfg),
|
||||
m_cfg(m)
|
||||
{}
|
||||
};
|
||||
|
||||
#endif /* BV_ELIM_H_ */
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue