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.

928 lines
29 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":"s12"
  11. },
  12. {
  13. "name":"s13"
  14. },
  15. {
  16. "name":"s14"
  17. },
  18. {
  19. "name":"s23"
  20. },
  21. {
  22. "name":"s24"
  23. },
  24. {
  25. "name":"s34"
  26. },
  27. {
  28. "name":"tau__"
  29. }
  30. ],
  31. "constants":[
  32. {
  33. "name":"p",
  34. "type":"real"
  35. }
  36. ],
  37. "variables":[
  38. {
  39. "name":"pc",
  40. "type":{
  41. "kind":"bounded",
  42. "base":"int",
  43. "lower-bound":0,
  44. "upper-bound":12
  45. }
  46. },
  47. {
  48. "name":"x12",
  49. "type":"bool"
  50. },
  51. {
  52. "name":"x13",
  53. "type":"bool"
  54. },
  55. {
  56. "name":"x14",
  57. "type":"bool"
  58. },
  59. {
  60. "name":"x23",
  61. "type":"bool"
  62. },
  63. {
  64. "name":"x24",
  65. "type":"bool"
  66. },
  67. {
  68. "name":"x34",
  69. "type":"bool"
  70. }
  71. ],
  72. "observables":[
  73. ],
  74. "initial-states":{
  75. "exp":{
  76. "op":"∧",
  77. "left":{
  78. "op":"∧",
  79. "left":{
  80. "op":"∧",
  81. "left":{
  82. "op":"∧",
  83. "left":{
  84. "op":"∧",
  85. "left":{
  86. "op":"∧",
  87. "left":{
  88. "op":"=",
  89. "left":"pc",
  90. "right":0
  91. },
  92. "right":{
  93. "op":"=",
  94. "left":"x12",
  95. "right":false
  96. }
  97. },
  98. "right":{
  99. "op":"=",
  100. "left":"x13",
  101. "right":false
  102. }
  103. },
  104. "right":{
  105. "op":"=",
  106. "left":"x14",
  107. "right":false
  108. }
  109. },
  110. "right":{
  111. "op":"=",
  112. "left":"x23",
  113. "right":false
  114. }
  115. },
  116. "right":{
  117. "op":"=",
  118. "left":"x24",
  119. "right":false
  120. }
  121. },
  122. "right":{
  123. "op":"=",
  124. "left":"x34",
  125. "right":false
  126. }
  127. }
  128. },
  129. "automata":[
  130. {
  131. "name":"PC",
  132. "locations":[
  133. {
  134. "name":"location"
  135. }
  136. ],
  137. "initial-locations":[
  138. "location"
  139. ],
  140. "edges":[
  141. {
  142. "location":"location",
  143. "action":"s12",
  144. "guard":{
  145. "exp":{
  146. "op":"=",
  147. "left":"pc",
  148. "right":0
  149. }
  150. },
  151. "destinations":[
  152. {
  153. "probability":{
  154. "exp":1
  155. },
  156. "location":"location",
  157. "assignments":[
  158. {
  159. "ref":"pc",
  160. "value":{
  161. "op":"+",
  162. "left":"pc",
  163. "right":1
  164. }
  165. }
  166. ],
  167. "observables":[
  168. ]
  169. }
  170. ]
  171. },
  172. {
  173. "location":"location",
  174. "action":"s13",
  175. "guard":{
  176. "exp":{
  177. "op":"=",
  178. "left":"pc",
  179. "right":1
  180. }
  181. },
  182. "destinations":[
  183. {
  184. "probability":{
  185. "exp":1
  186. },
  187. "location":"location",
  188. "assignments":[
  189. {
  190. "ref":"pc",
  191. "value":{
  192. "op":"+",
  193. "left":"pc",
  194. "right":1
  195. }
  196. }
  197. ],
  198. "observables":[
  199. ]
  200. }
  201. ]
  202. },
  203. {
  204. "location":"location",
  205. "action":"s14",
  206. "guard":{
  207. "exp":{
  208. "op":"=",
  209. "left":"pc",
  210. "right":2
  211. }
  212. },
  213. "destinations":[
  214. {
  215. "probability":{
  216. "exp":1
  217. },
  218. "location":"location",
  219. "assignments":[
  220. {
  221. "ref":"pc",
  222. "value":{
  223. "op":"+",
  224. "left":"pc",
  225. "right":1
  226. }
  227. }
  228. ],
  229. "observables":[
  230. ]
  231. }
  232. ]
  233. },
  234. {
  235. "location":"location",
  236. "action":"s23",
  237. "guard":{
  238. "exp":{
  239. "op":"=",
  240. "left":"pc",
  241. "right":3
  242. }
  243. },
  244. "destinations":[
  245. {
  246. "probability":{
  247. "exp":1
  248. },
  249. "location":"location",
  250. "assignments":[
  251. {
  252. "ref":"pc",
  253. "value":{
  254. "op":"+",
  255. "left":"pc",
  256. "right":1
  257. }
  258. }
  259. ],
  260. "observables":[
  261. ]
  262. }
  263. ]
  264. },
  265. {
  266. "location":"location",
  267. "action":"s24",
  268. "guard":{
  269. "exp":{
  270. "op":"=",
  271. "left":"pc",
  272. "right":4
  273. }
  274. },
  275. "destinations":[
  276. {
  277. "probability":{
  278. "exp":1
  279. },
  280. "location":"location",
  281. "assignments":[
  282. {
  283. "ref":"pc",
  284. "value":{
  285. "op":"+",
  286. "left":"pc",
  287. "right":1
  288. }
  289. }
  290. ],
  291. "observables":[
  292. ]
  293. }
  294. ]
  295. },
  296. {
  297. "location":"location",
  298. "action":"s34",
  299. "guard":{
  300. "exp":{
  301. "op":"=",
  302. "left":"pc",
  303. "right":5
  304. }
  305. },
  306. "destinations":[
  307. {
  308. "probability":{
  309. "exp":1
  310. },
  311. "location":"location",
  312. "assignments":[
  313. {
  314. "ref":"pc",
  315. "value":{
  316. "op":"+",
  317. "left":"pc",
  318. "right":1
  319. }
  320. }
  321. ],
  322. "observables":[
  323. ]
  324. }
  325. ]
  326. }
  327. ]
  328. },
  329. {
  330. "name":"M12",
  331. "locations":[
  332. {
  333. "name":"location"
  334. }
  335. ],
  336. "initial-locations":[
  337. "location"
  338. ],
  339. "edges":[
  340. {
  341. "location":"location",
  342. "action":"s12",
  343. "guard":{
  344. "exp":true
  345. },
  346. "destinations":[
  347. {
  348. "probability":{
  349. "exp":"p"
  350. },
  351. "location":"location",
  352. "assignments":[
  353. {
  354. "ref":"x12",
  355. "value":true
  356. }
  357. ]
  358. },
  359. {
  360. "probability":{
  361. "exp":{
  362. "op":"-",
  363. "left":1,
  364. "right":"p"
  365. }
  366. },
  367. "location":"location",
  368. "assignments":[
  369. {
  370. "ref":"x12",
  371. "value":false
  372. }
  373. ]
  374. }
  375. ]
  376. },
  377. {
  378. "location":"location",
  379. "action":"tau__",
  380. "guard":{
  381. "exp":{
  382. "op":"∧",
  383. "left":{
  384. "op":"∧",
  385. "left":{
  386. "op":"=",
  387. "left":"pc",
  388. "right":6
  389. },
  390. "right":{
  391. "op":"¬",
  392. "exp":"x12"
  393. }
  394. },
  395. "right":{
  396. "op":"∨",
  397. "left":{
  398. "op":"∨",
  399. "left":false,
  400. "right":{
  401. "op":"∧",
  402. "left":"x13",
  403. "right":"x23"
  404. }
  405. },
  406. "right":{
  407. "op":"∧",
  408. "left":"x14",
  409. "right":"x24"
  410. }
  411. }
  412. }
  413. },
  414. "destinations":[
  415. {
  416. "probability":{
  417. "exp":1
  418. },
  419. "location":"location",
  420. "assignments":[
  421. {
  422. "ref":"x12",
  423. "value":true
  424. }
  425. ],
  426. "observables":[
  427. ]
  428. }
  429. ]
  430. }
  431. ]
  432. },
  433. {
  434. "name":"M13",
  435. "locations":[
  436. {
  437. "name":"location"
  438. }
  439. ],
  440. "initial-locations":[
  441. "location"
  442. ],
  443. "edges":[
  444. {
  445. "location":"location",
  446. "action":"s13",
  447. "guard":{
  448. "exp":true
  449. },
  450. "destinations":[
  451. {
  452. "probability":{
  453. "exp":"p"
  454. },
  455. "location":"location",
  456. "assignments":[
  457. {
  458. "ref":"x13",
  459. "value":true
  460. }
  461. ]
  462. },
  463. {
  464. "probability":{
  465. "exp":{
  466. "op":"-",
  467. "left":1,
  468. "right":"p"
  469. }
  470. },
  471. "location":"location",
  472. "assignments":[
  473. {
  474. "ref":"x13",
  475. "value":false
  476. }
  477. ]
  478. }
  479. ]
  480. }
  481. ]
  482. },
  483. {
  484. "name":"M14",
  485. "locations":[
  486. {
  487. "name":"location"
  488. }
  489. ],
  490. "initial-locations":[
  491. "location"
  492. ],
  493. "edges":[
  494. {
  495. "location":"location",
  496. "action":"s14",
  497. "guard":{
  498. "exp":true
  499. },
  500. "destinations":[
  501. {
  502. "probability":{
  503. "exp":"p"
  504. },
  505. "location":"location",
  506. "assignments":[
  507. {
  508. "ref":"x14",
  509. "value":true
  510. }
  511. ]
  512. },
  513. {
  514. "probability":{
  515. "exp":{
  516. "op":"-",
  517. "left":1,
  518. "right":"p"
  519. }
  520. },
  521. "location":"location",
  522. "assignments":[
  523. {
  524. "ref":"x14",
  525. "value":false
  526. }
  527. ]
  528. }
  529. ]
  530. }
  531. ]
  532. },
  533. {
  534. "name":"M23",
  535. "locations":[
  536. {
  537. "name":"location"
  538. }
  539. ],
  540. "initial-locations":[
  541. "location"
  542. ],
  543. "edges":[
  544. {
  545. "location":"location",
  546. "action":"s23",
  547. "guard":{
  548. "exp":true
  549. },
  550. "destinations":[
  551. {
  552. "probability":{
  553. "exp":"p"
  554. },
  555. "location":"location",
  556. "assignments":[
  557. {
  558. "ref":"x23",
  559. "value":true
  560. }
  561. ]
  562. },
  563. {
  564. "probability":{
  565. "exp":{
  566. "op":"-",
  567. "left":1,
  568. "right":"p"
  569. }
  570. },
  571. "location":"location",
  572. "assignments":[
  573. {
  574. "ref":"x23",
  575. "value":false
  576. }
  577. ]
  578. }
  579. ]
  580. },
  581. {
  582. "location":"location",
  583. "action":"tau__",
  584. "guard":{
  585. "exp":{
  586. "op":"∧",
  587. "left":{
  588. "op":"∧",
  589. "left":{
  590. "op":"=",
  591. "left":"pc",
  592. "right":6
  593. },
  594. "right":{
  595. "op":"¬",
  596. "exp":"x23"
  597. }
  598. },
  599. "right":{
  600. "op":"∨",
  601. "left":{
  602. "op":"∨",
  603. "left":false,
  604. "right":{
  605. "op":"∧",
  606. "left":"x12",
  607. "right":"x13"
  608. }
  609. },
  610. "right":{
  611. "op":"∧",
  612. "left":"x24",
  613. "right":"x34"
  614. }
  615. }
  616. }
  617. },
  618. "destinations":[
  619. {
  620. "probability":{
  621. "exp":1
  622. },
  623. "location":"location",
  624. "assignments":[
  625. {
  626. "ref":"x23",
  627. "value":true
  628. }
  629. ],
  630. "observables":[
  631. ]
  632. }
  633. ]
  634. }
  635. ]
  636. },
  637. {
  638. "name":"M24",
  639. "locations":[
  640. {
  641. "name":"location"
  642. }
  643. ],
  644. "initial-locations":[
  645. "location"
  646. ],
  647. "edges":[
  648. {
  649. "location":"location",
  650. "action":"s24",
  651. "guard":{
  652. "exp":true
  653. },
  654. "destinations":[
  655. {
  656. "probability":{
  657. "exp":"p"
  658. },
  659. "location":"location",
  660. "assignments":[
  661. {
  662. "ref":"x24",
  663. "value":true
  664. }
  665. ]
  666. },
  667. {
  668. "probability":{
  669. "exp":{
  670. "op":"-",
  671. "left":1,
  672. "right":"p"
  673. }
  674. },
  675. "location":"location",
  676. "assignments":[
  677. {
  678. "ref":"x24",
  679. "value":false
  680. }
  681. ]
  682. }
  683. ]
  684. },
  685. {
  686. "location":"location",
  687. "action":"tau__",
  688. "guard":{
  689. "exp":{
  690. "op":"∧",
  691. "left":{
  692. "op":"∧",
  693. "left":{
  694. "op":"=",
  695. "left":"pc",
  696. "right":6
  697. },
  698. "right":{
  699. "op":"¬",
  700. "exp":"x24"
  701. }
  702. },
  703. "right":{
  704. "op":"∨",
  705. "left":{
  706. "op":"∨",
  707. "left":false,
  708. "right":{
  709. "op":"∧",
  710. "left":"x12",
  711. "right":"x14"
  712. }
  713. },
  714. "right":{
  715. "op":"∧",
  716. "left":"x23",
  717. "right":"x34"
  718. }
  719. }
  720. }
  721. },
  722. "destinations":[
  723. {
  724. "probability":{
  725. "exp":1
  726. },
  727. "location":"location",
  728. "assignments":[
  729. {
  730. "ref":"x24",
  731. "value":true
  732. }
  733. ],
  734. "observables":[
  735. ]
  736. }
  737. ]
  738. }
  739. ]
  740. },
  741. {
  742. "name":"M34",
  743. "locations":[
  744. {
  745. "name":"location"
  746. }
  747. ],
  748. "initial-locations":[
  749. "location"
  750. ],
  751. "edges":[
  752. {
  753. "location":"location",
  754. "action":"s34",
  755. "guard":{
  756. "exp":true
  757. },
  758. "destinations":[
  759. {
  760. "probability":{
  761. "exp":"p"
  762. },
  763. "location":"location",
  764. "assignments":[
  765. {
  766. "ref":"x34",
  767. "value":true
  768. }
  769. ]
  770. },
  771. {
  772. "probability":{
  773. "exp":{
  774. "op":"-",
  775. "left":1,
  776. "right":"p"
  777. }
  778. },
  779. "location":"location",
  780. "assignments":[
  781. {
  782. "ref":"x34",
  783. "value":false
  784. }
  785. ]
  786. }
  787. ]
  788. }
  789. ]
  790. }
  791. ],
  792. "system":{
  793. "elements":[
  794. {
  795. "automaton":"PC"
  796. },
  797. {
  798. "automaton":"M12"
  799. },
  800. {
  801. "automaton":"M13"
  802. },
  803. {
  804. "automaton":"M14"
  805. },
  806. {
  807. "automaton":"M23"
  808. },
  809. {
  810. "automaton":"M24"
  811. },
  812. {
  813. "automaton":"M34"
  814. }
  815. ],
  816. "syncs":[
  817. {
  818. "synchronise":[
  819. "s34",
  820. null,
  821. null,
  822. null,
  823. null,
  824. null,
  825. "s34"
  826. ],
  827. "result":"s34"
  828. },
  829. {
  830. "synchronise":[
  831. "s24",
  832. null,
  833. null,
  834. null,
  835. null,
  836. "s24",
  837. null
  838. ],
  839. "result":"s24"
  840. },
  841. {
  842. "synchronise":[
  843. "s23",
  844. null,
  845. null,
  846. null,
  847. "s23",
  848. null,
  849. null
  850. ],
  851. "result":"s23"
  852. },
  853. {
  854. "synchronise":[
  855. "s14",
  856. null,
  857. null,
  858. "s14",
  859. null,
  860. null,
  861. null
  862. ],
  863. "result":"s14"
  864. },
  865. {
  866. "synchronise":[
  867. "s13",
  868. null,
  869. "s13",
  870. null,
  871. null,
  872. null,
  873. null
  874. ],
  875. "result":"s13"
  876. },
  877. {
  878. "synchronise":[
  879. "s12",
  880. "s12",
  881. null,
  882. null,
  883. null,
  884. null,
  885. null
  886. ],
  887. "result":"s12"
  888. },
  889. {
  890. "synchronise":[
  891. null,
  892. "tau__",
  893. null,
  894. null,
  895. null,
  896. null,
  897. null
  898. ],
  899. "result":"tau__"
  900. },
  901. {
  902. "synchronise":[
  903. null,
  904. null,
  905. null,
  906. null,
  907. "tau__",
  908. null,
  909. null
  910. ],
  911. "result":"tau__"
  912. },
  913. {
  914. "synchronise":[
  915. null,
  916. null,
  917. null,
  918. null,
  919. null,
  920. "tau__",
  921. null
  922. ],
  923. "result":"tau__"
  924. }
  925. ]
  926. }
  927. }