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.
2998 lines
113 KiB
2998 lines
113 KiB
|
|
{
|
|
"jani-version":1,
|
|
"features":[
|
|
"derived-operators"
|
|
],
|
|
"name":"Converted from PRISM by IscasMC",
|
|
"type":"mdp",
|
|
"actions":[
|
|
{
|
|
"name":"reset"
|
|
},
|
|
{
|
|
"name":"time"
|
|
},
|
|
{
|
|
"name":"send"
|
|
},
|
|
{
|
|
"name":"tau__"
|
|
},
|
|
{
|
|
"name":"rec"
|
|
},
|
|
{
|
|
"name":"done"
|
|
}
|
|
],
|
|
"constants":[
|
|
{
|
|
"name":"reset",
|
|
"type":"bool"
|
|
},
|
|
{
|
|
"name":"T",
|
|
"type":"int"
|
|
},
|
|
{
|
|
"name":"N",
|
|
"type":"int"
|
|
},
|
|
{
|
|
"name":"K",
|
|
"type":"int"
|
|
}
|
|
],
|
|
"variables":[
|
|
{
|
|
"name":"b_ip7",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"b_ip6",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"b_ip5",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"b_ip4",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"b_ip3",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"b_ip2",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"b_ip1",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"b_ip0",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"n",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":8
|
|
}
|
|
},
|
|
{
|
|
"name":"n0",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":20
|
|
}
|
|
},
|
|
{
|
|
"name":"n1",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":8
|
|
}
|
|
},
|
|
{
|
|
"name":"b",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"z",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":1
|
|
}
|
|
},
|
|
{
|
|
"name":"ip_mess",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"x",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":60
|
|
}
|
|
},
|
|
{
|
|
"name":"y",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":10
|
|
}
|
|
},
|
|
{
|
|
"name":"coll",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":10
|
|
}
|
|
},
|
|
{
|
|
"name":"probes",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":"K"
|
|
}
|
|
},
|
|
{
|
|
"name":"mess",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":1
|
|
}
|
|
},
|
|
{
|
|
"name":"defend",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":1
|
|
}
|
|
},
|
|
{
|
|
"name":"ip",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":1,
|
|
"upper-bound":2
|
|
}
|
|
},
|
|
{
|
|
"name":"l",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":4
|
|
}
|
|
},
|
|
{
|
|
"name":"t",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"+",
|
|
"left":"T",
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
],
|
|
"initial-states":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"b_ip7",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b_ip6",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b_ip5",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b_ip4",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b_ip3",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b_ip2",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b_ip1",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b_ip0",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n0",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n1",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"z",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"ip_mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"x",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"y",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"coll",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"probes",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"defend",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"ip",
|
|
"right":1
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":1
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"automata":[
|
|
{
|
|
"name":"environment",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"reset",
|
|
"guard":{
|
|
"exp":true
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"n1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"n0",
|
|
"value":{
|
|
"op":"min",
|
|
"left":20,
|
|
"right":{
|
|
"op":"+",
|
|
"left":"n0",
|
|
"right":"n1"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"ref":"ip_mess",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
"reset",
|
|
0,
|
|
"n"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"ref":"b_ip7",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip6",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip5",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip4",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip3",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip2",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip0",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"time",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n0",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n1",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b",
|
|
"value":"b"
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"time",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":">",
|
|
"left":"b",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"z",
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"z",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"z",
|
|
"right":1
|
|
},
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b_ip0",
|
|
"value":"ip"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b_ip1",
|
|
"value":"ip"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b_ip2",
|
|
"value":"ip"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":3
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b_ip3",
|
|
"value":"ip"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":4
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b_ip4",
|
|
"value":"ip"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":5
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b_ip5",
|
|
"value":"ip"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":6
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b_ip6",
|
|
"value":"ip"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":7
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b_ip7",
|
|
"value":"ip"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"n",
|
|
"right":8
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"n",
|
|
"value":"n"
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":">",
|
|
"left":"n",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":0.1000000
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"ip_mess",
|
|
"value":"b_ip0"
|
|
},
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"-",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
},
|
|
{
|
|
"ref":"b_ip7",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip6",
|
|
"value":"b_ip7"
|
|
},
|
|
{
|
|
"ref":"b_ip5",
|
|
"value":"b_ip6"
|
|
},
|
|
{
|
|
"ref":"b_ip4",
|
|
"value":"b_ip5"
|
|
},
|
|
{
|
|
"ref":"b_ip3",
|
|
"value":"b_ip4"
|
|
},
|
|
{
|
|
"ref":"b_ip2",
|
|
"value":"b_ip3"
|
|
},
|
|
{
|
|
"ref":"b_ip1",
|
|
"value":"b_ip2"
|
|
},
|
|
{
|
|
"ref":"b_ip0",
|
|
"value":"b_ip1"
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":0.1000000
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"n",
|
|
"value":{
|
|
"op":"-",
|
|
"left":"n",
|
|
"right":1
|
|
}
|
|
},
|
|
{
|
|
"ref":"b_ip7",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"b_ip6",
|
|
"value":"b_ip7"
|
|
},
|
|
{
|
|
"ref":"b_ip5",
|
|
"value":"b_ip6"
|
|
},
|
|
{
|
|
"ref":"b_ip4",
|
|
"value":"b_ip5"
|
|
},
|
|
{
|
|
"ref":"b_ip3",
|
|
"value":"b_ip4"
|
|
},
|
|
{
|
|
"ref":"b_ip2",
|
|
"value":"b_ip3"
|
|
},
|
|
{
|
|
"ref":"b_ip1",
|
|
"value":"b_ip2"
|
|
},
|
|
{
|
|
"ref":"b_ip0",
|
|
"value":"b_ip1"
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":">",
|
|
"left":"n0",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":0.1000000
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip_mess",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"n0",
|
|
"value":{
|
|
"op":"-",
|
|
"left":"n0",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":0.1000000
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"n0",
|
|
"value":{
|
|
"op":"-",
|
|
"left":"n0",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":">",
|
|
"left":"n1",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":0.1000000
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip_mess",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"n1",
|
|
"value":{
|
|
"op":"-",
|
|
"left":"n1",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":0.1000000
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"n1",
|
|
"value":{
|
|
"op":"-",
|
|
"left":"n1",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":1
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"ip_mess",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"z",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"n0",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"n0",
|
|
"right":1
|
|
},
|
|
"right":20
|
|
}
|
|
},
|
|
{
|
|
"ref":"ip_mess",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":1
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"ip_mess",
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"z",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"n1",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"n1",
|
|
"right":1
|
|
},
|
|
"right":8
|
|
}
|
|
},
|
|
{
|
|
"ref":"ip_mess",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":1
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"ip_mess",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"z",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"ip_mess",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"rec",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":">",
|
|
"left":"l",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"b",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"b",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"z",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"ip_mess",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"host0",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"reset",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":1
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"rec",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":1
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"coll",
|
|
"right":10
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":2
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":2
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"time",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"coll",
|
|
"right":10
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"x",
|
|
"right":60
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"x",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"x",
|
|
"right":1
|
|
},
|
|
"right":60
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"coll",
|
|
"right":10
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"x",
|
|
"right":60
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":2
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"*",
|
|
"left":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"-",
|
|
"left":1,
|
|
"right":{
|
|
"op":"/",
|
|
"left":"N",
|
|
"right":65024
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"ip",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":2
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"time",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":2
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"x",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"x",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"x",
|
|
"right":1
|
|
},
|
|
"right":2
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":2
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"x",
|
|
"right":2
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"probes",
|
|
"right":"K"
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"probes",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"probes",
|
|
"right":1
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":2
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"x",
|
|
"right":2
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"probes",
|
|
"right":"K"
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"probes",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"coll",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"rec",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":2
|
|
},
|
|
"right":{
|
|
"op":"≠",
|
|
"left":"ip_mess",
|
|
"right":"ip"
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":"l"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"rec",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":2
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"ip_mess",
|
|
"right":"ip"
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"coll",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"coll",
|
|
"right":1
|
|
},
|
|
"right":10
|
|
}
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"probes",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"time",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"defend",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"x",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"x",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"x",
|
|
"right":1
|
|
},
|
|
"right":60
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"time",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"defend",
|
|
"right":1
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"x",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"x",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"x",
|
|
"right":1
|
|
},
|
|
"right":60
|
|
}
|
|
},
|
|
{
|
|
"ref":"y",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"y",
|
|
"right":1
|
|
},
|
|
"right":10
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"rec",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"ip_mess",
|
|
"right":"ip"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"defend",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"≥",
|
|
"left":"y",
|
|
"right":10
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"defend",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"mess",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"y",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"rec",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"ip_mess",
|
|
"right":"ip"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"defend",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"y",
|
|
"right":10
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"probes",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"defend",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"y",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"rec",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"≠",
|
|
"left":"ip_mess",
|
|
"right":"ip"
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":"l"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"mess",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"x",
|
|
"right":2
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"probes",
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"probes",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"probes",
|
|
"right":1
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"send",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"mess",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"x",
|
|
"right":2
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"probes",
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"x",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"y",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"probes",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":4
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"timer",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"time",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"≤",
|
|
"left":"t",
|
|
"right":"T"
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"t",
|
|
"value":{
|
|
"op":"min",
|
|
"left":{
|
|
"op":"+",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"+",
|
|
"left":"T",
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"done",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l",
|
|
"right":4
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"t",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"T",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"system":{
|
|
"elements":[
|
|
{
|
|
"automaton":"environment"
|
|
},
|
|
{
|
|
"automaton":"host0"
|
|
},
|
|
{
|
|
"automaton":"timer"
|
|
}
|
|
],
|
|
"syncs":[
|
|
{
|
|
"synchronise":[
|
|
"time",
|
|
"time",
|
|
"time"
|
|
],
|
|
"result":"time"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
"reset",
|
|
"reset",
|
|
null
|
|
],
|
|
"result":"reset"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
"send",
|
|
"send",
|
|
null
|
|
],
|
|
"result":"send"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
"rec",
|
|
"rec",
|
|
null
|
|
],
|
|
"result":"rec"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
"tau__",
|
|
null,
|
|
null
|
|
],
|
|
"result":"tau__"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
null,
|
|
"tau__",
|
|
null
|
|
],
|
|
"result":"tau__"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
null,
|
|
null,
|
|
"done"
|
|
],
|
|
"result":"done"
|
|
}
|
|
]
|
|
}
|
|
}
|