3#include <boost/optional.hpp>
16template<storm::dd::DdType Type,
typename ValueType>
27template<storm::dd::DdType Type,
typename ValueType =
double>
60 Options(std::vector<std::shared_ptr<storm::logic::Formula const>>
const& formulas);
88 void addLabel(std::string
const& labelName);
116 boost::optional<std::map<storm::expressions::Variable, storm::expressions::Expression>>
constantDefinitions;
Helper class that optionally holds a reference to an object of type T.
std::shared_ptr< storm::models::symbolic::Model< Type, ValueType > > build(storm::jani::Model const &model, Options const &options=Options())
Translates the given program into a symbolic model (i.e.
static storm::jani::ModelFeatures getSupportedJaniFeatures()
Returns the jani features with which this builder can deal natively.
static bool canHandle(storm::jani::Model const &model, storm::OptionalRef< std::vector< storm::jani::Property > const > properties=storm::NullRef)
A quick check to detect whether the given model is not supported.
Base class for all symbolic models.
constexpr NullRefType NullRef
bool buildAllLabels
A flag that indicates whether all labels are to be built. In this case, the label names are to be ign...
void setTerminalStatesFromFormula(storm::logic::Formula const &formula)
Analyzes the given formula and sets an expression for the states states of the model that can be trea...
Options(bool buildAllLabels=false, bool buildAllRewardModels=false, bool applyMaximumProgressAssumption=true)
Creates an object representing the default building options.
storm::builder::TerminalStates terminalStates
bool isBuildAllRewardModelsSet() const
Retrieves whether the flag to build all reward models is set.
bool buildAllRewardModels
bool applyMaximumProgressAssumption
A flag that indicates whether the maximum progress assumption should be applied.
std::set< std::string > rewardModelsToBuild
void preserveFormula(storm::logic::Formula const &formula)
Changes the options in a way that ensures that the given formula can be checked on the model once it ...
void addLabel(std::string const &labelName)
Adds the given label to the ones that are supposed to be built.
std::set< std::string > const & getRewardModelNames() const
Retrieves the names of the reward models to build.
boost::optional< std::map< storm::expressions::Variable, storm::expressions::Expression > > constantDefinitions
std::set< std::string > labelNames
A set of labels to build.
bool isBuildAllLabelsSet() const
Retrieves whether the flag to build all labels is set.