mirror of
https://github.com/Z3Prover/z3
synced 2025-08-02 09:20:22 +00:00
outline of signature for assignment based conflict generation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
0995928f6e
commit
46284c434a
2 changed files with 19 additions and 0 deletions
|
@ -2034,6 +2034,10 @@ namespace nlsat {
|
||||||
m_assignment.reset();
|
m_assignment.reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lbool check(literal_vector& assumptions, assignment const& rvalues, polynomial_ref_vector& core) {
|
||||||
|
return l_undef;
|
||||||
|
}
|
||||||
|
|
||||||
lbool check(literal_vector& assumptions) {
|
lbool check(literal_vector& assumptions) {
|
||||||
literal_vector result;
|
literal_vector result;
|
||||||
unsigned sz = assumptions.size();
|
unsigned sz = assumptions.size();
|
||||||
|
@ -4104,6 +4108,10 @@ namespace nlsat {
|
||||||
return m_imp->check(assumptions);
|
return m_imp->check(assumptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lbool solver::check(literal_vector& assumptions, assignment const& rvalues, polynomial_ref_vector& core) {
|
||||||
|
return m_imp->check(assumptions, rvalues, core);
|
||||||
|
}
|
||||||
|
|
||||||
void solver::get_core(vector<assumption, false>& assumptions) {
|
void solver::get_core(vector<assumption, false>& assumptions) {
|
||||||
return m_imp->get_core(assumptions);
|
return m_imp->get_core(assumptions);
|
||||||
}
|
}
|
||||||
|
|
|
@ -218,6 +218,17 @@ namespace nlsat {
|
||||||
|
|
||||||
lbool check(literal_vector& assumptions);
|
lbool check(literal_vector& assumptions);
|
||||||
|
|
||||||
|
// check satisfiability of asserted formulas relative to assumptions.
|
||||||
|
// produce either,
|
||||||
|
// l_true - a model is availabe (rvalues can be ignored) or,
|
||||||
|
// l_false - update the list of assumptions (possibly reset it to empty), and a set of polynomials in core,
|
||||||
|
// such that the conjunction of the assumptions and the polynomials in core is unsatisfiable.
|
||||||
|
// l_undef - if the search was interrupted by a resource limit.
|
||||||
|
// We associate literals with the polynomials in the core based on their sign with respect to rvalues.
|
||||||
|
// If p(rvalues) > 0, then the literal is p <= 0, p(rvalues) < 0, then p(rvalues) >= 0, and p(rvalues) = 0, then p != 0.
|
||||||
|
//
|
||||||
|
lbool check(literal_vector& assumptions, assignment const& rvalues, polynomial_ref_vector& core);
|
||||||
|
|
||||||
// -----------------------
|
// -----------------------
|
||||||
//
|
//
|
||||||
// Model
|
// Model
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue