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.
 
 
 
 

3456 lines
142 KiB

{
"jani-version":1,
"features":[
"derived-operators"
],
"name":"Converted from PRISM by IscasMC",
"type":"ctmc",
"actions":[
{
"name":"t1"
},
{
"name":"tau__"
},
{
"name":"p1p2"
},
{
"name":"fp12"
},
{
"name":"t2"
},
{
"name":"p2p3"
},
{
"name":"t3"
},
{
"name":"t12"
}
],
"constants":[
{
"name":"n",
"type":"int"
}
],
"variables":[
{
"name":"P1",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P1wM1",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P1M1",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":3
}
},
{
"name":"P1d",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P1s",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P1wP2",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"M1",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":3
}
},
{
"name":"P2",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P2wM2",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P2M2",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":1
}
},
{
"name":"P2s",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P2wP1",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"M2",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":1
}
},
{
"name":"P3",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P3M2",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P3s",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P12",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P12wM3",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"P12M3",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":2
}
},
{
"name":"P12s",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":"n"
}
},
{
"name":"M3",
"type":{
"kind":"bounded",
"base":"int",
"lower-bound":0,
"upper-bound":2
}
}
],
"observables":[
{
"name":"\"throughput_m1\""
},
{
"name":"\"throughput_m2\""
},
{
"name":"\"throughput_m3\""
},
{
"name":"\"throughput_m12\""
},
{
"name":"\"productivity\""
}
],
"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":"P1",
"right":"n"
},
"right":{
"op":"=",
"left":"P1wM1",
"right":0
}
},
"right":{
"op":"=",
"left":"P1M1",
"right":0
}
},
"right":{
"op":"=",
"left":"P1d",
"right":0
}
},
"right":{
"op":"=",
"left":"P1s",
"right":0
}
},
"right":{
"op":"=",
"left":"P1wP2",
"right":0
}
},
"right":{
"op":"=",
"left":"M1",
"right":3
}
},
"right":{
"op":"=",
"left":"P2",
"right":"n"
}
},
"right":{
"op":"=",
"left":"P2wM2",
"right":0
}
},
"right":{
"op":"=",
"left":"P2M2",
"right":0
}
},
"right":{
"op":"=",
"left":"P2s",
"right":0
}
},
"right":{
"op":"=",
"left":"P2wP1",
"right":0
}
},
"right":{
"op":"=",
"left":"M2",
"right":1
}
},
"right":{
"op":"=",
"left":"P3",
"right":"n"
}
},
"right":{
"op":"=",
"left":"P3M2",
"right":0
}
},
"right":{
"op":"=",
"left":"P3s",
"right":0
}
},
"right":{
"op":"=",
"left":"P12",
"right":0
}
},
"right":{
"op":"=",
"left":"P12wM3",
"right":0
}
},
"right":{
"op":"=",
"left":"P12M3",
"right":0
}
},
"right":{
"op":"=",
"left":"P12s",
"right":0
}
},
"right":{
"op":"=",
"left":"M3",
"right":2
}
}
},
"automata":[
{
"name":"machine1",
"locations":[
{
"name":"location"
}
],
"initial-locations":[
"location"
],
"edges":[
{
"location":"location",
"action":"t1",
"rate":{
"exp":{
"op":"*",
"left":"P1",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P1",
"right":0
},
"right":{
"op":">",
"left":"M1",
"right":0
}
},
"right":{
"op":"<",
"left":"P1M1",
"right":3
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":"P1",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
},
"right":{
"op":"*",
"left":"P1",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1",
"value":{
"op":"-",
"left":"P1",
"right":1
}
},
{
"ref":"P1M1",
"value":{
"op":"+",
"left":"P1M1",
"right":1
}
},
{
"ref":"M1",
"value":{
"op":"-",
"left":"M1",
"right":1
}
}
],
"observables":[
{
"ref":"\"throughput_m1\"",
"value":1
},
{
"ref":"\"productivity\"",
"value":400
}
]
}
]
},
{
"location":"location",
"action":"t1",
"rate":{
"exp":{
"op":"*",
"left":"P1",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P1",
"right":0
},
"right":{
"op":"=",
"left":"M1",
"right":0
}
},
"right":{
"op":"<",
"left":"P1wM1",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":"P1",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
},
"right":{
"op":"*",
"left":"P1",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1",
"value":{
"op":"-",
"left":"P1",
"right":1
}
},
{
"ref":"P1wM1",
"value":{
"op":"+",
"left":"P1wM1",
"right":1
}
}
],
"observables":[
{
"ref":"\"throughput_m1\"",
"value":1
},
{
"ref":"\"productivity\"",
"value":400
}
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"*",
"left":0.2000000,
"right":"P1M1"
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P1M1",
"right":0
},
"right":{
"op":"=",
"left":"P1wM1",
"right":0
}
},
"right":{
"op":"<",
"left":"M1",
"right":3
}
},
"right":{
"op":"<",
"left":"P1s",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":0.2000000,
"right":"P1M1"
},
"right":{
"op":"*",
"left":0.2000000,
"right":"P1M1"
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1M1",
"value":{
"op":"-",
"left":"P1M1",
"right":1
}
},
{
"ref":"M1",
"value":{
"op":"+",
"left":"M1",
"right":1
}
},
{
"ref":"P1s",
"value":{
"op":"+",
"left":"P1s",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"*",
"left":0.2000000,
"right":"P1M1"
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P1M1",
"right":0
},
"right":{
"op":">",
"left":"P1wM1",
"right":0
}
},
"right":{
"op":"<",
"left":"P1s",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":0.2000000,
"right":"P1M1"
},
"right":{
"op":"*",
"left":0.2000000,
"right":"P1M1"
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1wM1",
"value":{
"op":"-",
"left":"P1wM1",
"right":1
}
},
{
"ref":"P1s",
"value":{
"op":"+",
"left":"P1s",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P1M1",
"right":0
},
"right":{
"op":"=",
"left":"P2wP1",
"right":0
}
},
"right":{
"op":"=",
"left":"P1wM1",
"right":0
}
},
"right":{
"op":"<",
"left":"M1",
"right":3
}
},
"right":{
"op":"<",
"left":"P1wP2",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
},
"right":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1M1",
"value":{
"op":"-",
"left":"P1M1",
"right":1
}
},
{
"ref":"M1",
"value":{
"op":"+",
"left":"M1",
"right":1
}
},
{
"ref":"P1wP2",
"value":{
"op":"+",
"left":"P1wP2",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P1M1",
"right":0
},
"right":{
"op":"=",
"left":"P2wP1",
"right":0
}
},
"right":{
"op":">",
"left":"P1wM1",
"right":0
}
},
"right":{
"op":"<",
"left":"P1wP2",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
},
"right":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1wM1",
"value":{
"op":"-",
"left":"P1wM1",
"right":1
}
},
{
"ref":"P1wP2",
"value":{
"op":"+",
"left":"P1wP2",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"p1p2",
"rate":{
"exp":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P1M1",
"right":0
},
"right":{
"op":">",
"left":"P2wP1",
"right":0
}
},
"right":{
"op":"=",
"left":"P1wM1",
"right":0
}
},
"right":{
"op":"<",
"left":"M1",
"right":3
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
},
"right":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1M1",
"value":{
"op":"-",
"left":"P1M1",
"right":1
}
},
{
"ref":"M1",
"value":{
"op":"+",
"left":"M1",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"p1p2",
"rate":{
"exp":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P1M1",
"right":0
},
"right":{
"op":">",
"left":"P2wP1",
"right":0
}
},
"right":{
"op":">",
"left":"P1wM1",
"right":0
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
},
"right":{
"op":"*",
"left":0.0500000,
"right":"P1M1"
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1wM1",
"value":{
"op":"-",
"left":"P1wM1",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"p1p2",
"rate":{
"exp":1
},
"guard":{
"exp":{
"op":">",
"left":"P1wP2",
"right":0
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":1,
"right":1
}
},
"location":"location",
"assignments":[
{
"ref":"P1wP2",
"value":{
"op":"-",
"left":"P1wP2",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":60
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":">",
"left":"P1s",
"right":0
},
"right":{
"op":"≤",
"left":{
"op":"+",
"left":"P1",
"right":"P1s"
},
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":60
},
"right":{
"op":"/",
"left":1,
"right":60
}
}
},
"location":"location",
"assignments":[
{
"ref":"P1s",
"value":0
},
{
"ref":"P1",
"value":{
"op":"+",
"left":"P1",
"right":"P1s"
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"fp12",
"rate":{
"exp":1
},
"guard":{
"exp":{
"op":"≤",
"left":{
"op":"+",
"left":"P1",
"right":"P12s"
},
"right":"n"
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":1,
"right":1
}
},
"location":"location",
"assignments":[
{
"ref":"P1",
"value":{
"op":"+",
"left":"P1",
"right":"P12s"
}
}
],
"observables":[
]
}
]
}
]
},
{
"name":"machine2",
"locations":[
{
"name":"location"
}
],
"initial-locations":[
"location"
],
"edges":[
{
"location":"location",
"action":"t2",
"rate":{
"exp":{
"op":"*",
"left":"P2",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P2",
"right":0
},
"right":{
"op":">",
"left":"M2",
"right":0
}
},
"right":{
"op":"<",
"left":"P2M2",
"right":1
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":"P2",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
},
"right":{
"op":"*",
"left":"P2",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
}
},
"location":"location",
"assignments":[
{
"ref":"P2",
"value":{
"op":"-",
"left":"P2",
"right":1
}
},
{
"ref":"P2M2",
"value":{
"op":"+",
"left":"P2M2",
"right":1
}
},
{
"ref":"M2",
"value":{
"op":"-",
"left":"M2",
"right":1
}
}
],
"observables":[
{
"ref":"\"throughput_m2\"",
"value":1
},
{
"ref":"\"productivity\"",
"value":600
}
]
}
]
},
{
"location":"location",
"action":"t2",
"rate":{
"exp":{
"op":"*",
"left":"P2",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P2",
"right":0
},
"right":{
"op":"=",
"left":"M2",
"right":0
}
},
"right":{
"op":"<",
"left":"P2wM2",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":"P2",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
},
"right":{
"op":"*",
"left":"P2",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
}
},
"location":"location",
"assignments":[
{
"ref":"P2",
"value":{
"op":"-",
"left":"P2",
"right":1
}
},
{
"ref":"P2wM2",
"value":{
"op":"+",
"left":"P2wM2",
"right":1
}
}
],
"observables":[
{
"ref":"\"throughput_m2\"",
"value":1
},
{
"ref":"\"productivity\"",
"value":600
}
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":0.1000000
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P2M2",
"right":0
},
"right":{
"op":"=",
"left":"P2wM2",
"right":0
}
},
"right":{
"op":"<",
"left":"M2",
"right":1
}
},
"right":{
"op":"<",
"left":"P2s",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":0.1000000,
"right":0.1000000
}
},
"location":"location",
"assignments":[
{
"ref":"P2M2",
"value":{
"op":"-",
"left":"P2M2",
"right":1
}
},
{
"ref":"M2",
"value":{
"op":"+",
"left":"M2",
"right":1
}
},
{
"ref":"P2s",
"value":{
"op":"+",
"left":"P2s",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":0.1000000
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P2M2",
"right":0
},
"right":{
"op":">",
"left":"P2wM2",
"right":0
}
},
"right":{
"op":"<",
"left":"P2s",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":0.1000000,
"right":0.1000000
}
},
"location":"location",
"assignments":[
{
"ref":"P2wM2",
"value":{
"op":"-",
"left":"P2wM2",
"right":1
}
},
{
"ref":"P2s",
"value":{
"op":"+",
"left":"P2s",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":15
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P2M2",
"right":0
},
"right":{
"op":"=",
"left":"P1wP2",
"right":0
}
},
"right":{
"op":"=",
"left":"P2wM2",
"right":0
}
},
"right":{
"op":"<",
"left":"M2",
"right":1
}
},
"right":{
"op":"<",
"left":"P2wP1",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":15
},
"right":{
"op":"/",
"left":1,
"right":15
}
}
},
"location":"location",
"assignments":[
{
"ref":"P2M2",
"value":{
"op":"-",
"left":"P2M2",
"right":1
}
},
{
"ref":"M2",
"value":{
"op":"+",
"left":"M2",
"right":1
}
},
{
"ref":"P2wP1",
"value":{
"op":"+",
"left":"P2wP1",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":15
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P2M2",
"right":0
},
"right":{
"op":"=",
"left":"P1wP2",
"right":0
}
},
"right":{
"op":">",
"left":"P2wM2",
"right":0
}
},
"right":{
"op":"<",
"left":"P2wP1",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":15
},
"right":{
"op":"/",
"left":1,
"right":15
}
}
},
"location":"location",
"assignments":[
{
"ref":"P2wM2",
"value":{
"op":"-",
"left":"P2wM2",
"right":1
}
},
{
"ref":"P2wP1",
"value":{
"op":"+",
"left":"P2wP1",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"p1p2",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":15
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P2M2",
"right":0
},
"right":{
"op":">",
"left":"P1wP2",
"right":0
}
},
"right":{
"op":"=",
"left":"P2wM2",
"right":0
}
},
"right":{
"op":"<",
"left":"M2",
"right":1
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":15
},
"right":{
"op":"/",
"left":1,
"right":15
}
}
},
"location":"location",
"assignments":[
{
"ref":"P2M2",
"value":{
"op":"-",
"left":"P2M2",
"right":1
}
},
{
"ref":"M2",
"value":{
"op":"+",
"left":"M2",
"right":1
}
}
]
}
]
},
{
"location":"location",
"action":"p1p2",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":15
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P2M2",
"right":0
},
"right":{
"op":">",
"left":"P1wP2",
"right":0
}
},
"right":{
"op":">",
"left":"P2wM2",
"right":0
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":15
},
"right":{
"op":"/",
"left":1,
"right":15
}
}
},
"location":"location",
"assignments":[
{
"ref":"P2wM2",
"value":{
"op":"-",
"left":"P2wM2",
"right":1
}
}
]
}
]
},
{
"location":"location",
"action":"p1p2",
"rate":{
"exp":1
},
"guard":{
"exp":{
"op":">",
"left":"P2wP1",
"right":0
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":1,
"right":1
}
},
"location":"location",
"assignments":[
{
"ref":"P2wP1",
"value":{
"op":"-",
"left":"P2wP1",
"right":1
}
}
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":60
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":">",
"left":"P2s",
"right":0
},
"right":{
"op":"≤",
"left":{
"op":"+",
"left":"P2",
"right":"P2s"
},
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":60
},
"right":{
"op":"/",
"left":1,
"right":60
}
}
},
"location":"location",
"assignments":[
{
"ref":"P2s",
"value":0
},
{
"ref":"P2",
"value":{
"op":"+",
"left":"P2",
"right":"P2s"
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"fp12",
"rate":{
"exp":1
},
"guard":{
"exp":{
"op":"≤",
"left":{
"op":"+",
"left":"P2",
"right":"P12s"
},
"right":"n"
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":1,
"right":1
}
},
"location":"location",
"assignments":[
{
"ref":"P2",
"value":{
"op":"+",
"left":"P2",
"right":"P12s"
}
}
]
}
]
},
{
"location":"location",
"action":"p2p3",
"rate":{
"exp":1
},
"guard":{
"exp":{
"op":">",
"left":"M2",
"right":0
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":1,
"right":1
}
},
"location":"location",
"assignments":[
{
"ref":"M2",
"value":"M2"
}
],
"observables":[
]
}
]
}
]
},
{
"name":"machine3",
"locations":[
{
"name":"location"
}
],
"initial-locations":[
"location"
],
"edges":[
{
"location":"location",
"action":"t3",
"rate":{
"exp":{
"op":"*",
"left":"P3",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":">",
"left":"P3",
"right":0
},
"right":{
"op":"<",
"left":"P3M2",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":"P3",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
},
"right":{
"op":"*",
"left":"P3",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
}
},
"location":"location",
"assignments":[
{
"ref":"P3",
"value":{
"op":"-",
"left":"P3",
"right":1
}
},
{
"ref":"P3M2",
"value":{
"op":"+",
"left":"P3M2",
"right":1
}
}
],
"observables":[
{
"ref":"\"throughput_m3\"",
"value":1
},
{
"ref":"\"productivity\"",
"value":100
}
]
}
]
},
{
"location":"location",
"action":"p2p3",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":2
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":">",
"left":"P3M2",
"right":0
},
"right":{
"op":"<",
"left":"P3s",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":2
},
"right":{
"op":"/",
"left":1,
"right":2
}
}
},
"location":"location",
"assignments":[
{
"ref":"P3M2",
"value":{
"op":"-",
"left":"P3M2",
"right":1
}
},
{
"ref":"P3s",
"value":{
"op":"+",
"left":"P3s",
"right":1
}
}
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":60
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":">",
"left":"P3s",
"right":0
},
"right":{
"op":"≤",
"left":{
"op":"+",
"left":"P3",
"right":"P3s"
},
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":60
},
"right":{
"op":"/",
"left":1,
"right":60
}
}
},
"location":"location",
"assignments":[
{
"ref":"P3s",
"value":0
},
{
"ref":"P3",
"value":{
"op":"+",
"left":"P3",
"right":"P3s"
}
}
],
"observables":[
]
}
]
}
]
},
{
"name":"machine12",
"locations":[
{
"name":"location"
}
],
"initial-locations":[
"location"
],
"edges":[
{
"location":"location",
"action":"p1p2",
"rate":{
"exp":1
},
"guard":{
"exp":{
"op":"<",
"left":"P12",
"right":"n"
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":1,
"right":1
}
},
"location":"location",
"assignments":[
{
"ref":"P12",
"value":{
"op":"+",
"left":"P12",
"right":1
}
}
]
}
]
},
{
"location":"location",
"action":"t12",
"rate":{
"exp":{
"op":"*",
"left":"P12",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P12",
"right":0
},
"right":{
"op":">",
"left":"M3",
"right":0
}
},
"right":{
"op":"<",
"left":"P12M3",
"right":2
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":"P12",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
},
"right":{
"op":"*",
"left":"P12",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
}
},
"location":"location",
"assignments":[
{
"ref":"P12",
"value":{
"op":"-",
"left":"P12",
"right":1
}
},
{
"ref":"P12M3",
"value":{
"op":"+",
"left":"P12M3",
"right":1
}
},
{
"ref":"M3",
"value":{
"op":"-",
"left":"M3",
"right":1
}
}
],
"observables":[
{
"ref":"\"throughput_m12\"",
"value":1
},
{
"ref":"\"productivity\"",
"value":1100
}
]
}
]
},
{
"location":"location",
"action":"t12",
"rate":{
"exp":{
"op":"*",
"left":"P12",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P12",
"right":0
},
"right":{
"op":"=",
"left":"M3",
"right":0
}
},
"right":{
"op":"<",
"left":"P12wM3",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"*",
"left":"P12",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
},
"right":{
"op":"*",
"left":"P12",
"right":{
"op":"min",
"left":1,
"right":{
"op":"/",
"left":{
"op":"⌊⌋",
"exp":{
"op":"/",
"left":{
"op":"*",
"left":3,
"right":"n"
},
"right":2
}
},
"right":{
"op":"+",
"left":{
"op":"+",
"left":{
"op":"+",
"left":"P1",
"right":"P2"
},
"right":"P3"
},
"right":"P12"
}
}
}
}
}
},
"location":"location",
"assignments":[
{
"ref":"P12",
"value":{
"op":"-",
"left":"P12",
"right":1
}
},
{
"ref":"P12wM3",
"value":{
"op":"+",
"left":"P12wM3",
"right":1
}
}
],
"observables":[
{
"ref":"\"throughput_m12\"",
"value":1
},
{
"ref":"\"productivity\"",
"value":1100
}
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":"P12M3"
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P12M3",
"right":0
},
"right":{
"op":"=",
"left":"P12wM3",
"right":0
}
},
"right":{
"op":"<",
"left":"P12s",
"right":"n"
}
},
"right":{
"op":"<",
"left":"M3",
"right":2
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":"P12M3",
"right":"P12M3"
}
},
"location":"location",
"assignments":[
{
"ref":"P12M3",
"value":{
"op":"-",
"left":"P12M3",
"right":1
}
},
{
"ref":"P12s",
"value":{
"op":"+",
"left":"P12s",
"right":1
}
},
{
"ref":"M3",
"value":{
"op":"+",
"left":"M3",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"tau__",
"rate":{
"exp":"P12M3"
},
"guard":{
"exp":{
"op":"∧",
"left":{
"op":"∧",
"left":{
"op":">",
"left":"P12M3",
"right":0
},
"right":{
"op":">",
"left":"P12wM3",
"right":0
}
},
"right":{
"op":"<",
"left":"P12s",
"right":"n"
}
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":"P12M3",
"right":"P12M3"
}
},
"location":"location",
"assignments":[
{
"ref":"P12wM3",
"value":{
"op":"-",
"left":"P12wM3",
"right":1
}
},
{
"ref":"P12s",
"value":{
"op":"+",
"left":"P12s",
"right":1
}
}
],
"observables":[
]
}
]
},
{
"location":"location",
"action":"fp12",
"rate":{
"exp":{
"op":"/",
"left":1,
"right":60
}
},
"guard":{
"exp":{
"op":">",
"left":"P12s",
"right":0
}
},
"destinations":[
{
"probability":{
"exp":{
"op":"/",
"left":{
"op":"/",
"left":1,
"right":60
},
"right":{
"op":"/",
"left":1,
"right":60
}
}
},
"location":"location",
"assignments":[
{
"ref":"P12s",
"value":0
}
]
}
]
}
]
}
],
"system":{
"elements":[
{
"automaton":"machine1"
},
{
"automaton":"machine2"
},
{
"automaton":"machine3"
},
{
"automaton":"machine12"
}
],
"syncs":[
{
"synchronise":[
"p1p2",
"p1p2",
null,
"p1p2"
],
"result":"p1p2"
},
{
"synchronise":[
"fp12",
"fp12",
null,
"fp12"
],
"result":"fp12"
},
{
"synchronise":[
null,
"p2p3",
"p2p3",
null
],
"result":"p2p3"
},
{
"synchronise":[
"t1",
null,
null,
null
],
"result":"t1"
},
{
"synchronise":[
"tau__",
null,
null,
null
],
"result":"tau__"
},
{
"synchronise":[
null,
"t2",
null,
null
],
"result":"t2"
},
{
"synchronise":[
null,
"tau__",
null,
null
],
"result":"tau__"
},
{
"synchronise":[
null,
null,
"t3",
null
],
"result":"t3"
},
{
"synchronise":[
null,
null,
"tau__",
null
],
"result":"tau__"
},
{
"synchronise":[
null,
null,
null,
"t12"
],
"result":"t12"
},
{
"synchronise":[
null,
null,
null,
"tau__"
],
"result":"tau__"
}
]
}
}