@ -40,7 +40,11 @@ namespace storm {
return true ;
}
template < typename ValueType >
bool isInfinity ( ValueType const & a ) {
return a = = infinity < ValueType > ( ) ;
}
# ifdef STORM_HAVE_CARL
template < >
bool isOne ( storm : : RationalFunction const & a ) {
@ -56,7 +60,7 @@ namespace storm {
bool isConstant ( storm : : RationalFunction const & a ) {
return a . isConstant ( ) ;
}
template < >
bool isOne ( storm : : Polynomial const & a ) {
return a . isOne ( ) ;
@ -71,13 +75,19 @@ namespace storm {
bool isConstant ( storm : : Polynomial const & a ) {
return a . isConstant ( ) ;
}
template < >
storm : : RationalFunction infinity ( ) {
// FIXME: this should be treated more properly.
return storm : : RationalFunction ( - 1.0 ) ;
}
template < >
bool isInfinity ( storm : : RationalFunction const & a ) {
// FIXME: this should be treated more properly.
return a = = infinity < storm : : RationalFunction > ( ) ;
}
template < >
bool isOne ( storm : : RationalNumber const & a ) {
return carl : : isOne ( a ) ;
@ -166,7 +176,8 @@ namespace storm {
template bool isOne ( double const & value ) ;
template bool isZero ( double const & value ) ;
template bool isConstant ( double const & value ) ;
template bool isInfinity ( double const & value ) ;
template double one ( ) ;
template double zero ( ) ;
template double infinity ( ) ;
@ -182,7 +193,8 @@ namespace storm {
template bool isOne ( float const & value ) ;
template bool isZero ( float const & value ) ;
template bool isConstant ( float const & value ) ;
template bool isInfinity ( float const & value ) ;
template float one ( ) ;
template float zero ( ) ;
template float infinity ( ) ;
@ -198,7 +210,8 @@ namespace storm {
template bool isOne ( int const & value ) ;
template bool isZero ( int const & value ) ;
template bool isConstant ( int const & value ) ;
template bool isInfinity ( int const & value ) ;
template int one ( ) ;
template int zero ( ) ;
template int infinity ( ) ;
@ -214,6 +227,7 @@ namespace storm {
template bool isOne ( storm : : storage : : sparse : : state_type const & value ) ;
template bool isZero ( storm : : storage : : sparse : : state_type const & value ) ;
template bool isConstant ( storm : : storage : : sparse : : state_type const & value ) ;
template bool isInfinity ( storm : : storage : : sparse : : state_type const & value ) ;
template uint32_t one ( ) ;
template uint32_t zero ( ) ;
@ -235,7 +249,8 @@ namespace storm {
template bool isOne ( RationalFunction const & value ) ;
template bool isZero ( RationalFunction const & value ) ;
template bool isConstant ( RationalFunction const & value ) ;
template bool isInfinity ( RationalFunction const & value ) ;
template RationalFunction one ( ) ;
template RationalFunction zero ( ) ;
template storm : : RationalFunction infinity ( ) ;
@ -251,7 +266,8 @@ namespace storm {
template bool isOne ( RationalNumber const & value ) ;
template bool isZero ( RationalNumber const & value ) ;
template bool isConstant ( RationalNumber const & value ) ;
template bool isInfinity ( RationalNumber const & value ) ;
template RationalNumber one ( ) ;
template RationalNumber zero ( ) ;
@ -261,7 +277,8 @@ namespace storm {
template bool isOne ( Interval const & value ) ;
template bool isZero ( Interval const & value ) ;
template bool isConstant ( Interval const & value ) ;
template bool isInfinity ( Interval const & value ) ;
template Interval one ( ) ;
template Interval zero ( ) ;