Plugin
This class encapsulates a user-specified solver plugin.
It is configured via
cvc5::Solver::addPlugin()
.
-
class
Plugin
-
A cvc5 plugin.
Public Functions
-
Plugin
(
TermManager
&
tm
)
-
virtual
~Plugin
(
)
=
default
-
virtual
std
::
vector
<
Term
>
check
(
)
-
Call to check, return vector of lemmas to add to the SAT solver. This method is called periodically, roughly at every SAT decision.
- Returns :
-
The vector of lemmas to add to the SAT solver.
-
virtual
void
notifySatClause
(
const
Term
&
clause
)
-
Notify SAT clause, called when
clause
is learned by the SAT solver.- Parameters :
-
clause – The learned clause.
-
virtual
void
notifyTheoryLemma
(
const
Term
&
lemma
)
-
Notify theory lemma, called when
lemma
is sent by a theory solver.- Parameters :
-
lemma – The theory lemma.
-
virtual
std
::
string
getName
(
)
=
0
-
Get the name of the plugin (for debugging).
- Returns :
-
The name of the plugin.
-
Plugin
(
TermManager
&
tm
)