(VAR f g x y ) (RULES app(app(const,x),y) -> x app(app(app(subst,f),g),x) -> app(app(f,x),app(g,x)) app(app(fix,f),x) -> app(app(f,app(fix,f)),x) )