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,x) -> 0() 0.08/0.18 minus(x,0()) -> x 0.08/0.18 minus(0(),x) -> 0() 0.08/0.18 minus(s(x),s(y)) -> minus(x,y) 0.08/0.18 isZero(0()) -> true() 0.08/0.18 isZero(s(x)) -> false() 0.08/0.18 mod(x,y) -> if_mod(isZero(y),le(y,x),x,y,minus(x,y)) 0.08/0.18 if_mod(true(),b,x,y,z) -> divByZeroError() 0.08/0.18 if_mod(false(),false(),x,y,z) -> x 0.08/0.18 if_mod(false(),true(),x,y,z) -> mod(z,y) 0.08/0.18 0.08/0.18 Proof: 0.08/0.18 Open 0.08/0.18 EOF