{ "jani-version":1, "features":[ "derived-operators" ], "name":"Converted from PRISM by IscasMC", "type":"pta", "actions":[ { "name":"tau__" }, { "name":"send_used" }, { "name":"send_fresh" }, { "name":"recv" } ], "variables":[ { "name":"s", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":2 } }, { "name":"probes", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":4 } }, { "name":"ip", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":2 } }, { "name":"x", "type":"clock" }, { "name":"e", "type":{ "kind":"bounded", "base":"int", "lower-bound":0, "upper-bound":2 } }, { "name":"y", "type":"clock" } ], "observables":[ { "name":"\"time\"" } ], "initial-states":{ "exp":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"=", "left":"s", "right":0 }, "right":{ "op":"=", "left":"probes", "right":0 } }, "right":{ "op":"=", "left":"ip", "right":0 } }, "right":{ "op":"=", "left":"x", "right":0 } }, "right":{ "op":"=", "left":"e", "right":0 } }, "right":{ "op":"=", "left":"y", "right":0 } } }, "automata":[ { "name":"sender", "locations":[ { "name":"location", "observables":[ { "ref":"\"time\"", "value":1 } ], "invariant":{ "exp":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"⇒", "left":{ "op":"=", "left":"s", "right":0 }, "right":{ "op":"≤", "left":"x", "right":0 } }, "right":{ "op":"⇒", "left":{ "op":"=", "left":"s", "right":1 }, "right":{ "op":"≤", "left":"x", "right":20 } } }, "right":{ "op":"⇒", "left":{ "op":"=", "left":"s", "right":2 }, "right":true } } } } ], "initial-locations":[ "location" ], "edges":[ { "location":"location", "action":"tau__", "guard":{ "exp":{ "op":"=", "left":"s", "right":0 } }, "destinations":[ { "probability":{ "exp":0.5000000 }, "location":"location", "assignments":[ { "ref":"s", "value":1 }, { "ref":"ip", "value":1 } ], "observables":[ ] }, { "probability":{ "exp":0.5000000 }, "location":"location", "assignments":[ { "ref":"s", "value":1 }, { "ref":"ip", "value":2 } ], "observables":[ ] } ] }, { "location":"location", "action":"send_used", "guard":{ "exp":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"=", "left":"s", "right":1 }, "right":{ "op":"=", "left":"x", "right":20 } }, "right":{ "op":"=", "left":"ip", "right":2 } }, "right":{ "op":"<", "left":"probes", "right":4 } } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"probes", "value":{ "op":"+", "left":"probes", "right":1 } }, { "ref":"x", "value":0 } ], "observables":[ ] } ] }, { "location":"location", "action":"send_fresh", "guard":{ "exp":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"=", "left":"s", "right":1 }, "right":{ "op":"=", "left":"x", "right":20 } }, "right":{ "op":"=", "left":"ip", "right":1 } }, "right":{ "op":"<", "left":"probes", "right":4 } } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"probes", "value":{ "op":"+", "left":"probes", "right":1 } }, { "ref":"x", "value":0 } ], "observables":[ ] } ] }, { "location":"location", "action":"tau__", "guard":{ "exp":{ "op":"∧", "left":{ "op":"∧", "left":{ "op":"=", "left":"s", "right":1 }, "right":{ "op":"=", "left":"x", "right":20 } }, "right":{ "op":"=", "left":"probes", "right":4 } } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"s", "value":2 }, { "ref":"x", "value":0 } ], "observables":[ ] } ] }, { "location":"location", "action":"recv", "guard":{ "exp":{ "op":"=", "left":"s", "right":1 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"s", "value":0 }, { "ref":"x", "value":0 }, { "ref":"ip", "value":0 }, { "ref":"probes", "value":0 } ], "observables":[ ] } ] }, { "location":"location", "action":"tau__", "guard":{ "exp":{ "op":"=", "left":"s", "right":2 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ ], "observables":[ ] } ] } ] }, { "name":"environment", "locations":[ { "name":"location", "invariant":{ "exp":{ "op":"∧", "left":{ "op":"⇒", "left":{ "op":"=", "left":"e", "right":0 }, "right":true }, "right":{ "op":"⇒", "left":{ "op":"≥", "left":"e", "right":1 }, "right":{ "op":"≤", "left":"y", "right":5 } } } } } ], "initial-locations":[ "location" ], "edges":[ { "location":"location", "action":"send_fresh", "guard":{ "exp":{ "op":"=", "left":"e", "right":0 } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ ] } ] }, { "location":"location", "action":"send_used", "guard":{ "exp":{ "op":"=", "left":"e", "right":0 } }, "destinations":[ { "probability":{ "exp":0.1000000 }, "location":"location", "assignments":[ { "ref":"e", "value":0 }, { "ref":"y", "value":0 } ] }, { "probability":{ "exp":0.9000000 }, "location":"location", "assignments":[ { "ref":"e", "value":1 }, { "ref":"y", "value":0 } ] } ] }, { "location":"location", "action":"tau__", "guard":{ "exp":{ "op":"∧", "left":{ "op":"=", "left":"e", "right":1 }, "right":{ "op":"≥", "left":"y", "right":1 } } }, "destinations":[ { "probability":{ "exp":0.1000000 }, "location":"location", "assignments":[ { "ref":"e", "value":0 }, { "ref":"y", "value":0 } ], "observables":[ ] }, { "probability":{ "exp":0.9000000 }, "location":"location", "assignments":[ { "ref":"e", "value":2 }, { "ref":"y", "value":0 } ], "observables":[ ] } ] }, { "location":"location", "action":"recv", "guard":{ "exp":{ "op":"∧", "left":{ "op":"=", "left":"e", "right":2 }, "right":{ "op":"≥", "left":"y", "right":1 } } }, "destinations":[ { "probability":{ "exp":1 }, "location":"location", "assignments":[ { "ref":"e", "value":0 }, { "ref":"y", "value":0 } ] } ] } ] } ], "system":{ "elements":[ { "automaton":"sender" }, { "automaton":"environment" } ], "syncs":[ { "synchronise":[ "send_used", "send_used" ], "result":"send_used" }, { "synchronise":[ "send_fresh", "send_fresh" ], "result":"send_fresh" }, { "synchronise":[ "recv", "recv" ], "result":"recv" }, { "synchronise":[ "tau__", null ], "result":"tau__" }, { "synchronise":[ null, "tau__" ], "result":"tau__" } ] } }