9template<
typename ParametricType>
15template<
typename ParametricType>
18 annotation.
globalMonotonicity = std::make_shared<storm::analysis::MonotonicityResult<VariableType>>();
19 bool allMonotone =
true;
20 for (
auto const& parameter :
region.region.getVariables()) {
30 region.monotonicityAnnotation.data = annotation;
33template<
typename ParametricType>
39template<
typename ParametricType>
44template<
typename ParametricType>
49template<
typename ParametricType>
54template<
typename ParametricType>
57 std::map<VariableType, MonotonicityKind> result;
58 if (
auto globalMonotonicity =
region.monotonicityAnnotation.getGlobalMonotonicityResult(); globalMonotonicity.has_value()) {
59 for (
auto const& parameter :
region.region.getVariables()) {
61 result.emplace(parameter, monRes);
storm::analysis::MonotonicityKind MonotonicityKind
virtual void initializeMonotonicity(storm::Environment const &env, AnnotatedRegion< ParametricType > ®ion)
Initializes the monotonicity information for the given region.
virtual bool requiresInteractionWithRegionModelChecker() const
Returns true, if a region model checker needs to implement specific methods to properly use this back...
void setMonotoneParameter(VariableType const ¶meter, MonotonicityKind const &kind)
Sets parameters that are assumed to be monotone throughout the analysis.
virtual bool recommendModelSimplifications() const
Returns whether additional model simplifications are recommended when using this backend.
virtual void updateMonotonicity(storm::Environment const &env, AnnotatedRegion< ParametricType > ®ion)
Updates the monotonicity information for the given region.
storm::utility::parametric::VariableType_t< ParametricType > VariableType
std::map< VariableType, MonotonicityKind > globallyKnownMonotonicityInformation
virtual void updateMonotonicityBeforeSplitting(storm::Environment const &env, AnnotatedRegion< ParametricType > ®ion)
Updates the monotonicity information for the given region right before splitting it.
virtual std::map< VariableType, MonotonicityKind > getOptimisticMonotonicityApproximation(AnnotatedRegion< ParametricType > const ®ion)
Returns an optimistic approximation of the monotonicity of the parameters in this region.
#define STORM_LOG_ASSERT(cond, message)
bool isMonotone(MonotonicityKind kind)
std::shared_ptr< storm::analysis::MonotonicityResult< VariableType > > globalMonotonicity