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.

668 lines
20 KiB

  1. {
  2. "jani-version":1,
  3. "features":[
  4. "derived-operators"
  5. ],
  6. "name":"Converted from PRISM by IscasMC",
  7. "type":"mdp",
  8. "actions":[
  9. {
  10. "name":"tau__"
  11. }
  12. ],
  13. "variables":[
  14. {
  15. "name":"q1",
  16. "type":{
  17. "kind":"bounded",
  18. "base":"int",
  19. "lower-bound":0,
  20. "upper-bound":1
  21. }
  22. },
  23. {
  24. "name":"q2",
  25. "type":{
  26. "kind":"bounded",
  27. "base":"int",
  28. "lower-bound":0,
  29. "upper-bound":1
  30. }
  31. },
  32. {
  33. "name":"q3",
  34. "type":{
  35. "kind":"bounded",
  36. "base":"int",
  37. "lower-bound":0,
  38. "upper-bound":1
  39. }
  40. },
  41. {
  42. "name":"q4",
  43. "type":{
  44. "kind":"bounded",
  45. "base":"int",
  46. "lower-bound":0,
  47. "upper-bound":1
  48. }
  49. },
  50. {
  51. "name":"q5",
  52. "type":{
  53. "kind":"bounded",
  54. "base":"int",
  55. "lower-bound":0,
  56. "upper-bound":1
  57. }
  58. },
  59. {
  60. "name":"q6",
  61. "type":{
  62. "kind":"bounded",
  63. "base":"int",
  64. "lower-bound":0,
  65. "upper-bound":1
  66. }
  67. },
  68. {
  69. "name":"q7",
  70. "type":{
  71. "kind":"bounded",
  72. "base":"int",
  73. "lower-bound":0,
  74. "upper-bound":1
  75. }
  76. }
  77. ],
  78. "observables":[
  79. {
  80. "name":"\"steps\""
  81. }
  82. ],
  83. "initial-states":{
  84. "exp":{
  85. "op":"≥",
  86. "left":{
  87. "op":"+",
  88. "left":{
  89. "op":"+",
  90. "left":{
  91. "op":"+",
  92. "left":{
  93. "op":"+",
  94. "left":{
  95. "op":"+",
  96. "left":{
  97. "op":"+",
  98. "left":"q1",
  99. "right":"q2"
  100. },
  101. "right":"q3"
  102. },
  103. "right":"q4"
  104. },
  105. "right":"q5"
  106. },
  107. "right":"q6"
  108. },
  109. "right":"q7"
  110. },
  111. "right":1
  112. }
  113. },
  114. "automata":[
  115. {
  116. "name":"process1",
  117. "locations":[
  118. {
  119. "name":"location",
  120. "observables":[
  121. {
  122. "ref":"\"steps\"",
  123. "value":1
  124. }
  125. ]
  126. }
  127. ],
  128. "initial-locations":[
  129. "location"
  130. ],
  131. "edges":[
  132. {
  133. "location":"location",
  134. "action":"tau__",
  135. "guard":{
  136. "exp":{
  137. "op":"=",
  138. "left":"q1",
  139. "right":1
  140. }
  141. },
  142. "destinations":[
  143. {
  144. "probability":{
  145. "exp":0.5000000
  146. },
  147. "location":"location",
  148. "assignments":[
  149. {
  150. "ref":"q1",
  151. "value":0
  152. },
  153. {
  154. "ref":"q7",
  155. "value":1
  156. }
  157. ],
  158. "observables":[
  159. ]
  160. },
  161. {
  162. "probability":{
  163. "exp":0.5000000
  164. },
  165. "location":"location",
  166. "assignments":[
  167. {
  168. "ref":"q1",
  169. "value":0
  170. },
  171. {
  172. "ref":"q2",
  173. "value":1
  174. }
  175. ],
  176. "observables":[
  177. ]
  178. }
  179. ]
  180. }
  181. ]
  182. },
  183. {
  184. "name":"process2",
  185. "locations":[
  186. {
  187. "name":"location"
  188. }
  189. ],
  190. "initial-locations":[
  191. "location"
  192. ],
  193. "edges":[
  194. {
  195. "location":"location",
  196. "action":"tau__",
  197. "guard":{
  198. "exp":{
  199. "op":"=",
  200. "left":"q2",
  201. "right":1
  202. }
  203. },
  204. "destinations":[
  205. {
  206. "probability":{
  207. "exp":0.5000000
  208. },
  209. "location":"location",
  210. "assignments":[
  211. {
  212. "ref":"q2",
  213. "value":0
  214. },
  215. {
  216. "ref":"q1",
  217. "value":1
  218. }
  219. ],
  220. "observables":[
  221. ]
  222. },
  223. {
  224. "probability":{
  225. "exp":0.5000000
  226. },
  227. "location":"location",
  228. "assignments":[
  229. {
  230. "ref":"q2",
  231. "value":0
  232. },
  233. {
  234. "ref":"q3",
  235. "value":1
  236. }
  237. ],
  238. "observables":[
  239. ]
  240. }
  241. ]
  242. }
  243. ]
  244. },
  245. {
  246. "name":"process3",
  247. "locations":[
  248. {
  249. "name":"location"
  250. }
  251. ],
  252. "initial-locations":[
  253. "location"
  254. ],
  255. "edges":[
  256. {
  257. "location":"location",
  258. "action":"tau__",
  259. "guard":{
  260. "exp":{
  261. "op":"=",
  262. "left":"q3",
  263. "right":1
  264. }
  265. },
  266. "destinations":[
  267. {
  268. "probability":{
  269. "exp":0.5000000
  270. },
  271. "location":"location",
  272. "assignments":[
  273. {
  274. "ref":"q3",
  275. "value":0
  276. },
  277. {
  278. "ref":"q2",
  279. "value":1
  280. }
  281. ],
  282. "observables":[
  283. ]
  284. },
  285. {
  286. "probability":{
  287. "exp":0.5000000
  288. },
  289. "location":"location",
  290. "assignments":[
  291. {
  292. "ref":"q3",
  293. "value":0
  294. },
  295. {
  296. "ref":"q4",
  297. "value":1
  298. }
  299. ],
  300. "observables":[
  301. ]
  302. }
  303. ]
  304. }
  305. ]
  306. },
  307. {
  308. "name":"process4",
  309. "locations":[
  310. {
  311. "name":"location"
  312. }
  313. ],
  314. "initial-locations":[
  315. "location"
  316. ],
  317. "edges":[
  318. {
  319. "location":"location",
  320. "action":"tau__",
  321. "guard":{
  322. "exp":{
  323. "op":"=",
  324. "left":"q4",
  325. "right":1
  326. }
  327. },
  328. "destinations":[
  329. {
  330. "probability":{
  331. "exp":0.5000000
  332. },
  333. "location":"location",
  334. "assignments":[
  335. {
  336. "ref":"q4",
  337. "value":0
  338. },
  339. {
  340. "ref":"q3",
  341. "value":1
  342. }
  343. ],
  344. "observables":[
  345. ]
  346. },
  347. {
  348. "probability":{
  349. "exp":0.5000000
  350. },
  351. "location":"location",
  352. "assignments":[
  353. {
  354. "ref":"q4",
  355. "value":0
  356. },
  357. {
  358. "ref":"q5",
  359. "value":1
  360. }
  361. ],
  362. "observables":[
  363. ]
  364. }
  365. ]
  366. }
  367. ]
  368. },
  369. {
  370. "name":"process5",
  371. "locations":[
  372. {
  373. "name":"location"
  374. }
  375. ],
  376. "initial-locations":[
  377. "location"
  378. ],
  379. "edges":[
  380. {
  381. "location":"location",
  382. "action":"tau__",
  383. "guard":{
  384. "exp":{
  385. "op":"=",
  386. "left":"q5",
  387. "right":1
  388. }
  389. },
  390. "destinations":[
  391. {
  392. "probability":{
  393. "exp":0.5000000
  394. },
  395. "location":"location",
  396. "assignments":[
  397. {
  398. "ref":"q5",
  399. "value":0
  400. },
  401. {
  402. "ref":"q4",
  403. "value":1
  404. }
  405. ],
  406. "observables":[
  407. ]
  408. },
  409. {
  410. "probability":{
  411. "exp":0.5000000
  412. },
  413. "location":"location",
  414. "assignments":[
  415. {
  416. "ref":"q5",
  417. "value":0
  418. },
  419. {
  420. "ref":"q6",
  421. "value":1
  422. }
  423. ],
  424. "observables":[
  425. ]
  426. }
  427. ]
  428. }
  429. ]
  430. },
  431. {
  432. "name":"process6",
  433. "locations":[
  434. {
  435. "name":"location"
  436. }
  437. ],
  438. "initial-locations":[
  439. "location"
  440. ],
  441. "edges":[
  442. {
  443. "location":"location",
  444. "action":"tau__",
  445. "guard":{
  446. "exp":{
  447. "op":"=",
  448. "left":"q6",
  449. "right":1
  450. }
  451. },
  452. "destinations":[
  453. {
  454. "probability":{
  455. "exp":0.5000000
  456. },
  457. "location":"location",
  458. "assignments":[
  459. {
  460. "ref":"q6",
  461. "value":0
  462. },
  463. {
  464. "ref":"q5",
  465. "value":1
  466. }
  467. ],
  468. "observables":[
  469. ]
  470. },
  471. {
  472. "probability":{
  473. "exp":0.5000000
  474. },
  475. "location":"location",
  476. "assignments":[
  477. {
  478. "ref":"q6",
  479. "value":0
  480. },
  481. {
  482. "ref":"q7",
  483. "value":1
  484. }
  485. ],
  486. "observables":[
  487. ]
  488. }
  489. ]
  490. }
  491. ]
  492. },
  493. {
  494. "name":"process7",
  495. "locations":[
  496. {
  497. "name":"location"
  498. }
  499. ],
  500. "initial-locations":[
  501. "location"
  502. ],
  503. "edges":[
  504. {
  505. "location":"location",
  506. "action":"tau__",
  507. "guard":{
  508. "exp":{
  509. "op":"=",
  510. "left":"q7",
  511. "right":1
  512. }
  513. },
  514. "destinations":[
  515. {
  516. "probability":{
  517. "exp":0.5000000
  518. },
  519. "location":"location",
  520. "assignments":[
  521. {
  522. "ref":"q7",
  523. "value":0
  524. },
  525. {
  526. "ref":"q6",
  527. "value":1
  528. }
  529. ],
  530. "observables":[
  531. ]
  532. },
  533. {
  534. "probability":{
  535. "exp":0.5000000
  536. },
  537. "location":"location",
  538. "assignments":[
  539. {
  540. "ref":"q7",
  541. "value":0
  542. },
  543. {
  544. "ref":"q1",
  545. "value":1
  546. }
  547. ],
  548. "observables":[
  549. ]
  550. }
  551. ]
  552. }
  553. ]
  554. }
  555. ],
  556. "system":{
  557. "elements":[
  558. {
  559. "automaton":"process1"
  560. },
  561. {
  562. "automaton":"process2"
  563. },
  564. {
  565. "automaton":"process3"
  566. },
  567. {
  568. "automaton":"process4"
  569. },
  570. {
  571. "automaton":"process5"
  572. },
  573. {
  574. "automaton":"process6"
  575. },
  576. {
  577. "automaton":"process7"
  578. }
  579. ],
  580. "syncs":[
  581. {
  582. "synchronise":[
  583. "tau__",
  584. null,
  585. null,
  586. null,
  587. null,
  588. null,
  589. null
  590. ],
  591. "result":"tau__"
  592. },
  593. {
  594. "synchronise":[
  595. null,
  596. "tau__",
  597. null,
  598. null,
  599. null,
  600. null,
  601. null
  602. ],
  603. "result":"tau__"
  604. },
  605. {
  606. "synchronise":[
  607. null,
  608. null,
  609. "tau__",
  610. null,
  611. null,
  612. null,
  613. null
  614. ],
  615. "result":"tau__"
  616. },
  617. {
  618. "synchronise":[
  619. null,
  620. null,
  621. null,
  622. "tau__",
  623. null,
  624. null,
  625. null
  626. ],
  627. "result":"tau__"
  628. },
  629. {
  630. "synchronise":[
  631. null,
  632. null,
  633. null,
  634. null,
  635. "tau__",
  636. null,
  637. null
  638. ],
  639. "result":"tau__"
  640. },
  641. {
  642. "synchronise":[
  643. null,
  644. null,
  645. null,
  646. null,
  647. null,
  648. "tau__",
  649. null
  650. ],
  651. "result":"tau__"
  652. },
  653. {
  654. "synchronise":[
  655. null,
  656. null,
  657. null,
  658. null,
  659. null,
  660. null,
  661. "tau__"
  662. ],
  663. "result":"tau__"
  664. }
  665. ]
  666. }
  667. }