carl
24.04
Computer ARithmetic Library
|
#include <ModelPolynomialSubstitution.h>
Public Member Functions | |
ModelPolynomialSubstitution (const Poly &p) | |
const auto & | getPoly () const |
virtual void | multiplyBy (const Rational &n) |
Multiply this model substitution by a rational. More... | |
virtual void | add (const Rational &n) |
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 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 | |
Poly | mPoly |
std::optional< ModelValue< Rational, Poly > > | mCachedValue |
Definition at line 8 of file ModelPolynomialSubstitution.h.
|
private |
Definition at line 10 of file ModelPolynomialSubstitution.h.
|
inline |
Definition at line 13 of file ModelPolynomialSubstitution.h.
|
inlinevirtual |
Add a rational to this model substitution.
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 21 of file ModelPolynomialSubstitution.h.
|
inlinevirtual |
Create a copy of this model substitution.
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 25 of file ModelPolynomialSubstitution.h.
|
inlinevirtual |
Check if this substitution needs the given model variable.
Reimplemented from carl::ModelSubstitution< Rational, Poly >.
Definition at line 36 of file ModelPolynomialSubstitution.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 33 of file ModelPolynomialSubstitution.h.
|
inlineinherited |
|
inline |
Definition at line 15 of file ModelPolynomialSubstitution.h.
|
inlinevirtual |
Multiply this model substitution by a rational.
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 18 of file ModelPolynomialSubstitution.h.
|
inlinevirtual |
Print this substitution to the given output stream.
Reimplemented from carl::ModelSubstitution< Rational, Poly >.
Definition at line 40 of file ModelPolynomialSubstitution.h.
|
inlinevirtual |
Implements carl::ModelSubstitution< Rational, Poly >.
Definition at line 29 of file ModelPolynomialSubstitution.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 ModelPolynomialSubstitution.h.