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