LazyCDProof::LazyCDProof(ProofNodeManager* pnm,
ProofGenerator* dpg,
context::Context* c,
- std::string name)
+ const std::string& name)
: CDProof(pnm, c, name), d_gens(c ? c : &d_context), d_defaultGen(dpg)
{
}
LazyCDProof(ProofNodeManager* pnm,
ProofGenerator* dpg = nullptr,
context::Context* c = nullptr,
- std::string name = "LazyCDProof");
+ const std::string& name = "LazyCDProof");
~LazyCDProof();
/**
* Get lazy proof for fact, or nullptr if it does not exist. This may
bool cyclic,
context::Context* c,
ProofGenerator* defGen,
- bool defRec)
+ bool defRec,
+ const std::string& name)
: d_manager(pnm),
d_cyclic(cyclic),
d_defRec(defRec),
d_context(),
d_gens(c ? c : &d_context),
- d_defGen(defGen)
+ d_defGen(defGen),
+ d_name(name)
{
}
return nullptr;
}
-std::string LazyCDProofChain::identify() const { return "LazyCDProofChain"; }
+std::string LazyCDProofChain::identify() const { return d_name; }
} // namespace cvc5
bool cyclic = true,
context::Context* c = nullptr,
ProofGenerator* defGen = nullptr,
- bool defRec = true);
+ bool defRec = true,
+ const std::string& name = "LazyCDProofChain");
~LazyCDProofChain();
/**
* Get lazy proof for fact, or nullptr if it does not exist, by connecting the
context::CDHashMap<Node, ProofGenerator*> d_gens;
/** The default proof generator (if one exists) */
ProofGenerator* d_defGen;
+ /** Name (for debugging) */
+ std::string d_name;
};
} // namespace cvc5
CDProof::CDProof(ProofNodeManager* pnm,
context::Context* c,
- std::string name,
+ const std::string& name,
bool autoSymm)
: d_manager(pnm),
d_context(),
*/
CDProof(ProofNodeManager* pnm,
context::Context* c = nullptr,
- std::string name = "CDProof",
+ const std::string& name = "CDProof",
bool autoSymm = true);
virtual ~CDProof();
/**
{
d_pnm = pnm;
d_epg.reset(new EagerProofGenerator(pnm, ctx));
- d_proofInternal.reset(
- new LazyCDProofChain(pnm, true, ctx, d_epg.get(), true));
+ d_proofInternal.reset(new LazyCDProofChain(
+ pnm, true, ctx, d_epg.get(), true, "CircuitPropInternalLazyChain"));
if (defParent != nullptr)
{
// If we provide a parent proof generator (defParent), we want the ASSUME
// leafs of proofs provided by this class to call the getProofFor method on
// the parent. To do this, we use a LazyCDProofChain.
- d_proofExternal.reset(
- new LazyCDProofChain(pnm, true, ctx, defParent, false));
+ d_proofExternal.reset(new LazyCDProofChain(
+ pnm, true, ctx, defParent, false, "CircuitPropExternalLazyChain"));
}
}