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.
1911 lines
70 KiB
1911 lines
70 KiB
|
|
{
|
|
"jani-version":1,
|
|
"features":[
|
|
"derived-operators"
|
|
],
|
|
"name":"Converted from PRISM by IscasMC",
|
|
"type":"mdp",
|
|
"actions":[
|
|
{
|
|
"name":"tau__"
|
|
},
|
|
{
|
|
"name":"p0"
|
|
},
|
|
{
|
|
"name":"p1"
|
|
}
|
|
],
|
|
"variables":[
|
|
{
|
|
"name":"t",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":1
|
|
}
|
|
},
|
|
{
|
|
"name":"l0",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":10
|
|
}
|
|
},
|
|
{
|
|
"name":"R0",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":3
|
|
}
|
|
},
|
|
{
|
|
"name":"l1",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":10
|
|
}
|
|
},
|
|
{
|
|
"name":"R1",
|
|
"type":{
|
|
"kind":"bounded",
|
|
"base":"int",
|
|
"lower-bound":0,
|
|
"upper-bound":3
|
|
}
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"name":"\"process0\""
|
|
},
|
|
{
|
|
"name":"\"process1\""
|
|
}
|
|
],
|
|
"initial-states":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":0
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"automata":[
|
|
{
|
|
"name":"tester",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"tau__",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"t",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"proc0",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R0",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"l0",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":3
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":2
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":3
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":8
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R0",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"l0",
|
|
"value":3
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":4
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":0.5000000
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":4
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":0.5000000
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":5
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":2
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":5
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":4
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R0",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"l0",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":5
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R0",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"l0",
|
|
"value":6
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":6
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":7
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":6
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":2
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":9
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":7
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R0",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"l0",
|
|
"value":3
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":8
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R0",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"l0",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":9
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":0
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":9
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":9
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R1",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l0",
|
|
"value":10
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p0",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l0",
|
|
"right":10
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R0",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"l0",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process0\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name":"proc1",
|
|
"locations":[
|
|
{
|
|
"name":"location"
|
|
}
|
|
],
|
|
"initial-locations":[
|
|
"location"
|
|
],
|
|
"edges":[
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":0
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R1",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"l1",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":3
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":2
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":1
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":3
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":8
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":2
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"l1",
|
|
"value":3
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":4
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":1
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":0.5000000
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":4
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"probability":{
|
|
"exp":0.5000000
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":5
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":3
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"∨",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":2
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":5
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":4
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R1",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"l1",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":5
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R1",
|
|
"value":2
|
|
},
|
|
{
|
|
"ref":"l1",
|
|
"value":6
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":6
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":2
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":7
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":6
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":2
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":9
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":7
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R1",
|
|
"value":1
|
|
},
|
|
{
|
|
"ref":"l1",
|
|
"value":3
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":8
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R1",
|
|
"value":0
|
|
},
|
|
{
|
|
"ref":"l1",
|
|
"value":0
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":9
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"¬",
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":0
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":9
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"∧",
|
|
"left":{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":0
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":9
|
|
}
|
|
},
|
|
"right":{
|
|
"op":"=",
|
|
"left":"R0",
|
|
"right":0
|
|
}
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"l1",
|
|
"value":10
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"location":"location",
|
|
"action":"p1",
|
|
"guard":{
|
|
"exp":{
|
|
"op":"=",
|
|
"left":"l1",
|
|
"right":10
|
|
}
|
|
},
|
|
"destinations":[
|
|
{
|
|
"probability":{
|
|
"exp":1
|
|
},
|
|
"location":"location",
|
|
"assignments":[
|
|
{
|
|
"ref":"R1",
|
|
"value":3
|
|
},
|
|
{
|
|
"ref":"l1",
|
|
"value":1
|
|
}
|
|
],
|
|
"observables":[
|
|
{
|
|
"ref":"\"process1\"",
|
|
"value":{
|
|
"op":"?:",
|
|
"args":[
|
|
{
|
|
"op":"=",
|
|
"left":"t",
|
|
"right":1
|
|
},
|
|
1,
|
|
0
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"system":{
|
|
"elements":[
|
|
{
|
|
"automaton":"tester"
|
|
},
|
|
{
|
|
"automaton":"proc0"
|
|
},
|
|
{
|
|
"automaton":"proc1"
|
|
}
|
|
],
|
|
"syncs":[
|
|
{
|
|
"synchronise":[
|
|
"tau__",
|
|
null,
|
|
null
|
|
],
|
|
"result":"tau__"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
null,
|
|
"p0",
|
|
null
|
|
],
|
|
"result":"p0"
|
|
},
|
|
{
|
|
"synchronise":[
|
|
null,
|
|
null,
|
|
"p1"
|
|
],
|
|
"result":"p1"
|
|
}
|
|
]
|
|
}
|
|
}
|