summaryrefslogtreecommitdiff
path: root/src/proof
diff options
context:
space:
mode:
Diffstat (limited to 'src/proof')
-rw-r--r--src/proof/proof_node_manager.cpp12
-rw-r--r--src/proof/proof_node_manager.h7
2 files changed, 13 insertions, 6 deletions
diff --git a/src/proof/proof_node_manager.cpp b/src/proof/proof_node_manager.cpp
index e0a7f81c0..c832ac3fa 100644
--- a/src/proof/proof_node_manager.cpp
+++ b/src/proof/proof_node_manager.cpp
@@ -28,8 +28,10 @@ using namespace cvc5::kind;
namespace cvc5 {
-ProofNodeManager::ProofNodeManager(theory::Rewriter* rr, ProofChecker* pc)
- : d_rewriter(rr), d_checker(pc)
+ProofNodeManager::ProofNodeManager(const Options& opts,
+ theory::Rewriter* rr,
+ ProofChecker* pc)
+ : d_opts(opts), d_rewriter(rr), d_checker(pc)
{
d_true = NodeManager::currentNM()->mkConst(true);
// we always allocate a proof checker, regardless of the proof checking mode
@@ -329,8 +331,8 @@ Node ProofNodeManager::checkInternal(
// a proof checking mode that does not eagerly check rule applications
if (!expected.isNull())
{
- if (options::proofCheck() == options::ProofCheckMode::LAZY
- || options::proofCheck() == options::ProofCheckMode::NONE)
+ if (d_opts.proof.proofCheck == options::ProofCheckMode::LAZY
+ || d_opts.proof.proofCheck == options::ProofCheckMode::NONE)
{
return expected;
}
@@ -435,7 +437,7 @@ bool ProofNodeManager::updateNodeInternal(
{
Assert(pn != nullptr);
// ---------------- check for cyclic
- if (options::proofCheck() == options::ProofCheckMode::EAGER)
+ if (d_opts.proof.proofCheck == options::ProofCheckMode::EAGER)
{
std::unordered_set<const ProofNode*> visited;
for (const std::shared_ptr<ProofNode>& cpc : children)
diff --git a/src/proof/proof_node_manager.h b/src/proof/proof_node_manager.h
index 533f6d173..5926a5f2e 100644
--- a/src/proof/proof_node_manager.h
+++ b/src/proof/proof_node_manager.h
@@ -27,6 +27,7 @@ namespace cvc5 {
class ProofChecker;
class ProofNode;
+class Options;
namespace theory {
class Rewriter;
@@ -58,7 +59,9 @@ class Rewriter;
class ProofNodeManager
{
public:
- ProofNodeManager(theory::Rewriter* rr, ProofChecker* pc = nullptr);
+ ProofNodeManager(const Options& opts,
+ theory::Rewriter* rr,
+ ProofChecker* pc = nullptr);
~ProofNodeManager() {}
/**
* This constructs a ProofNode with the given arguments. The expected
@@ -188,6 +191,8 @@ class ProofNodeManager
static ProofNode* cancelDoubleSymm(ProofNode* pn);
private:
+ /** Reference to the options */
+ const Options& d_opts;
/** The rewriter */
theory::Rewriter* d_rewriter;
/** The (optional) proof checker */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback