Matthias Volk
7 years ago
2 changed files with 61 additions and 2 deletions
@ -0,0 +1,48 @@ |
|||||
|
import stormpy |
||||
|
import stormpy.core |
||||
|
import stormpy.info |
||||
|
|
||||
|
import pycarl |
||||
|
import pycarl.core |
||||
|
|
||||
|
import stormpy.examples |
||||
|
import stormpy.examples.files |
||||
|
|
||||
|
import stormpy._config as config |
||||
|
|
||||
|
|
||||
|
def example_getting_started_05(): |
||||
|
# Check support for parameters |
||||
|
if not config.storm_with_pars: |
||||
|
print("Support parameters is missing. Try building storm-pars.") |
||||
|
return |
||||
|
|
||||
|
import stormpy.pars |
||||
|
from pycarl.formula import FormulaType, Relation |
||||
|
if stormpy.info.storm_ratfunc_use_cln(): |
||||
|
import pycarl.cln.formula |
||||
|
else: |
||||
|
import pycarl.gmp.formula |
||||
|
|
||||
|
path = stormpy.examples.files.prism_pdtmc_die |
||||
|
prism_program = stormpy.parse_prism_program(path) |
||||
|
|
||||
|
formula_str = "P=? [F s=7 & d=2]" |
||||
|
properties = stormpy.parse_properties_for_prism_program(formula_str, prism_program) |
||||
|
model = stormpy.build_parametric_model(prism_program, properties) |
||||
|
|
||||
|
initial_state = model.initial_states[0] |
||||
|
result = stormpy.model_checking(model, properties[0]) |
||||
|
print("Result: {}".format(result.at(initial_state))) |
||||
|
|
||||
|
collector = stormpy.ConstraintCollector(model) |
||||
|
print("Well formed constraints:") |
||||
|
for formula in collector.wellformed_constraints: |
||||
|
print(formula.get_constraint()) |
||||
|
print("Graph preserving constraints:") |
||||
|
for formula in collector.graph_preserving_constraints: |
||||
|
print(formula.get_constraint()) |
||||
|
|
||||
|
|
||||
|
if __name__ == '__main__': |
||||
|
example_getting_started_05() |
Write
Preview
Loading…
Cancel
Save
Reference in new issue