3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-22 13:53:39 +00:00

integrate factorization to Grobner

This commit is contained in:
Nikolaj Bjorner 2022-07-14 21:24:27 -07:00
parent 7c177584f3
commit b29cdca936
4 changed files with 42 additions and 35 deletions

View file

@ -1311,7 +1311,7 @@ namespace dd {
return m.mk_var(var())*h + l;
}
std::pair<unsigned_vector, pdd> pdd::var_factors() {
std::pair<unsigned_vector, pdd> pdd::var_factors() const {
if (is_val())
return { unsigned_vector(), *this };
unsigned v = var();

View file

@ -367,7 +367,7 @@ namespace dd {
/**
* \brief factor out variables
*/
std::pair<unsigned_vector, pdd> var_factors();
std::pair<unsigned_vector, pdd> var_factors() const;
pdd subst_val(vector<std::pair<unsigned, rational>> const& s) const { return m.subst_val(*this, s); }
pdd subst_val(unsigned v, rational const& val) const { return m.subst_val(*this, v, val); }