Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
ToParametricSettings.cpp
Go to the documentation of this file.
2
7
9
10namespace storm {
11namespace settings {
12namespace modules {
13
14const std::string ToParametricSettings::moduleName = "toparametric";
15const std::string mecReductionOption = "mecreduction";
16const std::string fscmode = "fscmode";
17const std::vector<std::string> fscModes = {"standard", "simple-linear", "simple-linear-inverse"};
18const std::string transformBinaryOption = "transformbinary";
19const std::string transformSimpleOption = "transformsimple";
20const std::string allowSimplificationOption = "simplify-pmc";
21
22ToParametricSettings::ToParametricSettings() : ModuleSettings(moduleName) {
23 this->addOption(
24 storm::settings::OptionBuilder(moduleName, mecReductionOption, false, "Reduces the model size by analyzing maximal end components").build());
25 this->addOption(storm::settings::OptionBuilder(moduleName, fscmode, false, "Sets the way the pMC is obtained")
26 .addArgument(storm::settings::ArgumentBuilder::createStringArgument("type", "type name")
28 .setDefaultValueString("standard")
29 .build())
30 .build());
31 this->addOption(storm::settings::OptionBuilder(moduleName, transformBinaryOption, false, "Transforms the pomdp to a binary pomdp.").build());
32 this->addOption(storm::settings::OptionBuilder(moduleName, transformSimpleOption, false, "Transforms the pomdp to a binary and simple pomdp.").build());
33 this->addOption(
34 storm::settings::OptionBuilder(moduleName, allowSimplificationOption, false, "After obtaining a pMC, should further simplifications be applied?.")
35 .build());
36}
37
38bool ToParametricSettings::isMecReductionSet() const {
39 return this->getOption(mecReductionOption).getHasOptionBeenSet();
40}
41
42std::string ToParametricSettings::getFscApplicationTypeString() const {
43 return this->getOption(fscmode).getArgumentByName("type").getValueAsString();
44}
45
46bool ToParametricSettings::isTransformBinarySet() const {
47 return this->getOption(transformBinaryOption).getHasOptionBeenSet();
48}
49
50bool ToParametricSettings::isTransformSimpleSet() const {
51 return this->getOption(transformSimpleOption).getHasOptionBeenSet();
52}
53
54bool ToParametricSettings::allowPostSimplifications() const {
55 return this->getOption(allowSimplificationOption).getHasOptionBeenSet();
56}
57
58void ToParametricSettings::finalize() {}
59
60bool ToParametricSettings::check() const {
61 return true;
62}
63
64} // namespace modules
65} // namespace settings
66} // namespace storm
static ArgumentBuilder createStringArgument(std::string const &name, std::string const &description)
Creates a string argument with the given parameters.
static std::shared_ptr< ArgumentValidator< std::string > > createMultipleChoiceValidator(std::vector< std::string > const &choices)
This class provides the interface to create an option...
This is the base class of the settings for a particular module.
const std::vector< std::string > fscModes
const std::string transformSimpleOption
const std::string transformBinaryOption
const std::string allowSimplificationOption