lustrectests / regression_tests / lustre_files / success / Stateflow / src_Super4 / Super4.lus @ eb639349
History  View  Annotate  Download (19.4 KB)
1 
 This file has been generated by cocoSim 

2  
3  
4 
 System nodes 
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22 
During action for state :Super4_D 
23 
node Super4_D_du(out_1:real) 
24  
25 
returns (out:real); 
26  
27  
28 
var out_2:real; 
29  
30  
31 
let 
32  
33  
34  
35 
out_2 
36 
= out_1 + 1.; 
37 

38  
39 
(out) 
40 
= (out_2); 
41 

42  
43 
tel 
44  
45  
46  
47  
48  
49 
 Entry action for state :Super4_D 
50 
node Super4_D_en(idSuper4_Super4_1:int; 
51 
isInner:bool) 
52  
53 
returns (idSuper4_Super4:int); 
54  
55  
56 
var idSuper4_Super4_2:int; 
57  
58  
59 
let 
60  
61  
62  
63 
 set state as active 
64 
idSuper4_Super4_2 
65 
= 26; 
66 

67  
68 
(idSuper4_Super4) 
69 
= (idSuper4_Super4_2); 
70 

71  
72 
tel 
73  
74  
75  
76  
77  
78 
 Exit action for state :Super4_D 
79 
node Super4_D_ex(idSuper4_Super4_1:int; 
80 
isInner:bool) 
81  
82 
returns (idSuper4_Super4:int); 
83  
84  
85 
var idSuper4_Super4_2:int; 
86  
87  
88 
let 
89  
90  
91  
92 
 set state as inactive 
93 
idSuper4_Super4_2 
94 
= if (not isInner) then 0 else idSuper4_Super4_1; 
95  
96  
97 
(idSuper4_Super4) 
98 
= (idSuper4_Super4_1); 
99 

100  
101 
tel 
102  
103  
104  
105  
106  
107  
108 
During action for state :B_B1 
109 
node B_B1_du(out_1:real) 
110  
111 
returns (out:real); 
112  
113  
114 
var out_2:real; 
115  
116  
117 
let 
118  
119  
120  
121 
out_2 
122 
= out_1 + 1.; 
123 

124  
125 
(out) 
126 
= (out_2); 
127 

128  
129 
tel 
130  
131  
132  
133  
134  
135 
 Entry action for state :B_B1 
136 
node B_B1_en(idSuper4_B_1:int; 
137 
isInner:bool) 
138  
139 
returns (idSuper4_B:int); 
140  
141  
142 
var idSuper4_B_2:int; 
143  
144  
145 
let 
146  
147  
148  
149 
 set state as active 
150 
idSuper4_B_2 
151 
= 28; 
152 

153  
154 
(idSuper4_B) 
155 
= (idSuper4_B_2); 
156 

157  
158 
tel 
159  
160  
161  
162  
163  
164 
 Exit action for state :B_B1 
165 
node B_B1_ex(idSuper4_B_1:int; 
166 
isInner:bool) 
167  
168 
returns (idSuper4_B:int); 
169  
170  
171 
var idSuper4_B_2:int; 
172  
173  
174 
let 
175  
176  
177  
178 
 set state as inactive 
179 
idSuper4_B_2 
180 
= if (not isInner) then 0 else idSuper4_B_1; 
181  
182  
183 
(idSuper4_B) 
184 
= (idSuper4_B_1); 
185 

186  
187 
tel 
188  
189  
190  
191  
192  
193  
194 
During action for state :Super4_B 
195 
node Super4_B_du(out_1:real) 
196  
197 
returns (out:real); 
198  
199  
200 
var out_2:real; 
201  
202  
203 
let 
204  
205  
206  
207 
out_2 
208 
= out_1 + 1.; 
209 

210  
211 
(out) 
212 
= (out_2); 
213 

214  
215 
tel 
216  
217  
218  
219  
220  
221 
 Entry action for state :Super4_B 
222 
node Super4_B_en(idSuper4_B_1:int; 
223 
idSuper4_Super4_1:int; 
224 
isInner:bool) 
225  
226 
returns (idSuper4_B:int; 
227 
idSuper4_Super4:int); 
228  
229  
230 
var idSuper4_B_2, idSuper4_B_3, idSuper4_B_4, idSuper4_B_5:int; 
231 
idSuper4_Super4_2, idSuper4_Super4_3, idSuper4_Super4_4:int; 
232  
233  
234 
let 
235  
236  
237  
238 
 set state as active 
239 
idSuper4_Super4_2 
240 
= 24; 
241 

242  
243 

244 
 transition trace : 
245 
POINT__To__B_B1_1 
246 
(idSuper4_B_2) 
247 
= B_B1_en(idSuper4_B_1, false); 
248 

249  
250 
(idSuper4_B_3, idSuper4_Super4_3) 
251 
= 
252  
253 
if ( idSuper4_B_1 = 0) then 
254  
255 
(idSuper4_B_2, idSuper4_Super4_2) 
256  
257 
else(idSuper4_B_1, idSuper4_Super4_2); 
258  
259 

260  
261 
(idSuper4_B_4) 
262 
= 
263 
if ( idSuper4_B_1 = 28) then 
264 
B_B1_en(idSuper4_B_1, false) 
265 
else (idSuper4_B_1); 
266  
267 

268  
269 
(idSuper4_B_5, idSuper4_Super4_4) 
270 
= 
271 
if ( idSuper4_B_1 = 0) then 
272 
(idSuper4_B_3, idSuper4_Super4_3) 
273 
else 
274 
if ( idSuper4_B_1 = 28) then 
275 
(idSuper4_B_4, idSuper4_Super4_3) 
276 
else (idSuper4_B_1, idSuper4_Super4_2); 
277  
278  
279 
(idSuper4_B, idSuper4_Super4) 
280 
= (idSuper4_B_5, idSuper4_Super4_4); 
281 

282  
283 
tel 
284  
285  
286  
287  
288  
289 
 Exit action for state :Super4_B 
290 
node Super4_B_ex(idSuper4_B_1:int; 
291 
idSuper4_Super4_1:int; 
292 
isInner:bool) 
293  
294 
returns (idSuper4_B:int; 
295 
idSuper4_Super4:int); 
296  
297  
298 
var idSuper4_B_2, idSuper4_B_3, idSuper4_B_4:int; 
299 
idSuper4_Super4_2:int; 
300  
301  
302 
let 
303  
304  
305  
306 

307 
(idSuper4_B_2) 
308 
= 
309 
if ( idSuper4_B_1 = 28) then 
310 
B_B1_ex(idSuper4_B_1, false) 
311 
else (idSuper4_B_1); 
312  
313 

314  
315 
(idSuper4_B_3) 
316 
= 
317 
if ( idSuper4_B_1 = 28) then 
318 
(idSuper4_B_2) 
319 
else (idSuper4_B_1); 
320  
321  
322 
 set state as inactive 
323 
idSuper4_Super4_2 
324 
= if (not isInner) then 0 else idSuper4_Super4_1; 
325  
326 
idSuper4_B_4 
327 
= 0; 
328 

329  
330 
(idSuper4_B, idSuper4_Super4) 
331 
= (idSuper4_B_4, idSuper4_Super4_1); 
332 

333  
334 
tel 
335  
336  
337  
338  
339  
340  
341 
During action for state :A_A1 
342 
node A_A1_du(out_1:real) 
343  
344 
returns (out:real); 
345  
346  
347 
var out_2:real; 
348  
349  
350 
let 
351  
352  
353  
354 
out_2 
355 
= out_1 + 1.; 
356 

357  
358 
(out) 
359 
= (out_2); 
360 

361  
362 
tel 
363  
364  
365  
366  
367  
368 
 Entry action for state :A_A1 
369 
node A_A1_en(idSuper4_A_1:int; 
370 
isInner:bool) 
371  
372 
returns (idSuper4_A:int); 
373  
374  
375 
var idSuper4_A_2:int; 
376  
377  
378 
let 
379  
380  
381  
382 
 set state as active 
383 
idSuper4_A_2 
384 
= 27; 
385 

386  
387 
(idSuper4_A) 
388 
= (idSuper4_A_2); 
389 

390  
391 
tel 
392  
393  
394  
395  
396  
397 
 Exit action for state :A_A1 
398 
node A_A1_ex(idSuper4_A_1:int; 
399 
isInner:bool) 
400  
401 
returns (idSuper4_A:int); 
402  
403  
404 
var idSuper4_A_2:int; 
405  
406  
407 
let 
408  
409  
410  
411 
 set state as inactive 
412 
idSuper4_A_2 
413 
= if (not isInner) then 0 else idSuper4_A_1; 
414  
415  
416 
(idSuper4_A) 
417 
= (idSuper4_A_1); 
418 

419  
420 
tel 
421  
422  
423  
424  
425  
426  
427 
During action for state :Super4_A 
428 
node Super4_A_du(out_1:real) 
429  
430 
returns (out:real); 
431  
432  
433 
var out_2:real; 
434  
435  
436 
let 
437  
438  
439  
440 
out_2 
441 
= out_1 + 1.; 
442 

443  
444 
(out) 
445 
= (out_2); 
446 

447  
448 
tel 
449  
450  
451  
452  
453  
454 
 Entry action for state :Super4_A 
455 
node Super4_A_en(idSuper4_A_1:int; 
456 
idSuper4_Super4_1:int; 
457 
isInner:bool) 
458  
459 
returns (idSuper4_A:int; 
460 
idSuper4_Super4:int); 
461  
462  
463 
var idSuper4_A_2, idSuper4_A_3, idSuper4_A_4, idSuper4_A_5:int; 
464 
idSuper4_Super4_2, idSuper4_Super4_3, idSuper4_Super4_4:int; 
465  
466  
467 
let 
468  
469  
470  
471 
 set state as active 
472 
idSuper4_Super4_2 
473 
= 23; 
474 

475  
476 

477 
 transition trace : 
478 
POINT__To__A_A1_1 
479 
(idSuper4_A_2) 
480 
= A_A1_en(idSuper4_A_1, false); 
481 

482  
483 
(idSuper4_A_3, idSuper4_Super4_3) 
484 
= 
485  
486 
if ( idSuper4_A_1 = 0) then 
487  
488 
(idSuper4_A_2, idSuper4_Super4_2) 
489  
490 
else(idSuper4_A_1, idSuper4_Super4_2); 
491  
492 

493  
494 
(idSuper4_A_4) 
495 
= 
496 
if ( idSuper4_A_1 = 27) then 
497 
A_A1_en(idSuper4_A_1, false) 
498 
else (idSuper4_A_1); 
499  
500 

501  
502 
(idSuper4_A_5, idSuper4_Super4_4) 
503 
= 
504 
if ( idSuper4_A_1 = 0) then 
505 
(idSuper4_A_3, idSuper4_Super4_3) 
506 
else 
507 
if ( idSuper4_A_1 = 27) then 
508 
(idSuper4_A_4, idSuper4_Super4_3) 
509 
else (idSuper4_A_1, idSuper4_Super4_2); 
510  
511  
512 
(idSuper4_A, idSuper4_Super4) 
513 
= (idSuper4_A_5, idSuper4_Super4_4); 
514 

515  
516 
tel 
517  
518  
519  
520  
521  
522 
 Exit action for state :Super4_A 
523 
node Super4_A_ex(idSuper4_A_1:int; 
524 
idSuper4_Super4_1:int; 
525 
isInner:bool) 
526  
527 
returns (idSuper4_A:int; 
528 
idSuper4_Super4:int); 
529  
530  
531 
var idSuper4_A_2, idSuper4_A_3, idSuper4_A_4:int; 
532 
idSuper4_Super4_2:int; 
533  
534  
535 
let 
536  
537  
538  
539 

540 
(idSuper4_A_2) 
541 
= 
542 
if ( idSuper4_A_1 = 27) then 
543 
A_A1_ex(idSuper4_A_1, false) 
544 
else (idSuper4_A_1); 
545  
546 

547  
548 
(idSuper4_A_3) 
549 
= 
550 
if ( idSuper4_A_1 = 27) then 
551 
(idSuper4_A_2) 
552 
else (idSuper4_A_1); 
553  
554  
555 
 set state as inactive 
556 
idSuper4_Super4_2 
557 
= if (not isInner) then 0 else idSuper4_Super4_1; 
558  
559 
idSuper4_A_4 
560 
= 0; 
561 

562  
563 
(idSuper4_A, idSuper4_Super4) 
564 
= (idSuper4_A_4, idSuper4_Super4_1); 
565 

566  
567 
tel 
568  
569  
570  
571  
572  
573  
574 
During action for state :Super4_C 
575 
node Super4_C_du(out_1:real) 
576  
577 
returns (out:real); 
578  
579  
580 
var out_2:real; 
581  
582  
583 
let 
584  
585  
586  
587 
out_2 
588 
= out_1 + 1.; 
589 

590  
591 
(out) 
592 
= (out_2); 
593 

594  
595 
tel 
596  
597  
598  
599  
600  
601 
 Entry action for state :Super4_C 
602 
node Super4_C_en(idSuper4_Super4_1:int; 
603 
isInner:bool) 
604  
605 
returns (idSuper4_Super4:int); 
606  
607  
608 
var idSuper4_Super4_2:int; 
609  
610  
611 
let 
612  
613  
614  
615 
 set state as active 
616 
idSuper4_Super4_2 
617 
= 25; 
618 

619  
620 
(idSuper4_Super4) 
621 
= (idSuper4_Super4_2); 
622 

623  
624 
tel 
625  
626  
627  
628  
629  
630 
 Exit action for state :Super4_C 
631 
node Super4_C_ex(idSuper4_Super4_1:int; 
632 
isInner:bool) 
633  
634 
returns (idSuper4_Super4:int); 
635  
636  
637 
var idSuper4_Super4_2:int; 
638  
639  
640 
let 
641  
642  
643  
644 
 set state as inactive 
645 
idSuper4_Super4_2 
646 
= if (not isInner) then 0 else idSuper4_Super4_1; 
647  
648  
649 
(idSuper4_Super4) 
650 
= (idSuper4_Super4_1); 
651 

652  
653 
tel 
654  
655  
656 
***************************************************State :Super4_B Automaton*************************************************** 
657  
658 
node Super4_B_node(idSuper4_B_1:int; 
659 
E:bool; 
660 
idSuper4_Super4_1:int; 
661 
F:bool; 
662 
idSuper4_A_1:int; 
663 
out_1:real) 
664  
665 
returns (idSuper4_B:int; 
666 
idSuper4_Super4:int; 
667 
idSuper4_A:int; 
668 
out:real); 
669  
670  
671 
let 
672  
673 
automaton super4_b 
674  
675 
state POINTSuper4_B: 
676 
unless (idSuper4_B_1=0) restart POINT__TO__B_B1_1 
677  
678  
679  
680 
unless (idSuper4_B_1=28) and E restart B_B1__TO__SUPER4_D_1 
681  
682  
683  
684 
unless (idSuper4_B_1=28) and F restart B_B1__TO__A_A1_2 
685  
686  
687  
688 
unless (idSuper4_B_1=28) restart B_B1_IDL 
689  
690 
let 
691  
692 
(idSuper4_B, idSuper4_Super4, idSuper4_A, out) 
693 
= (idSuper4_B_1, idSuper4_Super4_1, idSuper4_A_1, out_1); 
694 

695  
696 
tel 
697  
698  
699  
700 
state POINT__TO__B_B1_1: 
701  
702 
var idSuper4_B_2:int; 
703 
let 
704  
705 
 transition trace : 
706 
POINT__To__B_B1_1 
707 
(idSuper4_B_2) 
708 
= B_B1_en(idSuper4_B_1, false); 
709 

710  
711 
(idSuper4_B) 
712 
= (idSuper4_B_2); 
713  
714 
add unused variables 
715 
(idSuper4_A, idSuper4_Super4, out) 
716 
= (idSuper4_A_1, idSuper4_Super4_1, out_1); 
717 

718  
719 
tel 
720  
721 
until true restart POINTSuper4_B 
722  
723  
724  
725 
state B_B1__TO__SUPER4_D_1: 
726  
727 
var idSuper4_B_2:int; 
728 
idSuper4_Super4_2, idSuper4_Super4_3:int; 
729 
let 
730  
731 
 transition trace : 
732 
B_B1__To__Super4_D_1 
733 
(idSuper4_B_2, idSuper4_Super4_2) 
734 
= Super4_B_ex(idSuper4_B_1, idSuper4_Super4_1, false); 
735 

736  
737 
(idSuper4_Super4_3) 
738 
= Super4_D_en(idSuper4_Super4_2, false); 
739 

740  
741 
(idSuper4_B, idSuper4_Super4) 
742 
= (idSuper4_B_2, idSuper4_Super4_3); 
743  
744 
add unused variables 
745 
(idSuper4_A, out) 
746 
= (idSuper4_A_1, out_1); 
747 

748  
749 
tel 
750  
751 
until true restart POINTSuper4_B 
752  
753  
754  
755 
state B_B1__TO__A_A1_2: 
756  
757 
var idSuper4_B_2:int; 
758 
idSuper4_Super4_2, idSuper4_Super4_3:int; 
759 
idSuper4_A_2, idSuper4_A_3:int; 
760 
let 
761  
762 
 transition trace : 
763 
B_B1__To__A_A1_2 
764 
(idSuper4_B_2, idSuper4_Super4_2) 
765 
= Super4_B_ex(idSuper4_B_1, idSuper4_Super4_1, false); 
766 

767  
768 
idSuper4_A_2 
769 
= 27; 
770 

771 
(idSuper4_A_3, idSuper4_Super4_3) 
772 
= Super4_A_en(idSuper4_A_2, idSuper4_Super4_2, false); 
773 

774  
775 
(idSuper4_B, idSuper4_Super4, idSuper4_A) 
776 
= (idSuper4_B_2, idSuper4_Super4_3, idSuper4_A_3); 
777  
778 
add unused variables 
779 
(out) 
780 
= (out_1); 
781 

782  
783 
tel 
784  
785 
until true restart POINTSuper4_B 
786  
787  
788  
789 
state B_B1_IDL: 
790  
791 
var out_2:real; 
792 
let 
793  
794 

795 
(out_2) 
796 
= B_B1_du(out_1); 
797  
798 

799  
800  
801 
(idSuper4_B, idSuper4_Super4, idSuper4_A, out) 
802 
= (idSuper4_B_1, idSuper4_Super4_1, idSuper4_A_1, out_2); 
803 

804  
805 
tel 
806  
807 
until true restart POINTSuper4_B 
808  
809  
810  
811 
tel 
812  
813  
814 
***************************************************State :Super4_A Automaton*************************************************** 
815  
816 
node Super4_A_node(idSuper4_A_1:int; 
817 
E:bool; 
818 
idSuper4_Super4_1:int; 
819 
idSuper4_B_1:int; 
820 
F:bool; 
821 
out_1:real) 
822  
823 
returns (idSuper4_A:int; 
824 
idSuper4_Super4:int; 
825 
idSuper4_B:int; 
826 
out:real); 
827  
828  
829 
let 
830  
831 
automaton super4_a 
832  
833 
state POINTSuper4_A: 
834 
unless (idSuper4_A_1=0) restart POINT__TO__A_A1_1 
835  
836  
837  
838 
unless (idSuper4_A_1=27) and E restart A_A1__TO__B_B1_1 
839  
840  
841  
842 
unless (idSuper4_A_1=27) and F restart A_A1__TO__SUPER4_C_2 
843  
844  
845  
846 
unless (idSuper4_A_1=27) restart A_A1_IDL 
847  
848 
let 
849  
850 
(idSuper4_A, idSuper4_Super4, idSuper4_B, out) 
851 
= (idSuper4_A_1, idSuper4_Super4_1, idSuper4_B_1, out_1); 
852 

853  
854 
tel 
855  
856  
857  
858 
state POINT__TO__A_A1_1: 
859  
860 
var idSuper4_A_2:int; 
861 
let 
862  
863 
 transition trace : 
864 
POINT__To__A_A1_1 
865 
(idSuper4_A_2) 
866 
= A_A1_en(idSuper4_A_1, false); 
867 

868  
869 
(idSuper4_A) 
870 
= (idSuper4_A_2); 
871  
872 
add unused variables 
873 
(idSuper4_B, idSuper4_Super4, out) 
874 
= (idSuper4_B_1, idSuper4_Super4_1, out_1); 
875 

876  
877 
tel 
878  
879 
until true restart POINTSuper4_A 
880  
881  
882  
883 
state A_A1__TO__B_B1_1: 
884  
885 
var idSuper4_A_2:int; 
886 
idSuper4_Super4_2, idSuper4_Super4_3:int; 
887 
idSuper4_B_2, idSuper4_B_3:int; 
888 
let 
889  
890 
 transition trace : 
891 
A_A1__To__B_B1_1 
892 
(idSuper4_A_2, idSuper4_Super4_2) 
893 
= Super4_A_ex(idSuper4_A_1, idSuper4_Super4_1, false); 
894 

895  
896 
idSuper4_B_2 
897 
= 28; 
898 

899 
(idSuper4_B_3, idSuper4_Super4_3) 
900 
= Super4_B_en(idSuper4_B_2, idSuper4_Super4_2, false); 
901 

902  
903 
(idSuper4_A, idSuper4_Super4, idSuper4_B) 
904 
= (idSuper4_A_2, idSuper4_Super4_3, idSuper4_B_3); 
905  
906 
add unused variables 
907 
(out) 
908 
= (out_1); 
909 

910  
911 
tel 
912  
913 
until true restart POINTSuper4_A 
914  
915  
916  
917 
state A_A1__TO__SUPER4_C_2: 
918  
919 
var idSuper4_A_2:int; 
920 
idSuper4_Super4_2, idSuper4_Super4_3:int; 
921 
let 
922  
923 
 transition trace : 
924 
A_A1__To__Super4_C_2 
925 
(idSuper4_A_2, idSuper4_Super4_2) 
926 
= Super4_A_ex(idSuper4_A_1, idSuper4_Super4_1, false); 
927 

928  
929 
(idSuper4_Super4_3) 
930 
= Super4_C_en(idSuper4_Super4_2, false); 
931 

932  
933 
(idSuper4_A, idSuper4_Super4, idSuper4_B) 
934 
= (idSuper4_A_2, idSuper4_Super4_3, idSuper4_B_1); 
935  
936 
add unused variables 
937 
(out) 
938 
= (out_1); 
939 

940  
941 
tel 
942  
943 
until true restart POINTSuper4_A 
944  
945  
946  
947 
state A_A1_IDL: 
948  
949 
var out_2:real; 
950 
let 
951  
952 

953 
(out_2) 
954 
= A_A1_du(out_1); 
955  
956 

957  
958  
959 
(idSuper4_A, idSuper4_Super4, idSuper4_B, out) 
960 
= (idSuper4_A_1, idSuper4_Super4_1, idSuper4_B_1, out_2); 
961 

962  
963 
tel 
964  
965 
until true restart POINTSuper4_A 
966  
967  
968  
969 
tel 
970  
971  
972 
***************************************************State :Super4_Super4 Automaton*************************************************** 
973  
974 
node Super4_Super4_node(idSuper4_Super4_1:int; 
975 
G:bool; 
976 
idSuper4_A_1:int; 
977 
idSuper4_B_1:int; 
978 
F:bool; 
979 
E:bool; 
980 
out_1:real) 
981  
982 
returns (idSuper4_Super4:int; 
983 
idSuper4_A:int; 
984 
idSuper4_B:int; 
985 
out:real); 
986  
987  
988 
let 
989  
990 
automaton super4_super4 
991  
992 
state POINTSuper4_Super4: 
993 
unless (idSuper4_Super4_1=0) restart POINT__TO__SUPER4_C_1 
994  
995  
996  
997 
unless (idSuper4_Super4_1=23) and G restart SUPER4_A__TO__SUPER4_B_1 
998  
999  
1000  
1001 
unless (idSuper4_Super4_1=24) and G restart SUPER4_B__TO__SUPER4_A_1 
1002  
1003  
1004  
1005 
unless (idSuper4_Super4_1=25) and F restart SUPER4_C__TO__SUPER4_D_1 
1006  
1007  
1008  
1009 
unless (idSuper4_Super4_1=25) and E restart SUPER4_C__TO__A_A1_2 
1010  
1011  
1012  
1013 
unless (idSuper4_Super4_1=26) and E restart SUPER4_D__TO__SUPER4_C_1 
1014  
1015  
1016  
1017 
unless (idSuper4_Super4_1=26) and F restart SUPER4_D__TO__B_B1_2 
1018  
1019  
1020  
1021 
unless (idSuper4_Super4_1=23) restart SUPER4_A_IDL 
1022  
1023 
unless (idSuper4_Super4_1=24) restart SUPER4_B_IDL 
1024  
1025 
unless (idSuper4_Super4_1=25) restart SUPER4_C_IDL 
1026  
1027 
unless (idSuper4_Super4_1=26) restart SUPER4_D_IDL 
1028  
1029 
let 
1030  
1031 
(idSuper4_Super4, idSuper4_A, idSuper4_B, out) 
1032 
= (idSuper4_Super4_1, idSuper4_A_1, idSuper4_B_1, out_1); 
1033 

