0 QTRS
↳1 Overlay + Local Confluence (⇔)
↳2 QTRS
↳3 DependencyPairsProof (⇔)
↳4 QDP
↳5 DependencyGraphProof (⇔)
↳6 QDP
↳7 QDPOrderProof (⇔)
↳8 QDP
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))
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))
app(app(mapt, x0), app(leaf, x1))
app(app(mapt, x0), app(node, x1))
app(app(maptlist, x0), nil)
app(app(maptlist, x0), app(app(cons, x1), x2))
APP(app(mapt, f), app(leaf, x)) → APP(leaf, app(f, x))
APP(app(mapt, f), app(leaf, x)) → APP(f, x)
APP(app(mapt, f), app(node, xs)) → APP(node, app(app(maptlist, f), xs))
APP(app(mapt, f), app(node, xs)) → APP(app(maptlist, f), xs)
APP(app(mapt, f), app(node, xs)) → APP(maptlist, f)
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(app(cons, app(app(mapt, f), x)), app(app(maptlist, f), xs))
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(cons, app(app(mapt, f), x))
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(app(mapt, f), x)
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(mapt, f)
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(app(maptlist, f), xs)
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))
app(app(mapt, x0), app(leaf, x1))
app(app(mapt, x0), app(node, x1))
app(app(maptlist, x0), nil)
app(app(maptlist, x0), app(app(cons, x1), x2))
APP(app(mapt, f), app(node, xs)) → APP(app(maptlist, f), xs)
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(app(mapt, f), x)
APP(app(mapt, f), app(leaf, x)) → APP(f, x)
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(app(maptlist, f), xs)
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))
app(app(mapt, x0), app(leaf, x1))
app(app(mapt, x0), app(node, x1))
app(app(maptlist, x0), nil)
app(app(maptlist, x0), app(app(cons, x1), x2))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
APP(app(mapt, f), app(leaf, x)) → APP(f, x)
[mapt, maptlist, leaf] > node > [APP1, app1]
[mapt, maptlist, leaf] > cons > [APP1, app1]
[mapt, maptlist, leaf] > nil
APP1: [1]
app1: [1]
mapt: []
node: []
maptlist: []
cons: []
leaf: []
nil: []
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))
APP(app(mapt, f), app(node, xs)) → APP(app(maptlist, f), xs)
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(app(mapt, f), x)
APP(app(maptlist, f), app(app(cons, x), xs)) → APP(app(maptlist, f), xs)
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))
app(app(mapt, x0), app(leaf, x1))
app(app(mapt, x0), app(node, x1))
app(app(maptlist, x0), nil)
app(app(maptlist, x0), app(app(cons, x1), x2))