|
|
@ -81,7 +81,7 @@ namespace storm { |
|
|
|
} |
|
|
|
|
|
|
|
template <typename ParametricType, typename ConstantType> |
|
|
|
std::shared_ptr<storm::modelchecker::RegionModelChecker<ParametricType>> initializeParameterLiftingRegionModelChecker(Environment const& env, std::shared_ptr<storm::models::sparse::Model<ParametricType>> const& model, storm::modelchecker::CheckTask<storm::logic::Formula, ParametricType> const& task) { |
|
|
|
std::shared_ptr<storm::modelchecker::RegionModelChecker<ParametricType>> initializeParameterLiftingRegionModelChecker(Environment const& env, std::shared_ptr<storm::models::sparse::Model<ParametricType>> const& model, storm::modelchecker::CheckTask<storm::logic::Formula, ParametricType> const& task, bool generateSplitEstimates = false, bool allowModelSimplification = true) { |
|
|
|
|
|
|
|
STORM_LOG_WARN_COND(storm::utility::parameterlifting::validateParameterLiftingSound(*model, task.getFormula()), "Could not validate whether parameter lifting is applicable. Please validate manually..."); |
|
|
|
|
|
|
@ -105,13 +105,13 @@ namespace storm { |
|
|
|
STORM_LOG_THROW(false, storm::exceptions::InvalidOperationException, "Unable to perform parameterLifting on the provided model type."); |
|
|
|
} |
|
|
|
|
|
|
|
checker->specify(env, consideredModel, task); |
|
|
|
checker->specify(env, consideredModel, task, generateSplitEstimates, allowModelSimplification); |
|
|
|
|
|
|
|
return checker; |
|
|
|
} |
|
|
|
|
|
|
|
template <typename ParametricType, typename ImpreciseType, typename PreciseType> |
|
|
|
std::shared_ptr<storm::modelchecker::RegionModelChecker<ParametricType>> initializeValidatingRegionModelChecker(Environment const& env, std::shared_ptr<storm::models::sparse::Model<ParametricType>> const& model, storm::modelchecker::CheckTask<storm::logic::Formula, ParametricType> const& task) { |
|
|
|
std::shared_ptr<storm::modelchecker::RegionModelChecker<ParametricType>> initializeValidatingRegionModelChecker(Environment const& env, std::shared_ptr<storm::models::sparse::Model<ParametricType>> const& model, storm::modelchecker::CheckTask<storm::logic::Formula, ParametricType> const& task, bool generateSplitEstimates = false, bool allowModelSimplification = true) { |
|
|
|
|
|
|
|
STORM_LOG_WARN_COND(storm::utility::parameterlifting::validateParameterLiftingSound(*model, task.getFormula()), "Could not validate whether parameter lifting is applicable. Please validate manually..."); |
|
|
|
|
|
|
@ -135,7 +135,7 @@ namespace storm { |
|
|
|
STORM_LOG_THROW(false, storm::exceptions::InvalidOperationException, "Unable to perform parameterLifting on the provided model type."); |
|
|
|
} |
|
|
|
|
|
|
|
checker->specify(env, consideredModel, task); |
|
|
|
checker->specify(env, consideredModel, task, generateSplitEstimates, allowModelSimplification); |
|
|
|
|
|
|
|
return checker; |
|
|
|
} |
|
|
|