diff --git a/src/adapters/CarlAdapter.h b/src/adapters/CarlAdapter.h index d31802717..81ddf2f8a 100644 --- a/src/adapters/CarlAdapter.h +++ b/src/adapters/CarlAdapter.h @@ -7,11 +7,13 @@ #ifdef STORM_HAVE_CARL #include +#include #include #include #include -#include #include +#include +#include namespace carl { // Define hash values for all polynomials and rational function. @@ -35,11 +37,12 @@ namespace carl { } namespace storm { - typedef carl::Variable Variable; - typedef carl::MultivariatePolynomial RawPolynomial; + typedef mpq_class RationalNumber; + typedef carl::Variable Variable; + typedef carl::MultivariatePolynomial RawPolynomial; typedef carl::FactorizedPolynomial Polynomial; - typedef carl::CompareRelation CompareRelation; - typedef carl::RationalFunction RationalFunction; + typedef carl::Relation CompareRelation; + typedef carl::RationalFunction RationalFunction; } #endif diff --git a/src/storage/expressions/ToRationalFunctionVisitor.cpp b/src/storage/expressions/ToRationalFunctionVisitor.cpp index 187474663..55840c301 100644 --- a/src/storage/expressions/ToRationalFunctionVisitor.cpp +++ b/src/storage/expressions/ToRationalFunctionVisitor.cpp @@ -87,12 +87,12 @@ namespace storm { template boost::any ToRationalFunctionVisitor::visit(IntegerLiteralExpression const& expression) { - return RationalFunctionType(typename RationalFunctionType::PolyType(typename RationalFunctionType::CoeffType(expression.getValue()))); + return RationalFunctionType(carl::rationalize(static_cast(expression.getValue()))); } template boost::any ToRationalFunctionVisitor::visit(DoubleLiteralExpression const& expression) { - return RationalFunctionType(carl::rationalize(expression.getValue())); + return RationalFunctionType(carl::rationalize(expression.getValue())); } template class ToRationalFunctionVisitor; diff --git a/src/utility/constants.cpp b/src/utility/constants.cpp index d4625b578..76ee74592 100644 --- a/src/utility/constants.cpp +++ b/src/utility/constants.cpp @@ -25,7 +25,7 @@ namespace storm { template<> storm::RationalFunction infinity() { // FIXME: this does not work. - return storm::RationalFunction(carl::rationalize(std::numeric_limits::infinity())); + return storm::RationalFunction(carl::rationalize(std::numeric_limits::infinity())); } #endif