Let me try to perform how P0 and P1 behave in this scenario:
Assume X=0, Y=0 initially
-- | P0 | P1
P0: LD X | S(X=0) | --
P0: ST X = 1 | M(X=1) | --
P0: ST X = 2 | M(X=2) | --
P1: ST X = 3 | ------ | M(X=3)
P1: LD X | S(X=3) | S(X=3)
P0: LD X | S(X=3) | S(X=3)
P0: ST X = 4 | M(X=4) | --
P1: LD X | M(X=4) | --
P0: LD Y | M(X=4) S(Y=0) | --
P0: ST Y = 1 | M(X=4) M(Y=1) | --
P1: ST Y = 2 | M(X=4) | M(Y=2)
Let me try to perform how P0 and P1 behave in this scenario:
Assume X=0, Y=0 initially
-- | P0 | P1
P0: LD X | S(X=0) | --
P0: LD X | S(X=0) | --
P0: ST X = 1 | M(X=1) | --
P0: ST X = 2 | M(X=2) | --
P1: ST X = 3 | ------ | M(X=3)
P1: LD X | S(X=3) | S(X=3)
P0: LD X | S(X=3) | S(X=3)
P0: ST X = 4 | M(X=4) | --
P1: LD X | M(X=4) | --
P0: LD Y | M(X=4) S(Y=0) | --
P0: ST Y = 1 | M(X=4) M(Y=1) | --
P1: ST Y = 2 | M(X=4) | M(Y=2)