(0) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

a__natsa__adx(a__zeros)
a__zeroscons(0, zeros)
a__incr(cons(X, Y)) → cons(s(X), incr(Y))
a__adx(cons(X, Y)) → a__incr(cons(X, adx(Y)))
a__hd(cons(X, Y)) → mark(X)
a__tl(cons(X, Y)) → mark(Y)
mark(nats) → a__nats
mark(adx(X)) → a__adx(mark(X))
mark(zeros) → a__zeros
mark(incr(X)) → a__incr(mark(X))
mark(hd(X)) → a__hd(mark(X))
mark(tl(X)) → a__tl(mark(X))
mark(cons(X1, X2)) → cons(X1, X2)
mark(0) → 0
mark(s(X)) → s(X)
a__natsnats
a__adx(X) → adx(X)
a__zeroszeros
a__incr(X) → incr(X)
a__hd(X) → hd(X)
a__tl(X) → tl(X)

Q is empty.

(1) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Lexicographic path order with status [LPO].
Quasi-Precedence:
[anats, nats] > [azeros, ahd1, mark1, atl1, hd1, tl1] > aadx1 > [cons2, aincr1, s1, incr1, adx1]
[anats, nats] > [azeros, ahd1, mark1, atl1, hd1, tl1] > 0 > [cons2, aincr1, s1, incr1, adx1]
[anats, nats] > [azeros, ahd1, mark1, atl1, hd1, tl1] > zeros > [cons2, aincr1, s1, incr1, adx1]

Status:
ahd1: [1]
aadx1: [1]
atl1: [1]
azeros: []
mark1: [1]
0: []
hd1: [1]
cons2: [2,1]
anats: []
adx1: [1]
incr1: [1]
aincr1: [1]
zeros: []
tl1: [1]
s1: [1]
nats: []

With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

a__natsa__adx(a__zeros)
a__zeroscons(0, zeros)
a__incr(cons(X, Y)) → cons(s(X), incr(Y))
a__adx(cons(X, Y)) → a__incr(cons(X, adx(Y)))
a__hd(cons(X, Y)) → mark(X)
a__tl(cons(X, Y)) → mark(Y)
mark(nats) → a__nats
mark(adx(X)) → a__adx(mark(X))
mark(zeros) → a__zeros
mark(incr(X)) → a__incr(mark(X))
mark(cons(X1, X2)) → cons(X1, X2)
mark(0) → 0
mark(s(X)) → s(X)
a__adx(X) → adx(X)
a__zeroszeros


(2) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(hd(X)) → a__hd(mark(X))
mark(tl(X)) → a__tl(mark(X))
a__natsnats
a__incr(X) → incr(X)
a__hd(X) → hd(X)
a__tl(X) → tl(X)

Q is empty.

(3) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Lexicographic path order with status [LPO].
Quasi-Precedence:
[mark1, hd1, ahd1] > atl1 > tl1
anats > nats
[aincr1, incr1]

Status:
ahd1: [1]
anats: []
atl1: [1]
aincr1: [1]
incr1: [1]
tl1: [1]
mark1: [1]
nats: []
hd1: [1]

With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

mark(tl(X)) → a__tl(mark(X))
a__natsnats
a__tl(X) → tl(X)


(4) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(hd(X)) → a__hd(mark(X))
a__incr(X) → incr(X)
a__hd(X) → hd(X)

Q is empty.

(5) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Lexicographic path order with status [LPO].
Quasi-Precedence:
mark1 > ahd1 > hd1
[aincr1, incr1] > hd1

Status:
ahd1: [1]
aincr1: [1]
incr1: [1]
mark1: [1]
hd1: [1]

With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

mark(hd(X)) → a__hd(mark(X))
a__hd(X) → hd(X)


(6) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

a__incr(X) → incr(X)

Q is empty.

(7) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Lexicographic path order with status [LPO].
Quasi-Precedence:
aincr1 > incr1

Status:
incr1: [1]
aincr1: [1]

With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

a__incr(X) → incr(X)


(8) Obligation:

Q restricted rewrite system:
R is empty.
Q is empty.

(9) RisEmptyProof (EQUIVALENT transformation)

The TRS R is empty. Hence, termination is trivially proven.

(10) TRUE