The document describes the execution of a program that involves four states (ST1, ST2, ST3, ST4) and variables i being incremented and decremented. The program runs through each state, incrementing i through ST1 and ST2, then decrementing i in ST3 if it is equal to 5 before looping back to ST1.
1 of 58
Download to read offline
More Related Content
Automate1 Correction
1. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3
2. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3
3. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3
4. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3
5. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST1 I=0
6. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST1 I=0
7. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST1 I=1
8. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST1 I=1
9. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST1 I=2
10. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST1 I=2
11. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST1 I=3
12. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
13. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
14. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3 [ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
15. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3 [ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
16. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
17. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
18. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
19. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
20. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=3
21. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=4
22. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=4
23. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=4
24. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
25. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
26. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
27. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3 [ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
28. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
29. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
30. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
31. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=6
32. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST3 I=6
33. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST3 I=6
34. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST3 I=6
35. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST3 I=6
36. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=6
37. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=6
38. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=6
39. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=6
40. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=4
41. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=4
42. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=4
43. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=4
44. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=4
45. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=4
46. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=5
47. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=5
48. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
49. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
50. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
51. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=5
52. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST2 I=6
53. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=6
54. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=6
55. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=6
56. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 ST4 I=6
57. ST1 entry: i = 0 exit: i++ ST2 entry: i++ exit: i++ on E4: i ++ E1 / i++ E1 ST3 ST4 on E2: i = i - 2 E3[ i == 5 ] E2 E1 E1 E3 E3 E1 E3 E1 E3 E1 E2 E1 E2 E3 I=6