(VAR f t x ) (RULES app(app(fmap,fnil),x) -> nil app(app(fmap,app(app(fcons,f),t)),x) -> app(app(cons,app(f,x)),app(app(fmap,t),x)) )