mdp module m s : [0..2]; p : [0..2]; [] s=0 & p=0 -> (s'=0) & (p'=1); [] s=0 & p=1 -> (s'=1) & (p'=1); [] s=0 & p=1 -> (s'=0) & (p'=2); [] s=0 & p=1 -> (s'=0) & (p'=1); [] s=0 & p=2 -> (s'=2) & (p'=2); [] s=0 & p=2 -> (s'=0) & (p'=2); [] s>0 -> true; endmodule