(0) Obligation:

Runtime Complexity TRS:
The TRS R consists of the following rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(X, Y))) → mark(cons(s(X), incr(Y)))
active(adx(cons(X, Y))) → mark(incr(cons(X, adx(Y))))
active(hd(cons(X, Y))) → mark(X)
active(tl(cons(X, Y))) → mark(Y)
mark(nats) → active(nats)
mark(adx(X)) → active(adx(mark(X)))
mark(zeros) → active(zeros)
mark(cons(X1, X2)) → active(cons(X1, X2))
mark(0) → active(0)
mark(incr(X)) → active(incr(mark(X)))
mark(s(X)) → active(s(X))
mark(hd(X)) → active(hd(mark(X)))
mark(tl(X)) → active(tl(mark(X)))
adx(mark(X)) → adx(X)
adx(active(X)) → adx(X)
cons(mark(X1), X2) → cons(X1, X2)
cons(X1, mark(X2)) → cons(X1, X2)
cons(active(X1), X2) → cons(X1, X2)
cons(X1, active(X2)) → cons(X1, X2)
incr(mark(X)) → incr(X)
incr(active(X)) → incr(X)
s(mark(X)) → s(X)
s(active(X)) → s(X)
hd(mark(X)) → hd(X)
hd(active(X)) → hd(X)
tl(mark(X)) → tl(X)
tl(active(X)) → tl(X)

Rewrite Strategy: INNERMOST

(1) CpxTrsToCdtProof (BOTH BOUNDS(ID, ID) transformation)

Converted CpxTRS to CDT

(2) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(nats) → c(MARK(adx(zeros)), ADX(zeros))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)), CONS(0, zeros))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), CONS(s(z0), incr(z1)), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), INCR(cons(z0, adx(z1))), CONS(z0, adx(z1)), ADX(z1))
ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(adx(z0)) → c7(ACTIVE(adx(mark(z0))), ADX(mark(z0)), MARK(z0))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(cons(z0, z1)) → c9(ACTIVE(cons(z0, z1)), CONS(z0, z1))
MARK(0) → c10(ACTIVE(0))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(s(z0)) → c12(ACTIVE(s(z0)), S(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
S tuples:

ACTIVE(nats) → c(MARK(adx(zeros)), ADX(zeros))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)), CONS(0, zeros))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), CONS(s(z0), incr(z1)), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), INCR(cons(z0, adx(z1))), CONS(z0, adx(z1)), ADX(z1))
ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(adx(z0)) → c7(ACTIVE(adx(mark(z0))), ADX(mark(z0)), MARK(z0))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(cons(z0, z1)) → c9(ACTIVE(cons(z0, z1)), CONS(z0, z1))
MARK(0) → c10(ACTIVE(0))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(s(z0)) → c12(ACTIVE(s(z0)), S(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28

(3) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing nodes:

MARK(0) → c10(ACTIVE(0))

(4) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(nats) → c(MARK(adx(zeros)), ADX(zeros))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)), CONS(0, zeros))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), CONS(s(z0), incr(z1)), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), INCR(cons(z0, adx(z1))), CONS(z0, adx(z1)), ADX(z1))
ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(adx(z0)) → c7(ACTIVE(adx(mark(z0))), ADX(mark(z0)), MARK(z0))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(cons(z0, z1)) → c9(ACTIVE(cons(z0, z1)), CONS(z0, z1))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(s(z0)) → c12(ACTIVE(s(z0)), S(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
S tuples:

ACTIVE(nats) → c(MARK(adx(zeros)), ADX(zeros))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)), CONS(0, zeros))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), CONS(s(z0), incr(z1)), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), INCR(cons(z0, adx(z1))), CONS(z0, adx(z1)), ADX(z1))
ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(adx(z0)) → c7(ACTIVE(adx(mark(z0))), ADX(mark(z0)), MARK(z0))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(cons(z0, z1)) → c9(ACTIVE(cons(z0, z1)), CONS(z0, z1))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(s(z0)) → c12(ACTIVE(s(z0)), S(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c, c1, c2, c3, c4, c5, c6, c7, c8, c9, c11, c12, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28

(5) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID) transformation)

