9namespace modelchecker {
11template<
typename SparseModelType,
typename ConstantType>
13 : parametricModel(parametricModel), instantiationsAreGraphPreserving(false) {
17template<
typename SparseModelType,
typename ConstantType>
20 currentFormula = checkTask.
getFormula().asSharedPointer();
21 currentCheckTask = std::make_unique<storm::modelchecker::CheckTask<storm::logic::Formula, ConstantType>>(
22 checkTask.
substituteFormula(*currentFormula).template convertValueType<ConstantType>());
25template<
typename SparseModelType,
typename ConstantType>
27 instantiationsAreGraphPreserving = value;
30template<
typename SparseModelType,
typename ConstantType>
32 return instantiationsAreGraphPreserving;
35template<
typename SparseModelType,
typename ConstantType>
37 return parametricModel;
CheckTask< NewFormulaType, ValueType > substituteFormula(NewFormulaType const &newFormula) const
Copies the check task from the source while replacing the formula with the new one.
FormulaType const & getFormula() const
Retrieves the formula from this task.
Class to efficiently check a formula on a parametric model with different parameter instantiations.
SparseInstantiationModelChecker(SparseModelType const ¶metricModel)
void specifyFormula(CheckTask< storm::logic::Formula, typename SparseModelType::ValueType > const &checkTask)
SparseModelType const & getOriginalModel() const
bool getInstantiationsAreGraphPreserving() const
void setInstantiationsAreGraphPreserving(bool value)