{ "jani-version":1, "features":[ "derived-operators" ], "name":"Converted from PRISM by IscasMC", "type":"mdp", "actions":[ { "name":"invest" }, { "name":"month" }, { "name":"done" } ], "variables":[ { "name":"m", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":1 } }, { "name":"i", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":1 } }, { "name":"b", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":1 } }, { "name":"v", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":10 } }, { "name":"p", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":10 } }, { "name":"c", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":10 } } ], "observables":[ ], "initial-states":{ "exp":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"=", "left":"m", "right":0 }, "right":{ "op":"=", "left":"i", "right":0 } }, "right":{ "op":"=", "left":"b", "right":1 } }, "right":{ "op":"=", "left":"v", "right":10 } }, "right":{ "op":"=", "left":"p", "right":5 } }, "right":{ "op":"=", "left":"c", "right":10 } } }, "automata":[ { "name":"month", "locations":[ { "name":"location" } ], "initial-locations":[ "location" ], "edges":[ { "location":"location", "action":"invest", "guard":{ "exp":{ "op":"=", "left":"m", "right":0 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"m", "value":1 } ], "observables":[ ] } ] }, { "location":"location", "action":"month", "guard":{ "exp":{ "op":"=", "left":"m", "right":1 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"m", "value":0 } ], "observables":[ ] } ] }, { "location":"location", "action":"done", "guard":{ "exp":{ "op":"=", "left":"m", "right":0 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"m", "value":0 } ], "observables":[ ] } ] } ] }, { "name":"investor", "locations":[ { "name":"location" } ], "initial-locations":[ "location" ], "edges":[ { "location":"location", "action":"invest", "guard":{ "exp":{ "op":"=", "left":"i", "right":0 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"i", "value":0 } ] } ] }, { "location":"location", "action":"invest", "guard":{ "exp":{ "op":"=", "left":"i", "right":0 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"i", "value":1 } ] } ] }, { "location":"location", "action":"invest", "guard":{ "exp":{ "op":"∧", "left":{ "op":"=", "left":"i", "right":1 }, "right":{ "op":"=", "left":"b", "right":1 } } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"i", "value":0 } ] } ] }, { "location":"location", "action":"invest", "guard":{ "exp":{ "op":"∧", "left":{ "op":"=", "left":"i", "right":1 }, "right":{ "op":"=", "left":"b", "right":1 } } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"i", "value":1 } ] } ] }, { "location":"location", "action":"done", "guard":{ "exp":{ "op":"∧", "left":{ "op":"=", "left":"i", "right":1 }, "right":{ "op":"=", "left":"b", "right":0 } } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"i", "value":1 } ] } ] } ] }, { "name":"barred", "locations":[ { "name":"location" } ], "initial-locations":[ "location" ], "edges":[ { "location":"location", "action":"invest", "guard":{ "exp":true }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"b", "value":0 } ] } ] }, { "location":"location", "action":"invest", "guard":{ "exp":{ "op":"=", "left":"b", "right":0 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"b", "value":1 } ] } ] } ] }, { "name":"value", "locations":[ { "name":"location" } ], "initial-locations":[ "location" ], "edges":[ { "location":"location", "action":"month", "guard":{ "exp":true }, "destinations":[ { "probability":{ "exp":{ "op":"/", "left":"p", "right":10 } }, "location":"location", "assignments":[ { "ref":"v", "value":{ "op":"min", "left":{ "op":"+", "left":"v", "right":1 }, "right":"c" } } ] }, { "probability":{ "exp":{ "op":"-", "left":1, "right":{ "op":"/", "left":"p", "right":10 } } }, "location":"location", "assignments":[ { "ref":"v", "value":{ "op":"min", "left":{ "op":"max", "left":{ "op":"-", "left":"v", "right":1 }, "right":0 }, "right":"c" } } ] } ] } ] }, { "name":"probability", "locations":[ { "name":"location" } ], "initial-locations":[ "location" ], "edges":[ { "location":"location", "action":"month", "guard":{ "exp":{ "op":"<", "left":"v", "right":5 } }, "destinations":[ { "probability":{ "exp":{ "op":"/", "left":2, "right":3 } }, "location":"location", "assignments":[ { "ref":"p", "value":{ "op":"min", "left":{ "op":"+", "left":"p", "right":1 }, "right":10 } } ] }, { "probability":{ "exp":{ "op":"/", "left":1, "right":3 } }, "location":"location", "assignments":[ { "ref":"p", "value":{ "op":"max", "left":{ "op":"-", "left":"p", "right":1 }, "right":0 } } ] } ] }, { "location":"location", "action":"month", "guard":{ "exp":{ "op":"=", "left":"v", "right":5 } }, "destinations":[ { "probability":{ "exp":{ "op":"/", "left":1, "right":2 } }, "location":"location", "assignments":[ { "ref":"p", "value":{ "op":"min", "left":{ "op":"+", "left":"p", "right":1 }, "right":10 } } ] }, { "probability":{ "exp":{ "op":"/", "left":1, "right":2 } }, "location":"location", "assignments":[ { "ref":"p", "value":{ "op":"max", "left":{ "op":"-", "left":"p", "right":1 }, "right":0 } } ] } ] }, { "location":"location", "action":"month", "guard":{ "exp":{ "op":">", "left":"v", "right":5 } }, "destinations":[ { "probability":{ "exp":{ "op":"/", "left":1, "right":3 } }, "location":"location", "assignments":[ { "ref":"p", "value":{ "op":"min", "left":{ "op":"+", "left":"p", "right":1 }, "right":10 } } ] }, { "probability":{ "exp":{ "op":"/", "left":2, "right":3 } }, "location":"location", "assignments":[ { "ref":"p", "value":{ "op":"max", "left":{ "op":"-", "left":"p", "right":1 }, "right":0 } } ] } ] } ] }, { "name":"cap", "locations":[ { "name":"location" } ], "initial-locations":[ "location" ], "edges":[ { "location":"location", "action":"month", "guard":{ "exp":true }, "destinations":[ { "probability":{ "exp":{ "op":"/", "left":1, "right":2 } }, "location":"location", "assignments":[ { "ref":"c", "value":{ "op":"max", "left":{ "op":"-", "left":"c", "right":1 }, "right":0 } } ] }, { "probability":{ "exp":{ "op":"/", "left":1, "right":2 } }, "location":"location", "assignments":[ { "ref":"c", "value":"c" } ] } ] } ] } ], "system":{ "elements":[ { "automaton":"month" }, { "automaton":"investor" }, { "automaton":"barred" }, { "automaton":"value" }, { "automaton":"probability" }, { "automaton":"cap" } ], "syncs":[ { "synchronise":[ "month", null, null, "month", "month", "month" ], "result":"month" }, { "synchronise":[ "invest", "invest", "invest", null, null, null ], "result":"invest" }, { "synchronise":[ "done", "done", null, null, null, null ], "result":"done" } ] } }