(VAR x y z)
(RULES
msort(nil) -> nil
msort(.(x,y)) -> .(min(x,y),msort(del(min(x,y),.(x,y))))
min(x,nil) -> x
min(x,.(y,z)) -> if(<=(x,y),min(x,z),min(y,z))
del(x,nil) -> nil
del(x,.(y,z)) -> if(=(x,y),z,.(y,del(x,z)))
)
(COMMENT Example 4.60 (Minimum-Sort) in \cite{SK90})