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.
3817 lines
141 KiB
3817 lines
141 KiB
|
|
{
|
|
"jani-version":1,
|
|
"features":[
|
|
"derived-operators"
|
|
],
|
|
"name":"Converted from PRISM by IscasMC",
|
|
"type":"dtmc",
|
|
"actions":[
|
|
{
|
|
"name":"read"
|
|
},
|
|
{
|
|
"name":"done"
|
|
},
|
|
{
|
|
"name":"retry"
|
|
},
|
|
{
|
|
"name":"loop"
|
|
},
|
|
{
|
|
"name":"pick"
|
|
}
|
|
],
|
|
"variables":[
|
|
{
|
|
"name":"c",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":1,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"s1",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":3
|
|
}
|
|
},
|
|
{
|
|
"name":"u1",
|
|
"type":"bool"
|
|
},
|
|
{
|
|
"name":"v1",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"p1",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"s2",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":3
|
|
}
|
|
},
|
|
{
|
|
"name":"u2",
|
|
"type":"bool"
|
|
},
|
|
{
|
|
"name":"v2",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"p2",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"s3",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":3
|
|
}
|
|
},
|
|
{
|
|
"name":"u3",
|
|
"type":"bool"
|
|
},
|
|
{
|
|
"name":"v3",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"p3",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"s4",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":3
|
|
}
|
|
},
|
|
{
|
|
"name":"u4",
|
|
"type":"bool"
|
|
},
|
|
{
|
|
"name":"v4",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"p4",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"s5",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":3
|
|
}
|
|
},
|
|
{
|
|
"name":"u5",
|
|
"type":"bool"
|
|
},
|
|
{
|
|
"name":"v5",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"p5",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"s6",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":3
|
|
}
|
|
},
|
|
{
|
|
"name":"u6",
|
|
"type":"bool"
|
|
},
|
|
{
|
|
"name":"v6",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name":"p6",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"name":"\"num_rounds\""
|
|
}
|
|
],
|
|
"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":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"u1",
|
|
"right":false
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"v1",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"p1",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"u2",
|
|
"right":false
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"v2",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"p2",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"u3",
|
|
"right":false
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"v3",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"p3",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"u4",
|
|
"right":false
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"v4",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"p4",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"u5",
|
|
"right":false
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"v5",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"p5",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"u6",
|
|
"right":false
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"v6",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"p6",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"automata":[
|
|
{
|
|
"name":"counter",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"c",
|
|
"value":{
|
|
"op":"+",
|
|
"left":"c",
|
|
"right":1
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"c",
|
|
"value":"c"
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"done",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"∨",
|
|
"left":"u1",
|
|
"right":"u2"
|
|
},
|
|
"right":"u3"
|
|
},
|
|
"right":"u4"
|
|
},
|
|
"right":"u5"
|
|
},
|
|
"right":"u6"
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"c",
|
|
"value":"c"
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"retry",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"∨",
|
|
"left":"u1",
|
|
"right":"u2"
|
|
},
|
|
"right":"u3"
|
|
},
|
|
"right":"u4"
|
|
},
|
|
"right":"u5"
|
|
},
|
|
"right":"u6"
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"c",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"loop",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":3
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"c",
|
|
"value":"c"
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"process1",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"pick",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":true
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"num_rounds\"",
|
|
"value":1
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":true
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"num_rounds\"",
|
|
"value":1
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":true
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"num_rounds\"",
|
|
"value":1
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":true
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"num_rounds\"",
|
|
"value":1
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":true
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"num_rounds\"",
|
|
"value":1
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":true
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"num_rounds\"",
|
|
"value":1
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":1
|
|
},
|
|
"right":"u1"
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u1",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p1",
|
|
"right":"v2"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":"v2"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u1"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u1",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":"v2"
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":1
|
|
},
|
|
"right":"u1"
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p1",
|
|
"right":"v2"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u1"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"done",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"retry",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u1",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p1",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"loop",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s1",
|
|
"right":3
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s1",
|
|
"value":3
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"process2",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"pick",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":true
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":1
|
|
},
|
|
"right":"u2"
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u2",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p2",
|
|
"right":"v3"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":"v3"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u2"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u2",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":"v3"
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":1
|
|
},
|
|
"right":"u2"
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p2",
|
|
"right":"v3"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u2"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"done",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"retry",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u2",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v2",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p2",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"loop",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s2",
|
|
"right":3
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s2",
|
|
"value":3
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"process3",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"pick",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":true
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":1
|
|
},
|
|
"right":"u3"
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u3",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p3",
|
|
"right":"v4"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":"v4"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u3"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u3",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":"v4"
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":1
|
|
},
|
|
"right":"u3"
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p3",
|
|
"right":"v4"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u3"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"done",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"retry",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u3",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v3",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p3",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"loop",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s3",
|
|
"right":3
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s3",
|
|
"value":3
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"process4",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"pick",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":true
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":1
|
|
},
|
|
"right":"u4"
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u4",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p4",
|
|
"right":"v5"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":"v5"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u4"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u4",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":"v5"
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":1
|
|
},
|
|
"right":"u4"
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p4",
|
|
"right":"v5"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u4"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"done",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"retry",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u4",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v4",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p4",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"loop",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s4",
|
|
"right":3
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s4",
|
|
"value":3
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"process5",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"pick",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":true
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":1
|
|
},
|
|
"right":"u5"
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u5",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p5",
|
|
"right":"v6"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":"v6"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u5"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u5",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":"v6"
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":1
|
|
},
|
|
"right":"u5"
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p5",
|
|
"right":"v6"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u5"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"done",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"retry",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u5",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v5",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p5",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"loop",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s5",
|
|
"right":3
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s5",
|
|
"value":3
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"process6",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"pick",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":4
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":{
|
|
"op":"/",
|
|
"left":1,
|
|
"right":6
|
|
}
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":5
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":true
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":1
|
|
},
|
|
"right":"u6"
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u6",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p6",
|
|
"right":"v1"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":"v1"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u6"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"<",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"u6",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":"v1"
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":1
|
|
},
|
|
"right":"u6"
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":{
|
|
"op":"≠",
|
|
"left":"p6",
|
|
"right":"v1"
|
|
}
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"read",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":"u6"
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"c",
|
|
"right":{
|
|
"op":"-",
|
|
"left":6,
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"done",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"retry",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"u6",
|
|
"value":false
|
|
},
|
|
{
|
|
"ref":"v6",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"p6",
|
|
"value":0
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"loop",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"s6",
|
|
"right":3
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"s6",
|
|
"value":3
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"system":{
|
|
"elements":[
|
|
{
|
|
"automaton":"counter"
|
|
},
|
|
{
|
|
"automaton":"process1"
|
|
},
|
|
{
|
|
"automaton":"process2"
|
|
},
|
|
{
|
|
"automaton":"process3"
|
|
},
|
|
{
|
|
"automaton":"process4"
|
|
},
|
|
{
|
|
"automaton":"process5"
|
|
},
|
|
{
|
|
"automaton":"process6"
|
|
}
|
|
],
|
|
"syncs":[
|
|
{
|
|
"synchronise":[
|
|
"read",
|
|
"read",
|
|
"read",
|
|
"read",
|
|
"read",
|
|
"read",
|
|
"read"
|
|
],
|
|
"result":"read"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
"done",
|
|
"done",
|
|
"done",
|
|
"done",
|
|
"done",
|
|
"done",
|
|
"done"
|
|
],
|
|
"result":"done"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
"retry",
|
|
"retry",
|
|
"retry",
|
|
"retry",
|
|
"retry",
|
|
"retry",
|
|
"retry"
|
|
],
|
|
"result":"retry"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
"loop",
|
|
"loop",
|
|
"loop",
|
|
"loop",
|
|
"loop",
|
|
"loop",
|
|
"loop"
|
|
],
|
|
"result":"loop"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
null,
|
|
"pick",
|
|
"pick",
|
|
"pick",
|
|
"pick",
|
|
"pick",
|
|
"pick"
|
|
],
|
|
"result":"pick"
|
|
}
|
|
]
|
|
}
|
|
}
|