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.

1561 lines
50 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":"tau__"
  47. }
  48. ],
  49. "variables":[
  50. {
  51. "name":"s",
  52. "type":{
  53. "kind":"bounded",
  54. "base":"int",
  55. "lower-bound":1,
  56. "upper-bound":4
  57. }
  58. },
  59. {
  60. "name":"a",
  61. "type":{
  62. "kind":"bounded",
  63. "base":"int",
  64. "lower-bound":0,
  65. "upper-bound":1
  66. }
  67. },
  68. {
  69. "name":"s1",
  70. "type":{
  71. "kind":"bounded",
  72. "base":"int",
  73. "lower-bound":0,
  74. "upper-bound":1
  75. }
  76. },
  77. {
  78. "name":"s2",
  79. "type":{
  80. "kind":"bounded",
  81. "base":"int",
  82. "lower-bound":0,
  83. "upper-bound":1
  84. }
  85. },
  86. {
  87. "name":"s3",
  88. "type":{
  89. "kind":"bounded",
  90. "base":"int",
  91. "lower-bound":0,
  92. "upper-bound":1
  93. }
  94. },
  95. {
  96. "name":"s4",
  97. "type":{
  98. "kind":"bounded",
  99. "base":"int",
  100. "lower-bound":0,
  101. "upper-bound":1
  102. }
  103. }
  104. ],
  105. "observables":[
  106. {
  107. "name":"\"waiting\""
  108. },
  109. {
  110. "name":"\"served\""
  111. }
  112. ],
  113. "initial-states":{
  114. "exp":{
  115. "op":"∧",
  116. "left":{
  117. "op":"∧",
  118. "left":{
  119. "op":"∧",
  120. "left":{
  121. "op":"∧",
  122. "left":{
  123. "op":"∧",
  124. "left":{
  125. "op":"=",
  126. "left":"s",
  127. "right":1
  128. },
  129. "right":{
  130. "op":"=",
  131. "left":"a",
  132. "right":0
  133. }
  134. },
  135. "right":{
  136. "op":"=",
  137. "left":"s1",
  138. "right":0
  139. }
  140. },
  141. "right":{
  142. "op":"=",
  143. "left":"s2",
  144. "right":0
  145. }
  146. },
  147. "right":{
  148. "op":"=",
  149. "left":"s3",
  150. "right":0
  151. }
  152. },
  153. "right":{
  154. "op":"=",
  155. "left":"s4",
  156. "right":0
  157. }
  158. }
  159. },
  160. "automata":[
  161. {
  162. "name":"server",
  163. "locations":[
  164. {
  165. "name":"location",
  166. "observables":[
  167. {
  168. "ref":"\"waiting\"",
  169. "value":{
  170. "op":"?:",
  171. "args":[
  172. {
  173. "op":"∧",
  174. "left":{
  175. "op":"=",
  176. "left":"s1",
  177. "right":1
  178. },
  179. "right":{
  180. "op":"¬",
  181. "exp":{
  182. "op":"∧",
  183. "left":{
  184. "op":"=",
  185. "left":"s",
  186. "right":1
  187. },
  188. "right":{
  189. "op":"=",
  190. "left":"a",
  191. "right":1
  192. }
  193. }
  194. }
  195. },
  196. 1,
  197. 0
  198. ]
  199. }
  200. }
  201. ]
  202. }
  203. ],
  204. "initial-locations":[
  205. "location"
  206. ],
  207. "edges":[
  208. {
  209. "location":"location",
  210. "action":"loop1a",
  211. "rate":{
  212. "exp":200
  213. },
  214. "guard":{
  215. "exp":{
  216. "op":"∧",
  217. "left":{
  218. "op":"=",
  219. "left":"s",
  220. "right":1
  221. },
  222. "right":{
  223. "op":"=",
  224. "left":"a",
  225. "right":0
  226. }
  227. }
  228. },
  229. "destinations":[
  230. {
  231. "probability":{
  232. "exp":{
  233. "op":"/",
  234. "left":200,
  235. "right":200
  236. }
  237. },
  238. "location":"location",
  239. "assignments":[
  240. {
  241. "ref":"s",
  242. "value":{
  243. "op":"+",
  244. "left":"s",
  245. "right":1
  246. }
  247. }
  248. ],
  249. "observables":[
  250. ]
  251. }
  252. ]
  253. },
  254. {
  255. "location":"location",
  256. "action":"loop1b",
  257. "rate":{
  258. "exp":200
  259. },
  260. "guard":{
  261. "exp":{
  262. "op":"∧",
  263. "left":{
  264. "op":"=",
  265. "left":"s",
  266. "right":1
  267. },
  268. "right":{
  269. "op":"=",
  270. "left":"a",
  271. "right":0
  272. }
  273. }
  274. },
  275. "destinations":[
  276. {
  277. "probability":{
  278. "exp":{
  279. "op":"/",
  280. "left":200,
  281. "right":200
  282. }
  283. },
  284. "location":"location",
  285. "assignments":[
  286. {
  287. "ref":"a",
  288. "value":1
  289. }
  290. ],
  291. "observables":[
  292. ]
  293. }
  294. ]
  295. },
  296. {
  297. "location":"location",
  298. "action":"serve1",
  299. "rate":{
  300. "exp":1
  301. },
  302. "guard":{
  303. "exp":{
  304. "op":"∧",
  305. "left":{
  306. "op":"=",
  307. "left":"s",
  308. "right":1
  309. },
  310. "right":{
  311. "op":"=",
  312. "left":"a",
  313. "right":1
  314. }
  315. }
  316. },
  317. "destinations":[
  318. {
  319. "probability":{
  320. "exp":{
  321. "op":"/",
  322. "left":1,
  323. "right":1
  324. }
  325. },
  326. "location":"location",
  327. "assignments":[
  328. {
  329. "ref":"s",
  330. "value":{
  331. "op":"+",
  332. "left":"s",
  333. "right":1
  334. }
  335. },
  336. {
  337. "ref":"a",
  338. "value":0
  339. }
  340. ],
  341. "observables":[
  342. {
  343. "ref":"\"served\"",
  344. "value":1
  345. }
  346. ]
  347. }
  348. ]
  349. },
  350. {
  351. "location":"location",
  352. "action":"loop2a",
  353. "rate":{
  354. "exp":200
  355. },
  356. "guard":{
  357. "exp":{
  358. "op":"∧",
  359. "left":{
  360. "op":"=",
  361. "left":"s",
  362. "right":2
  363. },
  364. "right":{
  365. "op":"=",
  366. "left":"a",
  367. "right":0
  368. }
  369. }
  370. },
  371. "destinations":[
  372. {
  373. "probability":{
  374. "exp":{
  375. "op":"/",
  376. "left":200,
  377. "right":200
  378. }
  379. },
  380. "location":"location",
  381. "assignments":[
  382. {
  383. "ref":"s",
  384. "value":{
  385. "op":"+",
  386. "left":"s",
  387. "right":1
  388. }
  389. }
  390. ],
  391. "observables":[
  392. ]
  393. }
  394. ]
  395. },
  396. {
  397. "location":"location",
  398. "action":"loop2b",
  399. "rate":{
  400. "exp":200
  401. },
  402. "guard":{
  403. "exp":{
  404. "op":"∧",
  405. "left":{
  406. "op":"=",
  407. "left":"s",
  408. "right":2
  409. },
  410. "right":{
  411. "op":"=",
  412. "left":"a",
  413. "right":0
  414. }
  415. }
  416. },
  417. "destinations":[
  418. {
  419. "probability":{
  420. "exp":{
  421. "op":"/",
  422. "left":200,
  423. "right":200
  424. }
  425. },
  426. "location":"location",
  427. "assignments":[
  428. {
  429. "ref":"a",
  430. "value":1
  431. }
  432. ],
  433. "observables":[
  434. ]
  435. }
  436. ]
  437. },
  438. {
  439. "location":"location",
  440. "action":"serve2",
  441. "rate":{
  442. "exp":1
  443. },
  444. "guard":{
  445. "exp":{
  446. "op":"∧",
  447. "left":{
  448. "op":"=",
  449. "left":"s",
  450. "right":2
  451. },
  452. "right":{
  453. "op":"=",
  454. "left":"a",
  455. "right":1
  456. }
  457. }
  458. },
  459. "destinations":[
  460. {
  461. "probability":{
  462. "exp":{
  463. "op":"/",
  464. "left":1,
  465. "right":1
  466. }
  467. },
  468. "location":"location",
  469. "assignments":[
  470. {
  471. "ref":"s",
  472. "value":{
  473. "op":"+",
  474. "left":"s",
  475. "right":1
  476. }
  477. },
  478. {
  479. "ref":"a",
  480. "value":0
  481. }
  482. ],
  483. "observables":[
  484. ]
  485. }
  486. ]
  487. },
  488. {
  489. "location":"location",
  490. "action":"loop3a",
  491. "rate":{
  492. "exp":200
  493. },
  494. "guard":{
  495. "exp":{
  496. "op":"∧",
  497. "left":{
  498. "op":"=",
  499. "left":"s",
  500. "right":3
  501. },
  502. "right":{
  503. "op":"=",
  504. "left":"a",
  505. "right":0
  506. }
  507. }
  508. },
  509. "destinations":[
  510. {
  511. "probability":{
  512. "exp":{
  513. "op":"/",
  514. "left":200,
  515. "right":200
  516. }
  517. },
  518. "location":"location",
  519. "assignments":[
  520. {
  521. "ref":"s",
  522. "value":{
  523. "op":"+",
  524. "left":"s",
  525. "right":1
  526. }
  527. }
  528. ],
  529. "observables":[
  530. ]
  531. }
  532. ]
  533. },
  534. {
  535. "location":"location",
  536. "action":"loop3b",
  537. "rate":{
  538. "exp":200
  539. },
  540. "guard":{
  541. "exp":{
  542. "op":"∧",
  543. "left":{
  544. "op":"=",
  545. "left":"s",
  546. "right":3
  547. },
  548. "right":{
  549. "op":"=",
  550. "left":"a",
  551. "right":0
  552. }
  553. }
  554. },
  555. "destinations":[
  556. {
  557. "probability":{
  558. "exp":{
  559. "op":"/",
  560. "left":200,
  561. "right":200
  562. }
  563. },
  564. "location":"location",
  565. "assignments":[
  566. {
  567. "ref":"a",
  568. "value":1
  569. }
  570. ],
  571. "observables":[
  572. ]
  573. }
  574. ]
  575. },
  576. {
  577. "location":"location",
  578. "action":"serve3",
  579. "rate":{
  580. "exp":1
  581. },
  582. "guard":{
  583. "exp":{
  584. "op":"∧",
  585. "left":{
  586. "op":"=",
  587. "left":"s",
  588. "right":3
  589. },
  590. "right":{
  591. "op":"=",
  592. "left":"a",
  593. "right":1
  594. }
  595. }
  596. },
  597. "destinations":[
  598. {
  599. "probability":{
  600. "exp":{
  601. "op":"/",
  602. "left":1,
  603. "right":1
  604. }
  605. },
  606. "location":"location",
  607. "assignments":[
  608. {
  609. "ref":"s",
  610. "value":{
  611. "op":"+",
  612. "left":"s",
  613. "right":1
  614. }
  615. },
  616. {
  617. "ref":"a",
  618. "value":0
  619. }
  620. ],
  621. "observables":[
  622. ]
  623. }
  624. ]
  625. },
  626. {
  627. "location":"location",
  628. "action":"loop4a",
  629. "rate":{
  630. "exp":200
  631. },
  632. "guard":{
  633. "exp":{
  634. "op":"∧",
  635. "left":{
  636. "op":"=",
  637. "left":"s",
  638. "right":4
  639. },
  640. "right":{
  641. "op":"=",
  642. "left":"a",
  643. "right":0
  644. }
  645. }
  646. },
  647. "destinations":[
  648. {
  649. "probability":{
  650. "exp":{
  651. "op":"/",
  652. "left":200,
  653. "right":200
  654. }
  655. },
  656. "location":"location",
  657. "assignments":[
  658. {
  659. "ref":"s",
  660. "value":1
  661. }
  662. ],
  663. "observables":[
  664. ]
  665. }
  666. ]
  667. },
  668. {
  669. "location":"location",
  670. "action":"loop4b",
  671. "rate":{
  672. "exp":200
  673. },
  674. "guard":{
  675. "exp":{
  676. "op":"∧",
  677. "left":{
  678. "op":"=",
  679. "left":"s",
  680. "right":4
  681. },
  682. "right":{
  683. "op":"=",
  684. "left":"a",
  685. "right":0
  686. }
  687. }
  688. },
  689. "destinations":[
  690. {
  691. "probability":{
  692. "exp":{
  693. "op":"/",
  694. "left":200,
  695. "right":200
  696. }
  697. },
  698. "location":"location",
  699. "assignments":[
  700. {
  701. "ref":"a",
  702. "value":1
  703. }
  704. ],
  705. "observables":[
  706. ]
  707. }
  708. ]
  709. },
  710. {
  711. "location":"location",
  712. "action":"serve4",
  713. "rate":{
  714. "exp":1
  715. },
  716. "guard":{
  717. "exp":{
  718. "op":"∧",
  719. "left":{
  720. "op":"=",
  721. "left":"s",
  722. "right":4
  723. },
  724. "right":{
  725. "op":"=",
  726. "left":"a",
  727. "right":1
  728. }
  729. }
  730. },
  731. "destinations":[
  732. {
  733. "probability":{
  734. "exp":{
  735. "op":"/",
  736. "left":1,
  737. "right":1
  738. }
  739. },
  740. "location":"location",
  741. "assignments":[
  742. {
  743. "ref":"s",
  744. "value":1
  745. },
  746. {
  747. "ref":"a",
  748. "value":0
  749. }
  750. ],
  751. "observables":[
  752. ]
  753. }
  754. ]
  755. }
  756. ]
  757. },
  758. {
  759. "name":"station1",
  760. "locations":[
  761. {
  762. "name":"location"
  763. }
  764. ],
  765. "initial-locations":[
  766. "location"
  767. ],
  768. "edges":[
  769. {
  770. "location":"location",
  771. "action":"loop1a",
  772. "rate":{
  773. "exp":1
  774. },
  775. "guard":{
  776. "exp":{
  777. "op":"=",
  778. "left":"s1",
  779. "right":0
  780. }
  781. },
  782. "destinations":[
  783. {
  784. "probability":{
  785. "exp":{
  786. "op":"/",
  787. "left":1,
  788. "right":1
  789. }
  790. },
  791. "location":"location",
  792. "assignments":[
  793. {
  794. "ref":"s1",
  795. "value":0
  796. }
  797. ]
  798. }
  799. ]
  800. },
  801. {
  802. "location":"location",
  803. "action":"tau__",
  804. "rate":{
  805. "exp":{
  806. "op":"/",
  807. "left":1,
  808. "right":4
  809. }
  810. },
  811. "guard":{
  812. "exp":{
  813. "op":"=",
  814. "left":"s1",
  815. "right":0
  816. }
  817. },
  818. "destinations":[
  819. {
  820. "probability":{
  821. "exp":{
  822. "op":"/",
  823. "left":{
  824. "op":"/",
  825. "left":1,
  826. "right":4
  827. },
  828. "right":{
  829. "op":"/",
  830. "left":1,
  831. "right":4
  832. }
  833. }
  834. },
  835. "location":"location",
  836. "assignments":[
  837. {
  838. "ref":"s1",
  839. "value":1
  840. }
  841. ],
  842. "observables":[
  843. ]
  844. }
  845. ]
  846. },
  847. {
  848. "location":"location",
  849. "action":"loop1b",
  850. "rate":{
  851. "exp":1
  852. },
  853. "guard":{
  854. "exp":{
  855. "op":"=",
  856. "left":"s1",
  857. "right":1
  858. }
  859. },
  860. "destinations":[
  861. {
  862. "probability":{
  863. "exp":{
  864. "op":"/",
  865. "left":1,
  866. "right":1
  867. }
  868. },
  869. "location":"location",
  870. "assignments":[
  871. {
  872. "ref":"s1",
  873. "value":1
  874. }
  875. ]
  876. }
  877. ]
  878. },
  879. {
  880. "location":"location",
  881. "action":"serve1",
  882. "rate":{
  883. "exp":1
  884. },
  885. "guard":{
  886. "exp":{
  887. "op":"=",
  888. "left":"s1",
  889. "right":1
  890. }
  891. },
  892. "destinations":[
  893. {
  894. "probability":{
  895. "exp":{
  896. "op":"/",
  897. "left":1,
  898. "right":1
  899. }
  900. },
  901. "location":"location",
  902. "assignments":[
  903. {
  904. "ref":"s1",
  905. "value":0
  906. }
  907. ]
  908. }
  909. ]
  910. }
  911. ]
  912. },
  913. {
  914. "name":"station2",
  915. "locations":[
  916. {
  917. "name":"location"
  918. }
  919. ],
  920. "initial-locations":[
  921. "location"
  922. ],
  923. "edges":[
  924. {
  925. "location":"location",
  926. "action":"loop2a",
  927. "rate":{
  928. "exp":1
  929. },
  930. "guard":{
  931. "exp":{
  932. "op":"=",
  933. "left":"s2",
  934. "right":0
  935. }
  936. },
  937. "destinations":[
  938. {
  939. "probability":{
  940. "exp":{
  941. "op":"/",
  942. "left":1,
  943. "right":1
  944. }
  945. },
  946. "location":"location",
  947. "assignments":[
  948. {
  949. "ref":"s2",
  950. "value":0
  951. }
  952. ]
  953. }
  954. ]
  955. },
  956. {
  957. "location":"location",
  958. "action":"tau__",
  959. "rate":{
  960. "exp":{
  961. "op":"/",
  962. "left":1,
  963. "right":4
  964. }
  965. },
  966. "guard":{
  967. "exp":{
  968. "op":"=",
  969. "left":"s2",
  970. "right":0
  971. }
  972. },
  973. "destinations":[
  974. {
  975. "probability":{
  976. "exp":{
  977. "op":"/",
  978. "left":{
  979. "op":"/",
  980. "left":1,
  981. "right":4
  982. },
  983. "right":{
  984. "op":"/",
  985. "left":1,
  986. "right":4
  987. }
  988. }
  989. },
  990. "location":"location",
  991. "assignments":[
  992. {
  993. "ref":"s2",
  994. "value":1
  995. }
  996. ],
  997. "observables":[
  998. ]
  999. }
  1000. ]
  1001. },
  1002. {
  1003. "location":"location",
  1004. "action":"loop2b",
  1005. "rate":{
  1006. "exp":1
  1007. },
  1008. "guard":{
  1009. "exp":{
  1010. "op":"=",
  1011. "left":"s2",
  1012. "right":1
  1013. }
  1014. },
  1015. "destinations":[
  1016. {
  1017. "probability":{
  1018. "exp":{
  1019. "op":"/",
  1020. "left":1,
  1021. "right":1
  1022. }
  1023. },
  1024. "location":"location",
  1025. "assignments":[
  1026. {
  1027. "ref":"s2",
  1028. "value":1
  1029. }
  1030. ]
  1031. }
  1032. ]
  1033. },
  1034. {
  1035. "location":"location",
  1036. "action":"serve2",
  1037. "rate":{
  1038. "exp":1
  1039. },
  1040. "guard":{
  1041. "exp":{
  1042. "op":"=",
  1043. "left":"s2",
  1044. "right":1
  1045. }
  1046. },
  1047. "destinations":[
  1048. {
  1049. "probability":{
  1050. "exp":{
  1051. "op":"/",
  1052. "left":1,
  1053. "right":1
  1054. }
  1055. },
  1056. "location":"location",
  1057. "assignments":[
  1058. {
  1059. "ref":"s2",
  1060. "value":0
  1061. }
  1062. ]
  1063. }
  1064. ]
  1065. }
  1066. ]
  1067. },
  1068. {
  1069. "name":"station3",
  1070. "locations":[
  1071. {
  1072. "name":"location"
  1073. }
  1074. ],
  1075. "initial-locations":[
  1076. "location"
  1077. ],
  1078. "edges":[
  1079. {
  1080. "location":"location",
  1081. "action":"loop3a",
  1082. "rate":{
  1083. "exp":1
  1084. },
  1085. "guard":{
  1086. "exp":{
  1087. "op":"=",
  1088. "left":"s3",
  1089. "right":0
  1090. }
  1091. },
  1092. "destinations":[
  1093. {
  1094. "probability":{
  1095. "exp":{
  1096. "op":"/",
  1097. "left":1,
  1098. "right":1
  1099. }
  1100. },
  1101. "location":"location",
  1102. "assignments":[
  1103. {
  1104. "ref":"s3",
  1105. "value":0
  1106. }
  1107. ]
  1108. }
  1109. ]
  1110. },
  1111. {
  1112. "location":"location",
  1113. "action":"tau__",
  1114. "rate":{
  1115. "exp":{
  1116. "op":"/",
  1117. "left":1,
  1118. "right":4
  1119. }
  1120. },
  1121. "guard":{
  1122. "exp":{
  1123. "op":"=",
  1124. "left":"s3",
  1125. "right":0
  1126. }
  1127. },
  1128. "destinations":[
  1129. {
  1130. "probability":{
  1131. "exp":{
  1132. "op":"/",
  1133. "left":{
  1134. "op":"/",
  1135. "left":1,
  1136. "right":4
  1137. },
  1138. "right":{
  1139. "op":"/",
  1140. "left":1,
  1141. "right":4
  1142. }
  1143. }
  1144. },
  1145. "location":"location",
  1146. "assignments":[
  1147. {
  1148. "ref":"s3",
  1149. "value":1
  1150. }
  1151. ],
  1152. "observables":[
  1153. ]
  1154. }
  1155. ]
  1156. },
  1157. {
  1158. "location":"location",
  1159. "action":"loop3b",
  1160. "rate":{
  1161. "exp":1
  1162. },
  1163. "guard":{
  1164. "exp":{
  1165. "op":"=",
  1166. "left":"s3",
  1167. "right":1
  1168. }
  1169. },
  1170. "destinations":[
  1171. {
  1172. "probability":{
  1173. "exp":{
  1174. "op":"/",
  1175. "left":1,
  1176. "right":1
  1177. }
  1178. },
  1179. "location":"location",
  1180. "assignments":[
  1181. {
  1182. "ref":"s3",
  1183. "value":1
  1184. }
  1185. ]
  1186. }
  1187. ]
  1188. },
  1189. {
  1190. "location":"location",
  1191. "action":"serve3",
  1192. "rate":{
  1193. "exp":1
  1194. },
  1195. "guard":{
  1196. "exp":{
  1197. "op":"=",
  1198. "left":"s3",
  1199. "right":1
  1200. }
  1201. },
  1202. "destinations":[
  1203. {
  1204. "probability":{
  1205. "exp":{
  1206. "op":"/",
  1207. "left":1,
  1208. "right":1
  1209. }
  1210. },
  1211. "location":"location",
  1212. "assignments":[
  1213. {
  1214. "ref":"s3",
  1215. "value":0
  1216. }
  1217. ]
  1218. }
  1219. ]
  1220. }
  1221. ]
  1222. },
  1223. {
  1224. "name":"station4",
  1225. "locations":[
  1226. {
  1227. "name":"location"
  1228. }
  1229. ],
  1230. "initial-locations":[
  1231. "location"
  1232. ],
  1233. "edges":[
  1234. {
  1235. "location":"location",
  1236. "action":"loop4a",
  1237. "rate":{
  1238. "exp":1
  1239. },
  1240. "guard":{
  1241. "exp":{
  1242. "op":"=",
  1243. "left":"s4",
  1244. "right":0
  1245. }
  1246. },
  1247. "destinations":[
  1248. {
  1249. "probability":{
  1250. "exp":{
  1251. "op":"/",
  1252. "left":1,
  1253. "right":1
  1254. }
  1255. },
  1256. "location":"location",
  1257. "assignments":[
  1258. {
  1259. "ref":"s4",
  1260. "value":0
  1261. }
  1262. ]
  1263. }
  1264. ]
  1265. },
  1266. {
  1267. "location":"location",
  1268. "action":"tau__",
  1269. "rate":{
  1270. "exp":{
  1271. "op":"/",
  1272. "left":1,
  1273. "right":4
  1274. }
  1275. },
  1276. "guard":{
  1277. "exp":{
  1278. "op":"=",
  1279. "left":"s4",
  1280. "right":0
  1281. }
  1282. },
  1283. "destinations":[
  1284. {
  1285. "probability":{
  1286. "exp":{
  1287. "op":"/",
  1288. "left":{
  1289. "op":"/",
  1290. "left":1,
  1291. "right":4
  1292. },
  1293. "right":{
  1294. "op":"/",
  1295. "left":1,
  1296. "right":4
  1297. }
  1298. }
  1299. },
  1300. "location":"location",
  1301. "assignments":[
  1302. {
  1303. "ref":"s4",
  1304. "value":1
  1305. }
  1306. ],
  1307. "observables":[
  1308. ]
  1309. }
  1310. ]
  1311. },
  1312. {
  1313. "location":"location",
  1314. "action":"loop4b",
  1315. "rate":{
  1316. "exp":1
  1317. },
  1318. "guard":{
  1319. "exp":{
  1320. "op":"=",
  1321. "left":"s4",
  1322. "right":1
  1323. }
  1324. },
  1325. "destinations":[
  1326. {
  1327. "probability":{
  1328. "exp":{
  1329. "op":"/",
  1330. "left":1,
  1331. "right":1
  1332. }
  1333. },
  1334. "location":"location",
  1335. "assignments":[
  1336. {
  1337. "ref":"s4",
  1338. "value":1
  1339. }
  1340. ]
  1341. }
  1342. ]
  1343. },
  1344. {
  1345. "location":"location",
  1346. "action":"serve4",
  1347. "rate":{
  1348. "exp":1
  1349. },
  1350. "guard":{
  1351. "exp":{
  1352. "op":"=",
  1353. "left":"s4",
  1354. "right":1
  1355. }
  1356. },
  1357. "destinations":[
  1358. {
  1359. "probability":{
  1360. "exp":{
  1361. "op":"/",
  1362. "left":1,
  1363. "right":1
  1364. }
  1365. },
  1366. "location":"location",
  1367. "assignments":[
  1368. {
  1369. "ref":"s4",
  1370. "value":0
  1371. }
  1372. ]
  1373. }
  1374. ]
  1375. }
  1376. ]
  1377. }
  1378. ],
  1379. "system":{
  1380. "elements":[
  1381. {
  1382. "automaton":"server"
  1383. },
  1384. {
  1385. "automaton":"station1"
  1386. },
  1387. {
  1388. "automaton":"station2"
  1389. },
  1390. {
  1391. "automaton":"station3"
  1392. },
  1393. {
  1394. "automaton":"station4"
  1395. }
  1396. ],
  1397. "syncs":[
  1398. {
  1399. "synchronise":[
  1400. "loop4a",
  1401. null,
  1402. null,
  1403. null,
  1404. "loop4a"
  1405. ],
  1406. "result":"loop4a"
  1407. },
  1408. {
  1409. "synchronise":[
  1410. "loop4b",
  1411. null,
  1412. null,
  1413. null,
  1414. "loop4b"
  1415. ],
  1416. "result":"loop4b"
  1417. },
  1418. {
  1419. "synchronise":[
  1420. "serve4",
  1421. null,
  1422. null,
  1423. null,
  1424. "serve4"
  1425. ],
  1426. "result":"serve4"
  1427. },
  1428. {
  1429. "synchronise":[
  1430. "loop3a",
  1431. null,
  1432. null,
  1433. "loop3a",
  1434. null
  1435. ],
  1436. "result":"loop3a"
  1437. },
  1438. {
  1439. "synchronise":[
  1440. "loop3b",
  1441. null,
  1442. null,
  1443. "loop3b",
  1444. null
  1445. ],
  1446. "result":"loop3b"
  1447. },
  1448. {
  1449. "synchronise":[
  1450. "serve3",
  1451. null,
  1452. null,
  1453. "serve3",
  1454. null
  1455. ],
  1456. "result":"serve3"
  1457. },
  1458. {
  1459. "synchronise":[
  1460. "loop2a",
  1461. null,
  1462. "loop2a",
  1463. null,
  1464. null
  1465. ],
  1466. "result":"loop2a"
  1467. },
  1468. {
  1469. "synchronise":[
  1470. "loop2b",
  1471. null,
  1472. "loop2b",
  1473. null,
  1474. null
  1475. ],
  1476. "result":"loop2b"
  1477. },
  1478. {
  1479. "synchronise":[
  1480. "serve2",
  1481. null,
  1482. "serve2",
  1483. null,
  1484. null
  1485. ],
  1486. "result":"serve2"
  1487. },
  1488. {
  1489. "synchronise":[
  1490. "loop1a",
  1491. "loop1a",
  1492. null,
  1493. null,
  1494. null
  1495. ],
  1496. "result":"loop1a"
  1497. },
  1498. {
  1499. "synchronise":[
  1500. "loop1b",
  1501. "loop1b",
  1502. null,
  1503. null,
  1504. null
  1505. ],
  1506. "result":"loop1b"
  1507. },
  1508. {
  1509. "synchronise":[
  1510. "serve1",
  1511. "serve1",
  1512. null,
  1513. null,
  1514. null
  1515. ],
  1516. "result":"serve1"
  1517. },
  1518. {
  1519. "synchronise":[
  1520. null,
  1521. "tau__",
  1522. null,
  1523. null,
  1524. null
  1525. ],
  1526. "result":"tau__"
  1527. },
  1528. {
  1529. "synchronise":[
  1530. null,
  1531. null,
  1532. "tau__",
  1533. null,
  1534. null
  1535. ],
  1536. "result":"tau__"
  1537. },
  1538. {
  1539. "synchronise":[
  1540. null,
  1541. null,
  1542. null,
  1543. "tau__",
  1544. null
  1545. ],
  1546. "result":"tau__"
  1547. },
  1548. {
  1549. "synchronise":[
  1550. null,
  1551. null,
  1552. null,
  1553. null,
  1554. "tau__"
  1555. ],
  1556. "result":"tau__"
  1557. }
  1558. ]
  1559. }
  1560. }