mirror of
https://github.com/Z3Prover/z3
synced 2025-06-16 10:56:16 +00:00
tabs and indentation
This commit is contained in:
parent
d2c9b69eb3
commit
f3441c6a9b
7 changed files with 86 additions and 88 deletions
|
@ -1653,12 +1653,12 @@ namespace polynomial {
|
||||||
}
|
}
|
||||||
|
|
||||||
void manager::factors::display(std::ostream & out) const {
|
void manager::factors::display(std::ostream & out) const {
|
||||||
out << m().m().to_string(get_constant());
|
out << m().m().to_string(get_constant());
|
||||||
for (unsigned i = 0; i < m_factors.size(); ++ i) {
|
for (unsigned i = 0; i < m_factors.size(); ++ i) {
|
||||||
out << " * (";
|
out << " * (";
|
||||||
m_manager.display(out, m_factors[i]);
|
m_manager.display(out, m_factors[i]);
|
||||||
out << ")^" << m_degrees[i];
|
out << ")^" << m_degrees[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void manager::factors::set_constant(numeral const & constant) {
|
void manager::factors::set_constant(numeral const & constant) {
|
||||||
|
|
|
@ -172,8 +172,8 @@ void multivariate_factor_coefficient_bound(polynomial_ref const & f, var x, nume
|
||||||
|
|
||||||
// check that A*S+B*T=C in zp mod ideal
|
// check that A*S+B*T=C in zp mod ideal
|
||||||
bool check_solve(zp_manager & zp_pm, var2degree const & ideal,
|
bool check_solve(zp_manager & zp_pm, var2degree const & ideal,
|
||||||
zp_polynomial_ref const & A, zp_polynomial_ref const & B, zp_polynomial_ref const & C,
|
zp_polynomial_ref const & A, zp_polynomial_ref const & B, zp_polynomial_ref const & C,
|
||||||
zp_polynomial_ref const & S, zp_polynomial_ref const & T) {
|
zp_polynomial_ref const & S, zp_polynomial_ref const & T) {
|
||||||
zp_polynomial_ref AS(zp_pm), BT(zp_pm), sum(zp_pm);
|
zp_polynomial_ref AS(zp_pm), BT(zp_pm), sum(zp_pm);
|
||||||
AS = zp_pm.mul(A, S); AS = zp_pm.mod_d(AS, ideal);
|
AS = zp_pm.mul(A, S); AS = zp_pm.mod_d(AS, ideal);
|
||||||
BT = zp_pm.mul(B, T); BT = zp_pm.mod_d(BT, ideal);
|
BT = zp_pm.mul(B, T); BT = zp_pm.mod_d(BT, ideal);
|
||||||
|
@ -266,7 +266,7 @@ void solve(zp_manager & zp_pm, var x, var2degree const & ideal,
|
||||||
* all polynomials in Z_p[x, ..., y] mod (..., y^d)
|
* all polynomials in Z_p[x, ..., y] mod (..., y^d)
|
||||||
*/
|
*/
|
||||||
void multivariate_hansel_lift_ideal(
|
void multivariate_hansel_lift_ideal(
|
||||||
zp_manager & zp_pm, var x,
|
zp_manager & zp_pm, var x,
|
||||||
zp_polynomial_ref const & C,
|
zp_polynomial_ref const & C,
|
||||||
zp_polynomial_ref & A, zp_polynomial_ref & U, zp_polynomial_ref & B, zp_polynomial_ref & V,
|
zp_polynomial_ref & A, zp_polynomial_ref & U, zp_polynomial_ref & B, zp_polynomial_ref & V,
|
||||||
var2degree & ideal, var y, unsigned d) {
|
var2degree & ideal, var y, unsigned d) {
|
||||||
|
@ -415,9 +415,9 @@ void multivariate_hansel_lift_ideal(
|
||||||
|
|
||||||
template<typename manager_to_check, typename manager_1, typename manager_2>
|
template<typename manager_to_check, typename manager_1, typename manager_2>
|
||||||
bool are_equal_in(
|
bool are_equal_in(
|
||||||
manager_to_check pm,
|
manager_to_check pm,
|
||||||
typename manager_1::polynomial_ref const & A,
|
typename manager_1::polynomial_ref const & A,
|
||||||
typename manager_2::polynomial_ref const & B) {
|
typename manager_2::polynomial_ref const & B) {
|
||||||
typename manager_to_check::polynomial_ref A_pm(pm), B_pm(pm);
|
typename manager_to_check::polynomial_ref A_pm(pm), B_pm(pm);
|
||||||
|
|
||||||
A_pm = convert(A.m(), A, pm);
|
A_pm = convert(A.m(), A, pm);
|
||||||
|
@ -436,12 +436,12 @@ bool are_equal_in(
|
||||||
A_lifted*B_lifted = f mod x_i^d_i, p^e
|
A_lifted*B_lifted = f mod x_i^d_i, p^e
|
||||||
*/
|
*/
|
||||||
void multivariate_hansel_lift_zp(
|
void multivariate_hansel_lift_zp(
|
||||||
manager & pm, zp_manager & zp_pm, zp_manager & zpe_pm,
|
manager & pm, zp_manager & zp_pm, zp_manager & zpe_pm,
|
||||||
zp_polynomial_ref const & C_pe, var x, unsigned e,
|
zp_polynomial_ref const & C_pe, var x, unsigned e,
|
||||||
zp_polynomial_ref const & A_p, zp_polynomial_ref const & U_p,
|
zp_polynomial_ref const & A_p, zp_polynomial_ref const & U_p,
|
||||||
zp_polynomial_ref const & B_p, zp_polynomial_ref const & V_p,
|
zp_polynomial_ref const & B_p, zp_polynomial_ref const & V_p,
|
||||||
var2degree const & ideal,
|
var2degree const & ideal,
|
||||||
zp_polynomial_ref & A_lifted, zp_polynomial_ref & B_lifted) {
|
zp_polynomial_ref & A_lifted, zp_polynomial_ref & B_lifted) {
|
||||||
TRACE("polynomial::factorization::multivariate",
|
TRACE("polynomial::factorization::multivariate",
|
||||||
tout << "polynomial::multiratiate_hensel_lift_zp:" << endl;
|
tout << "polynomial::multiratiate_hensel_lift_zp:" << endl;
|
||||||
tout << "zp_pm = Z_" << zp_pm.m().m().to_string(zp_pm.m().p()) << endl;
|
tout << "zp_pm = Z_" << zp_pm.m().m().to_string(zp_pm.m().p()) << endl;
|
||||||
|
@ -667,7 +667,7 @@ void multivariate_hansel_lift_zp(
|
||||||
A_lifted*B_lifted = f mod x_i^d_i, p^e
|
A_lifted*B_lifted = f mod x_i^d_i, p^e
|
||||||
*/
|
*/
|
||||||
void multivariate_hensel_lift(
|
void multivariate_hensel_lift(
|
||||||
manager & pm, zp_manager & zp_pm, zp_manager & zpe_pm,
|
manager & pm, zp_manager & zp_pm, zp_manager & zpe_pm,
|
||||||
zp_polynomial_ref const & f, var x, unsigned e, var_vector const & all_vars,
|
zp_polynomial_ref const & f, var x, unsigned e, var_vector const & all_vars,
|
||||||
upolynomial::zp_manager & zp_upm,
|
upolynomial::zp_manager & zp_upm,
|
||||||
upolynomial::numeral_vector const & U, upolynomial::numeral_vector const & A,
|
upolynomial::numeral_vector const & U, upolynomial::numeral_vector const & A,
|
||||||
|
@ -746,7 +746,7 @@ void multivariate_hensel_lift(
|
||||||
i.e. such that f congruent to the new factors. output goes to f_zpe factors.
|
i.e. such that f congruent to the new factors. output goes to f_zpe factors.
|
||||||
*/
|
*/
|
||||||
void multivariate_hensel_lift(
|
void multivariate_hensel_lift(
|
||||||
manager & pm, zp_manager & zp_pm, zp_manager & zpe_pm,
|
manager & pm, zp_manager & zp_pm, zp_manager & zpe_pm,
|
||||||
polynomial_ref const & f, var x, unsigned e, var_vector const & all_vars,
|
polynomial_ref const & f, var x, unsigned e, var_vector const & all_vars,
|
||||||
upolynomial::manager & upm, upolynomial::numeral_vector const & f_u,
|
upolynomial::manager & upm, upolynomial::numeral_vector const & f_u,
|
||||||
upolynomial::zp_factors const & f_u_zp_factors,
|
upolynomial::zp_factors const & f_u_zp_factors,
|
||||||
|
@ -777,9 +777,9 @@ void multivariate_hensel_lift(
|
||||||
f_target_zpe = convert(pm, f, zpe_pm);
|
f_target_zpe = convert(pm, f, zpe_pm);
|
||||||
f_target_zpe = zpe_pm.mod_d(f_target_zpe, target_ideal);
|
f_target_zpe = zpe_pm.mod_d(f_target_zpe, target_ideal);
|
||||||
|
|
||||||
TRACE("polynomial::factorization::multivariate",
|
TRACE("polynomial::factorization::multivariate",
|
||||||
tout << "target_ideal = " << target_ideal << endl;
|
tout << "target_ideal = " << target_ideal << endl;
|
||||||
tout << "f_target_zpe = " << f_target_zpe << endl;
|
tout << "f_target_zpe = " << f_target_zpe << endl;
|
||||||
);
|
);
|
||||||
|
|
||||||
// we do the product by doing individual lifting like in the univarate case
|
// we do the product by doing individual lifting like in the univarate case
|
||||||
|
@ -1068,7 +1068,7 @@ bool factor_square_free_primitive(polynomial_ref const & f, factors & f_factors)
|
||||||
multivariate_hensel_lift(pm, zp_pm, zpe_pm, f_t, x, e, vars, upm, f_u_pp_zp, factors_u_zp, target_ideal, factors_zpe);
|
multivariate_hensel_lift(pm, zp_pm, zpe_pm, f_t, x, e, vars, upm, f_u_pp_zp, factors_u_zp, target_ideal, factors_zpe);
|
||||||
|
|
||||||
TRACE("polynomial::factorization::multivariate",
|
TRACE("polynomial::factorization::multivariate",
|
||||||
tout << "factors_zpe = " << factors_zpe << endl;
|
tout << "factors_zpe = " << factors_zpe << endl;
|
||||||
);
|
);
|
||||||
|
|
||||||
// try the factors from the lifted combinations
|
// try the factors from the lifted combinations
|
||||||
|
|
|
@ -60,7 +60,7 @@ struct mus::imp {
|
||||||
m_expr2cls.insert(cls, idx);
|
m_expr2cls.insert(cls, idx);
|
||||||
m_cls2expr.push_back(cls);
|
m_cls2expr.push_back(cls);
|
||||||
TRACE("opt", tout << idx << ": " << mk_pp(cls, m) << "\n";
|
TRACE("opt", tout << idx << ": " << mk_pp(cls, m) << "\n";
|
||||||
display_vec(tout, m_cls2expr););
|
display_vec(tout, m_cls2expr););
|
||||||
return idx;
|
return idx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -115,10 +115,10 @@ struct mus::imp {
|
||||||
core.push_back(cls_id);
|
core.push_back(cls_id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
TRACE("opt", display_vec(tout << "core exprs:", core_exprs);
|
TRACE("opt", display_vec(tout << "core exprs:", core_exprs);
|
||||||
display_vec(tout << "core:", core);
|
display_vec(tout << "core:", core);
|
||||||
display_vec(tout << "mus:", mus);
|
display_vec(tout << "mus:", mus);
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -152,17 +152,15 @@ struct mus::imp {
|
||||||
}
|
}
|
||||||
|
|
||||||
void display_vec(std::ostream& out, expr_ref_vector const& v) const {
|
void display_vec(std::ostream& out, expr_ref_vector const& v) const {
|
||||||
for (unsigned i = 0; i < v.size(); ++i) {
|
for (unsigned i = 0; i < v.size(); ++i)
|
||||||
out << mk_pp(v[i], m) << " ";
|
out << mk_pp(v[i], m) << " ";
|
||||||
}
|
|
||||||
out << "\n";
|
out << "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void display_vec(std::ostream& out, ptr_vector<expr> const& v) const {
|
void display_vec(std::ostream& out, ptr_vector<expr> const& v) const {
|
||||||
for (unsigned i = 0; i < v.size(); ++i) {
|
for (unsigned i = 0; i < v.size(); ++i)
|
||||||
out << mk_pp(v[i], m) << " ";
|
out << mk_pp(v[i], m) << " ";
|
||||||
}
|
|
||||||
out << "\n";
|
out << "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -151,26 +151,26 @@ struct scoped_timer::imp {
|
||||||
if (pthread_create(&m_thread_id, &m_attributes, &thread_func, this) != 0)
|
if (pthread_create(&m_thread_id, &m_attributes, &thread_func, this) != 0)
|
||||||
throw default_exception("failed to start timer thread");
|
throw default_exception("failed to start timer thread");
|
||||||
#elif defined(_LINUX_) || defined(_FREEBSD_)
|
#elif defined(_LINUX_) || defined(_FREEBSD_)
|
||||||
// Linux & FreeBSD
|
// Linux & FreeBSD
|
||||||
struct sigevent sev;
|
struct sigevent sev;
|
||||||
memset(&sev, 0, sizeof(sigevent));
|
memset(&sev, 0, sizeof(sigevent));
|
||||||
sev.sigev_notify = SIGEV_THREAD;
|
sev.sigev_notify = SIGEV_THREAD;
|
||||||
sev.sigev_value.sival_ptr = this;
|
sev.sigev_value.sival_ptr = this;
|
||||||
sev.sigev_notify_function = sig_handler;
|
sev.sigev_notify_function = sig_handler;
|
||||||
if (timer_create(CLOCKID, &sev, &m_timerid) == -1)
|
if (timer_create(CLOCKID, &sev, &m_timerid) == -1)
|
||||||
throw default_exception("failed to create timer");
|
throw default_exception("failed to create timer");
|
||||||
|
|
||||||
unsigned long long nano = static_cast<unsigned long long>(ms) * 1000000ull;
|
unsigned long long nano = static_cast<unsigned long long>(ms) * 1000000ull;
|
||||||
struct itimerspec its;
|
struct itimerspec its;
|
||||||
its.it_value.tv_sec = nano / 1000000000ull;
|
its.it_value.tv_sec = nano / 1000000000ull;
|
||||||
its.it_value.tv_nsec = nano % 1000000000ull;
|
its.it_value.tv_nsec = nano % 1000000000ull;
|
||||||
its.it_interval.tv_sec = 0; // timer experies once
|
its.it_interval.tv_sec = 0; // timer experies once
|
||||||
its.it_interval.tv_nsec = 0;
|
its.it_interval.tv_nsec = 0;
|
||||||
|
|
||||||
if (timer_settime(m_timerid, 0, &its, NULL) == -1)
|
if (timer_settime(m_timerid, 0, &its, NULL) == -1)
|
||||||
throw default_exception("failed to set timer");
|
throw default_exception("failed to set timer");
|
||||||
#else
|
#else
|
||||||
// Other platforms
|
// Other platforms
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -203,10 +203,10 @@ struct scoped_timer::imp {
|
||||||
if (pthread_attr_destroy(&m_attributes) != 0)
|
if (pthread_attr_destroy(&m_attributes) != 0)
|
||||||
throw default_exception("failed to destroy pthread attributes object");
|
throw default_exception("failed to destroy pthread attributes object");
|
||||||
#elif defined(_LINUX_) || defined(_FREEBSD_)
|
#elif defined(_LINUX_) || defined(_FREEBSD_)
|
||||||
// Linux & FreeBSD
|
// Linux & FreeBSD
|
||||||
timer_delete(m_timerid);
|
timer_delete(m_timerid);
|
||||||
#else
|
#else
|
||||||
// Other Platforms
|
// Other Platforms
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue