At: strong switch inv decomposable 1 2 1 1 2 2 1 2 1 1 1 1 1 2 1 2 1 1
1. E: TaggedEventStruct
2. tr: |E| List
3. ...
4. AD-normal(E)(tr)
5.
i,j:
||tr||.
is-send(E)(tr[i]) 
is-send(E)(tr[j]) 
(tr[j] =msg=(E) tr[i]) 
loc(E)(tr[i]) = loc(E)(tr[j]) 
i = j
6.
tr = nil
7. ls:
||tr||
8. is-send(E)(tr[ls])
9. ...
10. ...
11. EquivRel(|E|)(_1 =msg=(E) _2)
12. ...
13. d: 
14. 0 < d
15. ...
16. i:
||tr||
17. j:
||tr||
18. d = j-i
19. i (switchR(tr)^*) ls
20. i
j
21. is-send(E)(tr[i])
22.
is-send(E)(tr[j])
23. i
j-1
24.
is-send(E)(tr[(j-1)])
25. k:
||tr||
26. k (switchR(tr)^*) ls
27. tr[k] =msg=(E) tr[(j-1)]
28. j@0:
||tr||
29. j@0
j
30. is-send(E)(tr[j@0])
31. tr[j@0] =msg=(E) tr[j]
32. j@0 < k
33. k':
||tr||
34. tr[j@0] =msg=(E) tr[k']
35.
is-send(E)(tr[k'])
36. loc(E)(tr[k']) = loc(E)(tr[(j-1)])
37.
j-1
k'
tr[k'] =msg=(E) tr[j]
By:
UseTrans tr[j@0]
THEN
UseSym
Generated subgoals:None
About: