(VAR f g x y z ) (RULES app(app(app(sort,f),g),nil) -> nil app(app(app(sort,f),g),app(app(cons,x),y)) -> app(app(app(app(insert,f),g),app(app(app(sort,f),g),y)),x) app(app(app(app(insert,f),g),nil),y) -> app(app(cons,y),nil) app(app(app(app(insert,f),g),app(app(cons,x),z)),y) -> app(app(cons,app(app(f,x),y)),app(app(app(app(insert,f),g),z),app(app(g,x),y))) app(app(max,0),y) -> y app(app(max,x),0) -> x app(app(max,app(s,x)),app(s,y)) -> app(app(max,x),y) app(app(min,0),y) -> 0 app(app(min,x),0) -> 0 app(app(min,app(s,x)),app(s,y)) -> app(app(min,x),y) app(asort,z) -> app(app(app(sort,min),max),z) app(dsort,z) -> app(app(app(sort,max),min),z) )