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.

714 lines
22 KiB

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