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.

2333 lines
75 KiB

  1. {
  2. "jani-version":1,
  3. "features":[
  4. "derived-operators"
  5. ],
  6. "name":"Converted from PRISM by IscasMC",
  7. "type":"ctmc",
  8. "actions":[
  9. {
  10. "name":"loop1a"
  11. },
  12. {
  13. "name":"loop1b"
  14. },
  15. {
  16. "name":"serve1"
  17. },
  18. {
  19. "name":"loop2a"
  20. },
  21. {
  22. "name":"loop2b"
  23. },
  24. {
  25. "name":"serve2"
  26. },
  27. {
  28. "name":"loop3a"
  29. },
  30. {
  31. "name":"loop3b"
  32. },
  33. {
  34. "name":"serve3"
  35. },
  36. {
  37. "name":"loop4a"
  38. },
  39. {
  40. "name":"loop4b"
  41. },
  42. {
  43. "name":"serve4"
  44. },
  45. {
  46. "name":"loop5a"
  47. },
  48. {
  49. "name":"loop5b"
  50. },
  51. {
  52. "name":"serve5"
  53. },
  54. {
  55. "name":"loop6a"
  56. },
  57. {
  58. "name":"loop6b"
  59. },
  60. {
  61. "name":"serve6"
  62. },
  63. {
  64. "name":"tau__"
  65. }
  66. ],
  67. "variables":[
  68. {
  69. "name":"s",
  70. "type":{
  71. "kind":"bounded",
  72. "base":"int",
  73. "lower-bound":1,
  74. "upper-bound":6
  75. }
  76. },
  77. {
  78. "name":"a",
  79. "type":{
  80. "kind":"bounded",
  81. "base":"int",
  82. "lower-bound":0,
  83. "upper-bound":1
  84. }
  85. },
  86. {
  87. "name":"s1",
  88. "type":{
  89. "kind":"bounded",
  90. "base":"int",
  91. "lower-bound":0,
  92. "upper-bound":1
  93. }
  94. },
  95. {
  96. "name":"s2",
  97. "type":{
  98. "kind":"bounded",
  99. "base":"int",
  100. "lower-bound":0,
  101. "upper-bound":1
  102. }
  103. },
  104. {
  105. "name":"s3",
  106. "type":{
  107. "kind":"bounded",
  108. "base":"int",
  109. "lower-bound":0,
  110. "upper-bound":1
  111. }
  112. },
  113. {
  114. "name":"s4",
  115. "type":{
  116. "kind":"bounded",
  117. "base":"int",
  118. "lower-bound":0,
  119. "upper-bound":1
  120. }
  121. },
  122. {
  123. "name":"s5",
  124. "type":{
  125. "kind":"bounded",
  126. "base":"int",
  127. "lower-bound":0,
  128. "upper-bound":1
  129. }
  130. },
  131. {
  132. "name":"s6",
  133. "type":{
  134. "kind":"bounded",
  135. "base":"int",
  136. "lower-bound":0,
  137. "upper-bound":1
  138. }
  139. }
  140. ],
  141. "observables":[
  142. {
  143. "name":"\"waiting\""
  144. },
  145. {
  146. "name":"\"served\""
  147. }
  148. ],
  149. "initial-states":{
  150. "exp":{
  151. "op":"∧",
  152. "left":{
  153. "op":"∧",
  154. "left":{
  155. "op":"∧",
  156. "left":{
  157. "op":"∧",
  158. "left":{
  159. "op":"∧",
  160. "left":{
  161. "op":"∧",
  162. "left":{
  163. "op":"∧",
  164. "left":{
  165. "op":"=",
  166. "left":"s",
  167. "right":1
  168. },
  169. "right":{
  170. "op":"=",
  171. "left":"a",
  172. "right":0
  173. }
  174. },
  175. "right":{
  176. "op":"=",
  177. "left":"s1",
  178. "right":0
  179. }
  180. },
  181. "right":{
  182. "op":"=",
  183. "left":"s2",
  184. "right":0
  185. }
  186. },
  187. "right":{
  188. "op":"=",
  189. "left":"s3",
  190. "right":0
  191. }
  192. },
  193. "right":{
  194. "op":"=",
  195. "left":"s4",
  196. "right":0
  197. }
  198. },
  199. "right":{
  200. "op":"=",
  201. "left":"s5",
  202. "right":0
  203. }
  204. },
  205. "right":{
  206. "op":"=",
  207. "left":"s6",
  208. "right":0
  209. }
  210. }
  211. },
  212. "automata":[
  213. {
  214. "name":"server",
  215. "locations":[
  216. {
  217. "name":"location",
  218. "observables":[
  219. {
  220. "ref":"\"waiting\"",
  221. "value":{
  222. "op":"?:",
  223. "args":[
  224. {
  225. "op":"∧",
  226. "left":{
  227. "op":"=",
  228. "left":"s1",
  229. "right":1
  230. },
  231. "right":{
  232. "op":"¬",
  233. "exp":{
  234. "op":"∧",
  235. "left":{
  236. "op":"=",
  237. "left":"s",
  238. "right":1
  239. },
  240. "right":{
  241. "op":"=",
  242. "left":"a",
  243. "right":1
  244. }
  245. }
  246. }
  247. },
  248. 1,
  249. 0
  250. ]
  251. }
  252. }
  253. ]
  254. }
  255. ],
  256. "initial-locations":[
  257. "location"
  258. ],
  259. "edges":[
  260. {
  261. "location":"location",
  262. "action":"loop1a",
  263. "rate":{
  264. "exp":200
  265. },
  266. "guard":{
  267. "exp":{
  268. "op":"∧",
  269. "left":{
  270. "op":"=",
  271. "left":"s",
  272. "right":1
  273. },
  274. "right":{
  275. "op":"=",
  276. "left":"a",
  277. "right":0
  278. }
  279. }
  280. },
  281. "destinations":[
  282. {
  283. "probability":{
  284. "exp":{
  285. "op":"/",
  286. "left":200,
  287. "right":200
  288. }
  289. },
  290. "location":"location",
  291. "assignments":[
  292. {
  293. "ref":"s",
  294. "value":{
  295. "op":"+",
  296. "left":"s",
  297. "right":1
  298. }
  299. }
  300. ],
  301. "observables":[
  302. ]
  303. }
  304. ]
  305. },
  306. {
  307. "location":"location",
  308. "action":"loop1b",
  309. "rate":{
  310. "exp":200
  311. },
  312. "guard":{
  313. "exp":{
  314. "op":"∧",
  315. "left":{
  316. "op":"=",
  317. "left":"s",
  318. "right":1
  319. },
  320. "right":{
  321. "op":"=",
  322. "left":"a",
  323. "right":0
  324. }
  325. }
  326. },
  327. "destinations":[
  328. {
  329. "probability":{
  330. "exp":{
  331. "op":"/",
  332. "left":200,
  333. "right":200
  334. }
  335. },
  336. "location":"location",
  337. "assignments":[
  338. {
  339. "ref":"a",
  340. "value":1
  341. }
  342. ],
  343. "observables":[
  344. ]
  345. }
  346. ]
  347. },
  348. {
  349. "location":"location",
  350. "action":"serve1",
  351. "rate":{
  352. "exp":1
  353. },
  354. "guard":{
  355. "exp":{
  356. "op":"∧",
  357. "left":{
  358. "op":"=",
  359. "left":"s",
  360. "right":1
  361. },
  362. "right":{
  363. "op":"=",
  364. "left":"a",
  365. "right":1
  366. }
  367. }
  368. },
  369. "destinations":[
  370. {
  371. "probability":{
  372. "exp":{
  373. "op":"/",
  374. "left":1,
  375. "right":1
  376. }
  377. },
  378. "location":"location",
  379. "assignments":[
  380. {
  381. "ref":"s",
  382. "value":{
  383. "op":"+",
  384. "left":"s",
  385. "right":1
  386. }
  387. },
  388. {
  389. "ref":"a",
  390. "value":0
  391. }
  392. ],
  393. "observables":[
  394. {
  395. "ref":"\"served\"",
  396. "value":1
  397. }
  398. ]
  399. }
  400. ]
  401. },
  402. {
  403. "location":"location",
  404. "action":"loop2a",
  405. "rate":{
  406. "exp":200
  407. },
  408. "guard":{
  409. "exp":{
  410. "op":"∧",
  411. "left":{
  412. "op":"=",
  413. "left":"s",
  414. "right":2
  415. },
  416. "right":{
  417. "op":"=",
  418. "left":"a",
  419. "right":0
  420. }
  421. }
  422. },
  423. "destinations":[
  424. {
  425. "probability":{
  426. "exp":{
  427. "op":"/",
  428. "left":200,
  429. "right":200
  430. }
  431. },
  432. "location":"location",
  433. "assignments":[
  434. {
  435. "ref":"s",
  436. "value":{
  437. "op":"+",
  438. "left":"s",
  439. "right":1
  440. }
  441. }
  442. ],
  443. "observables":[
  444. ]
  445. }
  446. ]
  447. },
  448. {
  449. "location":"location",
  450. "action":"loop2b",
  451. "rate":{
  452. "exp":200
  453. },
  454. "guard":{
  455. "exp":{
  456. "op":"∧",
  457. "left":{
  458. "op":"=",
  459. "left":"s",
  460. "right":2
  461. },
  462. "right":{
  463. "op":"=",
  464. "left":"a",
  465. "right":0
  466. }
  467. }
  468. },
  469. "destinations":[
  470. {
  471. "probability":{
  472. "exp":{
  473. "op":"/",
  474. "left":200,
  475. "right":200
  476. }
  477. },
  478. "location":"location",
  479. "assignments":[
  480. {
  481. "ref":"a",
  482. "value":1
  483. }
  484. ],
  485. "observables":[
  486. ]
  487. }
  488. ]
  489. },
  490. {
  491. "location":"location",
  492. "action":"serve2",
  493. "rate":{
  494. "exp":1
  495. },
  496. "guard":{
  497. "exp":{
  498. "op":"∧",
  499. "left":{
  500. "op":"=",
  501. "left":"s",
  502. "right":2
  503. },
  504. "right":{
  505. "op":"=",
  506. "left":"a",
  507. "right":1
  508. }
  509. }
  510. },
  511. "destinations":[
  512. {
  513. "probability":{
  514. "exp":{
  515. "op":"/",
  516. "left":1,
  517. "right":1
  518. }
  519. },
  520. "location":"location",
  521. "assignments":[
  522. {
  523. "ref":"s",
  524. "value":{
  525. "op":"+",
  526. "left":"s",
  527. "right":1
  528. }
  529. },
  530. {
  531. "ref":"a",
  532. "value":0
  533. }
  534. ],
  535. "observables":[
  536. ]
  537. }
  538. ]
  539. },
  540. {
  541. "location":"location",
  542. "action":"loop3a",
  543. "rate":{
  544. "exp":200
  545. },
  546. "guard":{
  547. "exp":{
  548. "op":"∧",
  549. "left":{
  550. "op":"=",
  551. "left":"s",
  552. "right":3
  553. },
  554. "right":{
  555. "op":"=",
  556. "left":"a",
  557. "right":0
  558. }
  559. }
  560. },
  561. "destinations":[
  562. {
  563. "probability":{
  564. "exp":{
  565. "op":"/",
  566. "left":200,
  567. "right":200
  568. }
  569. },
  570. "location":"location",
  571. "assignments":[
  572. {
  573. "ref":"s",
  574. "value":{
  575. "op":"+",
  576. "left":"s",
  577. "right":1
  578. }
  579. }
  580. ],
  581. "observables":[
  582. ]
  583. }
  584. ]
  585. },
  586. {
  587. "location":"location",
  588. "action":"loop3b",
  589. "rate":{
  590. "exp":200
  591. },
  592. "guard":{
  593. "exp":{
  594. "op":"∧",
  595. "left":{
  596. "op":"=",
  597. "left":"s",
  598. "right":3
  599. },
  600. "right":{
  601. "op":"=",
  602. "left":"a",
  603. "right":0
  604. }
  605. }
  606. },
  607. "destinations":[
  608. {
  609. "probability":{
  610. "exp":{
  611. "op":"/",
  612. "left":200,
  613. "right":200
  614. }
  615. },
  616. "location":"location",
  617. "assignments":[
  618. {
  619. "ref":"a",
  620. "value":1
  621. }
  622. ],
  623. "observables":[
  624. ]
  625. }
  626. ]
  627. },
  628. {
  629. "location":"location",
  630. "action":"serve3",
  631. "rate":{
  632. "exp":1
  633. },
  634. "guard":{
  635. "exp":{
  636. "op":"∧",
  637. "left":{
  638. "op":"=",
  639. "left":"s",
  640. "right":3
  641. },
  642. "right":{
  643. "op":"=",
  644. "left":"a",
  645. "right":1
  646. }
  647. }
  648. },
  649. "destinations":[
  650. {
  651. "probability":{
  652. "exp":{
  653. "op":"/",
  654. "left":1,
  655. "right":1
  656. }
  657. },
  658. "location":"location",
  659. "assignments":[
  660. {
  661. "ref":"s",
  662. "value":{
  663. "op":"+",
  664. "left":"s",
  665. "right":1
  666. }
  667. },
  668. {
  669. "ref":"a",
  670. "value":0
  671. }
  672. ],
  673. "observables":[
  674. ]
  675. }
  676. ]
  677. },
  678. {
  679. "location":"location",
  680. "action":"loop4a",
  681. "rate":{
  682. "exp":200
  683. },
  684. "guard":{
  685. "exp":{
  686. "op":"∧",
  687. "left":{
  688. "op":"=",
  689. "left":"s",
  690. "right":4
  691. },
  692. "right":{
  693. "op":"=",
  694. "left":"a",
  695. "right":0
  696. }
  697. }
  698. },
  699. "destinations":[
  700. {
  701. "probability":{
  702. "exp":{
  703. "op":"/",
  704. "left":200,
  705. "right":200
  706. }
  707. },
  708. "location":"location",
  709. "assignments":[
  710. {
  711. "ref":"s",
  712. "value":{
  713. "op":"+",
  714. "left":"s",
  715. "right":1
  716. }
  717. }
  718. ],
  719. "observables":[
  720. ]
  721. }
  722. ]
  723. },
  724. {
  725. "location":"location",
  726. "action":"loop4b",
  727. "rate":{
  728. "exp":200
  729. },
  730. "guard":{
  731. "exp":{
  732. "op":"∧",
  733. "left":{
  734. "op":"=",
  735. "left":"s",
  736. "right":4
  737. },
  738. "right":{
  739. "op":"=",
  740. "left":"a",
  741. "right":0
  742. }
  743. }
  744. },
  745. "destinations":[
  746. {
  747. "probability":{
  748. "exp":{
  749. "op":"/",
  750. "left":200,
  751. "right":200
  752. }
  753. },
  754. "location":"location",
  755. "assignments":[
  756. {
  757. "ref":"a",
  758. "value":1
  759. }
  760. ],
  761. "observables":[
  762. ]
  763. }
  764. ]
  765. },
  766. {
  767. "location":"location",
  768. "action":"serve4",
  769. "rate":{
  770. "exp":1
  771. },
  772. "guard":{
  773. "exp":{
  774. "op":"∧",
  775. "left":{
  776. "op":"=",
  777. "left":"s",
  778. "right":4
  779. },
  780. "right":{
  781. "op":"=",
  782. "left":"a",
  783. "right":1
  784. }
  785. }
  786. },
  787. "destinations":[
  788. {
  789. "probability":{
  790. "exp":{
  791. "op":"/",
  792. "left":1,
  793. "right":1
  794. }
  795. },
  796. "location":"location",
  797. "assignments":[
  798. {
  799. "ref":"s",
  800. "value":{
  801. "op":"+",
  802. "left":"s",
  803. "right":1
  804. }
  805. },
  806. {
  807. "ref":"a",
  808. "value":0
  809. }
  810. ],
  811. "observables":[
  812. ]
  813. }
  814. ]
  815. },
  816. {
  817. "location":"location",
  818. "action":"loop5a",
  819. "rate":{
  820. "exp":200
  821. },
  822. "guard":{
  823. "exp":{
  824. "op":"∧",
  825. "left":{
  826. "op":"=",
  827. "left":"s",
  828. "right":5
  829. },
  830. "right":{
  831. "op":"=",
  832. "left":"a",
  833. "right":0
  834. }
  835. }
  836. },
  837. "destinations":[
  838. {
  839. "probability":{
  840. "exp":{
  841. "op":"/",
  842. "left":200,
  843. "right":200
  844. }
  845. },
  846. "location":"location",
  847. "assignments":[
  848. {
  849. "ref":"s",
  850. "value":{
  851. "op":"+",
  852. "left":"s",
  853. "right":1
  854. }
  855. }
  856. ],
  857. "observables":[
  858. ]
  859. }
  860. ]
  861. },
  862. {
  863. "location":"location",
  864. "action":"loop5b",
  865. "rate":{
  866. "exp":200
  867. },
  868. "guard":{
  869. "exp":{
  870. "op":"∧",
  871. "left":{
  872. "op":"=",
  873. "left":"s",
  874. "right":5
  875. },
  876. "right":{
  877. "op":"=",
  878. "left":"a",
  879. "right":0
  880. }
  881. }
  882. },
  883. "destinations":[
  884. {
  885. "probability":{
  886. "exp":{
  887. "op":"/",
  888. "left":200,
  889. "right":200
  890. }
  891. },
  892. "location":"location",
  893. "assignments":[
  894. {
  895. "ref":"a",
  896. "value":1
  897. }
  898. ],
  899. "observables":[
  900. ]
  901. }
  902. ]
  903. },
  904. {
  905. "location":"location",
  906. "action":"serve5",
  907. "rate":{
  908. "exp":1
  909. },
  910. "guard":{
  911. "exp":{
  912. "op":"∧",
  913. "left":{
  914. "op":"=",
  915. "left":"s",
  916. "right":5
  917. },
  918. "right":{
  919. "op":"=",
  920. "left":"a",
  921. "right":1
  922. }
  923. }
  924. },
  925. "destinations":[
  926. {
  927. "probability":{
  928. "exp":{
  929. "op":"/",
  930. "left":1,
  931. "right":1
  932. }
  933. },
  934. "location":"location",
  935. "assignments":[
  936. {
  937. "ref":"s",
  938. "value":{
  939. "op":"+",
  940. "left":"s",
  941. "right":1
  942. }
  943. },
  944. {
  945. "ref":"a",
  946. "value":0
  947. }
  948. ],
  949. "observables":[
  950. ]
  951. }
  952. ]
  953. },
  954. {
  955. "location":"location",
  956. "action":"loop6a",
  957. "rate":{
  958. "exp":200
  959. },
  960. "guard":{
  961. "exp":{
  962. "op":"∧",
  963. "left":{
  964. "op":"=",
  965. "left":"s",
  966. "right":6
  967. },
  968. "right":{
  969. "op":"=",
  970. "left":"a",
  971. "right":0
  972. }
  973. }
  974. },
  975. "destinations":[
  976. {
  977. "probability":{
  978. "exp":{
  979. "op":"/",
  980. "left":200,
  981. "right":200
  982. }
  983. },
  984. "location":"location",
  985. "assignments":[
  986. {
  987. "ref":"s",
  988. "value":1
  989. }
  990. ],
  991. "observables":[
  992. ]
  993. }
  994. ]
  995. },
  996. {
  997. "location":"location",
  998. "action":"loop6b",
  999. "rate":{
  1000. "exp":200
  1001. },
  1002. "guard":{
  1003. "exp":{
  1004. "op":"∧",
  1005. "left":{
  1006. "op":"=",
  1007. "left":"s",
  1008. "right":6
  1009. },
  1010. "right":{
  1011. "op":"=",
  1012. "left":"a",
  1013. "right":0
  1014. }
  1015. }
  1016. },
  1017. "destinations":[
  1018. {
  1019. "probability":{
  1020. "exp":{
  1021. "op":"/",
  1022. "left":200,
  1023. "right":200
  1024. }
  1025. },
  1026. "location":"location",
  1027. "assignments":[
  1028. {
  1029. "ref":"a",
  1030. "value":1
  1031. }
  1032. ],
  1033. "observables":[
  1034. ]
  1035. }
  1036. ]
  1037. },
  1038. {
  1039. "location":"location",
  1040. "action":"serve6",
  1041. "rate":{
  1042. "exp":1
  1043. },
  1044. "guard":{
  1045. "exp":{
  1046. "op":"∧",
  1047. "left":{
  1048. "op":"=",
  1049. "left":"s",
  1050. "right":6
  1051. },
  1052. "right":{
  1053. "op":"=",
  1054. "left":"a",
  1055. "right":1
  1056. }
  1057. }
  1058. },
  1059. "destinations":[
  1060. {
  1061. "probability":{
  1062. "exp":{
  1063. "op":"/",
  1064. "left":1,
  1065. "right":1
  1066. }
  1067. },
  1068. "location":"location",
  1069. "assignments":[
  1070. {
  1071. "ref":"s",
  1072. "value":1
  1073. },
  1074. {
  1075. "ref":"a",
  1076. "value":0
  1077. }
  1078. ],
  1079. "observables":[
  1080. ]
  1081. }
  1082. ]
  1083. }
  1084. ]
  1085. },
  1086. {
  1087. "name":"station1",
  1088. "locations":[
  1089. {
  1090. "name":"location"
  1091. }
  1092. ],
  1093. "initial-locations":[
  1094. "location"
  1095. ],
  1096. "edges":[
  1097. {
  1098. "location":"location",
  1099. "action":"loop1a",
  1100. "rate":{
  1101. "exp":1
  1102. },
  1103. "guard":{
  1104. "exp":{
  1105. "op":"=",
  1106. "left":"s1",
  1107. "right":0
  1108. }
  1109. },
  1110. "destinations":[
  1111. {
  1112. "probability":{
  1113. "exp":{
  1114. "op":"/",
  1115. "left":1,
  1116. "right":1
  1117. }
  1118. },
  1119. "location":"location",
  1120. "assignments":[
  1121. {
  1122. "ref":"s1",
  1123. "value":0
  1124. }
  1125. ]
  1126. }
  1127. ]
  1128. },
  1129. {
  1130. "location":"location",
  1131. "action":"tau__",
  1132. "rate":{
  1133. "exp":{
  1134. "op":"/",
  1135. "left":1,
  1136. "right":6
  1137. }
  1138. },
  1139. "guard":{
  1140. "exp":{
  1141. "op":"=",
  1142. "left":"s1",
  1143. "right":0
  1144. }
  1145. },
  1146. "destinations":[
  1147. {
  1148. "probability":{
  1149. "exp":{
  1150. "op":"/",
  1151. "left":{
  1152. "op":"/",
  1153. "left":1,
  1154. "right":6
  1155. },
  1156. "right":{
  1157. "op":"/",
  1158. "left":1,
  1159. "right":6
  1160. }
  1161. }
  1162. },
  1163. "location":"location",
  1164. "assignments":[
  1165. {
  1166. "ref":"s1",
  1167. "value":1
  1168. }
  1169. ],
  1170. "observables":[
  1171. ]
  1172. }
  1173. ]
  1174. },
  1175. {
  1176. "location":"location",
  1177. "action":"loop1b",
  1178. "rate":{
  1179. "exp":1
  1180. },
  1181. "guard":{
  1182. "exp":{
  1183. "op":"=",
  1184. "left":"s1",
  1185. "right":1
  1186. }
  1187. },
  1188. "destinations":[
  1189. {
  1190. "probability":{
  1191. "exp":{
  1192. "op":"/",
  1193. "left":1,
  1194. "right":1
  1195. }
  1196. },
  1197. "location":"location",
  1198. "assignments":[
  1199. {
  1200. "ref":"s1",
  1201. "value":1
  1202. }
  1203. ]
  1204. }
  1205. ]
  1206. },
  1207. {
  1208. "location":"location",
  1209. "action":"serve1",
  1210. "rate":{
  1211. "exp":1
  1212. },
  1213. "guard":{
  1214. "exp":{
  1215. "op":"=",
  1216. "left":"s1",
  1217. "right":1
  1218. }
  1219. },
  1220. "destinations":[
  1221. {
  1222. "probability":{
  1223. "exp":{
  1224. "op":"/",
  1225. "left":1,
  1226. "right":1
  1227. }
  1228. },
  1229. "location":"location",
  1230. "assignments":[
  1231. {
  1232. "ref":"s1",
  1233. "value":0
  1234. }
  1235. ]
  1236. }
  1237. ]
  1238. }
  1239. ]
  1240. },
  1241. {
  1242. "name":"station2",
  1243. "locations":[
  1244. {
  1245. "name":"location"
  1246. }
  1247. ],
  1248. "initial-locations":[
  1249. "location"
  1250. ],
  1251. "edges":[
  1252. {
  1253. "location":"location",
  1254. "action":"loop2a",
  1255. "rate":{
  1256. "exp":1
  1257. },
  1258. "guard":{
  1259. "exp":{
  1260. "op":"=",
  1261. "left":"s2",
  1262. "right":0
  1263. }
  1264. },
  1265. "destinations":[
  1266. {
  1267. "probability":{
  1268. "exp":{
  1269. "op":"/",
  1270. "left":1,
  1271. "right":1
  1272. }
  1273. },
  1274. "location":"location",
  1275. "assignments":[
  1276. {
  1277. "ref":"s2",
  1278. "value":0
  1279. }
  1280. ]
  1281. }
  1282. ]
  1283. },
  1284. {
  1285. "location":"location",
  1286. "action":"tau__",
  1287. "rate":{
  1288. "exp":{
  1289. "op":"/",
  1290. "left":1,
  1291. "right":6
  1292. }
  1293. },
  1294. "guard":{
  1295. "exp":{
  1296. "op":"=",
  1297. "left":"s2",
  1298. "right":0
  1299. }
  1300. },
  1301. "destinations":[
  1302. {
  1303. "probability":{
  1304. "exp":{
  1305. "op":"/",
  1306. "left":{
  1307. "op":"/",
  1308. "left":1,
  1309. "right":6
  1310. },
  1311. "right":{
  1312. "op":"/",
  1313. "left":1,
  1314. "right":6
  1315. }
  1316. }
  1317. },
  1318. "location":"location",
  1319. "assignments":[
  1320. {
  1321. "ref":"s2",
  1322. "value":1
  1323. }
  1324. ],
  1325. "observables":[
  1326. ]
  1327. }
  1328. ]
  1329. },
  1330. {
  1331. "location":"location",
  1332. "action":"loop2b",
  1333. "rate":{
  1334. "exp":1
  1335. },
  1336. "guard":{
  1337. "exp":{
  1338. "op":"=",
  1339. "left":"s2",
  1340. "right":1
  1341. }
  1342. },
  1343. "destinations":[
  1344. {
  1345. "probability":{
  1346. "exp":{
  1347. "op":"/",
  1348. "left":1,
  1349. "right":1
  1350. }
  1351. },
  1352. "location":"location",
  1353. "assignments":[
  1354. {
  1355. "ref":"s2",
  1356. "value":1
  1357. }
  1358. ]
  1359. }
  1360. ]
  1361. },
  1362. {
  1363. "location":"location",
  1364. "action":"serve2",
  1365. "rate":{
  1366. "exp":1
  1367. },
  1368. "guard":{
  1369. "exp":{
  1370. "op":"=",
  1371. "left":"s2",
  1372. "right":1
  1373. }
  1374. },
  1375. "destinations":[
  1376. {
  1377. "probability":{
  1378. "exp":{
  1379. "op":"/",
  1380. "left":1,
  1381. "right":1
  1382. }
  1383. },
  1384. "location":"location",
  1385. "assignments":[
  1386. {
  1387. "ref":"s2",
  1388. "value":0
  1389. }
  1390. ]
  1391. }
  1392. ]
  1393. }
  1394. ]
  1395. },
  1396. {
  1397. "name":"station3",
  1398. "locations":[
  1399. {
  1400. "name":"location"
  1401. }
  1402. ],
  1403. "initial-locations":[
  1404. "location"
  1405. ],
  1406. "edges":[
  1407. {
  1408. "location":"location",
  1409. "action":"loop3a",
  1410. "rate":{
  1411. "exp":1
  1412. },
  1413. "guard":{
  1414. "exp":{
  1415. "op":"=",
  1416. "left":"s3",
  1417. "right":0
  1418. }
  1419. },
  1420. "destinations":[
  1421. {
  1422. "probability":{
  1423. "exp":{
  1424. "op":"/",
  1425. "left":1,
  1426. "right":1
  1427. }
  1428. },
  1429. "location":"location",
  1430. "assignments":[
  1431. {
  1432. "ref":"s3",
  1433. "value":0
  1434. }
  1435. ]
  1436. }
  1437. ]
  1438. },
  1439. {
  1440. "location":"location",
  1441. "action":"tau__",
  1442. "rate":{
  1443. "exp":{
  1444. "op":"/",
  1445. "left":1,
  1446. "right":6
  1447. }
  1448. },
  1449. "guard":{
  1450. "exp":{
  1451. "op":"=",
  1452. "left":"s3",
  1453. "right":0
  1454. }
  1455. },
  1456. "destinations":[
  1457. {
  1458. "probability":{
  1459. "exp":{
  1460. "op":"/",
  1461. "left":{
  1462. "op":"/",
  1463. "left":1,
  1464. "right":6
  1465. },
  1466. "right":{
  1467. "op":"/",
  1468. "left":1,
  1469. "right":6
  1470. }
  1471. }
  1472. },
  1473. "location":"location",
  1474. "assignments":[
  1475. {
  1476. "ref":"s3",
  1477. "value":1
  1478. }
  1479. ],
  1480. "observables":[
  1481. ]
  1482. }
  1483. ]
  1484. },
  1485. {
  1486. "location":"location",
  1487. "action":"loop3b",
  1488. "rate":{
  1489. "exp":1
  1490. },
  1491. "guard":{
  1492. "exp":{
  1493. "op":"=",
  1494. "left":"s3",
  1495. "right":1
  1496. }
  1497. },
  1498. "destinations":[
  1499. {
  1500. "probability":{
  1501. "exp":{
  1502. "op":"/",
  1503. "left":1,
  1504. "right":1
  1505. }
  1506. },
  1507. "location":"location",
  1508. "assignments":[
  1509. {
  1510. "ref":"s3",
  1511. "value":1
  1512. }
  1513. ]
  1514. }
  1515. ]
  1516. },
  1517. {
  1518. "location":"location",
  1519. "action":"serve3",
  1520. "rate":{
  1521. "exp":1
  1522. },
  1523. "guard":{
  1524. "exp":{
  1525. "op":"=",
  1526. "left":"s3",
  1527. "right":1
  1528. }
  1529. },
  1530. "destinations":[
  1531. {
  1532. "probability":{
  1533. "exp":{
  1534. "op":"/",
  1535. "left":1,
  1536. "right":1
  1537. }
  1538. },
  1539. "location":"location",
  1540. "assignments":[
  1541. {
  1542. "ref":"s3",
  1543. "value":0
  1544. }
  1545. ]
  1546. }
  1547. ]
  1548. }
  1549. ]
  1550. },
  1551. {
  1552. "name":"station4",
  1553. "locations":[
  1554. {
  1555. "name":"location"
  1556. }
  1557. ],
  1558. "initial-locations":[
  1559. "location"
  1560. ],
  1561. "edges":[
  1562. {
  1563. "location":"location",
  1564. "action":"loop4a",
  1565. "rate":{
  1566. "exp":1
  1567. },
  1568. "guard":{
  1569. "exp":{
  1570. "op":"=",
  1571. "left":"s4",
  1572. "right":0
  1573. }
  1574. },
  1575. "destinations":[
  1576. {
  1577. "probability":{
  1578. "exp":{
  1579. "op":"/",
  1580. "left":1,
  1581. "right":1
  1582. }
  1583. },
  1584. "location":"location",
  1585. "assignments":[
  1586. {
  1587. "ref":"s4",
  1588. "value":0
  1589. }
  1590. ]
  1591. }
  1592. ]
  1593. },
  1594. {
  1595. "location":"location",
  1596. "action":"tau__",
  1597. "rate":{
  1598. "exp":{
  1599. "op":"/",
  1600. "left":1,
  1601. "right":6
  1602. }
  1603. },
  1604. "guard":{
  1605. "exp":{
  1606. "op":"=",
  1607. "left":"s4",
  1608. "right":0
  1609. }
  1610. },
  1611. "destinations":[
  1612. {
  1613. "probability":{
  1614. "exp":{
  1615. "op":"/",
  1616. "left":{
  1617. "op":"/",
  1618. "left":1,
  1619. "right":6
  1620. },
  1621. "right":{
  1622. "op":"/",
  1623. "left":1,
  1624. "right":6
  1625. }
  1626. }
  1627. },
  1628. "location":"location",
  1629. "assignments":[
  1630. {
  1631. "ref":"s4",
  1632. "value":1
  1633. }
  1634. ],
  1635. "observables":[
  1636. ]
  1637. }
  1638. ]
  1639. },
  1640. {
  1641. "location":"location",
  1642. "action":"loop4b",
  1643. "rate":{
  1644. "exp":1
  1645. },
  1646. "guard":{
  1647. "exp":{
  1648. "op":"=",
  1649. "left":"s4",
  1650. "right":1
  1651. }
  1652. },
  1653. "destinations":[
  1654. {
  1655. "probability":{
  1656. "exp":{
  1657. "op":"/",
  1658. "left":1,
  1659. "right":1
  1660. }
  1661. },
  1662. "location":"location",
  1663. "assignments":[
  1664. {
  1665. "ref":"s4",
  1666. "value":1
  1667. }
  1668. ]
  1669. }
  1670. ]
  1671. },
  1672. {
  1673. "location":"location",
  1674. "action":"serve4",
  1675. "rate":{
  1676. "exp":1
  1677. },
  1678. "guard":{
  1679. "exp":{
  1680. "op":"=",
  1681. "left":"s4",
  1682. "right":1
  1683. }
  1684. },
  1685. "destinations":[
  1686. {
  1687. "probability":{
  1688. "exp":{
  1689. "op":"/",
  1690. "left":1,
  1691. "right":1
  1692. }
  1693. },
  1694. "location":"location",
  1695. "assignments":[
  1696. {
  1697. "ref":"s4",
  1698. "value":0
  1699. }
  1700. ]
  1701. }
  1702. ]
  1703. }
  1704. ]
  1705. },
  1706. {
  1707. "name":"station5",
  1708. "locations":[
  1709. {
  1710. "name":"location"
  1711. }
  1712. ],
  1713. "initial-locations":[
  1714. "location"
  1715. ],
  1716. "edges":[
  1717. {
  1718. "location":"location",
  1719. "action":"loop5a",
  1720. "rate":{
  1721. "exp":1
  1722. },
  1723. "guard":{
  1724. "exp":{
  1725. "op":"=",
  1726. "left":"s5",
  1727. "right":0
  1728. }
  1729. },
  1730. "destinations":[
  1731. {
  1732. "probability":{
  1733. "exp":{
  1734. "op":"/",
  1735. "left":1,
  1736. "right":1
  1737. }
  1738. },
  1739. "location":"location",
  1740. "assignments":[
  1741. {
  1742. "ref":"s5",
  1743. "value":0
  1744. }
  1745. ]
  1746. }
  1747. ]
  1748. },
  1749. {
  1750. "location":"location",
  1751. "action":"tau__",
  1752. "rate":{
  1753. "exp":{
  1754. "op":"/",
  1755. "left":1,
  1756. "right":6
  1757. }
  1758. },
  1759. "guard":{
  1760. "exp":{
  1761. "op":"=",
  1762. "left":"s5",
  1763. "right":0
  1764. }
  1765. },
  1766. "destinations":[
  1767. {
  1768. "probability":{
  1769. "exp":{
  1770. "op":"/",
  1771. "left":{
  1772. "op":"/",
  1773. "left":1,
  1774. "right":6
  1775. },
  1776. "right":{
  1777. "op":"/",
  1778. "left":1,
  1779. "right":6
  1780. }
  1781. }
  1782. },
  1783. "location":"location",
  1784. "assignments":[
  1785. {
  1786. "ref":"s5",
  1787. "value":1
  1788. }
  1789. ],
  1790. "observables":[
  1791. ]
  1792. }
  1793. ]
  1794. },
  1795. {
  1796. "location":"location",
  1797. "action":"loop5b",
  1798. "rate":{
  1799. "exp":1
  1800. },
  1801. "guard":{
  1802. "exp":{
  1803. "op":"=",
  1804. "left":"s5",
  1805. "right":1
  1806. }
  1807. },
  1808. "destinations":[
  1809. {
  1810. "probability":{
  1811. "exp":{
  1812. "op":"/",
  1813. "left":1,
  1814. "right":1
  1815. }
  1816. },
  1817. "location":"location",
  1818. "assignments":[
  1819. {
  1820. "ref":"s5",
  1821. "value":1
  1822. }
  1823. ]
  1824. }
  1825. ]
  1826. },
  1827. {
  1828. "location":"location",
  1829. "action":"serve5",
  1830. "rate":{
  1831. "exp":1
  1832. },
  1833. "guard":{
  1834. "exp":{
  1835. "op":"=",
  1836. "left":"s5",
  1837. "right":1
  1838. }
  1839. },
  1840. "destinations":[
  1841. {
  1842. "probability":{
  1843. "exp":{
  1844. "op":"/",
  1845. "left":1,
  1846. "right":1
  1847. }
  1848. },
  1849. "location":"location",
  1850. "assignments":[
  1851. {
  1852. "ref":"s5",
  1853. "value":0
  1854. }
  1855. ]
  1856. }
  1857. ]
  1858. }
  1859. ]
  1860. },
  1861. {
  1862. "name":"station6",
  1863. "locations":[
  1864. {
  1865. "name":"location"
  1866. }
  1867. ],
  1868. "initial-locations":[
  1869. "location"
  1870. ],
  1871. "edges":[
  1872. {
  1873. "location":"location",
  1874. "action":"loop6a",
  1875. "rate":{
  1876. "exp":1
  1877. },
  1878. "guard":{
  1879. "exp":{
  1880. "op":"=",
  1881. "left":"s6",
  1882. "right":0
  1883. }
  1884. },
  1885. "destinations":[
  1886. {
  1887. "probability":{
  1888. "exp":{
  1889. "op":"/",
  1890. "left":1,
  1891. "right":1
  1892. }
  1893. },
  1894. "location":"location",
  1895. "assignments":[
  1896. {
  1897. "ref":"s6",
  1898. "value":0
  1899. }
  1900. ]
  1901. }
  1902. ]
  1903. },
  1904. {
  1905. "location":"location",
  1906. "action":"tau__",
  1907. "rate":{
  1908. "exp":{
  1909. "op":"/",
  1910. "left":1,
  1911. "right":6
  1912. }
  1913. },
  1914. "guard":{
  1915. "exp":{
  1916. "op":"=",
  1917. "left":"s6",
  1918. "right":0
  1919. }
  1920. },
  1921. "destinations":[
  1922. {
  1923. "probability":{
  1924. "exp":{
  1925. "op":"/",
  1926. "left":{
  1927. "op":"/",
  1928. "left":1,
  1929. "right":6
  1930. },
  1931. "right":{
  1932. "op":"/",
  1933. "left":1,
  1934. "right":6
  1935. }
  1936. }
  1937. },
  1938. "location":"location",
  1939. "assignments":[
  1940. {
  1941. "ref":"s6",
  1942. "value":1
  1943. }
  1944. ],
  1945. "observables":[
  1946. ]
  1947. }
  1948. ]
  1949. },
  1950. {
  1951. "location":"location",
  1952. "action":"loop6b",
  1953. "rate":{
  1954. "exp":1
  1955. },
  1956. "guard":{
  1957. "exp":{
  1958. "op":"=",
  1959. "left":"s6",
  1960. "right":1
  1961. }
  1962. },
  1963. "destinations":[
  1964. {
  1965. "probability":{
  1966. "exp":{
  1967. "op":"/",
  1968. "left":1,
  1969. "right":1
  1970. }
  1971. },
  1972. "location":"location",
  1973. "assignments":[
  1974. {
  1975. "ref":"s6",
  1976. "value":1
  1977. }
  1978. ]
  1979. }
  1980. ]
  1981. },
  1982. {
  1983. "location":"location",
  1984. "action":"serve6",
  1985. "rate":{
  1986. "exp":1
  1987. },
  1988. "guard":{
  1989. "exp":{
  1990. "op":"=",
  1991. "left":"s6",
  1992. "right":1
  1993. }
  1994. },
  1995. "destinations":[
  1996. {
  1997. "probability":{
  1998. "exp":{
  1999. "op":"/",
  2000. "left":1,
  2001. "right":1
  2002. }
  2003. },
  2004. "location":"location",
  2005. "assignments":[
  2006. {
  2007. "ref":"s6",
  2008. "value":0
  2009. }
  2010. ]
  2011. }
  2012. ]
  2013. }
  2014. ]
  2015. }
  2016. ],
  2017. "system":{
  2018. "elements":[
  2019. {
  2020. "automaton":"server"
  2021. },
  2022. {
  2023. "automaton":"station1"
  2024. },
  2025. {
  2026. "automaton":"station2"
  2027. },
  2028. {
  2029. "automaton":"station3"
  2030. },
  2031. {
  2032. "automaton":"station4"
  2033. },
  2034. {
  2035. "automaton":"station5"
  2036. },
  2037. {
  2038. "automaton":"station6"
  2039. }
  2040. ],
  2041. "syncs":[
  2042. {
  2043. "synchronise":[
  2044. "loop6a",
  2045. null,
  2046. null,
  2047. null,
  2048. null,
  2049. null,
  2050. "loop6a"
  2051. ],
  2052. "result":"loop6a"
  2053. },
  2054. {
  2055. "synchronise":[
  2056. "loop6b",
  2057. null,
  2058. null,
  2059. null,
  2060. null,
  2061. null,
  2062. "loop6b"
  2063. ],
  2064. "result":"loop6b"
  2065. },
  2066. {
  2067. "synchronise":[
  2068. "serve6",
  2069. null,
  2070. null,
  2071. null,
  2072. null,
  2073. null,
  2074. "serve6"
  2075. ],
  2076. "result":"serve6"
  2077. },
  2078. {
  2079. "synchronise":[
  2080. "loop5a",
  2081. null,
  2082. null,
  2083. null,
  2084. null,
  2085. "loop5a",
  2086. null
  2087. ],
  2088. "result":"loop5a"
  2089. },
  2090. {
  2091. "synchronise":[
  2092. "loop5b",
  2093. null,
  2094. null,
  2095. null,
  2096. null,
  2097. "loop5b",
  2098. null
  2099. ],
  2100. "result":"loop5b"
  2101. },
  2102. {
  2103. "synchronise":[
  2104. "serve5",
  2105. null,
  2106. null,
  2107. null,
  2108. null,
  2109. "serve5",
  2110. null
  2111. ],
  2112. "result":"serve5"
  2113. },
  2114. {
  2115. "synchronise":[
  2116. "loop4a",
  2117. null,
  2118. null,
  2119. null,
  2120. "loop4a",
  2121. null,
  2122. null
  2123. ],
  2124. "result":"loop4a"
  2125. },
  2126. {
  2127. "synchronise":[
  2128. "loop4b",
  2129. null,
  2130. null,
  2131. null,
  2132. "loop4b",
  2133. null,
  2134. null
  2135. ],
  2136. "result":"loop4b"
  2137. },
  2138. {
  2139. "synchronise":[
  2140. "serve4",
  2141. null,
  2142. null,
  2143. null,
  2144. "serve4",
  2145. null,
  2146. null
  2147. ],
  2148. "result":"serve4"
  2149. },
  2150. {
  2151. "synchronise":[
  2152. "loop3a",
  2153. null,
  2154. null,
  2155. "loop3a",
  2156. null,
  2157. null,
  2158. null
  2159. ],
  2160. "result":"loop3a"
  2161. },
  2162. {
  2163. "synchronise":[
  2164. "loop3b",
  2165. null,
  2166. null,
  2167. "loop3b",
  2168. null,
  2169. null,
  2170. null
  2171. ],
  2172. "result":"loop3b"
  2173. },
  2174. {
  2175. "synchronise":[
  2176. "serve3",
  2177. null,
  2178. null,
  2179. "serve3",
  2180. null,
  2181. null,
  2182. null
  2183. ],
  2184. "result":"serve3"
  2185. },
  2186. {
  2187. "synchronise":[
  2188. "loop2a",
  2189. null,
  2190. "loop2a",
  2191. null,
  2192. null,
  2193. null,
  2194. null
  2195. ],
  2196. "result":"loop2a"
  2197. },
  2198. {
  2199. "synchronise":[
  2200. "loop2b",
  2201. null,
  2202. "loop2b",
  2203. null,
  2204. null,
  2205. null,
  2206. null
  2207. ],
  2208. "result":"loop2b"
  2209. },
  2210. {
  2211. "synchronise":[
  2212. "serve2",
  2213. null,
  2214. "serve2",
  2215. null,
  2216. null,
  2217. null,
  2218. null
  2219. ],
  2220. "result":"serve2"
  2221. },
  2222. {
  2223. "synchronise":[
  2224. "loop1a",
  2225. "loop1a",
  2226. null,
  2227. null,
  2228. null,
  2229. null,
  2230. null
  2231. ],
  2232. "result":"loop1a"
  2233. },
  2234. {
  2235. "synchronise":[
  2236. "loop1b",
  2237. "loop1b",
  2238. null,
  2239. null,
  2240. null,
  2241. null,
  2242. null
  2243. ],
  2244. "result":"loop1b"
  2245. },
  2246. {
  2247. "synchronise":[
  2248. "serve1",
  2249. "serve1",
  2250. null,
  2251. null,
  2252. null,
  2253. null,
  2254. null
  2255. ],
  2256. "result":"serve1"
  2257. },
  2258. {
  2259. "synchronise":[
  2260. null,
  2261. "tau__",
  2262. null,
  2263. null,
  2264. null,
  2265. null,
  2266. null
  2267. ],
  2268. "result":"tau__"
  2269. },
  2270. {
  2271. "synchronise":[
  2272. null,
  2273. null,
  2274. "tau__",
  2275. null,
  2276. null,
  2277. null,
  2278. null
  2279. ],
  2280. "result":"tau__"
  2281. },
  2282. {
  2283. "synchronise":[
  2284. null,
  2285. null,
  2286. null,
  2287. "tau__",
  2288. null,
  2289. null,
  2290. null
  2291. ],
  2292. "result":"tau__"
  2293. },
  2294. {
  2295. "synchronise":[
  2296. null,
  2297. null,
  2298. null,
  2299. null,
  2300. "tau__",
  2301. null,
  2302. null
  2303. ],
  2304. "result":"tau__"
  2305. },
  2306. {
  2307. "synchronise":[
  2308. null,
  2309. null,
  2310. null,
  2311. null,
  2312. null,
  2313. "tau__",
  2314. null
  2315. ],
  2316. "result":"tau__"
  2317. },
  2318. {
  2319. "synchronise":[
  2320. null,
  2321. null,
  2322. null,
  2323. null,
  2324. null,
  2325. null,
  2326. "tau__"
  2327. ],
  2328. "result":"tau__"
  2329. }
  2330. ]
  2331. }
  2332. }