Removed 6 trailing tuple parts

(6) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(adx(z0)) → c7(ACTIVE(adx(mark(z0))), ADX(mark(z0)), MARK(z0))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(adx(z0)) → c7(ACTIVE(adx(mark(z0))), ADX(mark(z0)), MARK(z0))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c7, c8, c11, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12

(7) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace MARK(adx(z0)) → c7(ACTIVE(adx(mark(z0))), ADX(mark(z0)), MARK(z0)) by

MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)), MARK(0))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(x0)) → c7

(8) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)), MARK(0))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(x0)) → c7
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)), MARK(0))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(x0)) → c7
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c11, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7

(9) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing nodes:

MARK(adx(x0)) → c7

(10) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)), MARK(0))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)), MARK(0))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c11, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7

(11) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing tuple parts

(12) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c11, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7

(13) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace MARK(incr(z0)) → c11(ACTIVE(incr(mark(z0))), INCR(mark(z0)), MARK(z0)) by

MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)), MARK(0))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(x0)) → c11

(14) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)), MARK(0))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(x0)) → c11
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)), MARK(0))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(x0)) → c11
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11

(15) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing nodes:

MARK(incr(x0)) → c11

(16) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)), MARK(0))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)), MARK(0))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11

(17) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing tuple parts

(18) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11

(19) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace MARK(hd(z0)) → c13(ACTIVE(hd(mark(z0))), HD(mark(z0)), MARK(z0)) by

MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)), MARK(0))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(x0)) → c13

(20) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)), MARK(0))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(x0)) → c13
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)), MARK(0))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(x0)) → c13
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13

(21) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing nodes:

MARK(hd(x0)) → c13

(22) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)), MARK(0))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)), MARK(0))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13

(23) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing tuple parts

(24) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13

(25) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace MARK(tl(z0)) → c14(ACTIVE(tl(mark(z0))), TL(mark(z0)), MARK(z0)) by

MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)), MARK(0))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(x0)) → c14

(26) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)), MARK(0))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(x0)) → c14
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)), MARK(0))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(x0)) → c14
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14

(27) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing nodes:

MARK(tl(x0)) → c14

(28) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)), MARK(0))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)), MARK(0))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14

(29) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing tuple parts

(30) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14

(31) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace MARK(adx(nats)) → c7(ACTIVE(adx(active(nats))), ADX(mark(nats)), MARK(nats)) by

MARK(adx(nats)) → c7(ACTIVE(adx(nats)), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7

(32) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(nats)), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(nats)), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14, c7

(33) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing nodes:

MARK(adx(nats)) → c7

(34) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(nats)), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(nats)), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14

(35) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing tuple parts

(36) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14

(37) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(mark(z0))))), ADX(mark(adx(z0))), MARK(adx(z0))) by

MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))

(38) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14, c7

(39) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace MARK(adx(zeros)) → c7(ACTIVE(adx(active(zeros))), ADX(mark(zeros)), MARK(zeros)) by

