(VAR x y ) (RULES f(true,x,y) -> f(gt(x,y),plus2(x),plus1(y)) gt(s(x),0) -> true gt(0,y) -> false gt(s(x),s(y)) -> gt(x,y) plus1(x) -> plus(s(0),x) plus2(x) -> plus(s(s(0)),x) plus(0,y) -> y plus(s(x),y) -> plus(x,s(y)) )