1 | 21. x@0: |E| List 22. y@0: |E| List 23. i1: (||y@0||-1) 24. ((is-send(E)(y@0[i1])  is-send(E)(y@0[(i1+1)])  (y@0[i1] =msg=(E) y@0[(i1+1)]))
& ( is-send(E)(y@0[i1]) 
is-send(E)(y@0[(i1+1)]) 
( x,y@1: ||tr||.
x < y@1
& is-send(E)(tr[x])
& is-send(E)(tr[y@1])
& (tr[x] =msg=(E) y@0[(i1+1)])
& (tr[y@1] =msg=(E) y@0[i1]))

loc(E)(y@0[i1]) = loc(E)(y@0[(i1+1)]))) 25. x@0 = swap(y@0;i1;i1+1) 26. L'[x] before L'[y] swap(y@0;i1;i1+1) 27. L'[x] = y@0[(i1+1)] 28. L'[y] = y@0[i1] L'[x] before L'[y] y@0 |