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.
		
		
		
		
		
			
		
			
				
					
					
						
							1412 lines
						
					
					
						
							66 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							1412 lines
						
					
					
						
							66 KiB
						
					
					
				| 
 | |
| { | |
|     "jani-version":1, | |
|     "features":[ | |
|         "derived-operators" | |
|     ], | |
|     "name":"Converted from PRISM by IscasMC", | |
|     "type":"ctmc", | |
|     "actions":[ | |
|         { | |
|             "name":"tau__" | |
|         } | |
|     ], | |
|     "constants":[ | |
|         { | |
|             "name":"n", | |
|             "type":"int" | |
|         } | |
|     ], | |
|     "variables":[ | |
|         { | |
|             "name":"x1", | |
|             "type":{ | |
|                 "kind":"bounded", | |
|                 "base":"int", | |
|                 "lower-bound":1, | |
|                 "upper-bound":"n" | |
|             } | |
|         }, | |
|         { | |
|             "name":"y1", | |
|             "type":{ | |
|                 "kind":"bounded", | |
|                 "base":"int", | |
|                 "lower-bound":1, | |
|                 "upper-bound":"n" | |
|             } | |
|         }, | |
|         { | |
|             "name":"c", | |
|             "type":{ | |
|                 "kind":"bounded", | |
|                 "base":"int", | |
|                 "lower-bound":0, | |
|                 "upper-bound":1 | |
|             } | |
|         }, | |
|         { | |
|             "name":"x2", | |
|             "type":{ | |
|                 "kind":"bounded", | |
|                 "base":"int", | |
|                 "lower-bound":1, | |
|                 "upper-bound":"n" | |
|             } | |
|         }, | |
|         { | |
|             "name":"y2", | |
|             "type":{ | |
|                 "kind":"bounded", | |
|                 "base":"int", | |
|                 "lower-bound":1, | |
|                 "upper-bound":"n" | |
|             } | |
|         } | |
|     ], | |
|     "observables":[ | |
|     ], | |
|     "initial-states":{ | |
|         "exp":{ | |
|             "op":"∧", | |
|             "left":{ | |
|                 "op":"∧", | |
|                 "left":{ | |
|                     "op":"∧", | |
|                     "left":{ | |
|                         "op":"∧", | |
|                         "left":{ | |
|                             "op":"=", | |
|                             "left":"x1", | |
|                             "right":1 | |
|                         }, | |
|                         "right":{ | |
|                             "op":"=", | |
|                             "left":"y1", | |
|                             "right":1 | |
|                         } | |
|                     }, | |
|                     "right":{ | |
|                         "op":"=", | |
|                         "left":"c", | |
|                         "right":0 | |
|                     } | |
|                 }, | |
|                 "right":{ | |
|                     "op":"=", | |
|                     "left":"x2", | |
|                     "right":"n" | |
|                 } | |
|             }, | |
|             "right":{ | |
|                 "op":"=", | |
|                 "left":"y2", | |
|                 "right":"n" | |
|             } | |
|         } | |
|     }, | |
|     "automata":[ | |
|         { | |
|             "name":"robot", | |
|             "locations":[ | |
|                 { | |
|                     "name":"location" | |
|                 } | |
|             ], | |
|             "initial-locations":[ | |
|                 "location" | |
|             ], | |
|             "edges":[ | |
|                 { | |
|                     "location":"location", | |
|                     "action":"tau__", | |
|                     "rate":{ | |
|                         "exp":1 | |
|                     }, | |
|                     "guard":{ | |
|                         "exp":{ | |
|                             "op":"∧", | |
|                             "left":{ | |
|                                 "op":"∧", | |
|                                 "left":{ | |
|                                     "op":"<", | |
|                                     "left":"x1", | |
|                                     "right":"n" | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"=", | |
|                                     "left":"c", | |
|                                     "right":0 | |
|                                 } | |
|                             }, | |
|                             "right":{ | |
|                                 "op":"¬", | |
|                                 "exp":{ | |
|                                     "op":"∧", | |
|                                     "left":{ | |
|                                         "op":"=", | |
|                                         "left":{ | |
|                                             "op":"+", | |
|                                             "left":"x1", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":"x2" | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"=", | |
|                                         "left":"y1", | |
|                                         "right":"y2" | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "destinations":[ | |
|                         { | |
|                             "probability":{ | |
|                                 "exp":{ | |
|                                     "op":"/", | |
|                                     "left":1, | |
|                                     "right":1 | |
|                                 } | |
|                             }, | |
|                             "location":"location", | |
|                             "assignments":[ | |
|                                 { | |
|                                     "ref":"x1", | |
|                                     "value":{ | |
|                                         "op":"+", | |
|                                         "left":"x1", | |
|                                         "right":1 | |
|                                     } | |
|                                 } | |
|                             ], | |
|                             "observables":[ | |
|                             ] | |
|                         } | |
|                     ] | |
|                 }, | |
|                 { | |
|                     "location":"location", | |
|                     "action":"tau__", | |
|                     "rate":{ | |
|                         "exp":1 | |
|                     }, | |
|                     "guard":{ | |
|                         "exp":{ | |
|                             "op":"∧", | |
|                             "left":{ | |
|                                 "op":"∧", | |
|                                 "left":{ | |
|                                     "op":"∧", | |
|                                     "left":{ | |
|                                         "op":"=", | |
|                                         "left":"x1", | |
|                                         "right":"n" | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"<", | |
|                                         "left":"y1", | |
|                                         "right":"n" | |
|                                     } | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"=", | |
|                                     "left":"c", | |
|                                     "right":0 | |
|                                 } | |
|                             }, | |
|                             "right":{ | |
|                                 "op":"¬", | |
|                                 "exp":{ | |
|                                     "op":"∧", | |
|                                     "left":{ | |
|                                         "op":"=", | |
|                                         "left":"x1", | |
|                                         "right":"x2" | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"=", | |
|                                         "left":{ | |
|                                             "op":"+", | |
|                                             "left":"y1", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":"y2" | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "destinations":[ | |
|                         { | |
|                             "probability":{ | |
|                                 "exp":{ | |
|                                     "op":"/", | |
|                                     "left":1, | |
|                                     "right":1 | |
|                                 } | |
|                             }, | |
|                             "location":"location", | |
|                             "assignments":[ | |
|                                 { | |
|                                     "ref":"y1", | |
|                                     "value":{ | |
|                                         "op":"+", | |
|                                         "left":"y1", | |
|                                         "right":1 | |
|                                     } | |
|                                 } | |
|                             ], | |
|                             "observables":[ | |
|                             ] | |
|                         } | |
|                     ] | |
|                 }, | |
|                 { | |
|                     "location":"location", | |
|                     "action":"tau__", | |
|                     "rate":{ | |
|                         "exp":{ | |
|                             "op":"/", | |
|                             "left":1, | |
|                             "right":10 | |
|                         } | |
|                     }, | |
|                     "guard":{ | |
|                         "exp":{ | |
|                             "op":"=", | |
|                             "left":"c", | |
|                             "right":0 | |
|                         } | |
|                     }, | |
|                     "destinations":[ | |
|                         { | |
|                             "probability":{ | |
|                                 "exp":{ | |
|                                     "op":"/", | |
|                                     "left":{ | |
|                                         "op":"/", | |
|                                         "left":1, | |
|                                         "right":10 | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"/", | |
|                                         "left":1, | |
|                                         "right":10 | |
|                                     } | |
|                                 } | |
|                             }, | |
|                             "location":"location", | |
|                             "assignments":[ | |
|                                 { | |
|                                     "ref":"c", | |
|                                     "value":1 | |
|                                 } | |
|                             ], | |
|                             "observables":[ | |
|                             ] | |
|                         } | |
|                     ] | |
|                 }, | |
|                 { | |
|                     "location":"location", | |
|                     "action":"tau__", | |
|                     "rate":{ | |
|                         "exp":{ | |
|                             "op":"/", | |
|                             "left":1, | |
|                             "right":2 | |
|                         } | |
|                     }, | |
|                     "guard":{ | |
|                         "exp":{ | |
|                             "op":"=", | |
|                             "left":"c", | |
|                             "right":1 | |
|                         } | |
|                     }, | |
|                     "destinations":[ | |
|                         { | |
|                             "probability":{ | |
|                                 "exp":{ | |
|                                     "op":"/", | |
|                                     "left":{ | |
|                                         "op":"/", | |
|                                         "left":1, | |
|                                         "right":2 | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"/", | |
|                                         "left":1, | |
|                                         "right":2 | |
|                                     } | |
|                                 } | |
|                             }, | |
|                             "location":"location", | |
|                             "assignments":[ | |
|                                 { | |
|                                     "ref":"c", | |
|                                     "value":0 | |
|                                 } | |
|                             ], | |
|                             "observables":[ | |
|                             ] | |
|                         } | |
|                     ] | |
|                 } | |
|             ] | |
|         }, | |
|         { | |
|             "name":"janitor", | |
|             "locations":[ | |
|                 { | |
|                     "name":"location" | |
|                 } | |
|             ], | |
|             "initial-locations":[ | |
|                 "location" | |
|             ], | |
|             "edges":[ | |
|                 { | |
|                     "location":"location", | |
|                     "action":"tau__", | |
|                     "rate":{ | |
|                         "exp":{ | |
|                             "op":"/", | |
|                             "left":2, | |
|                             "right":{ | |
|                                 "op":"+", | |
|                                 "left":{ | |
|                                     "op":"+", | |
|                                     "left":{ | |
|                                         "op":"+", | |
|                                         "left":{ | |
|                                             "op":"min", | |
|                                             "left":1, | |
|                                             "right":{ | |
|                                                 "op":"max", | |
|                                                 "left":{ | |
|                                                     "op":"-", | |
|                                                     "left":"n", | |
|                                                     "right":"x2" | |
|                                                 }, | |
|                                                 "right":0 | |
|                                             } | |
|                                         }, | |
|                                         "right":{ | |
|                                             "op":"min", | |
|                                             "left":1, | |
|                                             "right":{ | |
|                                                 "op":"max", | |
|                                                 "left":{ | |
|                                                     "op":"-", | |
|                                                     "left":"x2", | |
|                                                     "right":1 | |
|                                                 }, | |
|                                                 "right":0 | |
|                                             } | |
|                                         } | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"min", | |
|                                         "left":1, | |
|                                         "right":{ | |
|                                             "op":"max", | |
|                                             "left":{ | |
|                                                 "op":"-", | |
|                                                 "left":"n", | |
|                                                 "right":"y2" | |
|                                             }, | |
|                                             "right":0 | |
|                                         } | |
|                                     } | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"min", | |
|                                     "left":1, | |
|                                     "right":{ | |
|                                         "op":"max", | |
|                                         "left":{ | |
|                                             "op":"-", | |
|                                             "left":"y2", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":0 | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "guard":{ | |
|                         "exp":{ | |
|                             "op":"¬", | |
|                             "exp":{ | |
|                                 "op":"∨", | |
|                                 "left":{ | |
|                                     "op":"=", | |
|                                     "left":"y2", | |
|                                     "right":"n" | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"∧", | |
|                                     "left":{ | |
|                                         "op":"=", | |
|                                         "left":{ | |
|                                             "op":"+", | |
|                                             "left":"y2", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":"y1" | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"=", | |
|                                         "left":"x2", | |
|                                         "right":"x1" | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "destinations":[ | |
|                         { | |
|                             "probability":{ | |
|                                 "exp":{ | |
|                                     "op":"/", | |
|                                     "left":{ | |
|                                         "op":"/", | |
|                                         "left":2, | |
|                                         "right":{ | |
|                                             "op":"+", | |
|                                             "left":{ | |
|                                                 "op":"+", | |
|                                                 "left":{ | |
|                                                     "op":"+", | |
|                                                     "left":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"n", | |
|                                                                 "right":"x2" | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     }, | |
|                                                     "right":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"x2", | |
|                                                                 "right":1 | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     } | |
|                                                 }, | |
|                                                 "right":{ | |
|                                                     "op":"min", | |
|                                                     "left":1, | |
|                                                     "right":{ | |
|                                                         "op":"max", | |
|                                                         "left":{ | |
|                                                             "op":"-", | |
|                                                             "left":"n", | |
|                                                             "right":"y2" | |
|                                                         }, | |
|                                                         "right":0 | |
|                                                     } | |
|                                                 } | |
|                                             }, | |
|                                             "right":{ | |
|                                                 "op":"min", | |
|                                                 "left":1, | |
|                                                 "right":{ | |
|                                                     "op":"max", | |
|                                                     "left":{ | |
|                                                         "op":"-", | |
|                                                         "left":"y2", | |
|                                                         "right":1 | |
|                                                     }, | |
|                                                     "right":0 | |
|                                                 } | |
|                                             } | |
|                                         } | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"/", | |
|                                         "left":2, | |
|                                         "right":{ | |
|                                             "op":"+", | |
|                                             "left":{ | |
|                                                 "op":"+", | |
|                                                 "left":{ | |
|                                                     "op":"+", | |
|                                                     "left":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"n", | |
|                                                                 "right":"x2" | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     }, | |
|                                                     "right":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"x2", | |
|                                                                 "right":1 | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     } | |
|                                                 }, | |
|                                                 "right":{ | |
|                                                     "op":"min", | |
|                                                     "left":1, | |
|                                                     "right":{ | |
|                                                         "op":"max", | |
|                                                         "left":{ | |
|                                                             "op":"-", | |
|                                                             "left":"n", | |
|                                                             "right":"y2" | |
|                                                         }, | |
|                                                         "right":0 | |
|                                                     } | |
|                                                 } | |
|                                             }, | |
|                                             "right":{ | |
|                                                 "op":"min", | |
|                                                 "left":1, | |
|                                                 "right":{ | |
|                                                     "op":"max", | |
|                                                     "left":{ | |
|                                                         "op":"-", | |
|                                                         "left":"y2", | |
|                                                         "right":1 | |
|                                                     }, | |
|                                                     "right":0 | |
|                                                 } | |
|                                             } | |
|                                         } | |
|                                     } | |
|                                 } | |
|                             }, | |
|                             "location":"location", | |
|                             "assignments":[ | |
|                                 { | |
|                                     "ref":"y2", | |
|                                     "value":{ | |
|                                         "op":"+", | |
|                                         "left":"y2", | |
|                                         "right":1 | |
|                                     } | |
|                                 } | |
|                             ], | |
|                             "observables":[ | |
|                             ] | |
|                         } | |
|                     ] | |
|                 }, | |
|                 { | |
|                     "location":"location", | |
|                     "action":"tau__", | |
|                     "rate":{ | |
|                         "exp":{ | |
|                             "op":"/", | |
|                             "left":2, | |
|                             "right":{ | |
|                                 "op":"+", | |
|                                 "left":{ | |
|                                     "op":"+", | |
|                                     "left":{ | |
|                                         "op":"+", | |
|                                         "left":{ | |
|                                             "op":"min", | |
|                                             "left":1, | |
|                                             "right":{ | |
|                                                 "op":"max", | |
|                                                 "left":{ | |
|                                                     "op":"-", | |
|                                                     "left":"n", | |
|                                                     "right":"x2" | |
|                                                 }, | |
|                                                 "right":0 | |
|                                             } | |
|                                         }, | |
|                                         "right":{ | |
|                                             "op":"min", | |
|                                             "left":1, | |
|                                             "right":{ | |
|                                                 "op":"max", | |
|                                                 "left":{ | |
|                                                     "op":"-", | |
|                                                     "left":"x2", | |
|                                                     "right":1 | |
|                                                 }, | |
|                                                 "right":0 | |
|                                             } | |
|                                         } | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"min", | |
|                                         "left":1, | |
|                                         "right":{ | |
|                                             "op":"max", | |
|                                             "left":{ | |
|                                                 "op":"-", | |
|                                                 "left":"n", | |
|                                                 "right":"y2" | |
|                                             }, | |
|                                             "right":0 | |
|                                         } | |
|                                     } | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"min", | |
|                                     "left":1, | |
|                                     "right":{ | |
|                                         "op":"max", | |
|                                         "left":{ | |
|                                             "op":"-", | |
|                                             "left":"y2", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":0 | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "guard":{ | |
|                         "exp":{ | |
|                             "op":"¬", | |
|                             "exp":{ | |
|                                 "op":"∨", | |
|                                 "left":{ | |
|                                     "op":"=", | |
|                                     "left":"y2", | |
|                                     "right":1 | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"∧", | |
|                                     "left":{ | |
|                                         "op":"=", | |
|                                         "left":{ | |
|                                             "op":"-", | |
|                                             "left":"y2", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":"y1" | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"=", | |
|                                         "left":"x2", | |
|                                         "right":"x1" | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "destinations":[ | |
|                         { | |
|                             "probability":{ | |
|                                 "exp":{ | |
|                                     "op":"/", | |
|                                     "left":{ | |
|                                         "op":"/", | |
|                                         "left":2, | |
|                                         "right":{ | |
|                                             "op":"+", | |
|                                             "left":{ | |
|                                                 "op":"+", | |
|                                                 "left":{ | |
|                                                     "op":"+", | |
|                                                     "left":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"n", | |
|                                                                 "right":"x2" | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     }, | |
|                                                     "right":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"x2", | |
|                                                                 "right":1 | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     } | |
|                                                 }, | |
|                                                 "right":{ | |
|                                                     "op":"min", | |
|                                                     "left":1, | |
|                                                     "right":{ | |
|                                                         "op":"max", | |
|                                                         "left":{ | |
|                                                             "op":"-", | |
|                                                             "left":"n", | |
|                                                             "right":"y2" | |
|                                                         }, | |
|                                                         "right":0 | |
|                                                     } | |
|                                                 } | |
|                                             }, | |
|                                             "right":{ | |
|                                                 "op":"min", | |
|                                                 "left":1, | |
|                                                 "right":{ | |
|                                                     "op":"max", | |
|                                                     "left":{ | |
|                                                         "op":"-", | |
|                                                         "left":"y2", | |
|                                                         "right":1 | |
|                                                     }, | |
|                                                     "right":0 | |
|                                                 } | |
|                                             } | |
|                                         } | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"/", | |
|                                         "left":2, | |
|                                         "right":{ | |
|                                             "op":"+", | |
|                                             "left":{ | |
|                                                 "op":"+", | |
|                                                 "left":{ | |
|                                                     "op":"+", | |
|                                                     "left":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"n", | |
|                                                                 "right":"x2" | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     }, | |
|                                                     "right":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"x2", | |
|                                                                 "right":1 | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     } | |
|                                                 }, | |
|                                                 "right":{ | |
|                                                     "op":"min", | |
|                                                     "left":1, | |
|                                                     "right":{ | |
|                                                         "op":"max", | |
|                                                         "left":{ | |
|                                                             "op":"-", | |
|                                                             "left":"n", | |
|                                                             "right":"y2" | |
|                                                         }, | |
|                                                         "right":0 | |
|                                                     } | |
|                                                 } | |
|                                             }, | |
|                                             "right":{ | |
|                                                 "op":"min", | |
|                                                 "left":1, | |
|                                                 "right":{ | |
|                                                     "op":"max", | |
|                                                     "left":{ | |
|                                                         "op":"-", | |
|                                                         "left":"y2", | |
|                                                         "right":1 | |
|                                                     }, | |
|                                                     "right":0 | |
|                                                 } | |
|                                             } | |
|                                         } | |
|                                     } | |
|                                 } | |
|                             }, | |
|                             "location":"location", | |
|                             "assignments":[ | |
|                                 { | |
|                                     "ref":"y2", | |
|                                     "value":{ | |
|                                         "op":"-", | |
|                                         "left":"y2", | |
|                                         "right":1 | |
|                                     } | |
|                                 } | |
|                             ], | |
|                             "observables":[ | |
|                             ] | |
|                         } | |
|                     ] | |
|                 }, | |
|                 { | |
|                     "location":"location", | |
|                     "action":"tau__", | |
|                     "rate":{ | |
|                         "exp":{ | |
|                             "op":"/", | |
|                             "left":2, | |
|                             "right":{ | |
|                                 "op":"+", | |
|                                 "left":{ | |
|                                     "op":"+", | |
|                                     "left":{ | |
|                                         "op":"+", | |
|                                         "left":{ | |
|                                             "op":"min", | |
|                                             "left":1, | |
|                                             "right":{ | |
|                                                 "op":"max", | |
|                                                 "left":{ | |
|                                                     "op":"-", | |
|                                                     "left":"n", | |
|                                                     "right":"x2" | |
|                                                 }, | |
|                                                 "right":0 | |
|                                             } | |
|                                         }, | |
|                                         "right":{ | |
|                                             "op":"min", | |
|                                             "left":1, | |
|                                             "right":{ | |
|                                                 "op":"max", | |
|                                                 "left":{ | |
|                                                     "op":"-", | |
|                                                     "left":"x2", | |
|                                                     "right":1 | |
|                                                 }, | |
|                                                 "right":0 | |
|                                             } | |
|                                         } | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"min", | |
|                                         "left":1, | |
|                                         "right":{ | |
|                                             "op":"max", | |
|                                             "left":{ | |
|                                                 "op":"-", | |
|                                                 "left":"n", | |
|                                                 "right":"y2" | |
|                                             }, | |
|                                             "right":0 | |
|                                         } | |
|                                     } | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"min", | |
|                                     "left":1, | |
|                                     "right":{ | |
|                                         "op":"max", | |
|                                         "left":{ | |
|                                             "op":"-", | |
|                                             "left":"y2", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":0 | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "guard":{ | |
|                         "exp":{ | |
|                             "op":"¬", | |
|                             "exp":{ | |
|                                 "op":"∨", | |
|                                 "left":{ | |
|                                     "op":"=", | |
|                                     "left":"x2", | |
|                                     "right":1 | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"∧", | |
|                                     "left":{ | |
|                                         "op":"=", | |
|                                         "left":{ | |
|                                             "op":"-", | |
|                                             "left":"x2", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":"x1" | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"=", | |
|                                         "left":"y2", | |
|                                         "right":"y1" | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "destinations":[ | |
|                         { | |
|                             "probability":{ | |
|                                 "exp":{ | |
|                                     "op":"/", | |
|                                     "left":{ | |
|                                         "op":"/", | |
|                                         "left":2, | |
|                                         "right":{ | |
|                                             "op":"+", | |
|                                             "left":{ | |
|                                                 "op":"+", | |
|                                                 "left":{ | |
|                                                     "op":"+", | |
|                                                     "left":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"n", | |
|                                                                 "right":"x2" | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     }, | |
|                                                     "right":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"x2", | |
|                                                                 "right":1 | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     } | |
|                                                 }, | |
|                                                 "right":{ | |
|                                                     "op":"min", | |
|                                                     "left":1, | |
|                                                     "right":{ | |
|                                                         "op":"max", | |
|                                                         "left":{ | |
|                                                             "op":"-", | |
|                                                             "left":"n", | |
|                                                             "right":"y2" | |
|                                                         }, | |
|                                                         "right":0 | |
|                                                     } | |
|                                                 } | |
|                                             }, | |
|                                             "right":{ | |
|                                                 "op":"min", | |
|                                                 "left":1, | |
|                                                 "right":{ | |
|                                                     "op":"max", | |
|                                                     "left":{ | |
|                                                         "op":"-", | |
|                                                         "left":"y2", | |
|                                                         "right":1 | |
|                                                     }, | |
|                                                     "right":0 | |
|                                                 } | |
|                                             } | |
|                                         } | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"/", | |
|                                         "left":2, | |
|                                         "right":{ | |
|                                             "op":"+", | |
|                                             "left":{ | |
|                                                 "op":"+", | |
|                                                 "left":{ | |
|                                                     "op":"+", | |
|                                                     "left":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"n", | |
|                                                                 "right":"x2" | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     }, | |
|                                                     "right":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"x2", | |
|                                                                 "right":1 | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     } | |
|                                                 }, | |
|                                                 "right":{ | |
|                                                     "op":"min", | |
|                                                     "left":1, | |
|                                                     "right":{ | |
|                                                         "op":"max", | |
|                                                         "left":{ | |
|                                                             "op":"-", | |
|                                                             "left":"n", | |
|                                                             "right":"y2" | |
|                                                         }, | |
|                                                         "right":0 | |
|                                                     } | |
|                                                 } | |
|                                             }, | |
|                                             "right":{ | |
|                                                 "op":"min", | |
|                                                 "left":1, | |
|                                                 "right":{ | |
|                                                     "op":"max", | |
|                                                     "left":{ | |
|                                                         "op":"-", | |
|                                                         "left":"y2", | |
|                                                         "right":1 | |
|                                                     }, | |
|                                                     "right":0 | |
|                                                 } | |
|                                             } | |
|                                         } | |
|                                     } | |
|                                 } | |
|                             }, | |
|                             "location":"location", | |
|                             "assignments":[ | |
|                                 { | |
|                                     "ref":"x2", | |
|                                     "value":{ | |
|                                         "op":"-", | |
|                                         "left":"x2", | |
|                                         "right":1 | |
|                                     } | |
|                                 } | |
|                             ], | |
|                             "observables":[ | |
|                             ] | |
|                         } | |
|                     ] | |
|                 }, | |
|                 { | |
|                     "location":"location", | |
|                     "action":"tau__", | |
|                     "rate":{ | |
|                         "exp":{ | |
|                             "op":"/", | |
|                             "left":2, | |
|                             "right":{ | |
|                                 "op":"+", | |
|                                 "left":{ | |
|                                     "op":"+", | |
|                                     "left":{ | |
|                                         "op":"+", | |
|                                         "left":{ | |
|                                             "op":"min", | |
|                                             "left":1, | |
|                                             "right":{ | |
|                                                 "op":"max", | |
|                                                 "left":{ | |
|                                                     "op":"-", | |
|                                                     "left":"n", | |
|                                                     "right":"x2" | |
|                                                 }, | |
|                                                 "right":0 | |
|                                             } | |
|                                         }, | |
|                                         "right":{ | |
|                                             "op":"min", | |
|                                             "left":1, | |
|                                             "right":{ | |
|                                                 "op":"max", | |
|                                                 "left":{ | |
|                                                     "op":"-", | |
|                                                     "left":"x2", | |
|                                                     "right":1 | |
|                                                 }, | |
|                                                 "right":0 | |
|                                             } | |
|                                         } | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"min", | |
|                                         "left":1, | |
|                                         "right":{ | |
|                                             "op":"max", | |
|                                             "left":{ | |
|                                                 "op":"-", | |
|                                                 "left":"n", | |
|                                                 "right":"y2" | |
|                                             }, | |
|                                             "right":0 | |
|                                         } | |
|                                     } | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"min", | |
|                                     "left":1, | |
|                                     "right":{ | |
|                                         "op":"max", | |
|                                         "left":{ | |
|                                             "op":"-", | |
|                                             "left":"y2", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":0 | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "guard":{ | |
|                         "exp":{ | |
|                             "op":"¬", | |
|                             "exp":{ | |
|                                 "op":"∨", | |
|                                 "left":{ | |
|                                     "op":"=", | |
|                                     "left":"x2", | |
|                                     "right":"n" | |
|                                 }, | |
|                                 "right":{ | |
|                                     "op":"∧", | |
|                                     "left":{ | |
|                                         "op":"=", | |
|                                         "left":{ | |
|                                             "op":"+", | |
|                                             "left":"x2", | |
|                                             "right":1 | |
|                                         }, | |
|                                         "right":"x1" | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"=", | |
|                                         "left":"y2", | |
|                                         "right":"y1" | |
|                                     } | |
|                                 } | |
|                             } | |
|                         } | |
|                     }, | |
|                     "destinations":[ | |
|                         { | |
|                             "probability":{ | |
|                                 "exp":{ | |
|                                     "op":"/", | |
|                                     "left":{ | |
|                                         "op":"/", | |
|                                         "left":2, | |
|                                         "right":{ | |
|                                             "op":"+", | |
|                                             "left":{ | |
|                                                 "op":"+", | |
|                                                 "left":{ | |
|                                                     "op":"+", | |
|                                                     "left":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"n", | |
|                                                                 "right":"x2" | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     }, | |
|                                                     "right":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"x2", | |
|                                                                 "right":1 | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     } | |
|                                                 }, | |
|                                                 "right":{ | |
|                                                     "op":"min", | |
|                                                     "left":1, | |
|                                                     "right":{ | |
|                                                         "op":"max", | |
|                                                         "left":{ | |
|                                                             "op":"-", | |
|                                                             "left":"n", | |
|                                                             "right":"y2" | |
|                                                         }, | |
|                                                         "right":0 | |
|                                                     } | |
|                                                 } | |
|                                             }, | |
|                                             "right":{ | |
|                                                 "op":"min", | |
|                                                 "left":1, | |
|                                                 "right":{ | |
|                                                     "op":"max", | |
|                                                     "left":{ | |
|                                                         "op":"-", | |
|                                                         "left":"y2", | |
|                                                         "right":1 | |
|                                                     }, | |
|                                                     "right":0 | |
|                                                 } | |
|                                             } | |
|                                         } | |
|                                     }, | |
|                                     "right":{ | |
|                                         "op":"/", | |
|                                         "left":2, | |
|                                         "right":{ | |
|                                             "op":"+", | |
|                                             "left":{ | |
|                                                 "op":"+", | |
|                                                 "left":{ | |
|                                                     "op":"+", | |
|                                                     "left":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"n", | |
|                                                                 "right":"x2" | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     }, | |
|                                                     "right":{ | |
|                                                         "op":"min", | |
|                                                         "left":1, | |
|                                                         "right":{ | |
|                                                             "op":"max", | |
|                                                             "left":{ | |
|                                                                 "op":"-", | |
|                                                                 "left":"x2", | |
|                                                                 "right":1 | |
|                                                             }, | |
|                                                             "right":0 | |
|                                                         } | |
|                                                     } | |
|                                                 }, | |
|                                                 "right":{ | |
|                                                     "op":"min", | |
|                                                     "left":1, | |
|                                                     "right":{ | |
|                                                         "op":"max", | |
|                                                         "left":{ | |
|                                                             "op":"-", | |
|                                                             "left":"n", | |
|                                                             "right":"y2" | |
|                                                         }, | |
|                                                         "right":0 | |
|                                                     } | |
|                                                 } | |
|                                             }, | |
|                                             "right":{ | |
|                                                 "op":"min", | |
|                                                 "left":1, | |
|                                                 "right":{ | |
|                                                     "op":"max", | |
|                                                     "left":{ | |
|                                                         "op":"-", | |
|                                                         "left":"y2", | |
|                                                         "right":1 | |
|                                                     }, | |
|                                                     "right":0 | |
|                                                 } | |
|                                             } | |
|                                         } | |
|                                     } | |
|                                 } | |
|                             }, | |
|                             "location":"location", | |
|                             "assignments":[ | |
|                                 { | |
|                                     "ref":"x2", | |
|                                     "value":{ | |
|                                         "op":"+", | |
|                                         "left":"x2", | |
|                                         "right":1 | |
|                                     } | |
|                                 } | |
|                             ], | |
|                             "observables":[ | |
|                             ] | |
|                         } | |
|                     ] | |
|                 } | |
|             ] | |
|         } | |
|     ], | |
|     "system":{ | |
|         "elements":[ | |
|             { | |
|                 "automaton":"robot" | |
|             }, | |
|             { | |
|                 "automaton":"janitor" | |
|             } | |
|         ], | |
|         "syncs":[ | |
|             { | |
|                 "synchronise":[ | |
|                     "tau__", | |
|                     null | |
|                 ], | |
|                 "result":"tau__" | |
|             }, | |
|             { | |
|                 "synchronise":[ | |
|                     null, | |
|                     "tau__" | |
|                 ], | |
|                 "result":"tau__" | |
|             } | |
|         ] | |
|     } | |
| }
 |