(VAR f x xs ) (RULES app(app(mapt,f),app(leaf,x)) -> app(leaf,app(f,x)) app(app(mapt,f),app(node,xs)) -> app(node,app(app(maptlist,f),xs)) app(app(maptlist,f),nil) -> nil app(app(maptlist,f),app(app(cons,x),xs)) -> app(app(cons,app(app(mapt,f),x)),app(app(maptlist,f),xs)) )