22 std::set<uint64_t> dontCareElements;
25 for (std::size_t i = 0; i <
dft.nrElements(); i++) {
26 dontCareElements.insert(
dft.getElement(i)->id());
35 std::shared_ptr<storm::gspn::GSPN>
gspn(gspnTransformator.
obtainGSPN());
41 STORM_LOG_THROW(
false, storm::exceptions::NotSupportedException,
"Transformation to GSPN not supported for this data type.");
47 std::shared_ptr<storm::jani::Model> model(
builder.build(
"dft_gspn"));
50 std::shared_ptr<storm::expressions::ExpressionManager>
const& exprManager =
gspn.getExpressionManager();
54 builder.addTransientVariable(model.get(),
"failed", targetExpression);
55 auto failedFormula = std::make_shared<storm::logic::AtomicExpressionFormula>(targetExpression);
56 auto properties =
builder.getStandardProperties(model.get(), failedFormula,
"Failed",
"a failed state",
true);
This class represents the settings for operations concerning the DFT to GSPN transformation.
bool isExtendPriorities() const
Retrieves whether the experimental setting of priorities should be used.
bool isDisableSmartTransformation() const
Retrieves whether the smart transformation should be disabled.
bool isWriteToJaniSet() const
Retrieves whether the GSPN should be exported as a Jani file.
bool isMergeDCFailed() const
Retrieves whether the DC and failed place should be merged.
std::string getWriteToJaniFilename() const
Retrieves the jani filename for export.
This class represents the settings for DFT model checking.
bool isDisableDC() const
Retrieves whether the option to disable Dont Care propagation is set.
Represents a Dynamic Fault Tree.
storm::expressions::Expression getExpression() const
Retrieves an expression that represents the variable.
storm::expressions::Variable const & getExpressionVariable() const
Retrieves the associated expression variable.
#define STORM_LOG_THROW(cond, exception, message)
void exportJaniToFile(storm::jani::Model const &model, std::vector< storm::jani::Property > const &properties, std::string const &filename, bool compact)
std::shared_ptr< storm::jani::Model > transformToJani(storm::gspn::GSPN const &gspn, uint64_t toplevelFailedPlace)
Transform GSPN to Jani model.
std::pair< std::shared_ptr< storm::gspn::GSPN >, uint64_t > transformToGSPN(storm::dft::storage::DFT< double > const &dft)
SettingsType const & getModule()
Get module.