1 |
( L.if null(L) L
( L.else let i = search(||L||-1;P(L)) in if i= 0 L else swap(L;i-1;i) fi fi)
(T List) (T List)
 | 1 step |
2 |
L:T List.
( L.if null(L) L
( L.else let i = search(||L||-1;P(L)) in if i= 0 L else swap(L;i-1;i) fi fi)
(L)
=
if null(L) L
else let i = search(||L||-1;P(L)) in if i= 0 L else swap(L;i-1;i) fi fi
 | 1 step |
3 |
7. f : (T List) (T List)
( L:T List.
(f(L)
(=
(if null(L) L
(else let i = search(||L||-1;P(L)) in if i= 0 L else swap(L;i-1;i) fi fi)
Prop
 | 1 step |