35 RegionResult const& initialResult,
bool sampleVerticesOfRegion,
37 localMonotonicityResult) {
38 RegionResult currentResult = getImpreciseChecker().analyzeRegion(env, region, hypothesis, initialResult,
false);
41 applyHintsToPreciseChecker();
48 bool preciseResult = getPreciseChecker()
49 .check(env, region, parameterOptDir)
50 ->asExplicitQualitativeCheckResult()[*getPreciseChecker().getConsideredParametricModel().getInitialStates().begin()];
53 if (!preciseResultAgrees) {
61 preciseResult = getPreciseChecker()
62 .check(env, region, parameterOptDir)
63 ->asExplicitQualitativeCheckResult()[*getPreciseChecker().getConsideredParametricModel().getInitialStates().begin()];
64 if (preciseResult && parameterOptDir == getPreciseChecker().getCurrentCheckTask().getOptimizationDirection()) {
66 }
else if (!preciseResult && parameterOptDir ==
storm::solver::invert(getPreciseChecker().getCurrentCheckTask().getOptimizationDirection())) {
74 currentResult = getPreciseChecker().sampleVertices(env, region, currentResult);
virtual RegionResult analyzeRegion(Environment const &env, storm::storage::ParameterRegion< typename SparseModelType::ValueType > const ®ion, RegionResultHypothesis const &hypothesis=RegionResultHypothesis::Unknown, RegionResult const &initialResult=RegionResult::Unknown, bool sampleVerticesOfRegion=false, std::shared_ptr< storm::analysis::LocalMonotonicityResult< typename RegionModelChecker< typename SparseModelType::ValueType >::VariableType > > localMonotonicityResult=nullptr) override
Analyzes the given region by means of parameter lifting.