MARK(adx(zeros)) → c7(ACTIVE(adx(zeros)), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7(ACTIVE(adx(mark(cons(0, zeros)))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7

(40) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))
MARK(adx(zeros)) → c7(ACTIVE(adx(zeros)), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7(ACTIVE(adx(mark(cons(0, zeros)))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))
MARK(adx(zeros)) → c7(ACTIVE(adx(zeros)), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7(ACTIVE(adx(mark(cons(0, zeros)))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14, c7, c7

(41) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing nodes:

MARK(adx(zeros)) → c7

(42) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))
MARK(adx(zeros)) → c7(ACTIVE(adx(zeros)), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7(ACTIVE(adx(mark(cons(0, zeros)))), ADX(mark(zeros)), MARK(zeros))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))
MARK(adx(zeros)) → c7(ACTIVE(adx(zeros)), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7(ACTIVE(adx(mark(cons(0, zeros)))), ADX(mark(zeros)), MARK(zeros))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14, c7

(43) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID) transformation)

Removed 1 trailing tuple parts

(44) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(nats) → mark(adx(zeros))
active(zeros) → mark(cons(0, zeros))
active(incr(cons(z0, z1))) → mark(cons(s(z0), incr(z1)))
active(adx(cons(z0, z1))) → mark(incr(cons(z0, adx(z1))))
active(hd(cons(z0, z1))) → mark(z0)
active(tl(cons(z0, z1))) → mark(z1)
mark(nats) → active(nats)
mark(adx(z0)) → active(adx(mark(z0)))
mark(zeros) → active(zeros)
mark(cons(z0, z1)) → active(cons(z0, z1))
mark(0) → active(0)
mark(incr(z0)) → active(incr(mark(z0)))
mark(s(z0)) → active(s(z0))
mark(hd(z0)) → active(hd(mark(z0)))
mark(tl(z0)) → active(tl(mark(z0)))
adx(mark(z0)) → adx(z0)
adx(active(z0)) → adx(z0)
cons(mark(z0), z1) → cons(z0, z1)
cons(z0, mark(z1)) → cons(z0, z1)
cons(active(z0), z1) → cons(z0, z1)
cons(z0, active(z1)) → cons(z0, z1)
incr(mark(z0)) → incr(z0)
incr(active(z0)) → incr(z0)
s(mark(z0)) → s(z0)
s(active(z0)) → s(z0)
hd(mark(z0)) → hd(z0)
hd(active(z0)) → hd(z0)
tl(mark(z0)) → tl(z0)
tl(active(z0)) → tl(z0)
Tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))
MARK(adx(zeros)) → c7(ACTIVE(adx(mark(cons(0, zeros)))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7(ADX(mark(zeros)), MARK(zeros))
S tuples:

ACTIVE(hd(cons(z0, z1))) → c4(MARK(z0))
ACTIVE(tl(cons(z0, z1))) → c5(MARK(z1))
MARK(nats) → c6(ACTIVE(nats))
MARK(zeros) → c8(ACTIVE(zeros))
ADX(mark(z0)) → c15(ADX(z0))
ADX(active(z0)) → c16(ADX(z0))
CONS(mark(z0), z1) → c17(CONS(z0, z1))
CONS(z0, mark(z1)) → c18(CONS(z0, z1))
CONS(active(z0), z1) → c19(CONS(z0, z1))
CONS(z0, active(z1)) → c20(CONS(z0, z1))
INCR(mark(z0)) → c21(INCR(z0))
INCR(active(z0)) → c22(INCR(z0))
S(mark(z0)) → c23(S(z0))
S(active(z0)) → c24(S(z0))
HD(mark(z0)) → c25(HD(z0))
HD(active(z0)) → c26(HD(z0))
TL(mark(z0)) → c27(TL(z0))
TL(active(z0)) → c28(TL(z0))
ACTIVE(nats) → c(MARK(adx(zeros)))
ACTIVE(zeros) → c1(MARK(cons(0, zeros)))
ACTIVE(incr(cons(z0, z1))) → c2(MARK(cons(s(z0), incr(z1))), S(z0), INCR(z1))
ACTIVE(adx(cons(z0, z1))) → c3(MARK(incr(cons(z0, adx(z1)))), CONS(z0, adx(z1)), ADX(z1))
MARK(cons(z0, z1)) → c9(CONS(z0, z1))
MARK(s(z0)) → c12(S(z0))
MARK(adx(z0)) → c7(ACTIVE(adx(z0)), ADX(mark(z0)), MARK(z0))
MARK(adx(cons(z0, z1))) → c7(ACTIVE(adx(active(cons(z0, z1)))), ADX(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(adx(incr(z0))) → c7(ACTIVE(adx(active(incr(mark(z0))))), ADX(mark(incr(z0))), MARK(incr(z0)))
MARK(adx(s(z0))) → c7(ACTIVE(adx(active(s(z0)))), ADX(mark(s(z0))), MARK(s(z0)))
MARK(adx(hd(z0))) → c7(ACTIVE(adx(active(hd(mark(z0))))), ADX(mark(hd(z0))), MARK(hd(z0)))
MARK(adx(tl(z0))) → c7(ACTIVE(adx(active(tl(mark(z0))))), ADX(mark(tl(z0))), MARK(tl(z0)))
MARK(adx(0)) → c7(ACTIVE(adx(active(0))), ADX(mark(0)))
MARK(incr(z0)) → c11(ACTIVE(incr(z0)), INCR(mark(z0)), MARK(z0))
MARK(incr(nats)) → c11(ACTIVE(incr(active(nats))), INCR(mark(nats)), MARK(nats))
MARK(incr(adx(z0))) → c11(ACTIVE(incr(active(adx(mark(z0))))), INCR(mark(adx(z0))), MARK(adx(z0)))
MARK(incr(zeros)) → c11(ACTIVE(incr(active(zeros))), INCR(mark(zeros)), MARK(zeros))
MARK(incr(cons(z0, z1))) → c11(ACTIVE(incr(active(cons(z0, z1)))), INCR(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(incr(incr(z0))) → c11(ACTIVE(incr(active(incr(mark(z0))))), INCR(mark(incr(z0))), MARK(incr(z0)))
MARK(incr(s(z0))) → c11(ACTIVE(incr(active(s(z0)))), INCR(mark(s(z0))), MARK(s(z0)))
MARK(incr(hd(z0))) → c11(ACTIVE(incr(active(hd(mark(z0))))), INCR(mark(hd(z0))), MARK(hd(z0)))
MARK(incr(tl(z0))) → c11(ACTIVE(incr(active(tl(mark(z0))))), INCR(mark(tl(z0))), MARK(tl(z0)))
MARK(incr(0)) → c11(ACTIVE(incr(active(0))), INCR(mark(0)))
MARK(hd(z0)) → c13(ACTIVE(hd(z0)), HD(mark(z0)), MARK(z0))
MARK(hd(nats)) → c13(ACTIVE(hd(active(nats))), HD(mark(nats)), MARK(nats))
MARK(hd(adx(z0))) → c13(ACTIVE(hd(active(adx(mark(z0))))), HD(mark(adx(z0))), MARK(adx(z0)))
MARK(hd(zeros)) → c13(ACTIVE(hd(active(zeros))), HD(mark(zeros)), MARK(zeros))
MARK(hd(cons(z0, z1))) → c13(ACTIVE(hd(active(cons(z0, z1)))), HD(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(hd(incr(z0))) → c13(ACTIVE(hd(active(incr(mark(z0))))), HD(mark(incr(z0))), MARK(incr(z0)))
MARK(hd(s(z0))) → c13(ACTIVE(hd(active(s(z0)))), HD(mark(s(z0))), MARK(s(z0)))
MARK(hd(hd(z0))) → c13(ACTIVE(hd(active(hd(mark(z0))))), HD(mark(hd(z0))), MARK(hd(z0)))
MARK(hd(tl(z0))) → c13(ACTIVE(hd(active(tl(mark(z0))))), HD(mark(tl(z0))), MARK(tl(z0)))
MARK(hd(0)) → c13(ACTIVE(hd(active(0))), HD(mark(0)))
MARK(tl(z0)) → c14(ACTIVE(tl(z0)), TL(mark(z0)), MARK(z0))
MARK(tl(nats)) → c14(ACTIVE(tl(active(nats))), TL(mark(nats)), MARK(nats))
MARK(tl(adx(z0))) → c14(ACTIVE(tl(active(adx(mark(z0))))), TL(mark(adx(z0))), MARK(adx(z0)))
MARK(tl(zeros)) → c14(ACTIVE(tl(active(zeros))), TL(mark(zeros)), MARK(zeros))
MARK(tl(cons(z0, z1))) → c14(ACTIVE(tl(active(cons(z0, z1)))), TL(mark(cons(z0, z1))), MARK(cons(z0, z1)))
MARK(tl(incr(z0))) → c14(ACTIVE(tl(active(incr(mark(z0))))), TL(mark(incr(z0))), MARK(incr(z0)))
MARK(tl(s(z0))) → c14(ACTIVE(tl(active(s(z0)))), TL(mark(s(z0))), MARK(s(z0)))
MARK(tl(hd(z0))) → c14(ACTIVE(tl(active(hd(mark(z0))))), TL(mark(hd(z0))), MARK(hd(z0)))
MARK(tl(tl(z0))) → c14(ACTIVE(tl(active(tl(mark(z0))))), TL(mark(tl(z0))), MARK(tl(z0)))
MARK(tl(0)) → c14(ACTIVE(tl(active(0))), TL(mark(0)))
MARK(adx(nats)) → c7(ACTIVE(adx(mark(adx(zeros)))), ADX(mark(nats)), MARK(nats))
MARK(adx(nats)) → c7(ADX(mark(nats)), MARK(nats))
MARK(adx(adx(x0))) → c7(ACTIVE(adx(adx(mark(x0)))), ADX(mark(adx(x0))), MARK(adx(x0)))
MARK(adx(adx(z0))) → c7(ACTIVE(adx(active(adx(z0)))), ADX(mark(adx(z0))), MARK(adx(z0)))
MARK(adx(adx(nats))) → c7(ACTIVE(adx(active(adx(active(nats))))), ADX(mark(adx(nats))), MARK(adx(nats)))
MARK(adx(adx(adx(z0)))) → c7(ACTIVE(adx(active(adx(active(adx(mark(z0))))))), ADX(mark(adx(adx(z0)))), MARK(adx(adx(z0))))
MARK(adx(adx(zeros))) → c7(ACTIVE(adx(active(adx(active(zeros))))), ADX(mark(adx(zeros))), MARK(adx(zeros)))
MARK(adx(adx(cons(z0, z1)))) → c7(ACTIVE(adx(active(adx(active(cons(z0, z1)))))), ADX(mark(adx(cons(z0, z1)))), MARK(adx(cons(z0, z1))))
MARK(adx(adx(0))) → c7(ACTIVE(adx(active(adx(active(0))))), ADX(mark(adx(0))), MARK(adx(0)))
MARK(adx(adx(incr(z0)))) → c7(ACTIVE(adx(active(adx(active(incr(mark(z0))))))), ADX(mark(adx(incr(z0)))), MARK(adx(incr(z0))))
MARK(adx(adx(s(z0)))) → c7(ACTIVE(adx(active(adx(active(s(z0)))))), ADX(mark(adx(s(z0)))), MARK(adx(s(z0))))
MARK(adx(adx(hd(z0)))) → c7(ACTIVE(adx(active(adx(active(hd(mark(z0))))))), ADX(mark(adx(hd(z0)))), MARK(adx(hd(z0))))
MARK(adx(adx(tl(z0)))) → c7(ACTIVE(adx(active(adx(active(tl(mark(z0))))))), ADX(mark(adx(tl(z0)))), MARK(adx(tl(z0))))
MARK(adx(adx(x0))) → c7(ADX(mark(adx(x0))))
MARK(adx(zeros)) → c7(ACTIVE(adx(mark(cons(0, zeros)))), ADX(mark(zeros)), MARK(zeros))
MARK(adx(zeros)) → c7(ADX(mark(zeros)), MARK(zeros))
K tuples:none
Defined Rule Symbols:

active, mark, adx, cons, incr, s, hd, tl

Defined Pair Symbols:

ACTIVE, MARK, ADX, CONS, INCR, S, HD, TL

Compound Symbols:

c4, c5, c6, c8, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c, c1, c2, c3, c9, c12, c7, c7, c11, c11, c13, c13, c14, c14, c7

(45) CpxTrsMatchBoundsTAProof (EQUIVALENT transformation)

A linear upper bound on the runtime complexity of the TRS R could be shown with a Match-Bound[TAB_LEFTLINEAR,TAB_NONLEFTLINEAR] (for contructor-based start-terms) of 7.

The compatible tree automaton used to show the Match-Boundedness (for constructor-based start-terms) is represented by:
final states : [1, 2, 3, 4, 5, 6, 7, 8]
transitions:
nats0() → 0
zeros0() → 0
00() → 0
active0(0) → 1
mark0(0) → 2
adx0(0) → 3
cons0(0, 0) → 4
incr0(0) → 5
s0(0) → 6
hd0(0) → 7
tl0(0) → 8
zeros1() → 10
adx1(10) → 9
mark1(9) → 1
01() → 12
zeros1() → 13
cons1(12, 13) → 11
mark1(11) → 1
nats1() → 14
active1(14) → 2
zeros1() → 15
active1(15) → 2
01() → 16
active1(16) → 2
zeros2() → 18
adx2(18) → 17
mark2(17) → 2
02() → 20
zeros2() → 21
cons2(20, 21) → 19
mark2(19) → 2
mark2(10) → 23
adx2(23) → 22
active2(22) → 1
cons2(12, 13) → 24
active2(24) → 1
mark3(18) → 26
adx3(26) → 25
active3(25) → 2
zeros2() → 27
active2(27) → 23
cons3(20, 21) → 28
active3(28) → 2
adx3(10) → 22
03() → 30
zeros3() → 31
cons3(30, 31) → 29
mark3(29) → 23
adx3(27) → 22
zeros3() → 32
active3(32) → 26
adx4(18) → 25
cons4(30, 31) → 33
active4(33) → 23
adx3(29) → 22
adx4(32) → 25
04() → 35
zeros4() → 36
cons4(35, 36) → 34
mark4(34) → 26
adx3(31) → 39
cons3(30, 39) → 38
incr3(38) → 37
mark3(37) → 1
cons5(35, 36) → 40
active5(40) → 26
adx4(34) → 25
adx3(33) → 22
adx4(36) → 43
cons4(35, 43) → 42
incr4(42) → 41
mark4(41) → 2
mark4(38) → 45
incr4(45) → 44
active4(44) → 1
adx4(40) → 25
cons4(30, 39) → 33
active4(33) → 45
mark5(42) → 47
incr5(47) → 46
active5(46) → 2
incr5(38) → 44
adx3(39) → 39
incr5(33) → 44
s4(30) → 49
incr4(39) → 50
cons4(49, 50) → 48
mark4(48) → 1
cons5(35, 43) → 40
active5(40) → 47
incr6(42) → 46
cons5(49, 50) → 40
active5(40) → 1
adx4(43) → 43
s5(30) → 52
incr5(31) → 53
cons5(52, 53) → 51
mark5(51) → 1
incr5(39) → 53
incr6(40) → 46
s5(35) → 52
incr5(43) → 53
mark5(51) → 2
adx4(50) → 43
cons4(49, 43) → 42
cons6(52, 53) → 54
active6(54) → 1
active6(54) → 2
s6(35) → 56
incr6(36) → 57
cons6(56, 57) → 55
mark6(55) → 2
incr6(43) → 57
s6(49) → 56
incr6(50) → 57
cons5(49, 43) → 40
s5(49) → 52
cons7(56, 57) → 58
active7(58) → 2

(46) BOUNDS(O(1), O(n^1))