carl
24.04
Computer ARithmetic Library
|
#include <ModelFormulaSubstitution.h>
Public Member Functions | |
ModelFormulaSubstitution (const Formula< Poly > &f) | |
virtual void | multiplyBy (const Rational &) |
Multiply this model substitution by a rational. More... | |
virtual void | add (const Rational &) |
Add a rational to this model substitution. More... | |
virtual ModelSubstitutionPtr< Rational, Poly > | clone () const |
Create a copy of this model substitution. More... | |
virtual Formula< Poly > | representingFormula (const ModelVariable &mv) |
virtual ModelValue< Rational, Poly > | evaluateSubstitution (const Model< Rational, Poly > &m) const |
Evaluate this substitution with respect to the given model. More... | |
virtual bool | dependsOn (const ModelVariable &var) const |
Check if this substitution needs the given model variable. More... | |
virtual void | print (std::ostream &os) const |
Print this substitution to the given output stream. More... | |
const Formula< Poly > & | getFormula () const |
const ModelValue< Rational, Poly > & | evaluate (const Model< Rational, Poly > &model) const |
void | resetCache () const |
template<typename Iterator > | |
const ModelValue< Rational, Poly > & | getModelValue (Iterator _mvit, Model< Rational, Poly > &_model) |
Private Types | |
using | Super = ModelSubstitution< Rational, Poly > |
Private Attributes | |
Formula< Poly > | mFormula |
std::optional< ModelValue< Rational, Poly > > | mCachedValue |
Definition at line 8 of file ModelFormulaSubstitution.h.
|
private |
Definition at line 10 of file ModelFormulaSubstitution.h.
|
inline |
Definition at line 13 of file ModelFormulaSubstitution.h.
|
inlinevirtual |
Add a rational to this model substitution.
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 16 of file ModelFormulaSubstitution.h.
|
inlinevirtual |
Create a copy of this model substitution.
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 17 of file ModelFormulaSubstitution.h.
|
inlinevirtual |
Check if this substitution needs the given model variable.
Reimplemented from carl::ModelSubstitution< Rational, Poly >.
Definition at line 27 of file ModelFormulaSubstitution.h.
|
inlineinherited |
Definition at line 37 of file ModelSubstitution.h.
|
inlinevirtual |
Evaluate this substitution with respect to the given model.
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 24 of file ModelFormulaSubstitution.h.
|
inline |
Definition at line 43 of file ModelFormulaSubstitution.h.
|
inlineinherited |
|
inlinevirtual |
Multiply this model substitution by a rational.
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 15 of file ModelFormulaSubstitution.h.
|
inlinevirtual |
Print this substitution to the given output stream.
Reimplemented from carl::ModelSubstitution< Rational, Poly >.
Definition at line 39 of file ModelFormulaSubstitution.h.
|
inlinevirtual |
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 20 of file ModelFormulaSubstitution.h.
|
inlineinherited |
Definition at line 43 of file ModelSubstitution.h.
|
mutableprivateinherited |
Definition at line 28 of file ModelSubstitution.h.
|
private |
Definition at line 11 of file ModelFormulaSubstitution.h.