Triedenie ? Jednoduché riešenia
Nech f je funkciou y a m taká, ze vráti index najväcšieho prvku y[1 .. m]. P2 vymení prvky y[m] a y[f(y, m)] a znízi m o jednotku.
Program P2
declare
x: integer
always
x = f(y, m) { teda y[x] ? y[i], 1 ? i ? m }
initially
m = N
assign
y[m], y[x], m := y[x], y[m], m ? 1 if m > 1