(VAR x y ) (STRATEGY INNERMOST) (RULES minus(s(x),y) -> if(gt(s(x),y),x,y) if(true,x,y) -> s(minus(x,y)) if(false,x,y) -> 0 gcd(x,y) -> if1(ge(x,y),x,y) if1(true,x,y) -> if2(gt(y,0),x,y) if1(false,x,y) -> if3(gt(x,0),x,y) if2(true,x,y) -> gcd(minus(x,y),y) if2(false,x,y) -> x if3(true,x,y) -> gcd(x,minus(y,x)) if3(false,x,y) -> y gt(0,y) -> false gt(s(x),0) -> true gt(s(x),s(y)) -> gt(x,y) ge(x,0) -> true ge(0,s(x)) -> false ge(s(x),s(y)) -> ge(x,y) )