1034  
1035 
tel 
1036  
1037  
1038  
1039 
state POINT__TO__SUPER4_C_1: 
1040  
1041 
var idSuper4_Super4_2:int; 
1042 
let 
1043  
1044 
 transition trace : 
1045 
POINT__To__Super4_C_1 
1046 
(idSuper4_Super4_2) 
1047 
= Super4_C_en(idSuper4_Super4_1, false); 
1048 

1049  
1050 
(idSuper4_Super4) 
1051 
= (idSuper4_Super4_2); 
1052  
1053 
add unused variables 
1054 
(idSuper4_A, idSuper4_B, out) 
1055 
= (idSuper4_A_1, idSuper4_B_1, out_1); 
1056 

1057  
1058 
tel 
1059  
1060 
until true restart POINTSuper4_Super4 
1061  
1062  
1063  
1064 
state SUPER4_A__TO__SUPER4_B_1: 
1065  
1066 
var idSuper4_Super4_2, idSuper4_Super4_3:int; 
1067 
idSuper4_A_2:int; 
1068 
idSuper4_B_2:int; 
1069 
let 
1070  
1071 
 transition trace : 
1072 
Super4_A__To__Super4_B_1 
1073 
(idSuper4_A_2, idSuper4_Super4_2) 
1074 
= Super4_A_ex(idSuper4_A_1, idSuper4_Super4_1, false); 
1075 

1076  
1077 
(idSuper4_B_2, idSuper4_Super4_3) 
1078 
= Super4_B_en(idSuper4_B_1, idSuper4_Super4_2, false); 
1079 

1080  
1081 
(idSuper4_Super4, idSuper4_A, idSuper4_B) 
1082 
= (idSuper4_Super4_3, idSuper4_A_2, idSuper4_B_2); 
1083  
1084 
add unused variables 
1085 
(out) 
1086 
= (out_1); 
1087 

1088  
1089 
tel 
1090  
1091 
until true restart POINTSuper4_Super4 
1092  
1093  
1094  
1095 
state SUPER4_B__TO__SUPER4_A_1: 
1096  
1097 
var idSuper4_Super4_2, idSuper4_Super4_3:int; 
1098 
idSuper4_A_2:int; 
1099 
idSuper4_B_2:int; 
1100 
let 
1101  
1102 
 transition trace : 
1103 
Super4_B__To__Super4_A_1 
1104 
(idSuper4_B_2, idSuper4_Super4_2) 
1105 
= Super4_B_ex(idSuper4_B_1, idSuper4_Super4_1, false); 
1106 

1107  
1108 
(idSuper4_A_2, idSuper4_Super4_3) 
1109 
= Super4_A_en(idSuper4_A_1, idSuper4_Super4_2, false); 
1110 

1111  
1112 
(idSuper4_Super4, idSuper4_A, idSuper4_B) 
1113 
= (idSuper4_Super4_3, idSuper4_A_2, idSuper4_B_2); 
1114  
1115 
add unused variables 
1116 
(out) 
1117 
= (out_1); 
1118 

1119  
1120 
tel 
1121  
1122 
until true restart POINTSuper4_Super4 
1123  
1124  
1125  
1126 
state SUPER4_C__TO__SUPER4_D_1: 
1127  
1128 
var idSuper4_Super4_2, idSuper4_Super4_3:int; 
1129 
let 
1130  
1131 
 transition trace : 
1132 
Super4_C__To__Super4_D_1 
1133 
(idSuper4_Super4_2) 
1134 
= Super4_C_ex(idSuper4_Super4_1, false); 
1135 

1136  
1137 
(idSuper4_Super4_3) 
1138 
= Super4_D_en(idSuper4_Super4_2, false); 
1139 

1140  
1141 
(idSuper4_Super4, idSuper4_A, idSuper4_B) 
1142 
= (idSuper4_Super4_3, idSuper4_A_1, idSuper4_B_1); 
1143  
1144 
add unused variables 
1145 
(out) 
1146 
= (out_1); 
1147 

1148  
1149 
tel 
1150  
1151 
until true restart POINTSuper4_Super4 
1152  
1153  
1154  
1155 
state SUPER4_C__TO__A_A1_2: 
1156  
1157 
var idSuper4_Super4_2, idSuper4_Super4_3:int; 
1158 
idSuper4_A_2, idSuper4_A_3:int; 
1159 
let 
1160  
1161 
 transition trace : 
1162 
Super4_C__To__A_A1_2 
1163 
(idSuper4_Super4_2) 
1164 
= Super4_C_ex(idSuper4_Super4_1, false); 
1165 

1166  
1167 
idSuper4_A_2 
1168 
= 27; 
1169 

