MAYBE 0.08/0.18 MAYBE 0.08/0.18 0.08/0.18 Problem: 0.08/0.18 half(0()) -> 0() 0.08/0.18 half(s(0())) -> 0() 0.08/0.18 half(s(s(x))) -> s(half(x)) 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 inc(s(x)) -> s(inc(x)) 0.08/0.18 inc(0()) -> s(0()) 0.08/0.18 logarithm(x) -> logIter(x,0()) 0.08/0.18 logIter(x,y) -> if(le(s(0()),x),le(s(s(0())),x),half(x),inc(y)) 0.08/0.18 if(false(),b,x,y) -> logZeroError() 0.08/0.18 if(true(),false(),x,s(y)) -> y 0.08/0.18 if(true(),true(),x,y) -> logIter(x,y) 0.08/0.18 f() -> g() 0.08/0.18 f() -> h() 0.08/0.18 0.08/0.18 Proof: 0.08/0.18 Open 0.08/0.19 EOF