Storm 1.13.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
NumberTraits.h
Go to the documentation of this file.
1#pragma once
2
6
7#include <cstdint>
8
9namespace storm {
10template<typename ValueType>
12 static const bool SupportsExponential = false;
13 static const bool IsExact = false;
14};
15
16template<>
17struct NumberTraits<double> {
18 static const bool SupportsExponential = true;
19 static const bool IsExact = false;
20
21 typedef uint64_t IntegerType;
22};
23
24#if defined(STORM_HAVE_CLN)
25template<>
26struct NumberTraits<storm::ClnRationalNumber> {
27 static const bool SupportsExponential = false;
28 static const bool IsExact = true;
29
30 typedef ClnIntegerNumber IntegerType;
31};
32#endif
33
34#if defined(STORM_HAVE_GMP)
35template<>
36struct NumberTraits<storm::GmpRationalNumber> {
37 static const bool SupportsExponential = false;
38 static const bool IsExact = true;
39
40 typedef GmpIntegerNumber IntegerType;
41};
42#endif
43
44template<>
46 static const bool SupportsExponential = true;
47 static const bool IsExact = false;
48};
49
50template<>
52 static const bool SupportsExponential = true;
53 static const bool IsExact = true;
54};
55
56template<>
58 static const bool SupportsExponential = false;
59 static const bool IsExact = true;
60};
61} // namespace storm
carl::Interval< storm::RationalNumber > RationalInterval
carl::Interval< double > Interval
Interval type.
carl::RationalFunction< Polynomial, true > RationalFunction
static const bool SupportsExponential
static const bool SupportsExponential
static const bool IsExact