1170 
(idSuper4_A_3, idSuper4_Super4_3) 
1171 
= Super4_A_en(idSuper4_A_2, idSuper4_Super4_2, false); 
1172 

1173  
1174 
(idSuper4_Super4, idSuper4_A, idSuper4_B) 
1175 
= (idSuper4_Super4_3, idSuper4_A_3, idSuper4_B_1); 
1176  
1177 
add unused variables 
1178 
(out) 
1179 
= (out_1); 
1180 

1181  
1182 
tel 
1183  
1184 
until true restart POINTSuper4_Super4 
1185  
1186  
1187  
1188 
state SUPER4_D__TO__SUPER4_C_1: 
1189  
1190 
var idSuper4_Super4_2, idSuper4_Super4_3:int; 
1191 
let 
1192  
1193 
 transition trace : 
1194 
Super4_D__To__Super4_C_1 
1195 
(idSuper4_Super4_2) 
1196 
= Super4_D_ex(idSuper4_Super4_1, false); 
1197 

1198  
1199 
(idSuper4_Super4_3) 
1200 
= Super4_C_en(idSuper4_Super4_2, false); 
1201 

1202  
1203 
(idSuper4_Super4, idSuper4_A, idSuper4_B) 
1204 
= (idSuper4_Super4_3, idSuper4_A_1, idSuper4_B_1); 
1205  
1206 
add unused variables 
1207 
(out) 
1208 
= (out_1); 
1209 

1210  
1211 
tel 
1212  
1213 
until true restart POINTSuper4_Super4 
1214  
1215  
1216  
1217 
state SUPER4_D__TO__B_B1_2: 
1218  
1219 
var idSuper4_Super4_2, idSuper4_Super4_3:int; 
1220 
idSuper4_B_2, idSuper4_B_3:int; 
1221 
let 
1222  
1223 
 transition trace : 
1224 
Super4_D__To__B_B1_2 
1225 
(idSuper4_Super4_2) 
1226 
= Super4_D_ex(idSuper4_Super4_1, false); 
1227 

1228  
1229 
idSuper4_B_2 
1230 
= 28; 
1231 

1232 
(idSuper4_B_3, idSuper4_Super4_3) 
1233 
= Super4_B_en(idSuper4_B_2, idSuper4_Super4_2, false); 
1234 

1235  
1236 
(idSuper4_Super4, idSuper4_A, idSuper4_B) 
1237 
= (idSuper4_Super4_3, idSuper4_A_1, idSuper4_B_3); 
1238  
1239 
add unused variables 
1240 
(out) 
1241 
= (out_1); 
1242 

1243  
1244 
tel 
1245  
1246 
until true restart POINTSuper4_Super4 
1247  
1248  
1249  
1250 
state SUPER4_A_IDL: 
1251  
1252 
var idSuper4_Super4_2:int; 
1253 
idSuper4_A_2:int; 
1254 
idSuper4_B_2:int; 
1255 
out_2, out_3:real; 
1256 
let 
1257  
1258 

1259 
(out_2) 
1260 
= Super4_A_du(out_1); 
1261  
1262 

1263  
1264 
(idSuper4_A_2, idSuper4_Super4_2, idSuper4_B_2, out_3) 
1265 
= Super4_A_node(idSuper4_A_1, E, idSuper4_Super4_1, idSuper4_B_1, F, out_2); 
1266  
1267 

1268  
1269  
1270 
(idSuper4_Super4, idSuper4_A, idSuper4_B, out) 
1271 
= (idSuper4_Super4_2, idSuper4_A_2, idSuper4_B_2, out_3); 
1272 

1273  
1274 
tel 
1275  
1276 
until true restart POINTSuper4_Super4 
1277  
1278  
1279  
1280 
state SUPER4_B_IDL: 
1281  
1282 
var idSuper4_Super4_2:int; 
1283 
idSuper4_A_2:int; 
1284 
idSuper4_B_2:int; 
1285 
out_2, out_3:real; 
1286 
let 
1287  
1288 

1289 
(out_2) 
1290 
= Super4_B_du(out_1); 
1291  
1292 

1293  
1294 
(idSuper4_B_2, idSuper4_Super4_2, idSuper4_A_2, out_3) 
1295 
= Super4_B_node(idSuper4_B_1, E, idSuper4_Super4_1, F, idSuper4_A_1, out_2); 
1296  
1297 

1298  
1299  
1300 
(idSuper4_Super4, idSuper4_A, idSuper4_B, out) 
1301 
= (idSuper4_Super4_2, idSuper4_A_2, idSuper4_B_2, out_3); 
1302 

1303  
1304 
tel 
1305  
1306 
until true restart POINTSuper4_Super4 
1307  
1308  
1309  
1310 
state SUPER4_C_IDL: 
1311  
1312 
var out_2:real; 
1313 
let 
1314  
1315 

1316 
(out_2) 
1317 
= Super4_C_du(out_1); 
1318  
1319 

1320  
1321  
1322 
(idSuper4_Super4, idSuper4_A, idSuper4_B, out) 
1323 
= (idSuper4_Super4_1, idSuper4_A_1, idSuper4_B_1, out_2); 
1324 

