MAYBE 0.08/0.18 MAYBE 0.08/0.18 0.08/0.18 Problem: 0.08/0.18 le(0(),y) -> true() 0.08/0.18 le(s(x),0()) -> false() 0.08/0.18 le(s(x),s(y)) -> le(x,y) 0.08/0.18 minus(x,0()) -> x 0.08/0.18 minus(0(),s(y)) -> 0() 0.08/0.18 minus(s(x),s(y)) -> minus(x,y) 0.08/0.18 plus(x,0()) -> x 0.08/0.18 plus(x,s(y)) -> s(plus(x,y)) 0.08/0.18 mod(s(x),0()) -> 0() 0.08/0.18 mod(x,s(y)) -> help(x,s(y),0()) 0.08/0.18 help(x,s(y),c) -> if(le(c,x),x,s(y),c) 0.08/0.18 if(true(),x,s(y),c) -> help(x,s(y),plus(c,s(y))) 0.08/0.18 if(false(),x,s(y),c) -> minus(x,minus(c,s(y))) 0.08/0.18 0.08/0.18 Proof: 0.08/0.18 Open 0.08/0.19 EOF