mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 00:55:31 +00:00
remove unused variables
This commit is contained in:
parent
d943eb4787
commit
8b90a45233
4 changed files with 1 additions and 8 deletions
|
@ -613,7 +613,6 @@ namespace polysat {
|
|||
// v[|q|:] = q
|
||||
unsigned const p_sz = p.power_of_2();
|
||||
unsigned const q_sz = q.power_of_2();
|
||||
unsigned const v_sz = p_sz + q_sz;
|
||||
if (p.is_val() || q.is_val())
|
||||
return zero_ext(p, q_sz) * rational::power_of_two(q_sz) + zero_ext(q, p_sz);
|
||||
pvar const v = s.m_slicing.mk_concat({s.m_names.mk_name(p), s.m_names.mk_name(q)});
|
||||
|
|
|
@ -629,7 +629,6 @@ namespace polysat {
|
|||
* q = 1 ==> r = p
|
||||
*/
|
||||
clause_ref op_constraint::lemma_udiv(solver& s, assignment const& a) {
|
||||
auto& m = p().manager();
|
||||
auto pv = a.apply_to(p());
|
||||
auto qv = a.apply_to(q());
|
||||
auto rv = a.apply_to(r());
|
||||
|
@ -679,7 +678,6 @@ namespace polysat {
|
|||
* q = 0 ==> r = p
|
||||
*/
|
||||
clause_ref op_constraint::lemma_urem(solver& s, assignment const& a) {
|
||||
auto& m = p().manager();
|
||||
auto pv = a.apply_to(p());
|
||||
auto qv = a.apply_to(q());
|
||||
auto rv = a.apply_to(r());
|
||||
|
|
|
@ -165,7 +165,6 @@ namespace polysat {
|
|||
|
||||
template <typename Fn>
|
||||
expr* polysat_ast::mk_bin(char const* name, pdd const& p, pdd const& q, pdd const& r, Fn mk_bin_expr) {
|
||||
unsigned const N = p.power_of_2();
|
||||
// r = p OP q
|
||||
expr* definition = m().mk_eq(mk_poly(r), mk_bin_expr(mk_poly(p), mk_poly(q)));
|
||||
// b <=> definition
|
||||
|
|
|
@ -1359,11 +1359,9 @@ namespace polysat {
|
|||
if (!is_AxB_eq_0(x, a_l_b, a, b, y)) // TODO: Is the restriction to linear "x" too restrictive?
|
||||
return false;
|
||||
|
||||
bool change = false;
|
||||
bool prop = false;
|
||||
|
||||
for (auto c : core) {
|
||||
change = false;
|
||||
if (c == a_l_b)
|
||||
continue;
|
||||
LOG("Trying to eliminate v" << x << " in " << c << " by using equation " << a_l_b.as_signed_constraint());
|
||||
|
@ -1448,7 +1446,6 @@ namespace polysat {
|
|||
* -x < -x - y
|
||||
*/
|
||||
bool saturation::is_add_overflow(pvar x, inequality const& i, pdd& y, bool& is_minus) {
|
||||
auto& m = s.var2pdd(x);
|
||||
pdd const X = s.var(x);
|
||||
pdd a = X;
|
||||
if (i.lhs().degree(x) != 1 || i.rhs().degree(x) != 1)
|
||||
|
@ -1950,7 +1947,7 @@ namespace polysat {
|
|||
* Values of x1, y1, q1 have to be available for the rule to apply.
|
||||
* If not all values are present, the rule isn't going to be used.
|
||||
* The arithmetic solver uses complete assignments because it
|
||||
* builds on top of an integer feasiable state (or feasible over rationals)
|
||||
* builds on top of an integer feasible state (or feasible over rationals)
|
||||
* Lemmas are false under that assignment. They don't necessarily propagate, though.
|
||||
* PolySAT isn't (yet) set up to work with complete assignments and thereforce misses such lemmas.
|
||||
* - should we force complete assignments by computing first a model that is feasible modulo linear constraints
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue