0 QTRS
↳1 Overlay + Local Confluence (⇔)
↳2 QTRS
↳3 DependencyPairsProof (⇔)
↳4 QDP
↳5 DependencyGraphProof (⇔)
↳6 AND
↳7 QDP
↳8 QDPOrderProof (⇔)
↳9 QDP
↳10 PisEmptyProof (⇔)
↳11 TRUE
↳12 QDP
↳13 QDPOrderProof (⇔)
↳14 QDP
↳15 PisEmptyProof (⇔)
↳16 TRUE
↳17 QDP
nats → adx(zeros)
zeros → cons(0, zeros)
incr(cons(X, Y)) → cons(s(X), incr(Y))
adx(cons(X, Y)) → incr(cons(X, adx(Y)))
hd(cons(X, Y)) → X
tl(cons(X, Y)) → Y
nats → adx(zeros)
zeros → cons(0, zeros)
incr(cons(X, Y)) → cons(s(X), incr(Y))
adx(cons(X, Y)) → incr(cons(X, adx(Y)))
hd(cons(X, Y)) → X
tl(cons(X, Y)) → Y
nats
zeros
incr(cons(x0, x1))
adx(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
NATS → ADX(zeros)
NATS → ZEROS
ZEROS → ZEROS
INCR(cons(X, Y)) → INCR(Y)
ADX(cons(X, Y)) → INCR(cons(X, adx(Y)))
ADX(cons(X, Y)) → ADX(Y)
nats → adx(zeros)
zeros → cons(0, zeros)
incr(cons(X, Y)) → cons(s(X), incr(Y))
adx(cons(X, Y)) → incr(cons(X, adx(Y)))
hd(cons(X, Y)) → X
tl(cons(X, Y)) → Y
nats
zeros
incr(cons(x0, x1))
adx(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
INCR(cons(X, Y)) → INCR(Y)
nats → adx(zeros)
zeros → cons(0, zeros)
incr(cons(X, Y)) → cons(s(X), incr(Y))
adx(cons(X, Y)) → incr(cons(X, adx(Y)))
hd(cons(X, Y)) → X
tl(cons(X, Y)) → Y
nats
zeros
incr(cons(x0, x1))
adx(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
INCR(cons(X, Y)) → INCR(Y)
cons2 > INCR1
INCR1: [1]
cons2: multiset
nats → adx(zeros)
zeros → cons(0, zeros)
incr(cons(X, Y)) → cons(s(X), incr(Y))
adx(cons(X, Y)) → incr(cons(X, adx(Y)))
hd(cons(X, Y)) → X
tl(cons(X, Y)) → Y
nats
zeros
incr(cons(x0, x1))
adx(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
ADX(cons(X, Y)) → ADX(Y)
nats → adx(zeros)
zeros → cons(0, zeros)
incr(cons(X, Y)) → cons(s(X), incr(Y))
adx(cons(X, Y)) → incr(cons(X, adx(Y)))
hd(cons(X, Y)) → X
tl(cons(X, Y)) → Y
nats
zeros
incr(cons(x0, x1))
adx(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ADX(cons(X, Y)) → ADX(Y)
cons2 > ADX1
ADX1: [1]
cons2: multiset
nats → adx(zeros)
zeros → cons(0, zeros)
incr(cons(X, Y)) → cons(s(X), incr(Y))
adx(cons(X, Y)) → incr(cons(X, adx(Y)))
hd(cons(X, Y)) → X
tl(cons(X, Y)) → Y
nats
zeros
incr(cons(x0, x1))
adx(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))
ZEROS → ZEROS
nats → adx(zeros)
zeros → cons(0, zeros)
incr(cons(X, Y)) → cons(s(X), incr(Y))
adx(cons(X, Y)) → incr(cons(X, adx(Y)))
hd(cons(X, Y)) → X
tl(cons(X, Y)) → Y
nats
zeros
incr(cons(x0, x1))
adx(cons(x0, x1))
hd(cons(x0, x1))
tl(cons(x0, x1))