Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
Dimension.h
Go to the documentation of this file.
1#pragma once
2
3#include <boost/optional.hpp>
4#include <cstdint>
5#include <memory>
6#include <string>
7
11
12namespace storm {
13namespace modelchecker {
14namespace helper {
15namespace rewardbounded {
16
18 Unbounded, // i.e., >=0 or <=B where B approaches infinity
19 UpperBound, // i.e., <=B where B is either a constant or a variable
20 LowerBound, // i.e., >B, where B is either a constant or a variable
21 LowerBoundInfinity // i.e., >B, where B approaches infinity
22};
23
24template<typename ValueType>
25struct Dimension {
27 std::shared_ptr<storm::logic::Formula const> formula;
28
31
33 boost::optional<std::string> memoryLabel;
34
37
39 ValueType scalingFactor;
40
43
45 boost::optional<uint64_t> maxValue;
46
48 boost::optional<storm::solver::OptimizationDirection> optimizationDirection;
49};
50} // namespace rewardbounded
51} // namespace helper
52} // namespace modelchecker
53} // namespace storm
A bit vector that is internally represented as a vector of 64-bit values.
Definition BitVector.h:16
boost::optional< std::string > memoryLabel
A label that indicates the states where this dimension is still relevant (i.e., it is yet unknown whe...
Definition Dimension.h:33
storm::storage::BitVector dependentDimensions
The dimensions that are not satisfiable whenever the bound of this dimension is violated.
Definition Dimension.h:42
boost::optional< storm::solver::OptimizationDirection > optimizationDirection
Whether we minimize/maximize the objective for this dimension.
Definition Dimension.h:48
boost::optional< uint64_t > maxValue
The maximal epoch value that needs to be considered for this dimension.
Definition Dimension.h:45
DimensionBoundType boundType
The type of the bound on this dimension.
Definition Dimension.h:36
std::shared_ptr< storm::logic::Formula const > formula
The formula describing this dimension.
Definition Dimension.h:27
uint64_t objectiveIndex
The index of the associated objective.
Definition Dimension.h:30
ValueType scalingFactor
Multiplying an epoch value with this factor yields the reward/cost in the original domain.
Definition Dimension.h:39