3 #include "../Formula.h"
20 template<
typename Pol>
22 const std::map<Variable,typename Formula<Pol>::PolynomialType>&
replacements;
30 template<
typename Pol>
42 template<
typename Pol>
53 template<
typename Pol,
typename Source,
typename Target>
55 std::map<Source,Target> tmp;
56 tmp.emplace(source, target);
59 template<
typename Pol>
64 template<
typename Pol>
69 template<
typename Pol>
74 template<
typename Pol>
carl is the main namespace for the library.
Coeff substitute(const Monomial &m, const std::map< Variable, Coeff > &substitutions)
Applies the given substitutions to a monomial.
Formula< Pol > visit_result(const Formula< Pol > &formula, Visitor func)
Recursively calls func on every subformula and return a new formula.
A Variable represents an algebraic variable that can be used throughout carl.
const BVTerm & rhs() const
const BVTerm & lhs() const
BVCompareRelation relation() const
static BVConstraint create(bool _consistent=true)
BVTerm substitute(const std::map< BVVariable, BVTerm > &) const
Represent an SMT formula, which can be an atom for some background theory or a boolean combination of...
Pol PolynomialType
A typedef for the template argument.
const Constraint< Pol > & constraint() const
const BVConstraint & bv_constraint() const
const std::map< Formula< Pol >, Formula< Pol > > & replacements
Formula< Pol > operator()(const Formula< Pol > &formula)
Substitutor(const std::map< Formula< Pol >, Formula< Pol >> &repl)
Formula< Pol > operator()(const Formula< Pol > &formula)
PolynomialSubstitutor(const std::map< Variable, typename Formula< Pol >::PolynomialType > &repl)
const std::map< Variable, typename Formula< Pol >::PolynomialType > & replacements
Formula< Pol > operator()(const Formula< Pol > &formula)
BitvectorSubstitutor(const std::map< BVVariable, BVTerm > &repl)
const std::map< BVVariable, BVTerm > & replacements
const std::map< UVariable, UFInstance > & replacements
UninterpretedSubstitutor(const std::map< UVariable, UFInstance > &repl)
Formula< Pol > operator()(const Formula< Pol > &formula)