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

{
"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"
}
]
}
}