YES

Problem:
 app(D(),t()) -> 1()
 app(D(),constant()) -> 0()
 app(D(),app(app(+(),x),y)) -> app(app(+(),app(D(),x)),app(D(),y))
 app(D(),app(app(*(),x),y)) -> app(app(+(),app(app(*(),y),app(D(),x))),app(app(*(),x),app(D(),y)))
 app(D(),app(app(-(),x),y)) -> app(app(-(),app(D(),x)),app(D(),y))
 app(D(),app(minus(),x)) -> app(minus(),app(D(),x))
 app(D(),app(app(div(),x),y)) ->
 app(app(-(),app(app(div(),app(D(),x)),y)),app(app(div(),app(app(*(),x),app(D(),y))),
                                               app(app(pow(),y),2())))
 app(D(),app(ln(),x)) -> app(app(div(),app(D(),x)),x)
 app(D(),app(app(pow(),x),y)) ->
 app(app(+(),app(app(*(),app(app(*(),y),app(app(pow(),x),app(app(-(),y),1())))),app(D(),x))),
     app(app(*(),app(app(*(),app(app(pow(),x),y)),app(ln(),x))),app(D(),y)))
 app(app(map(),f),nil()) -> nil()
 app(app(map(),f),app(app(cons(),x),xs)) -> app(app(cons(),app(f,x)),app(app(map(),f),xs))
 app(app(filter(),f),nil()) -> nil()
 app(app(filter(),f),app(app(cons(),x),xs)) -> app(app(app(app(filter2(),app(f,x)),f),x),xs)
 app(app(app(app(filter2(),true()),f),x),xs) -> app(app(cons(),x),app(app(filter(),f),xs))
 app(app(app(app(filter2(),false()),f),x),xs) -> app(app(filter(),f),xs)

