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.

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