model_checking¶
- model_checking(
- model,
- property: Property,
- *,
- only_initial_states: bool = False,
- extract_scheduler: bool = False,
- force_fully_observable: bool = False,
- hint: ModelCheckerHint | None = None,
- uncertainty_resolution_mode: UncertaintyResolutionMode | None = None,
- engine: Engine | None = None,
- environment: Environment | None = None,
Model check a property on a model.
Supports sparse and symbolic models, parametric models, interval models and multi-objective properties.
- Parameters:
model – The model (sparse or symbolic).
property – The property (or formula) to check.
only_initial_states – If True, only the results for the initial states are computed. Otherwise, the results for all states are computed.
extract_scheduler – If True, an optimal scheduler is extracted (if supported). Only supported by the sparse engine.
force_fully_observable – If True, a POMDP is treated as a fully observable MDP. Must be set for POMDPs.
hint – (optional) Hint that may speed up the computation. Only supported by the sparse engine.
uncertainty_resolution_mode – How uncertainty is resolved. Required for interval models, not allowed otherwise.
engine – (optional) Engine to use. Defaults to the sparse engine for sparse models and the DD engine for symbolic models.
environment – (optional) Environment configuring the solvers. Defaults to
stormpy.environments.default().
- Returns:
The model checking result, e.g. an
stormpy.results.ExplicitQuantitativeCheckResult. Useresult[state]to get the value for a state together with its sound bounds as astormpy.results.BoundedValue, orresult.get_value(state)to get the value only.