YES (VAR x y w) (RULES response(a(),response(a(),b())) -> b() c() -> response(a(),b()) response(compose(x,y),w) -> response(x,response(y,w)) ) (COMMENT Termination is shown by EKBO with interpretations on natural numbers response_A(x1,x2) = 1 compose_A(x1,x2) = 1 a_A = 1 b_A = 1 c_A = 2 compose#_A(x1,x2) = x1 + x2 a#_A = 0 b#_A = 0 c#_A = 0 weights w0 = 1 w(response) = 0 w(compose) = 1 w(a) = 1 w(b) = 1 w(c) = 3 and precedence: a > compose > c > response > b )