3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-24 12:07:52 +00:00
z3/src/math/polysat/eq_explain.h
Nikolaj Bjorner dc3b921712 eq explain
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-16 19:00:24 +02:00

30 lines
601 B
C++

/*++
Copyright (c) 2021 Microsoft Corporation
Module Name:
Conflict explanation
Author:
Nikolaj Bjorner (nbjorner) 2021-03-19
Jakob Rath 2021-04-6
--*/
#pragma once
#include "math/polysat/explain.h"
namespace polysat {
class solver;
class eq_explain : public explainer {
private:
bool try_explain1(pvar v, signed_constraint c, conflict& core);
bool explain_zero(pvar v, pdd& a, pdd& b, signed_constraint c, conflict& core);
public:
eq_explain(solver& s) : explainer(s) {}
bool try_explain(pvar v, conflict& core) override;
};
}