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.

334 lines
10 KiB

  1. {
  2. "jani-version":1,
  3. "features":[
  4. "derived-operators"
  5. ],
  6. "name":"Converted from PRISM by IscasMC",
  7. "type":"dtmc",
  8. "actions":[
  9. {
  10. "name":"step"
  11. }
  12. ],
  13. "variables":[
  14. {
  15. "name":"x1",
  16. "type":{
  17. "kind":"bounded",
  18. "base":"int",
  19. "lower-bound":0,
  20. "upper-bound":1
  21. }
  22. },
  23. {
  24. "name":"x2",
  25. "type":{
  26. "kind":"bounded",
  27. "base":"int",
  28. "lower-bound":0,
  29. "upper-bound":1
  30. }
  31. },
  32. {
  33. "name":"x3",
  34. "type":{
  35. "kind":"bounded",
  36. "base":"int",
  37. "lower-bound":0,
  38. "upper-bound":1
  39. }
  40. }
  41. ],
  42. "observables":[
  43. {
  44. "name":"\"steps\""
  45. }
  46. ],
  47. "initial-states":{
  48. "exp":true
  49. },
  50. "automata":[
  51. {
  52. "name":"process1",
  53. "locations":[
  54. {
  55. "name":"location",
  56. "observables":[
  57. {
  58. "ref":"\"steps\"",
  59. "value":1
  60. }
  61. ]
  62. }
  63. ],
  64. "initial-locations":[
  65. "location"
  66. ],
  67. "edges":[
  68. {
  69. "location":"location",
  70. "action":"step",
  71. "guard":{
  72. "exp":{
  73. "op":"=",
  74. "left":"x1",
  75. "right":"x3"
  76. }
  77. },
  78. "destinations":[
  79. {
  80. "probability":{
  81. "exp":0.5000000
  82. },
  83. "location":"location",
  84. "assignments":[
  85. {
  86. "ref":"x1",
  87. "value":0
  88. }
  89. ],
  90. "observables":[
  91. ]
  92. },
  93. {
  94. "probability":{
  95. "exp":{
  96. "op":"-",
  97. "left":1,
  98. "right":0.5000000
  99. }
  100. },
  101. "location":"location",
  102. "assignments":[
  103. {
  104. "ref":"x1",
  105. "value":1
  106. }
  107. ],
  108. "observables":[
  109. ]
  110. }
  111. ]
  112. },
  113. {
  114. "location":"location",
  115. "action":"step",
  116. "guard":{
  117. "exp":{
  118. "op":"¬",
  119. "exp":{
  120. "op":"=",
  121. "left":"x1",
  122. "right":"x3"
  123. }
  124. }
  125. },
  126. "destinations":[
  127. {
  128. "probability":{
  129. "exp":1
  130. },
  131. "location":"location",
  132. "assignments":[
  133. {
  134. "ref":"x1",
  135. "value":"x3"
  136. }
  137. ],
  138. "observables":[
  139. ]
  140. }
  141. ]
  142. }
  143. ]
  144. },
  145. {
  146. "name":"process2",
  147. "locations":[
  148. {
  149. "name":"location"
  150. }
  151. ],
  152. "initial-locations":[
  153. "location"
  154. ],
  155. "edges":[
  156. {
  157. "location":"location",
  158. "action":"step",
  159. "guard":{
  160. "exp":{
  161. "op":"=",
  162. "left":"x2",
  163. "right":"x1"
  164. }
  165. },
  166. "destinations":[
  167. {
  168. "probability":{
  169. "exp":0.5000000
  170. },
  171. "location":"location",
  172. "assignments":[
  173. {
  174. "ref":"x2",
  175. "value":0
  176. }
  177. ]
  178. },
  179. {
  180. "probability":{
  181. "exp":{
  182. "op":"-",
  183. "left":1,
  184. "right":0.5000000
  185. }
  186. },
  187. "location":"location",
  188. "assignments":[
  189. {
  190. "ref":"x2",
  191. "value":1
  192. }
  193. ]
  194. }
  195. ]
  196. },
  197. {
  198. "location":"location",
  199. "action":"step",
  200. "guard":{
  201. "exp":{
  202. "op":"¬",
  203. "exp":{
  204. "op":"=",
  205. "left":"x2",
  206. "right":"x1"
  207. }
  208. }
  209. },
  210. "destinations":[
  211. {
  212. "probability":{
  213. "exp":1
  214. },
  215. "location":"location",
  216. "assignments":[
  217. {
  218. "ref":"x2",
  219. "value":"x1"
  220. }
  221. ]
  222. }
  223. ]
  224. }
  225. ]
  226. },
  227. {
  228. "name":"process3",
  229. "locations":[
  230. {
  231. "name":"location"
  232. }
  233. ],
  234. "initial-locations":[
  235. "location"
  236. ],
  237. "edges":[
  238. {
  239. "location":"location",
  240. "action":"step",
  241. "guard":{
  242. "exp":{
  243. "op":"=",
  244. "left":"x3",
  245. "right":"x2"
  246. }
  247. },
  248. "destinations":[
  249. {
  250. "probability":{
  251. "exp":0.5000000
  252. },
  253. "location":"location",
  254. "assignments":[
  255. {
  256. "ref":"x3",
  257. "value":0
  258. }
  259. ]
  260. },
  261. {
  262. "probability":{
  263. "exp":{
  264. "op":"-",
  265. "left":1,
  266. "right":0.5000000
  267. }
  268. },
  269. "location":"location",
  270. "assignments":[
  271. {
  272. "ref":"x3",
  273. "value":1
  274. }
  275. ]
  276. }
  277. ]
  278. },
  279. {
  280. "location":"location",
  281. "action":"step",
  282. "guard":{
  283. "exp":{
  284. "op":"¬",
  285. "exp":{
  286. "op":"=",
  287. "left":"x3",
  288. "right":"x2"
  289. }
  290. }
  291. },
  292. "destinations":[
  293. {
  294. "probability":{
  295. "exp":1
  296. },
  297. "location":"location",
  298. "assignments":[
  299. {
  300. "ref":"x3",
  301. "value":"x2"
  302. }
  303. ]
  304. }
  305. ]
  306. }
  307. ]
  308. }
  309. ],
  310. "system":{
  311. "elements":[
  312. {
  313. "automaton":"process1"
  314. },
  315. {
  316. "automaton":"process2"
  317. },
  318. {
  319. "automaton":"process3"
  320. }
  321. ],
  322. "syncs":[
  323. {
  324. "synchronise":[
  325. "step",
  326. "step",
  327. "step"
  328. ],
  329. "result":"step"
  330. }
  331. ]
  332. }
  333. }