mirror of
https://github.com/Z3Prover/z3
synced 2025-06-28 08:58:44 +00:00
Merge pull request #881 from dwoos/tactic-labels
Thread labels through tactic system
This commit is contained in:
commit
5682c43604
9 changed files with 82 additions and 9 deletions
|
@ -175,7 +175,7 @@ void exec(tactic & t, goal_ref const & in, goal_ref_buffer & result, model_conve
|
|||
}
|
||||
}
|
||||
|
||||
lbool check_sat(tactic & t, goal_ref & g, model_ref & md, proof_ref & pr, expr_dependency_ref & core, std::string & reason_unknown) {
|
||||
lbool check_sat(tactic & t, goal_ref & g, model_ref & md, labels_vec & labels, proof_ref & pr, expr_dependency_ref & core, std::string & reason_unknown) {
|
||||
bool models_enabled = g->models_enabled();
|
||||
bool proofs_enabled = g->proofs_enabled();
|
||||
bool cores_enabled = g->unsat_core_enabled();
|
||||
|
@ -200,6 +200,7 @@ lbool check_sat(tactic & t, goal_ref & g, model_ref & md, proof_ref & pr, expr_d
|
|||
|
||||
if (is_decided_sat(r)) {
|
||||
if (models_enabled) {
|
||||
(*mc)(labels, 0);
|
||||
model_converter2model(m, mc.get(), md);
|
||||
if (!md) {
|
||||
// create empty model.
|
||||
|
@ -216,7 +217,10 @@ lbool check_sat(tactic & t, goal_ref & g, model_ref & md, proof_ref & pr, expr_d
|
|||
return l_false;
|
||||
}
|
||||
else {
|
||||
if (models_enabled) model_converter2model(m, mc.get(), md);
|
||||
if (models_enabled) {
|
||||
model_converter2model(m, mc.get(), md);
|
||||
(*mc)(labels, 0);
|
||||
}
|
||||
reason_unknown = "incomplete";
|
||||
return l_undef;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue