You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

2129 lines
32 KiB

{
"jani-version": 1,
"name": "modelName",
"type": "mdp",
"actions": [
{
"name": "done"
}
],
"variables": [
{
"name": "counter",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 60
},
"initial-value": 30
},
{
"name": "fin1",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "fin2",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "fin3",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "fin4",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "fin5",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "fin6",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "coin1",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "coin2",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "coin3",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "coin4",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "coin5",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
},
{
"name": "coin6",
"type": {
"kind": "bounded",
"base": "int",
"lower-bound": 0,
"upper-bound": 1
},
"initial-value": 0
}
],
"rewards": [
{
"name": "coin_flips"
}
],
"properties": [
{
"name": "C1",
"bound": 1,
"op": "≥",
"reach": {
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "=",
"args": [
"fin1",
1
]
},
{
"op": "=",
"args": [
"fin2",
1
]
}
]
},
{
"op": "=",
"args": [
"fin3",
1
]
}
]
},
{
"op": "=",
"args": [
"fin4",
1
]
}
]
},
{
"op": "=",
"args": [
"fin5",
1
]
}
]
},
{
"op": "=",
"args": [
"fin6",
1
]
}
]
},
"type": "probability-comparison"
},
{
"name": "C2",
"reach": {
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "∧",
"args": [
{
"op": "=",
"args": [
"fin1",
1
]
},
{
"op": "=",
"args": [
"fin2",
1
]
}
]
},
{
"op": "=",
"args": [
"fin3",
1
]
}
]
},
{
"op": "=",
"args": [
"fin4",
1
]
}
]
},
{
"op": "=",
"args": [
"fin5",
1
]
}
]
},
{
"op": "=",
"args": [
"fin6",
1
]
}
]
},
{
"op": "=",
"args": [
"coin1",
1
]
}
]
},
{
"op": "=",
"args": [
"coin2",
1
]
}
]
},
{
"op": "=",
"args": [
"coin3",
1
]
}
]
},
{
"op": "=",
"args": [
"coin4",
1
]
}
]
},
{
"op": "=",
"args": [
"coin5",
1
]
}
]
},
{
"op": "=",
"args": [
"coin6",
1
]
}
]
},
"type": "probability-min-query"
}
],
"automata": [
{
"name": "Tourist1",
"variables": [],
"locations": [
{
"name": "l_0"
},
{
"name": "l_1"
},
{
"name": "l_2"
},
{
"name": "l_3"
}
],
"initial-location": "l_0",
"edges": [
{
"location": "l_0",
"guard": true,
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin1",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin1",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin1",
0
]
},
{
"op": ">",
"args": [
"counter",
0
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "-",
"args": [
"counter",
1
]
}
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin1",
1
]
},
{
"op": "<",
"args": [
"counter",
60
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "+",
"args": [
"counter",
1
]
}
},
{
"ref": "coin1",
"value": 0
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≤",
"args": [
"counter",
6
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin1",
"value": 0
},
{
"ref": "fin1",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≥",
"args": [
"counter",
54
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin1",
"value": 1
},
{
"ref": "fin1",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "∧",
"args": [
{
"op": ">",
"args": [
"counter",
6
]
},
{
"op": "<",
"args": [
"counter",
54
]
}
]
},
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin1",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin1",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_3",
"action": "done",
"guard": true,
"destinations": [
{
"probability": 1,
"location": "l_3"
}
]
}
]
},
{
"name": "Tourist2",
"variables": [],
"locations": [
{
"name": "l_0"
},
{
"name": "l_1"
},
{
"name": "l_2"
},
{
"name": "l_3"
}
],
"initial-location": "l_0",
"edges": [
{
"location": "l_0",
"guard": true,
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin2",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin2",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin2",
0
]
},
{
"op": ">",
"args": [
"counter",
0
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "-",
"args": [
"counter",
1
]
}
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin2",
1
]
},
{
"op": "<",
"args": [
"counter",
60
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "+",
"args": [
"counter",
1
]
}
},
{
"ref": "coin2",
"value": 0
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≤",
"args": [
"counter",
6
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin2",
"value": 0
},
{
"ref": "fin2",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≥",
"args": [
"counter",
54
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin2",
"value": 1
},
{
"ref": "fin2",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "∧",
"args": [
{
"op": ">",
"args": [
"counter",
6
]
},
{
"op": "<",
"args": [
"counter",
54
]
}
]
},
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin2",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin2",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_3",
"action": "done",
"guard": true,
"destinations": [
{
"probability": 1,
"location": "l_3"
}
]
}
]
},
{
"name": "Tourist3",
"variables": [],
"locations": [
{
"name": "l_0"
},
{
"name": "l_1"
},
{
"name": "l_2"
},
{
"name": "l_3"
}
],
"initial-location": "l_0",
"edges": [
{
"location": "l_0",
"guard": true,
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin3",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin3",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin3",
0
]
},
{
"op": ">",
"args": [
"counter",
0
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "-",
"args": [
"counter",
1
]
}
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin3",
1
]
},
{
"op": "<",
"args": [
"counter",
60
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "+",
"args": [
"counter",
1
]
}
},
{
"ref": "coin3",
"value": 0
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≤",
"args": [
"counter",
6
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin3",
"value": 0
},
{
"ref": "fin3",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≥",
"args": [
"counter",
54
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin3",
"value": 1
},
{
"ref": "fin3",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "∧",
"args": [
{
"op": ">",
"args": [
"counter",
6
]
},
{
"op": "<",
"args": [
"counter",
54
]
}
]
},
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin3",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin3",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_3",
"action": "done",
"guard": true,
"destinations": [
{
"probability": 1,
"location": "l_3"
}
]
}
]
},
{
"name": "Tourist4",
"variables": [],
"locations": [
{
"name": "l_0"
},
{
"name": "l_1"
},
{
"name": "l_2"
},
{
"name": "l_3"
}
],
"initial-location": "l_0",
"edges": [
{
"location": "l_0",
"guard": true,
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin4",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin4",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin4",
0
]
},
{
"op": ">",
"args": [
"counter",
0
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "-",
"args": [
"counter",
1
]
}
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin4",
1
]
},
{
"op": "<",
"args": [
"counter",
60
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "+",
"args": [
"counter",
1
]
}
},
{
"ref": "coin4",
"value": 0
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≤",
"args": [
"counter",
6
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin4",
"value": 0
},
{
"ref": "fin4",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≥",
"args": [
"counter",
54
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin4",
"value": 1
},
{
"ref": "fin4",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "∧",
"args": [
{
"op": ">",
"args": [
"counter",
6
]
},
{
"op": "<",
"args": [
"counter",
54
]
}
]
},
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin4",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin4",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_3",
"action": "done",
"guard": true,
"destinations": [
{
"probability": 1,
"location": "l_3"
}
]
}
]
},
{
"name": "Tourist5",
"variables": [],
"locations": [
{
"name": "l_0"
},
{
"name": "l_1"
},
{
"name": "l_2"
},
{
"name": "l_3"
}
],
"initial-location": "l_0",
"edges": [
{
"location": "l_0",
"guard": true,
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin5",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin5",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin5",
0
]
},
{
"op": ">",
"args": [
"counter",
0
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "-",
"args": [
"counter",
1
]
}
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin5",
1
]
},
{
"op": "<",
"args": [
"counter",
60
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "+",
"args": [
"counter",
1
]
}
},
{
"ref": "coin5",
"value": 0
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≤",
"args": [
"counter",
6
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin5",
"value": 0
},
{
"ref": "fin5",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≥",
"args": [
"counter",
54
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin5",
"value": 1
},
{
"ref": "fin5",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "∧",
"args": [
{
"op": ">",
"args": [
"counter",
6
]
},
{
"op": "<",
"args": [
"counter",
54
]
}
]
},
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin5",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin5",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_3",
"action": "done",
"guard": true,
"destinations": [
{
"probability": 1,
"location": "l_3"
}
]
}
]
},
{
"name": "Tourist6",
"variables": [],
"locations": [
{
"name": "l_0"
},
{
"name": "l_1"
},
{
"name": "l_2"
},
{
"name": "l_3"
}
],
"initial-location": "l_0",
"edges": [
{
"location": "l_0",
"guard": true,
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin6",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin6",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin6",
0
]
},
{
"op": ">",
"args": [
"counter",
0
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "-",
"args": [
"counter",
1
]
}
}
]
}
]
},
{
"location": "l_1",
"guard": {
"op": "∧",
"args": [
{
"op": "=",
"args": [
"coin6",
1
]
},
{
"op": "<",
"args": [
"counter",
60
]
}
]
},
"destinations": [
{
"probability": 1,
"location": "l_2",
"assignments": [
{
"ref": "counter",
"value": {
"op": "+",
"args": [
"counter",
1
]
}
},
{
"ref": "coin6",
"value": 0
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≤",
"args": [
"counter",
6
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin6",
"value": 0
},
{
"ref": "fin6",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "≥",
"args": [
"counter",
54
]
},
"destinations": [
{
"probability": 1,
"location": "l_3",
"assignments": [
{
"ref": "coin6",
"value": 1
},
{
"ref": "fin6",
"value": 1
}
]
}
]
},
{
"location": "l_2",
"guard": {
"op": "∧",
"args": [
{
"op": ">",
"args": [
"counter",
6
]
},
{
"op": "<",
"args": [
"counter",
54
]
}
]
},
"destinations": [
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin6",
"value": 0
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
},
{
"probability": {
"op": "/",
"args": [
1,
2
]
},
"location": "l_1",
"assignments": [
{
"ref": "coin6",
"value": 1
}
],
"reward": [
{
"ref": "coin_flips",
"value": 1
}
]
}
]
},
{
"location": "l_3",
"action": "done",
"guard": true,
"destinations": [
{
"probability": 1,
"location": "l_3"
}
]
}
]
}
],
"system": {
"composition": "parallel",
"elements": [
{
"composition": "parallel",
"elements": [
{
"composition": "parallel",
"elements": [
{
"composition": "parallel",
"elements": [
{
"composition": "parallel",
"elements": [
"Tourist1",
"Tourist2"
],
"alphabet": [
"done"
]
},
"Tourist3"
],
"alphabet": [
"done"
]
},
"Tourist4"
],
"alphabet": [
"done"
]
},
"Tourist5"
],
"alphabet": [
"done"
]
},
"Tourist6"
],
"alphabet": [
"done"
]
}
}