Proof:
 Uncurry Processor:
  D1(t()) -> 1()
  D1(constant()) -> 0()
  D1(+2(x,y)) -> +2(D1(x),D1(y))
  D1(*2(x,y)) -> +2(*2(y,D1(x)),*2(x,D1(y)))
  D1(-2(x,y)) -> -2(D1(x),D1(y))
  D1(minus1(x)) -> minus1(D1(x))
  D1(div2(x,y)) -> -2(div2(D1(x),y),div2(*2(x,D1(y)),pow2(y,2())))
  D1(ln1(x)) -> div2(D1(x),x)
  D1(pow2(x,y)) -> +2(*2(*2(y,pow2(x,-2(y,1()))),D1(x)),*2(*2(pow2(x,y),ln1(x)),D1(y)))
  map2(f,nil()) -> nil()
  map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs))
  filter2(f,nil()) -> nil()
  filter2(f,cons2(x,xs)) -> filter24(app(f,x),f,x,xs)
  filter24(true(),f,x,xs) -> cons2(x,filter2(f,xs))
  filter24(false(),f,x,xs) -> filter2(f,xs)
  app(D(),x7) -> D1(x7)
  app(+1(x6),x7) -> +2(x6,x7)
  app(+(),x7) -> +1(x7)
  app(*1(x6),x7) -> *2(x6,x7)
  app(*(),x7) -> *1(x7)
  app(-1(x6),x7) -> -2(x6,x7)
  app(-(),x7) -> -1(x7)
  app(minus(),x7) -> minus1(x7)
  app(div1(x6),x7) -> div2(x6,x7)
  app(div(),x7) -> div1(x7)
  app(pow1(x6),x7) -> pow2(x6,x7)
  app(pow(),x7) -> pow1(x7)
  app(ln(),x7) -> ln1(x7)
  app(map1(x6),x7) -> map2(x6,x7)
  app(map(),x7) -> map1(x7)
  app(cons1(x6),x7) -> cons2(x6,x7)
  app(cons(),x7) -> cons1(x7)
  app(filter1(x6),x7) -> filter2(x6,x7)
  app(filter(),x7) -> filter1(x7)
  app(filter23(x6,x5,x4),x7) -> filter24(x6,x5,x4,x7)
  app(filter22(x6,x5),x7) -> filter23(x6,x5,x7)
  app(filter21(x6),x7) -> filter22(x6,x7)
  app(filter2(),x7) -> filter21(x7)
  DP Processor:
   DPs:
    D{1,#}(+2(x,y)) -> D{1,#}(y)
    D{1,#}(+2(x,y)) -> D{1,#}(x)
    D{1,#}(*2(x,y)) -> D{1,#}(y)
    D{1,#}(*2(x,y)) -> D{1,#}(x)
    D{1,#}(-2(x,y)) -> D{1,#}(y)
    D{1,#}(-2(x,y)) -> D{1,#}(x)
    D{1,#}(minus1(x)) -> D{1,#}(x)
    D{1,#}(div2(x,y)) -> D{1,#}(y)
    D{1,#}(div2(x,y)) -> D{1,#}(x)
    D{1,#}(ln1(x)) -> D{1,#}(x)
    D{1,#}(pow2(x,y)) -> D{1,#}(y)
    D{1,#}(pow2(x,y)) -> D{1,#}(x)
    map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs)
    map{2,#}(f,cons2(x,xs)) -> app#(f,x)
    filter{2,#}(f,cons2(x,xs)) -> app#(f,x)
    filter{2,#}(f,cons2(x,xs)) -> filter2{4,#}(app(f,x),f,x,xs)
    filter2{4,#}(true(),f,x,xs) -> filter{2,#}(f,xs)
    filter2{4,#}(false(),f,x,xs) -> filter{2,#}(f,xs)
    app#(D(),x7) -> D{1,#}(x7)
    app#(map1(x6),x7) -> map{2,#}(x6,x7)
    app#(filter1(x6),x7) -> filter{2,#}(x6,x7)
    app#(filter23(x6,x5,x4),x7) -> filter2{4,#}(x6,x5,x4,x7)
   TRS:
    D1(t()) -> 1()
    D1(constant()) -> 0()
    D1(+2(x,y)) -> +2(D1(x),D1(y))
    D1(*2(x,y)) -> +2(*2(y,D1(x)),*2(x,D1(y)))
    D1(-2(x,y)) -> -2(D1(x),D1(y))
    D1(minus1(x)) -> minus1(D1(x))
    D1(div2(x,y)) -> -2(div2(D1(x),y),div2(*2(x,D1(y)),pow2(y,2())))
    D1(ln1(x)) -> div2(D1(x),x)
    D1(pow2(x,y)) -> +2(*2(*2(y,pow2(x,-2(y,1()))),D1(x)),*2(*2(pow2(x,y),ln1(x)),D1(y)))
    map2(f,nil()) -> nil()
    map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs))
    filter2(f,nil()) -> nil()
    filter2(f,cons2(x,xs)) -> filter24(app(f,x),f,x,xs)
    filter24(true(),f,x,xs) -> cons2(x,filter2(f,xs))
    filter24(false(),f,x,xs) -> filter2(f,xs)
    app(D(),x7) -> D1(x7)
    app(+1(x6),x7) -> +2(x6,x7)
    app(+(),x7) -> +1(x7)
    app(*1(x6),x7) -> *2(x6,x7)
    app(*(),x7) -> *1(x7)
    app(-1(x6),x7) -> -2(x6,x7)
    app(-(),x7) -> -1(x7)
    app(minus(),x7) -> minus1(x7)
    app(div1(x6),x7) -> div2(x6,x7)
    app(div(),x7) -> div1(x7)
    app(pow1(x6),x7) -> pow2(x6,x7)
    app(pow(),x7) -> pow1(x7)
    app(ln(),x7) -> ln1(x7)
    app(map1(x6),x7) -> map2(x6,x7)
    app(map(),x7) -> map1(x7)
    app(cons1(x6),x7) -> cons2(x6,x7)
    app(cons(),x7) -> cons1(x7)
    app(filter1(x6),x7) -> filter2(x6,x7)
    app(filter(),x7) -> filter1(x7)
    app(filter23(x6,x5,x4),x7) -> filter24(x6,x5,x4,x7)
    app(filter22(x6,x5),x7) -> filter23(x6,x5,x7)
    app(filter21(x6),x7) -> filter22(x6,x7)
    app(filter2(),x7) -> filter21(x7)
   TDG Processor:
    DPs:
     D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(x)
     map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs)
     map{2,#}(f,cons2(x,xs)) -> app#(f,x)
     filter{2,#}(f,cons2(x,xs)) -> app#(f,x)
     filter{2,#}(f,cons2(x,xs)) -> filter2{4,#}(app(f,x),f,x,xs)
     filter2{4,#}(true(),f,x,xs) -> filter{2,#}(f,xs)
     filter2{4,#}(false(),f,x,xs) -> filter{2,#}(f,xs)
     app#(D(),x7) -> D{1,#}(x7)
     app#(map1(x6),x7) -> map{2,#}(x6,x7)
     app#(filter1(x6),x7) -> filter{2,#}(x6,x7)
     app#(filter23(x6,x5,x4),x7) -> filter2{4,#}(x6,x5,x4,x7)
    TRS:
     D1(t()) -> 1()
     D1(constant()) -> 0()
     D1(+2(x,y)) -> +2(D1(x),D1(y))
     D1(*2(x,y)) -> +2(*2(y,D1(x)),*2(x,D1(y)))
     D1(-2(x,y)) -> -2(D1(x),D1(y))
     D1(minus1(x)) -> minus1(D1(x))
     D1(div2(x,y)) -> -2(div2(D1(x),y),div2(*2(x,D1(y)),pow2(y,2())))
     D1(ln1(x)) -> div2(D1(x),x)
     D1(pow2(x,y)) -> +2(*2(*2(y,pow2(x,-2(y,1()))),D1(x)),*2(*2(pow2(x,y),ln1(x)),D1(y)))
     map2(f,nil()) -> nil()
     map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs))
     filter2(f,nil()) -> nil()
     filter2(f,cons2(x,xs)) -> filter24(app(f,x),f,x,xs)
     filter24(true(),f,x,xs) -> cons2(x,filter2(f,xs))
     filter24(false(),f,x,xs) -> filter2(f,xs)
     app(D(),x7) -> D1(x7)
     app(+1(x6),x7) -> +2(x6,x7)
     app(+(),x7) -> +1(x7)
     app(*1(x6),x7) -> *2(x6,x7)
     app(*(),x7) -> *1(x7)
     app(-1(x6),x7) -> -2(x6,x7)
     app(-(),x7) -> -1(x7)
     app(minus(),x7) -> minus1(x7)
     app(div1(x6),x7) -> div2(x6,x7)
     app(div(),x7) -> div1(x7)
     app(pow1(x6),x7) -> pow2(x6,x7)
     app(pow(),x7) -> pow1(x7)
     app(ln(),x7) -> ln1(x7)
     app(map1(x6),x7) -> map2(x6,x7)
     app(map(),x7) -> map1(x7)
     app(cons1(x6),x7) -> cons2(x6,x7)
     app(cons(),x7) -> cons1(x7)
     app(filter1(x6),x7) -> filter2(x6,x7)
     app(filter(),x7) -> filter1(x7)
     app(filter23(x6,x5,x4),x7) -> filter24(x6,x5,x4,x7)
     app(filter22(x6,x5),x7) -> filter23(x6,x5,x7)
     app(filter21(x6),x7) -> filter22(x6,x7)
     app(filter2(),x7) -> filter21(x7)
    graph:
     filter2{4,#}(false(),f,x,xs) -> filter{2,#}(f,xs) ->
     filter{2,#}(f,cons2(x,xs)) -> filter2{4,#}(app(f,x),f,x,xs)
     filter2{4,#}(false(),f,x,xs) -> filter{2,#}(f,xs) ->
     filter{2,#}(f,cons2(x,xs)) -> app#(f,x)
     filter2{4,#}(true(),f,x,xs) -> filter{2,#}(f,xs) ->
     filter{2,#}(f,cons2(x,xs)) -> filter2{4,#}(app(f,x),f,x,xs)
     filter2{4,#}(true(),f,x,xs) -> filter{2,#}(f,xs) ->
     filter{2,#}(f,cons2(x,xs)) -> app#(f,x)
     filter{2,#}(f,cons2(x,xs)) -> filter2{4,#}(app(f,x),f,x,xs) ->
     filter2{4,#}(false(),f,x,xs) -> filter{2,#}(f,xs)
     filter{2,#}(f,cons2(x,xs)) -> filter2{4,#}(app(f,x),f,x,xs) ->
     filter2{4,#}(true(),f,x,xs) -> filter{2,#}(f,xs)
     filter{2,#}(f,cons2(x,xs)) -> app#(f,x) ->
     app#(filter23(x6,x5,x4),x7) -> filter2{4,#}(x6,x5,x4,x7)
     filter{2,#}(f,cons2(x,xs)) -> app#(f,x) ->
     app#(filter1(x6),x7) -> filter{2,#}(x6,x7)
     filter{2,#}(f,cons2(x,xs)) -> app#(f,x) ->
     app#(map1(x6),x7) -> map{2,#}(x6,x7)
     filter{2,#}(f,cons2(x,xs)) -> app#(f,x) ->
     app#(D(),x7) -> D{1,#}(x7)
     app#(filter23(x6,x5,x4),x7) -> filter2{4,#}(x6,x5,x4,x7) ->
     filter2{4,#}(false(),f,x,xs) -> filter{2,#}(f,xs)
     app#(filter23(x6,x5,x4),x7) -> filter2{4,#}(x6,x5,x4,x7) ->
     filter2{4,#}(true(),f,x,xs) -> filter{2,#}(f,xs)
     app#(filter1(x6),x7) -> filter{2,#}(x6,x7) ->
     filter{2,#}(f,cons2(x,xs)) -> filter2{4,#}(app(f,x),f,x,xs)
     app#(filter1(x6),x7) -> filter{2,#}(x6,x7) ->
     filter{2,#}(f,cons2(x,xs)) -> app#(f,x)
     app#(map1(x6),x7) -> map{2,#}(x6,x7) ->
     map{2,#}(f,cons2(x,xs)) -> app#(f,x)
     app#(map1(x6),x7) -> map{2,#}(x6,x7) ->
     map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     app#(D(),x7) -> D{1,#}(x7) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     map{2,#}(f,cons2(x,xs)) -> app#(f,x) ->
     app#(filter23(x6,x5,x4),x7) -> filter2{4,#}(x6,x5,x4,x7)
     map{2,#}(f,cons2(x,xs)) -> app#(f,x) ->
     app#(filter1(x6),x7) -> filter{2,#}(x6,x7)
     map{2,#}(f,cons2(x,xs)) -> app#(f,x) ->
     app#(map1(x6),x7) -> map{2,#}(x6,x7)
     map{2,#}(f,cons2(x,xs)) -> app#(f,x) ->
     app#(D(),x7) -> D{1,#}(x7)
     map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) ->
     map{2,#}(f,cons2(x,xs)) -> app#(f,x)
     map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs) ->
     map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(ln1(x)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(pow2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(div2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(minus1(x)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(-2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(*2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(y) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(pow2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(ln1(x)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(div2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(minus1(x)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(-2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(*2(x,y)) -> D{1,#}(y)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(x)
     D{1,#}(+2(x,y)) -> D{1,#}(x) -> D{1,#}(+2(x,y)) -> D{1,#}(y)
    SCC Processor:
     #sccs: 2
     #rules: 21
     #arcs: 178/484
     DPs:
      filter2{4,#}(false(),f,x,xs) -> filter{2,#}(f,xs)
      filter{2,#}(f,cons2(x,xs)) -> app#(f,x)
      app#(map1(x6),x7) -> map{2,#}(x6,x7)
      map{2,#}(f,cons2(x,xs)) -> map{2,#}(f,xs)
      map{2,#}(f,cons2(x,xs)) -> app#(f,x)
      app#(filter1(x6),x7) -> filter{2,#}(x6,x7)
      filter{2,#}(f,cons2(x,xs)) -> filter2{4,#}(app(f,x),f,x,xs)
      filter2{4,#}(true(),f,x,xs) -> filter{2,#}(f,xs)
      app#(filter23(x6,x5,x4),x7) -> filter2{4,#}(x6,x5,x4,x7)
     TRS:
      D1(t()) -> 1()
      D1(constant()) -> 0()
      D1(+2(x,y)) -> +2(D1(x),D1(y))
      D1(*2(x,y)) -> +2(*2(y,D1(x)),*2(x,D1(y)))
      D1(-2(x,y)) -> -2(D1(x),D1(y))
      D1(minus1(x)) -> minus1(D1(x))
      D1(div2(x,y)) -> -2(div2(D1(x),y),div2(*2(x,D1(y)),pow2(y,2())))
      D1(ln1(x)) -> div2(D1(x),x)
      D1(pow2(x,y)) -> +2(*2(*2(y,pow2(x,-2(y,1()))),D1(x)),*2(*2(pow2(x,y),ln1(x)),D1(y)))
      map2(f,nil()) -> nil()
      map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs))
      filter2(f,nil()) -> nil()
      filter2(f,cons2(x,xs)) -> filter24(app(f,x),f,x,xs)
      filter24(true(),f,x,xs) -> cons2(x,filter2(f,xs))
      filter24(false(),f,x,xs) -> filter2(f,xs)
      app(D(),x7) -> D1(x7)
      app(+1(x6),x7) -> +2(x6,x7)
      app(+(),x7) -> +1(x7)
      app(*1(x6),x7) -> *2(x6,x7)
      app(*(),x7) -> *1(x7)
      app(-1(x6),x7) -> -2(x6,x7)
      app(-(),x7) -> -1(x7)
      app(minus(),x7) -> minus1(x7)
      app(div1(x6),x7) -> div2(x6,x7)
      app(div(),x7) -> div1(x7)
      app(pow1(x6),x7) -> pow2(x6,x7)
      app(pow(),x7) -> pow1(x7)
      app(ln(),x7) -> ln1(x7)
      app(map1(x6),x7) -> map2(x6,x7)
      app(map(),x7) -> map1(x7)
      app(cons1(x6),x7) -> cons2(x6,x7)
      app(cons(),x7) -> cons1(x7)
      app(filter1(x6),x7) -> filter2(x6,x7)
      app(filter(),x7) -> filter1(x7)
      app(filter23(x6,x5,x4),x7) -> filter24(x6,x5,x4,x7)
      app(filter22(x6,x5),x7) -> filter23(x6,x5,x7)
      app(filter21(x6),x7) -> filter22(x6,x7)
      app(filter2(),x7) -> filter21(x7)
     Subterm Criterion Processor:
      simple projection:
       pi(map{2,#}) = 1
       pi(app#) = 1
       pi(filter{2,#}) = 1
       pi(filter2{4,#}) = 3
      problem:
       DPs:
        filter2{4,#}(false(),f,x,xs) -> filter{2,#}(f,xs)
        app#(map1(x6),x7) -> map{2,#}(x6,x7)
        app#(filter1(x6),x7) -> filter{2,#}(x6,x7)
        filter2{4,#}(true(),f,x,xs) -> filter{2,#}(f,xs)
        app#(filter23(x6,x5,x4),x7) -> filter2{4,#}(x6,x5,x4,x7)
       TRS:
        D1(t()) -> 1()
        D1(constant()) -> 0()
        D1(+2(x,y)) -> +2(D1(x),D1(y))
        D1(*2(x,y)) -> +2(*2(y,D1(x)),*2(x,D1(y)))
        D1(-2(x,y)) -> -2(D1(x),D1(y))
        D1(minus1(x)) -> minus1(D1(x))
        D1(div2(x,y)) -> -2(div2(D1(x),y),div2(*2(x,D1(y)),pow2(y,2())))
        D1(ln1(x)) -> div2(D1(x),x)
        D1(pow2(x,y)) -> +2(*2(*2(y,pow2(x,-2(y,1()))),D1(x)),*2(*2(pow2(x,y),ln1(x)),D1(y)))
        map2(f,nil()) -> nil()
        map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs))
        filter2(f,nil()) -> nil()
        filter2(f,cons2(x,xs)) -> filter24(app(f,x),f,x,xs)
        filter24(true(),f,x,xs) -> cons2(x,filter2(f,xs))
        filter24(false(),f,x,xs) -> filter2(f,xs)
        app(D(),x7) -> D1(x7)
        app(+1(x6),x7) -> +2(x6,x7)
        app(+(),x7) -> +1(x7)
        app(*1(x6),x7) -> *2(x6,x7)
        app(*(),x7) -> *1(x7)
        app(-1(x6),x7) -> -2(x6,x7)
        app(-(),x7) -> -1(x7)
        app(minus(),x7) -> minus1(x7)
        app(div1(x6),x7) -> div2(x6,x7)
        app(div(),x7) -> div1(x7)
        app(pow1(x6),x7) -> pow2(x6,x7)
        app(pow(),x7) -> pow1(x7)
        app(ln(),x7) -> ln1(x7)
        app(map1(x6),x7) -> map2(x6,x7)
        app(map(),x7) -> map1(x7)
        app(cons1(x6),x7) -> cons2(x6,x7)
        app(cons(),x7) -> cons1(x7)
        app(filter1(x6),x7) -> filter2(x6,x7)
        app(filter(),x7) -> filter1(x7)
        app(filter23(x6,x5,x4),x7) -> filter24(x6,x5,x4,x7)
        app(filter22(x6,x5),x7) -> filter23(x6,x5,x7)
        app(filter21(x6),x7) -> filter22(x6,x7)
        app(filter2(),x7) -> filter21(x7)
      SCC Processor:
       #sccs: 0
       #rules: 0
       #arcs: 20/25
       
     
     DPs:
      D{1,#}(+2(x,y)) -> D{1,#}(y)
      D{1,#}(+2(x,y)) -> D{1,#}(x)
      D{1,#}(*2(x,y)) -> D{1,#}(y)
      D{1,#}(*2(x,y)) -> D{1,#}(x)
      D{1,#}(-2(x,y)) -> D{1,#}(y)
      D{1,#}(-2(x,y)) -> D{1,#}(x)
      D{1,#}(minus1(x)) -> D{1,#}(x)
      D{1,#}(div2(x,y)) -> D{1,#}(y)
      D{1,#}(div2(x,y)) -> D{1,#}(x)
      D{1,#}(ln1(x)) -> D{1,#}(x)
      D{1,#}(pow2(x,y)) -> D{1,#}(y)
      D{1,#}(pow2(x,y)) -> D{1,#}(x)
     TRS:
      D1(t()) -> 1()
      D1(constant()) -> 0()
      D1(+2(x,y)) -> +2(D1(x),D1(y))
      D1(*2(x,y)) -> +2(*2(y,D1(x)),*2(x,D1(y)))
      D1(-2(x,y)) -> -2(D1(x),D1(y))
      D1(minus1(x)) -> minus1(D1(x))
      D1(div2(x,y)) -> -2(div2(D1(x),y),div2(*2(x,D1(y)),pow2(y,2())))
      D1(ln1(x)) -> div2(D1(x),x)
      D1(pow2(x,y)) -> +2(*2(*2(y,pow2(x,-2(y,1()))),D1(x)),*2(*2(pow2(x,y),ln1(x)),D1(y)))
      map2(f,nil()) -> nil()
      map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs))
      filter2(f,nil()) -> nil()
      filter2(f,cons2(x,xs)) -> filter24(app(f,x),f,x,xs)
      filter24(true(),f,x,xs) -> cons2(x,filter2(f,xs))
      filter24(false(),f,x,xs) -> filter2(f,xs)
      app(D(),x7) -> D1(x7)
      app(+1(x6),x7) -> +2(x6,x7)
      app(+(),x7) -> +1(x7)
      app(*1(x6),x7) -> *2(x6,x7)
      app(*(),x7) -> *1(x7)
      app(-1(x6),x7) -> -2(x6,x7)
      app(-(),x7) -> -1(x7)
      app(minus(),x7) -> minus1(x7)
      app(div1(x6),x7) -> div2(x6,x7)
      app(div(),x7) -> div1(x7)
      app(pow1(x6),x7) -> pow2(x6,x7)
      app(pow(),x7) -> pow1(x7)
      app(ln(),x7) -> ln1(x7)
      app(map1(x6),x7) -> map2(x6,x7)
      app(map(),x7) -> map1(x7)
      app(cons1(x6),x7) -> cons2(x6,x7)
      app(cons(),x7) -> cons1(x7)
      app(filter1(x6),x7) -> filter2(x6,x7)
      app(filter(),x7) -> filter1(x7)
      app(filter23(x6,x5,x4),x7) -> filter24(x6,x5,x4,x7)
      app(filter22(x6,x5),x7) -> filter23(x6,x5,x7)
      app(filter21(x6),x7) -> filter22(x6,x7)
      app(filter2(),x7) -> filter21(x7)
     Subterm Criterion Processor:
      simple projection:
       pi(D{1,#}) = 0
      problem:
       DPs:
        
       TRS:
        D1(t()) -> 1()
        D1(constant()) -> 0()
        D1(+2(x,y)) -> +2(D1(x),D1(y))
        D1(*2(x,y)) -> +2(*2(y,D1(x)),*2(x,D1(y)))
        D1(-2(x,y)) -> -2(D1(x),D1(y))
        D1(minus1(x)) -> minus1(D1(x))
        D1(div2(x,y)) -> -2(div2(D1(x),y),div2(*2(x,D1(y)),pow2(y,2())))
        D1(ln1(x)) -> div2(D1(x),x)
        D1(pow2(x,y)) -> +2(*2(*2(y,pow2(x,-2(y,1()))),D1(x)),*2(*2(pow2(x,y),ln1(x)),D1(y)))
        map2(f,nil()) -> nil()
        map2(f,cons2(x,xs)) -> cons2(app(f,x),map2(f,xs))
        filter2(f,nil()) -> nil()
        filter2(f,cons2(x,xs)) -> filter24(app(f,x),f,x,xs)
        filter24(true(),f,x,xs) -> cons2(x,filter2(f,xs))
        filter24(false(),f,x,xs) -> filter2(f,xs)
        app(D(),x7) -> D1(x7)
        app(+1(x6),x7) -> +2(x6,x7)
        app(+(),x7) -> +1(x7)
        app(*1(x6),x7) -> *2(x6,x7)
        app(*(),x7) -> *1(x7)
        app(-1(x6),x7) -> -2(x6,x7)
        app(-(),x7) -> -1(x7)
        app(minus(),x7) -> minus1(x7)
        app(div1(x6),x7) -> div2(x6,x7)
        app(div(),x7) -> div1(x7)
        app(pow1(x6),x7) -> pow2(x6,x7)
        app(pow(),x7) -> pow1(x7)
        app(ln(),x7) -> ln1(x7)
        app(map1(x6),x7) -> map2(x6,x7)
        app(map(),x7) -> map1(x7)
        app(cons1(x6),x7) -> cons2(x6,x7)
        app(cons(),x7) -> cons1(x7)
        app(filter1(x6),x7) -> filter2(x6,x7)
        app(filter(),x7) -> filter1(x7)
        app(filter23(x6,x5,x4),x7) -> filter24(x6,x5,x4,x7)
        app(filter22(x6,x5),x7) -> filter23(x6,x5,x7)
        app(filter21(x6),x7) -> filter22(x6,x7)
        app(filter2(),x7) -> filter21(x7)
      Qed