1325  
1326 
tel 
1327  
1328 
until true restart POINTSuper4_Super4 
1329  
1330  
1331  
1332 
state SUPER4_D_IDL: 
1333  
1334 
var out_2:real; 
1335 
let 
1336  
1337 

1338 
(out_2) 
1339 
= Super4_D_du(out_1); 
1340  
1341 

1342  
1343  
1344 
(idSuper4_Super4, idSuper4_A, idSuper4_B, out) 
1345 
= (idSuper4_Super4_1, idSuper4_A_1, idSuper4_B_1, out_2); 
1346 

1347  
1348 
tel 
1349  
1350 
until true restart POINTSuper4_Super4 
1351  
1352  
1353  
1354 
tel 
1355  
1356  
1357 
***************************************************State :Super4_Super4 Automaton*************************************************** 
1358  
1359 
node Super4_Super4(E:bool; 
1360 
G:bool; 
1361 
F:bool) 
1362  
1363 
returns (out:real); 
1364  
1365  
1366 
var out_1: real; 
1367  
1368 
idSuper4_Super4, idSuper4_Super4_1: int; 
1369  
1370 
idSuper4_B, idSuper4_B_1: int; 
1371  
1372 
idSuper4_A, idSuper4_A_1: int; 
1373  
1374 
idSuper4_Super4_2, idSuper4_Super4_3:int; 
1375 
idSuper4_A_2, idSuper4_A_3:int; 
1376 
idSuper4_B_2, idSuper4_B_3:int; 
1377 
out_2, out_3:real; 
1378 
let 
1379  
1380 
out_1 = 0.0 > pre out; 
1381  
1382 
idSuper4_Super4_1 = 0 > pre idSuper4_Super4; 
1383  
1384 
idSuper4_B_1 = 0 > pre idSuper4_B; 
1385  
1386 
idSuper4_A_1 = 0 > pre idSuper4_A; 
1387  
1388 

1389  
1390  
1391  
1392 
(idSuper4_Super4_2, idSuper4_A_2, idSuper4_B_2, out_2) 
1393 
= 
1394  
1395 
if E then Super4_Super4_node(idSuper4_Super4_1, false, idSuper4_A_1, idSuper4_B_1, false, E, out_1) 
1396  
1397 
else (idSuper4_Super4_1, idSuper4_A_1, idSuper4_B_1, out_1); 
1398  
1399 

1400  
1401  
1402  
1403 
(idSuper4_Super4_3, idSuper4_A_3, idSuper4_B_3, out_3) 
1404 
= 
1405  
1406 
if G then Super4_Super4_node(idSuper4_Super4_2, G, idSuper4_A_2, idSuper4_B_2, false, false, out_2) 
1407  
1408 
else (idSuper4_Super4_2, idSuper4_A_2, idSuper4_B_2, out_2); 
1409  
1410 

1411  
1412  
1413  
1414 
(idSuper4_Super4, idSuper4_A, idSuper4_B, out) 
1415 
= 
1416  
1417 
if F then Super4_Super4_node(idSuper4_Super4_3, false, idSuper4_A_3, idSuper4_B_3, F, false, out_3) 
1418  
1419 
else (idSuper4_Super4_3, idSuper4_A_3, idSuper4_B_3, out_3); 
1420  
1421 

1422  
1423  
1424 
unused outputs 
1425 

1426  
1427 
tel 
1428  
1429  
1430  
1431 
node Super4 (E_1_1 : real; F_1_1 : real; E2_1_1 : real) 
1432 
returns (Out_1_1 : real); 
1433 
var 
1434 
Mux_1_1 : real; Mux_1_2 : real; Mux_1_3 : real; 
1435 
Super4_1_1 : real; 
1436 
i_virtual_local : real; 
1437 
Super4Mux_1_1_event: bool; 
1438 
Super4Mux_1_2_event: bool; 
1439 
Super4Mux_1_3_event: bool; 
1440 
let 
1441 
Mux_1_1 = E_1_1 ; 
1442 
Mux_1_2 = F_1_1 ; 
1443 
Mux_1_3 = E2_1_1 ; 
1444 
Super4Mux_1_1_event = false > ((pre(Mux_1_1) > 0.0 and Mux_1_1 <= 0.0) or (pre(Mux_1_1) <= 0.0 and Mux_1_1 > 0.0)); 
1445 
Super4Mux_1_2_event = false > ((pre(Mux_1_2) > 0.0 and Mux_1_2 <= 0.0) or (pre(Mux_1_2) <= 0.0 and Mux_1_2 > 0.0)); 
1446 
Super4Mux_1_3_event = false > ((pre(Mux_1_3) > 0.0 and Mux_1_3 <= 0.0) or (pre(Mux_1_3) <= 0.0 and Mux_1_3 > 0.0)); 
1447 
Super4_1_1 = Super4_Super4(Super4Mux_1_1_event, Super4Mux_1_2_event, Super4Mux_1_3_event); 
1448 
Out_1_1 = Super4_1_1; 
1449 
i_virtual_local= 0.0 > 1.0; 
1450 
tel 
1451 