MAYBE 0.09/0.19 MAYBE 0.09/0.19 0.09/0.19 Problem: 0.09/0.19 eq(0(),0()) -> true() 0.09/0.19 eq(0(),s(Y)) -> false() 0.09/0.19 eq(s(X),0()) -> false() 0.09/0.19 eq(s(X),s(Y)) -> eq(X,Y) 0.09/0.19 le(0(),Y) -> true() 0.09/0.19 le(s(X),0()) -> false() 0.09/0.19 le(s(X),s(Y)) -> le(X,Y) 0.09/0.19 min(cons(0(),nil())) -> 0() 0.09/0.19 min(cons(s(N),nil())) -> s(N) 0.09/0.19 min(cons(N,cons(M,L))) -> ifmin(le(N,M),cons(N,cons(M,L))) 0.09/0.19 ifmin(true(),cons(N,cons(M,L))) -> min(cons(N,L)) 0.09/0.19 ifmin(false(),cons(N,cons(M,L))) -> min(cons(M,L)) 0.09/0.19 replace(N,M,nil()) -> nil() 0.09/0.19 replace(N,M,cons(K,L)) -> ifrepl(eq(N,K),N,M,cons(K,L)) 0.09/0.19 ifrepl(true(),N,M,cons(K,L)) -> cons(M,L) 0.09/0.19 ifrepl(false(),N,M,cons(K,L)) -> cons(K,replace(N,M,L)) 0.09/0.19 selsort(nil()) -> nil() 0.09/0.19 selsort(cons(N,L)) -> ifselsort(eq(N,min(cons(N,L))),cons(N,L)) 0.09/0.19 ifselsort(true(),cons(N,L)) -> cons(N,selsort(L)) 0.09/0.19 ifselsort(false(),cons(N,L)) -> cons(min(cons(N,L)),selsort(replace(min(cons(N,L)),N,L))) 0.09/0.19 0.09/0.19 Proof: 0.09/0.19 Open 0.09/0.19 EOF