YES
0 QTRS
↳1 Overlay + Local Confluence (⇔, 0 ms)
↳2 QTRS
↳3 DependencyPairsProof (⇔, 0 ms)
↳4 QDP
↳5 DependencyGraphProof (⇔, 0 ms)
↳6 QDP
↳7 UsableRulesProof (⇔, 0 ms)
↳8 QDP
↳9 QDPSizeChangeProof (⇔, 0 ms)
↳10 YES
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(treemap, f), app(app(node, x), xs)) → app(app(node, app(f, x)), app(app(map, app(treemap, f)), xs))
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(treemap, f), app(app(node, x), xs)) → app(app(node, app(f, x)), app(app(map, app(treemap, f)), xs))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(treemap, x0), app(app(node, x1), x2))
APP(app(map, f), app(app(cons, x), xs)) → APP(app(cons, app(f, x)), app(app(map, f), xs))
APP(app(map, f), app(app(cons, x), xs)) → APP(cons, app(f, x))
APP(app(map, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(map, f), app(app(cons, x), xs)) → APP(app(map, f), xs)
APP(app(treemap, f), app(app(node, x), xs)) → APP(app(node, app(f, x)), app(app(map, app(treemap, f)), xs))
APP(app(treemap, f), app(app(node, x), xs)) → APP(node, app(f, x))
APP(app(treemap, f), app(app(node, x), xs)) → APP(f, x)
APP(app(treemap, f), app(app(node, x), xs)) → APP(app(map, app(treemap, f)), xs)
APP(app(treemap, f), app(app(node, x), xs)) → APP(map, app(treemap, f))
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(treemap, f), app(app(node, x), xs)) → app(app(node, app(f, x)), app(app(map, app(treemap, f)), xs))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(treemap, x0), app(app(node, x1), x2))
APP(app(map, f), app(app(cons, x), xs)) → APP(app(map, f), xs)
APP(app(map, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(treemap, f), app(app(node, x), xs)) → APP(f, x)
APP(app(treemap, f), app(app(node, x), xs)) → APP(app(map, app(treemap, f)), xs)
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(treemap, f), app(app(node, x), xs)) → app(app(node, app(f, x)), app(app(map, app(treemap, f)), xs))
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(treemap, x0), app(app(node, x1), x2))
APP(app(map, f), app(app(cons, x), xs)) → APP(app(map, f), xs)
APP(app(map, f), app(app(cons, x), xs)) → APP(f, x)
APP(app(treemap, f), app(app(node, x), xs)) → APP(f, x)
APP(app(treemap, f), app(app(node, x), xs)) → APP(app(map, app(treemap, f)), xs)
app(app(map, x0), nil)
app(app(map, x0), app(app(cons, x1), x2))
app(app(treemap, x0), app(app(node, x1), x2))
From the DPs we obtained the following set of size-change graphs: