### (0) Obligation:

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

active(from(X)) → mark(cons(X, from(s(X))))
active(2ndspos(0, Z)) → mark(rnil)
active(2ndspos(s(N), cons(X, cons(Y, Z)))) → mark(rcons(posrecip(Y), 2ndsneg(N, Z)))
active(2ndsneg(0, Z)) → mark(rnil)
active(2ndsneg(s(N), cons(X, cons(Y, Z)))) → mark(rcons(negrecip(Y), 2ndspos(N, Z)))
active(pi(X)) → mark(2ndspos(X, from(0)))
active(plus(0, Y)) → mark(Y)
active(plus(s(X), Y)) → mark(s(plus(X, Y)))
active(times(0, Y)) → mark(0)
active(times(s(X), Y)) → mark(plus(Y, times(X, Y)))
active(square(X)) → mark(times(X, X))
active(s(X)) → s(active(X))
active(posrecip(X)) → posrecip(active(X))
active(negrecip(X)) → negrecip(active(X))
active(cons(X1, X2)) → cons(active(X1), X2)
active(rcons(X1, X2)) → rcons(active(X1), X2)
active(rcons(X1, X2)) → rcons(X1, active(X2))
active(from(X)) → from(active(X))
active(2ndspos(X1, X2)) → 2ndspos(active(X1), X2)
active(2ndspos(X1, X2)) → 2ndspos(X1, active(X2))
active(2ndsneg(X1, X2)) → 2ndsneg(active(X1), X2)
active(2ndsneg(X1, X2)) → 2ndsneg(X1, active(X2))
active(pi(X)) → pi(active(X))
active(plus(X1, X2)) → plus(active(X1), X2)
active(plus(X1, X2)) → plus(X1, active(X2))
active(times(X1, X2)) → times(active(X1), X2)
active(times(X1, X2)) → times(X1, active(X2))
active(square(X)) → square(active(X))
s(mark(X)) → mark(s(X))
posrecip(mark(X)) → mark(posrecip(X))
negrecip(mark(X)) → mark(negrecip(X))
cons(mark(X1), X2) → mark(cons(X1, X2))
rcons(mark(X1), X2) → mark(rcons(X1, X2))
rcons(X1, mark(X2)) → mark(rcons(X1, X2))
from(mark(X)) → mark(from(X))
2ndspos(mark(X1), X2) → mark(2ndspos(X1, X2))
2ndspos(X1, mark(X2)) → mark(2ndspos(X1, X2))
2ndsneg(mark(X1), X2) → mark(2ndsneg(X1, X2))
2ndsneg(X1, mark(X2)) → mark(2ndsneg(X1, X2))
pi(mark(X)) → mark(pi(X))
plus(mark(X1), X2) → mark(plus(X1, X2))
plus(X1, mark(X2)) → mark(plus(X1, X2))
times(mark(X1), X2) → mark(times(X1, X2))
times(X1, mark(X2)) → mark(times(X1, X2))
square(mark(X)) → mark(square(X))
proper(0) → ok(0)
proper(s(X)) → s(proper(X))
proper(posrecip(X)) → posrecip(proper(X))
proper(negrecip(X)) → negrecip(proper(X))
proper(nil) → ok(nil)
proper(cons(X1, X2)) → cons(proper(X1), proper(X2))
proper(rnil) → ok(rnil)
proper(rcons(X1, X2)) → rcons(proper(X1), proper(X2))
proper(from(X)) → from(proper(X))
proper(2ndspos(X1, X2)) → 2ndspos(proper(X1), proper(X2))
proper(2ndsneg(X1, X2)) → 2ndsneg(proper(X1), proper(X2))
proper(pi(X)) → pi(proper(X))
proper(plus(X1, X2)) → plus(proper(X1), proper(X2))
proper(times(X1, X2)) → times(proper(X1), proper(X2))
proper(square(X)) → square(proper(X))
s(ok(X)) → ok(s(X))
posrecip(ok(X)) → ok(posrecip(X))
negrecip(ok(X)) → ok(negrecip(X))
cons(ok(X1), ok(X2)) → ok(cons(X1, X2))
rcons(ok(X1), ok(X2)) → ok(rcons(X1, X2))
from(ok(X)) → ok(from(X))
2ndspos(ok(X1), ok(X2)) → ok(2ndspos(X1, X2))
2ndsneg(ok(X1), ok(X2)) → ok(2ndsneg(X1, X2))
pi(ok(X)) → ok(pi(X))
plus(ok(X1), ok(X2)) → ok(plus(X1, X2))
times(ok(X1), ok(X2)) → ok(times(X1, X2))
square(ok(X)) → ok(square(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))

Rewrite Strategy: INNERMOST

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

Converted Cpx (relative) TRS to CDT

### (2) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
posrecip(ok(z0)) → ok(posrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
negrecip(ok(z0)) → ok(negrecip(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
top(mark(z0)) → top(proper(z0))
top(ok(z0)) → top(active(z0))
Tuples:

ACTIVE(from(z0)) → c(CONS(z0, from(s(z0))), FROM(s(z0)), S(z0))
ACTIVE(2ndspos(0, z0)) → c1
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c2(RCONS(posrecip(z2), 2ndsneg(z0, z3)), POSRECIP(z2), 2NDSNEG(z0, z3))
ACTIVE(2ndsneg(0, z0)) → c3
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c4(RCONS(negrecip(z2), 2ndspos(z0, z3)), NEGRECIP(z2), 2NDSPOS(z0, z3))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)), FROM(0))
ACTIVE(plus(0, z0)) → c6
ACTIVE(plus(s(z0), z1)) → c7(S(plus(z0, z1)), PLUS(z0, z1))
ACTIVE(times(0, z0)) → c8
ACTIVE(times(s(z0), z1)) → c9(PLUS(z1, times(z0, z1)), TIMES(z0, z1))
ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(0) → c57
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(nil) → c61
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rnil) → c63
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
S tuples:

ACTIVE(from(z0)) → c(CONS(z0, from(s(z0))), FROM(s(z0)), S(z0))
ACTIVE(2ndspos(0, z0)) → c1
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c2(RCONS(posrecip(z2), 2ndsneg(z0, z3)), POSRECIP(z2), 2NDSNEG(z0, z3))
ACTIVE(2ndsneg(0, z0)) → c3
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c4(RCONS(negrecip(z2), 2ndspos(z0, z3)), NEGRECIP(z2), 2NDSPOS(z0, z3))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)), FROM(0))
ACTIVE(plus(0, z0)) → c6
ACTIVE(plus(s(z0), z1)) → c7(S(plus(z0, z1)), PLUS(z0, z1))
ACTIVE(times(0, z0)) → c8
ACTIVE(times(s(z0), z1)) → c9(PLUS(z1, times(z0, z1)), TIMES(z0, z1))
ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(0) → c57
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(nil) → c61
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rnil) → c63
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
K tuples:none
Defined Rule Symbols:

active, s, posrecip, negrecip, cons, rcons, from, 2ndspos, 2ndsneg, pi, plus, times, square, proper, top

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

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, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c57, c58, c59, c60, c61, c62, c63, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73

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

Removed 7 trailing nodes:

PROPER(rnil) → c63
ACTIVE(2ndspos(0, z0)) → c1
PROPER(nil) → c61
ACTIVE(2ndsneg(0, z0)) → c3
ACTIVE(plus(0, z0)) → c6
PROPER(0) → c57
ACTIVE(times(0, z0)) → c8

### (4) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
posrecip(ok(z0)) → ok(posrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
negrecip(ok(z0)) → ok(negrecip(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
top(mark(z0)) → top(proper(z0))
top(ok(z0)) → top(active(z0))
Tuples:

ACTIVE(from(z0)) → c(CONS(z0, from(s(z0))), FROM(s(z0)), S(z0))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c2(RCONS(posrecip(z2), 2ndsneg(z0, z3)), POSRECIP(z2), 2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c4(RCONS(negrecip(z2), 2ndspos(z0, z3)), NEGRECIP(z2), 2NDSPOS(z0, z3))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)), FROM(0))
ACTIVE(plus(s(z0), z1)) → c7(S(plus(z0, z1)), PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(PLUS(z1, times(z0, z1)), TIMES(z0, z1))
ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
S tuples:

ACTIVE(from(z0)) → c(CONS(z0, from(s(z0))), FROM(s(z0)), S(z0))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c2(RCONS(posrecip(z2), 2ndsneg(z0, z3)), POSRECIP(z2), 2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c4(RCONS(negrecip(z2), 2ndspos(z0, z3)), NEGRECIP(z2), 2NDSPOS(z0, z3))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)), FROM(0))
ACTIVE(plus(s(z0), z1)) → c7(S(plus(z0, z1)), PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(PLUS(z1, times(z0, z1)), TIMES(z0, z1))
ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
K tuples:none
Defined Rule Symbols:

active, s, posrecip, negrecip, cons, rcons, from, 2ndspos, 2ndsneg, pi, plus, times, square, proper, top

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

Compound Symbols:

c, c2, c4, c5, c7, c9, c10, c11, c12, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c58, c59, c60, c62, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73

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

Removed 5 trailing tuple parts

### (6) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
posrecip(ok(z0)) → ok(posrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
negrecip(ok(z0)) → ok(negrecip(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
top(mark(z0)) → top(proper(z0))
top(ok(z0)) → top(active(z0))
Tuples:

ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c2(RCONS(posrecip(z2), 2ndsneg(z0, z3)), POSRECIP(z2), 2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c4(RCONS(negrecip(z2), 2ndspos(z0, z3)), NEGRECIP(z2), 2NDSPOS(z0, z3))
ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
S tuples:

ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c2(RCONS(posrecip(z2), 2ndsneg(z0, z3)), POSRECIP(z2), 2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c4(RCONS(negrecip(z2), 2ndspos(z0, z3)), NEGRECIP(z2), 2NDSPOS(z0, z3))
ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
K tuples:none
Defined Rule Symbols:

active, s, posrecip, negrecip, cons, rcons, from, 2ndspos, 2ndsneg, pi, plus, times, square, proper, top

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

Compound Symbols:

c2, c4, c10, c11, c12, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c58, c59, c60, c62, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73, c, c5, c7, c9

### (7) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID) transformation)

Split RHS of tuples not part of any SCC

### (8) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
posrecip(ok(z0)) → ok(posrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
negrecip(ok(z0)) → ok(negrecip(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
top(mark(z0)) → top(proper(z0))
top(ok(z0)) → top(active(z0))
Tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
S tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
K tuples:none
Defined Rule Symbols:

active, s, posrecip, negrecip, cons, rcons, from, 2ndspos, 2ndsneg, pi, plus, times, square, proper, top

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

Compound Symbols:

c10, c11, c12, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c58, c59, c60, c62, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73, c, c5, c7, c9, c1

### (9) CdtUsableRulesProof (EQUIVALENT transformation)

The following rules are not usable and were removed:

top(mark(z0)) → top(proper(z0))
top(ok(z0)) → top(active(z0))

### (10) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
posrecip(ok(z0)) → ok(posrecip(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
negrecip(ok(z0)) → ok(negrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
Tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
S tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
K tuples:none
Defined Rule Symbols:

active, rcons, posrecip, 2ndsneg, negrecip, 2ndspos, s, cons, from, pi, plus, times, square, proper

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

Compound Symbols:

c10, c11, c12, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c58, c59, c60, c62, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73, c, c5, c7, c9, c1

### (11) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace ACTIVE(s(z0)) → c11(S(active(z0)), ACTIVE(z0)) by

ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))

### (12) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
posrecip(ok(z0)) → ok(posrecip(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
negrecip(ok(z0)) → ok(negrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
Tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))
S tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))
K tuples:none
Defined Rule Symbols:

active, rcons, posrecip, 2ndsneg, negrecip, 2ndspos, s, cons, from, pi, plus, times, square, proper

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

Compound Symbols:

c10, c12, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c58, c59, c60, c62, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73, c, c5, c7, c9, c1, c11

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

Use narrowing to replace ACTIVE(posrecip(z0)) → c12(POSRECIP(active(z0)), ACTIVE(z0)) by

ACTIVE(posrecip(from(z0))) → c12(POSRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(posrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(2ndsneg(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(posrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(0, z0))) → c12(POSRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(posrecip(plus(s(z0), z1))) → c12(POSRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(posrecip(times(0, z0))) → c12(POSRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(posrecip(times(s(z0), z1))) → c12(POSRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(s(z0))) → c12(POSRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(posrecip(posrecip(z0))) → c12(POSRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(posrecip(negrecip(z0))) → c12(POSRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(posrecip(cons(z0, z1))) → c12(POSRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(square(active(z0))), ACTIVE(square(z0)))

### (14) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
posrecip(ok(z0)) → ok(posrecip(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
negrecip(ok(z0)) → ok(negrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
Tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(posrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(2ndsneg(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(posrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(0, z0))) → c12(POSRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(posrecip(plus(s(z0), z1))) → c12(POSRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(posrecip(times(0, z0))) → c12(POSRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(posrecip(times(s(z0), z1))) → c12(POSRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(s(z0))) → c12(POSRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(posrecip(posrecip(z0))) → c12(POSRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(posrecip(negrecip(z0))) → c12(POSRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(posrecip(cons(z0, z1))) → c12(POSRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(square(active(z0))), ACTIVE(square(z0)))
S tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(posrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(2ndsneg(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(posrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(0, z0))) → c12(POSRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(posrecip(plus(s(z0), z1))) → c12(POSRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(posrecip(times(0, z0))) → c12(POSRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(posrecip(times(s(z0), z1))) → c12(POSRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(s(z0))) → c12(POSRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(posrecip(posrecip(z0))) → c12(POSRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(posrecip(negrecip(z0))) → c12(POSRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(posrecip(cons(z0, z1))) → c12(POSRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(square(active(z0))), ACTIVE(square(z0)))
K tuples:none
Defined Rule Symbols:

active, rcons, posrecip, 2ndsneg, negrecip, 2ndspos, s, cons, from, pi, plus, times, square, proper

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

Compound Symbols:

c10, c13, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c58, c59, c60, c62, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73, c, c5, c7, c9, c1, c11, c12

### (15) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace ACTIVE(negrecip(z0)) → c13(NEGRECIP(active(z0)), ACTIVE(z0)) by

ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(negrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(2ndsneg(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(negrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(0, z0))) → c13(NEGRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(negrecip(plus(s(z0), z1))) → c13(NEGRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(negrecip(times(0, z0))) → c13(NEGRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(negrecip(times(s(z0), z1))) → c13(NEGRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(s(z0))) → c13(NEGRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(negrecip(posrecip(z0))) → c13(NEGRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(negrecip(negrecip(z0))) → c13(NEGRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(negrecip(cons(z0, z1))) → c13(NEGRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(square(active(z0))), ACTIVE(square(z0)))

### (16) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
posrecip(ok(z0)) → ok(posrecip(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
negrecip(ok(z0)) → ok(negrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
Tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(posrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(2ndsneg(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(posrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(0, z0))) → c12(POSRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(posrecip(plus(s(z0), z1))) → c12(POSRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(posrecip(times(0, z0))) → c12(POSRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(posrecip(times(s(z0), z1))) → c12(POSRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(s(z0))) → c12(POSRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(posrecip(posrecip(z0))) → c12(POSRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(posrecip(negrecip(z0))) → c12(POSRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(posrecip(cons(z0, z1))) → c12(POSRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(negrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(2ndsneg(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(negrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(0, z0))) → c13(NEGRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(negrecip(plus(s(z0), z1))) → c13(NEGRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(negrecip(times(0, z0))) → c13(NEGRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(negrecip(times(s(z0), z1))) → c13(NEGRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(s(z0))) → c13(NEGRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(negrecip(posrecip(z0))) → c13(NEGRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(negrecip(negrecip(z0))) → c13(NEGRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(negrecip(cons(z0, z1))) → c13(NEGRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(square(active(z0))), ACTIVE(square(z0)))
S tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(posrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(2ndsneg(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(posrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(0, z0))) → c12(POSRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(posrecip(plus(s(z0), z1))) → c12(POSRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(posrecip(times(0, z0))) → c12(POSRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(posrecip(times(s(z0), z1))) → c12(POSRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(s(z0))) → c12(POSRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(posrecip(posrecip(z0))) → c12(POSRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(posrecip(negrecip(z0))) → c12(POSRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(posrecip(cons(z0, z1))) → c12(POSRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(negrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(2ndsneg(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(negrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(0, z0))) → c13(NEGRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(negrecip(plus(s(z0), z1))) → c13(NEGRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(negrecip(times(0, z0))) → c13(NEGRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(negrecip(times(s(z0), z1))) → c13(NEGRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(s(z0))) → c13(NEGRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(negrecip(posrecip(z0))) → c13(NEGRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(negrecip(negrecip(z0))) → c13(NEGRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(negrecip(cons(z0, z1))) → c13(NEGRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(square(active(z0))), ACTIVE(square(z0)))
K tuples:none
Defined Rule Symbols:

active, rcons, posrecip, 2ndsneg, negrecip, 2ndspos, s, cons, from, pi, plus, times, square, proper

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

Compound Symbols:

c10, c14, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c58, c59, c60, c62, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73, c, c5, c7, c9, c1, c11, c12, c13

### (17) CdtNarrowingProof (BOTH BOUNDS(ID, ID) transformation)

Use narrowing to replace ACTIVE(cons(z0, z1)) → c14(CONS(active(z0), z1), ACTIVE(z0)) by

ACTIVE(cons(from(z0), x1)) → c14(CONS(mark(cons(z0, from(s(z0)))), x1), ACTIVE(from(z0)))
ACTIVE(cons(2ndspos(0, z0), x1)) → c14(CONS(mark(rnil), x1), ACTIVE(2ndspos(0, z0)))
ACTIVE(cons(2ndspos(s(z0), cons(z1, cons(z2, z3))), x1)) → c14(CONS(mark(rcons(posrecip(z2), 2ndsneg(z0, z3))), x1), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(cons(2ndsneg(0, z0), x1)) → c14(CONS(mark(rnil), x1), ACTIVE(2ndsneg(0, z0)))
ACTIVE(cons(2ndsneg(s(z0), cons(z1, cons(z2, z3))), x1)) → c14(CONS(mark(rcons(negrecip(z2), 2ndspos(z0, z3))), x1), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(cons(pi(z0), x1)) → c14(CONS(mark(2ndspos(z0, from(0))), x1), ACTIVE(pi(z0)))
ACTIVE(cons(plus(0, z0), x1)) → c14(CONS(mark(z0), x1), ACTIVE(plus(0, z0)))
ACTIVE(cons(plus(s(z0), z1), x1)) → c14(CONS(mark(s(plus(z0, z1))), x1), ACTIVE(plus(s(z0), z1)))
ACTIVE(cons(times(0, z0), x1)) → c14(CONS(mark(0), x1), ACTIVE(times(0, z0)))
ACTIVE(cons(times(s(z0), z1), x1)) → c14(CONS(mark(plus(z1, times(z0, z1))), x1), ACTIVE(times(s(z0), z1)))
ACTIVE(cons(square(z0), x1)) → c14(CONS(mark(times(z0, z0)), x1), ACTIVE(square(z0)))
ACTIVE(cons(s(z0), x1)) → c14(CONS(s(active(z0)), x1), ACTIVE(s(z0)))
ACTIVE(cons(posrecip(z0), x1)) → c14(CONS(posrecip(active(z0)), x1), ACTIVE(posrecip(z0)))
ACTIVE(cons(negrecip(z0), x1)) → c14(CONS(negrecip(active(z0)), x1), ACTIVE(negrecip(z0)))
ACTIVE(cons(cons(z0, z1), x1)) → c14(CONS(cons(active(z0), z1), x1), ACTIVE(cons(z0, z1)))
ACTIVE(cons(rcons(z0, z1), x1)) → c14(CONS(rcons(active(z0), z1), x1), ACTIVE(rcons(z0, z1)))
ACTIVE(cons(rcons(z0, z1), x1)) → c14(CONS(rcons(z0, active(z1)), x1), ACTIVE(rcons(z0, z1)))
ACTIVE(cons(from(z0), x1)) → c14(CONS(from(active(z0)), x1), ACTIVE(from(z0)))
ACTIVE(cons(2ndspos(z0, z1), x1)) → c14(CONS(2ndspos(active(z0), z1), x1), ACTIVE(2ndspos(z0, z1)))
ACTIVE(cons(2ndspos(z0, z1), x1)) → c14(CONS(2ndspos(z0, active(z1)), x1), ACTIVE(2ndspos(z0, z1)))
ACTIVE(cons(2ndsneg(z0, z1), x1)) → c14(CONS(2ndsneg(active(z0), z1), x1), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(cons(2ndsneg(z0, z1), x1)) → c14(CONS(2ndsneg(z0, active(z1)), x1), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(cons(pi(z0), x1)) → c14(CONS(pi(active(z0)), x1), ACTIVE(pi(z0)))
ACTIVE(cons(plus(z0, z1), x1)) → c14(CONS(plus(active(z0), z1), x1), ACTIVE(plus(z0, z1)))
ACTIVE(cons(plus(z0, z1), x1)) → c14(CONS(plus(z0, active(z1)), x1), ACTIVE(plus(z0, z1)))
ACTIVE(cons(times(z0, z1), x1)) → c14(CONS(times(active(z0), z1), x1), ACTIVE(times(z0, z1)))
ACTIVE(cons(times(z0, z1), x1)) → c14(CONS(times(z0, active(z1)), x1), ACTIVE(times(z0, z1)))
ACTIVE(cons(square(z0), x1)) → c14(CONS(square(active(z0)), x1), ACTIVE(square(z0)))

### (18) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(z0)) → mark(2ndspos(z0, from(0)))
active(plus(0, z0)) → mark(z0)
active(plus(s(z0), z1)) → mark(s(plus(z0, z1)))
active(times(0, z0)) → mark(0)
active(times(s(z0), z1)) → mark(plus(z1, times(z0, z1)))
active(square(z0)) → mark(times(z0, z0))
active(s(z0)) → s(active(z0))
active(posrecip(z0)) → posrecip(active(z0))
active(negrecip(z0)) → negrecip(active(z0))
active(cons(z0, z1)) → cons(active(z0), z1)
active(rcons(z0, z1)) → rcons(active(z0), z1)
active(rcons(z0, z1)) → rcons(z0, active(z1))
active(from(z0)) → from(active(z0))
active(2ndspos(z0, z1)) → 2ndspos(active(z0), z1)
active(2ndspos(z0, z1)) → 2ndspos(z0, active(z1))
active(2ndsneg(z0, z1)) → 2ndsneg(active(z0), z1)
active(2ndsneg(z0, z1)) → 2ndsneg(z0, active(z1))
active(pi(z0)) → pi(active(z0))
active(plus(z0, z1)) → plus(active(z0), z1)
active(plus(z0, z1)) → plus(z0, active(z1))
active(times(z0, z1)) → times(active(z0), z1)
active(times(z0, z1)) → times(z0, active(z1))
active(square(z0)) → square(active(z0))
rcons(mark(z0), z1) → mark(rcons(z0, z1))
rcons(z0, mark(z1)) → mark(rcons(z0, z1))
rcons(ok(z0), ok(z1)) → ok(rcons(z0, z1))
posrecip(ok(z0)) → ok(posrecip(z0))
posrecip(mark(z0)) → mark(posrecip(z0))
2ndsneg(z0, mark(z1)) → mark(2ndsneg(z0, z1))
2ndsneg(mark(z0), z1) → mark(2ndsneg(z0, z1))
2ndsneg(ok(z0), ok(z1)) → ok(2ndsneg(z0, z1))
negrecip(ok(z0)) → ok(negrecip(z0))
negrecip(mark(z0)) → mark(negrecip(z0))
2ndspos(z0, mark(z1)) → mark(2ndspos(z0, z1))
2ndspos(mark(z0), z1) → mark(2ndspos(z0, z1))
2ndspos(ok(z0), ok(z1)) → ok(2ndspos(z0, z1))
s(mark(z0)) → mark(s(z0))
s(ok(z0)) → ok(s(z0))
cons(mark(z0), z1) → mark(cons(z0, z1))
cons(ok(z0), ok(z1)) → ok(cons(z0, z1))
from(mark(z0)) → mark(from(z0))
from(ok(z0)) → ok(from(z0))
pi(mark(z0)) → mark(pi(z0))
pi(ok(z0)) → ok(pi(z0))
plus(mark(z0), z1) → mark(plus(z0, z1))
plus(ok(z0), ok(z1)) → ok(plus(z0, z1))
plus(z0, mark(z1)) → mark(plus(z0, z1))
times(mark(z0), z1) → mark(times(z0, z1))
times(ok(z0), ok(z1)) → ok(times(z0, z1))
times(z0, mark(z1)) → mark(times(z0, z1))
square(mark(z0)) → mark(square(z0))
square(ok(z0)) → ok(square(z0))
proper(0) → ok(0)
proper(s(z0)) → s(proper(z0))
proper(posrecip(z0)) → posrecip(proper(z0))
proper(negrecip(z0)) → negrecip(proper(z0))
proper(nil) → ok(nil)
proper(cons(z0, z1)) → cons(proper(z0), proper(z1))
proper(rnil) → ok(rnil)
proper(rcons(z0, z1)) → rcons(proper(z0), proper(z1))
proper(from(z0)) → from(proper(z0))
proper(2ndspos(z0, z1)) → 2ndspos(proper(z0), proper(z1))
proper(2ndsneg(z0, z1)) → 2ndsneg(proper(z0), proper(z1))
proper(pi(z0)) → pi(proper(z0))
proper(plus(z0, z1)) → plus(proper(z0), proper(z1))
proper(times(z0, z1)) → times(proper(z0), proper(z1))
proper(square(z0)) → square(proper(z0))
Tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(posrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(2ndsneg(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(posrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(0, z0))) → c12(POSRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(posrecip(plus(s(z0), z1))) → c12(POSRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(posrecip(times(0, z0))) → c12(POSRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(posrecip(times(s(z0), z1))) → c12(POSRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(s(z0))) → c12(POSRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(posrecip(posrecip(z0))) → c12(POSRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(posrecip(negrecip(z0))) → c12(POSRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(posrecip(cons(z0, z1))) → c12(POSRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(negrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(2ndsneg(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(negrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(0, z0))) → c13(NEGRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(negrecip(plus(s(z0), z1))) → c13(NEGRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(negrecip(times(0, z0))) → c13(NEGRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(negrecip(times(s(z0), z1))) → c13(NEGRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(s(z0))) → c13(NEGRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(negrecip(posrecip(z0))) → c13(NEGRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(negrecip(negrecip(z0))) → c13(NEGRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(negrecip(cons(z0, z1))) → c13(NEGRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(cons(from(z0), x1)) → c14(CONS(mark(cons(z0, from(s(z0)))), x1), ACTIVE(from(z0)))
ACTIVE(cons(2ndspos(0, z0), x1)) → c14(CONS(mark(rnil), x1), ACTIVE(2ndspos(0, z0)))
ACTIVE(cons(2ndspos(s(z0), cons(z1, cons(z2, z3))), x1)) → c14(CONS(mark(rcons(posrecip(z2), 2ndsneg(z0, z3))), x1), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(cons(2ndsneg(0, z0), x1)) → c14(CONS(mark(rnil), x1), ACTIVE(2ndsneg(0, z0)))
ACTIVE(cons(2ndsneg(s(z0), cons(z1, cons(z2, z3))), x1)) → c14(CONS(mark(rcons(negrecip(z2), 2ndspos(z0, z3))), x1), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(cons(pi(z0), x1)) → c14(CONS(mark(2ndspos(z0, from(0))), x1), ACTIVE(pi(z0)))
ACTIVE(cons(plus(0, z0), x1)) → c14(CONS(mark(z0), x1), ACTIVE(plus(0, z0)))
ACTIVE(cons(plus(s(z0), z1), x1)) → c14(CONS(mark(s(plus(z0, z1))), x1), ACTIVE(plus(s(z0), z1)))
ACTIVE(cons(times(0, z0), x1)) → c14(CONS(mark(0), x1), ACTIVE(times(0, z0)))
ACTIVE(cons(times(s(z0), z1), x1)) → c14(CONS(mark(plus(z1, times(z0, z1))), x1), ACTIVE(times(s(z0), z1)))
ACTIVE(cons(square(z0), x1)) → c14(CONS(mark(times(z0, z0)), x1), ACTIVE(square(z0)))
ACTIVE(cons(s(z0), x1)) → c14(CONS(s(active(z0)), x1), ACTIVE(s(z0)))
ACTIVE(cons(posrecip(z0), x1)) → c14(CONS(posrecip(active(z0)), x1), ACTIVE(posrecip(z0)))
ACTIVE(cons(negrecip(z0), x1)) → c14(CONS(negrecip(active(z0)), x1), ACTIVE(negrecip(z0)))
ACTIVE(cons(cons(z0, z1), x1)) → c14(CONS(cons(active(z0), z1), x1), ACTIVE(cons(z0, z1)))
ACTIVE(cons(rcons(z0, z1), x1)) → c14(CONS(rcons(active(z0), z1), x1), ACTIVE(rcons(z0, z1)))
ACTIVE(cons(rcons(z0, z1), x1)) → c14(CONS(rcons(z0, active(z1)), x1), ACTIVE(rcons(z0, z1)))
ACTIVE(cons(from(z0), x1)) → c14(CONS(from(active(z0)), x1), ACTIVE(from(z0)))
ACTIVE(cons(2ndspos(z0, z1), x1)) → c14(CONS(2ndspos(active(z0), z1), x1), ACTIVE(2ndspos(z0, z1)))
ACTIVE(cons(2ndspos(z0, z1), x1)) → c14(CONS(2ndspos(z0, active(z1)), x1), ACTIVE(2ndspos(z0, z1)))
ACTIVE(cons(2ndsneg(z0, z1), x1)) → c14(CONS(2ndsneg(active(z0), z1), x1), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(cons(2ndsneg(z0, z1), x1)) → c14(CONS(2ndsneg(z0, active(z1)), x1), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(cons(pi(z0), x1)) → c14(CONS(pi(active(z0)), x1), ACTIVE(pi(z0)))
ACTIVE(cons(plus(z0, z1), x1)) → c14(CONS(plus(active(z0), z1), x1), ACTIVE(plus(z0, z1)))
ACTIVE(cons(plus(z0, z1), x1)) → c14(CONS(plus(z0, active(z1)), x1), ACTIVE(plus(z0, z1)))
ACTIVE(cons(times(z0, z1), x1)) → c14(CONS(times(active(z0), z1), x1), ACTIVE(times(z0, z1)))
ACTIVE(cons(times(z0, z1), x1)) → c14(CONS(times(z0, active(z1)), x1), ACTIVE(times(z0, z1)))
ACTIVE(cons(square(z0), x1)) → c14(CONS(square(active(z0)), x1), ACTIVE(square(z0)))
S tuples:

ACTIVE(square(z0)) → c10(TIMES(z0, z0))
ACTIVE(rcons(z0, z1)) → c15(RCONS(active(z0), z1), ACTIVE(z0))
ACTIVE(rcons(z0, z1)) → c16(RCONS(z0, active(z1)), ACTIVE(z1))
ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c18(2NDSPOS(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndspos(z0, z1)) → c19(2NDSPOS(z0, active(z1)), ACTIVE(z1))
ACTIVE(2ndsneg(z0, z1)) → c20(2NDSNEG(active(z0), z1), ACTIVE(z0))
ACTIVE(2ndsneg(z0, z1)) → c21(2NDSNEG(z0, active(z1)), ACTIVE(z1))
ACTIVE(pi(z0)) → c22(PI(active(z0)), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c23(PLUS(active(z0), z1), ACTIVE(z0))
ACTIVE(plus(z0, z1)) → c24(PLUS(z0, active(z1)), ACTIVE(z1))
ACTIVE(times(z0, z1)) → c25(TIMES(active(z0), z1), ACTIVE(z0))
ACTIVE(times(z0, z1)) → c26(TIMES(z0, active(z1)), ACTIVE(z1))
ACTIVE(square(z0)) → c27(SQUARE(active(z0)), ACTIVE(z0))
S(mark(z0)) → c28(S(z0))
S(ok(z0)) → c29(S(z0))
POSRECIP(mark(z0)) → c30(POSRECIP(z0))
POSRECIP(ok(z0)) → c31(POSRECIP(z0))
NEGRECIP(mark(z0)) → c32(NEGRECIP(z0))
NEGRECIP(ok(z0)) → c33(NEGRECIP(z0))
CONS(mark(z0), z1) → c34(CONS(z0, z1))
CONS(ok(z0), ok(z1)) → c35(CONS(z0, z1))
RCONS(mark(z0), z1) → c36(RCONS(z0, z1))
RCONS(z0, mark(z1)) → c37(RCONS(z0, z1))
RCONS(ok(z0), ok(z1)) → c38(RCONS(z0, z1))
FROM(mark(z0)) → c39(FROM(z0))
FROM(ok(z0)) → c40(FROM(z0))
2NDSPOS(mark(z0), z1) → c41(2NDSPOS(z0, z1))
2NDSPOS(z0, mark(z1)) → c42(2NDSPOS(z0, z1))
2NDSPOS(ok(z0), ok(z1)) → c43(2NDSPOS(z0, z1))
2NDSNEG(mark(z0), z1) → c44(2NDSNEG(z0, z1))
2NDSNEG(z0, mark(z1)) → c45(2NDSNEG(z0, z1))
2NDSNEG(ok(z0), ok(z1)) → c46(2NDSNEG(z0, z1))
PI(mark(z0)) → c47(PI(z0))
PI(ok(z0)) → c48(PI(z0))
PLUS(mark(z0), z1) → c49(PLUS(z0, z1))
PLUS(z0, mark(z1)) → c50(PLUS(z0, z1))
PLUS(ok(z0), ok(z1)) → c51(PLUS(z0, z1))
TIMES(mark(z0), z1) → c52(TIMES(z0, z1))
TIMES(z0, mark(z1)) → c53(TIMES(z0, z1))
TIMES(ok(z0), ok(z1)) → c54(TIMES(z0, z1))
SQUARE(mark(z0)) → c55(SQUARE(z0))
SQUARE(ok(z0)) → c56(SQUARE(z0))
PROPER(s(z0)) → c58(S(proper(z0)), PROPER(z0))
PROPER(posrecip(z0)) → c59(POSRECIP(proper(z0)), PROPER(z0))
PROPER(negrecip(z0)) → c60(NEGRECIP(proper(z0)), PROPER(z0))
PROPER(cons(z0, z1)) → c62(CONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(rcons(z0, z1)) → c64(RCONS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(from(z0)) → c65(FROM(proper(z0)), PROPER(z0))
PROPER(2ndspos(z0, z1)) → c66(2NDSPOS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(2ndsneg(z0, z1)) → c67(2NDSNEG(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(pi(z0)) → c68(PI(proper(z0)), PROPER(z0))
PROPER(plus(z0, z1)) → c69(PLUS(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(times(z0, z1)) → c70(TIMES(proper(z0), proper(z1)), PROPER(z0), PROPER(z1))
PROPER(square(z0)) → c71(SQUARE(proper(z0)), PROPER(z0))
TOP(mark(z0)) → c72(TOP(proper(z0)), PROPER(z0))
TOP(ok(z0)) → c73(TOP(active(z0)), ACTIVE(z0))
ACTIVE(from(z0)) → c(S(z0))
ACTIVE(pi(z0)) → c5(2NDSPOS(z0, from(0)))
ACTIVE(plus(s(z0), z1)) → c7(PLUS(z0, z1))
ACTIVE(times(s(z0), z1)) → c9(TIMES(z0, z1))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(posrecip(z2), 2ndsneg(z0, z3)))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(POSRECIP(z2))
ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSNEG(z0, z3))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(RCONS(negrecip(z2), 2ndspos(z0, z3)))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(NEGRECIP(z2))
ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → c1(2NDSPOS(z0, z3))
ACTIVE(s(from(z0))) → c11(S(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(s(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(2ndsneg(0, z0))) → c11(S(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(s(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c11(S(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(s(pi(z0))) → c11(S(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(s(plus(0, z0))) → c11(S(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(s(plus(s(z0), z1))) → c11(S(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(s(times(0, z0))) → c11(S(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(s(times(s(z0), z1))) → c11(S(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(s(square(z0))) → c11(S(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(s(s(z0))) → c11(S(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(s(posrecip(z0))) → c11(S(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(s(negrecip(z0))) → c11(S(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(s(cons(z0, z1))) → c11(S(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(s(rcons(z0, z1))) → c11(S(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(s(from(z0))) → c11(S(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndspos(z0, z1))) → c11(S(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(2ndsneg(z0, z1))) → c11(S(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(s(pi(z0))) → c11(S(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(s(plus(z0, z1))) → c11(S(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(s(times(z0, z1))) → c11(S(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(s(square(z0))) → c11(S(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(posrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(2ndsneg(0, z0))) → c12(POSRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(posrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c12(POSRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(0, z0))) → c12(POSRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(posrecip(plus(s(z0), z1))) → c12(POSRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(posrecip(times(0, z0))) → c12(POSRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(posrecip(times(s(z0), z1))) → c12(POSRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(posrecip(s(z0))) → c12(POSRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(posrecip(posrecip(z0))) → c12(POSRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(posrecip(negrecip(z0))) → c12(POSRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(posrecip(cons(z0, z1))) → c12(POSRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(rcons(z0, z1))) → c12(POSRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(posrecip(from(z0))) → c12(POSRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndspos(z0, z1))) → c12(POSRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(2ndsneg(z0, z1))) → c12(POSRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(posrecip(pi(z0))) → c12(POSRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(plus(z0, z1))) → c12(POSRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(times(z0, z1))) → c12(POSRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(posrecip(square(z0))) → c12(POSRECIP(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(negrecip(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(2ndsneg(0, z0))) → c13(NEGRECIP(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(negrecip(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c13(NEGRECIP(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(0, z0))) → c13(NEGRECIP(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(negrecip(plus(s(z0), z1))) → c13(NEGRECIP(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(negrecip(times(0, z0))) → c13(NEGRECIP(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(negrecip(times(s(z0), z1))) → c13(NEGRECIP(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(negrecip(s(z0))) → c13(NEGRECIP(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(negrecip(posrecip(z0))) → c13(NEGRECIP(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(negrecip(negrecip(z0))) → c13(NEGRECIP(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(negrecip(cons(z0, z1))) → c13(NEGRECIP(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(rcons(z0, z1))) → c13(NEGRECIP(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(negrecip(from(z0))) → c13(NEGRECIP(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndspos(z0, z1))) → c13(NEGRECIP(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(2ndsneg(z0, z1))) → c13(NEGRECIP(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(negrecip(pi(z0))) → c13(NEGRECIP(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(plus(z0, z1))) → c13(NEGRECIP(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(times(z0, z1))) → c13(NEGRECIP(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(negrecip(square(z0))) → c13(NEGRECIP(square(active(z0))), ACTIVE(square(z0)))
ACTIVE(cons(from(z0), x1)) → c14(CONS(mark(cons(z0, from(s(z0)))), x1), ACTIVE(from(z0)))
ACTIVE(cons(2ndspos(0, z0), x1)) → c14(CONS(mark(rnil), x1), ACTIVE(2ndspos(0, z0)))
ACTIVE(cons(2ndspos(s(z0), cons(z1, cons(z2, z3))), x1)) → c14(CONS(mark(rcons(posrecip(z2), 2ndsneg(z0, z3))), x1), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(cons(2ndsneg(0, z0), x1)) → c14(CONS(mark(rnil), x1), ACTIVE(2ndsneg(0, z0)))
ACTIVE(cons(2ndsneg(s(z0), cons(z1, cons(z2, z3))), x1)) → c14(CONS(mark(rcons(negrecip(z2), 2ndspos(z0, z3))), x1), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(cons(pi(z0), x1)) → c14(CONS(mark(2ndspos(z0, from(0))), x1), ACTIVE(pi(z0)))
ACTIVE(cons(plus(0, z0), x1)) → c14(CONS(mark(z0), x1), ACTIVE(plus(0, z0)))
ACTIVE(cons(plus(s(z0), z1), x1)) → c14(CONS(mark(s(plus(z0, z1))), x1), ACTIVE(plus(s(z0), z1)))
ACTIVE(cons(times(0, z0), x1)) → c14(CONS(mark(0), x1), ACTIVE(times(0, z0)))
ACTIVE(cons(times(s(z0), z1), x1)) → c14(CONS(mark(plus(z1, times(z0, z1))), x1), ACTIVE(times(s(z0), z1)))
ACTIVE(cons(square(z0), x1)) → c14(CONS(mark(times(z0, z0)), x1), ACTIVE(square(z0)))
ACTIVE(cons(s(z0), x1)) → c14(CONS(s(active(z0)), x1), ACTIVE(s(z0)))
ACTIVE(cons(posrecip(z0), x1)) → c14(CONS(posrecip(active(z0)), x1), ACTIVE(posrecip(z0)))
ACTIVE(cons(negrecip(z0), x1)) → c14(CONS(negrecip(active(z0)), x1), ACTIVE(negrecip(z0)))
ACTIVE(cons(cons(z0, z1), x1)) → c14(CONS(cons(active(z0), z1), x1), ACTIVE(cons(z0, z1)))
ACTIVE(cons(rcons(z0, z1), x1)) → c14(CONS(rcons(active(z0), z1), x1), ACTIVE(rcons(z0, z1)))
ACTIVE(cons(rcons(z0, z1), x1)) → c14(CONS(rcons(z0, active(z1)), x1), ACTIVE(rcons(z0, z1)))
ACTIVE(cons(from(z0), x1)) → c14(CONS(from(active(z0)), x1), ACTIVE(from(z0)))
ACTIVE(cons(2ndspos(z0, z1), x1)) → c14(CONS(2ndspos(active(z0), z1), x1), ACTIVE(2ndspos(z0, z1)))
ACTIVE(cons(2ndspos(z0, z1), x1)) → c14(CONS(2ndspos(z0, active(z1)), x1), ACTIVE(2ndspos(z0, z1)))
ACTIVE(cons(2ndsneg(z0, z1), x1)) → c14(CONS(2ndsneg(active(z0), z1), x1), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(cons(2ndsneg(z0, z1), x1)) → c14(CONS(2ndsneg(z0, active(z1)), x1), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(cons(pi(z0), x1)) → c14(CONS(pi(active(z0)), x1), ACTIVE(pi(z0)))
ACTIVE(cons(plus(z0, z1), x1)) → c14(CONS(plus(active(z0), z1), x1), ACTIVE(plus(z0, z1)))
ACTIVE(cons(plus(z0, z1), x1)) → c14(CONS(plus(z0, active(z1)), x1), ACTIVE(plus(z0, z1)))
ACTIVE(cons(times(z0, z1), x1)) → c14(CONS(times(active(z0), z1), x1), ACTIVE(times(z0, z1)))
ACTIVE(cons(times(z0, z1), x1)) → c14(CONS(times(z0, active(z1)), x1), ACTIVE(times(z0, z1)))
ACTIVE(cons(square(z0), x1)) → c14(CONS(square(active(z0)), x1), ACTIVE(square(z0)))
K tuples:none
Defined Rule Symbols:

active, rcons, posrecip, 2ndsneg, negrecip, 2ndspos, s, cons, from, pi, plus, times, square, proper

Defined Pair Symbols:

ACTIVE, S, POSRECIP, NEGRECIP, CONS, RCONS, FROM, 2NDSPOS, 2NDSNEG, PI, PLUS, TIMES, SQUARE, PROPER, TOP

Compound Symbols:

c10, c15, c16, c17, c18, c19, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50, c51, c52, c53, c54, c55, c56, c58, c59, c60, c62, c64, c65, c66, c67, c68, c69, c70, c71, c72, c73, c, c5, c7, c9, c1, c11, c12, c13, c14

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

Use narrowing to replace ACTIVE(from(z0)) → c17(FROM(active(z0)), ACTIVE(z0)) by

ACTIVE(from(from(z0))) → c17(FROM(mark(cons(z0, from(s(z0))))), ACTIVE(from(z0)))
ACTIVE(from(2ndspos(0, z0))) → c17(FROM(mark(rnil)), ACTIVE(2ndspos(0, z0)))
ACTIVE(from(2ndspos(s(z0), cons(z1, cons(z2, z3))))) → c17(FROM(mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))), ACTIVE(2ndspos(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(from(2ndsneg(0, z0))) → c17(FROM(mark(rnil)), ACTIVE(2ndsneg(0, z0)))
ACTIVE(from(2ndsneg(s(z0), cons(z1, cons(z2, z3))))) → c17(FROM(mark(rcons(negrecip(z2), 2ndspos(z0, z3)))), ACTIVE(2ndsneg(s(z0), cons(z1, cons(z2, z3)))))
ACTIVE(from(pi(z0))) → c17(FROM(mark(2ndspos(z0, from(0)))), ACTIVE(pi(z0)))
ACTIVE(from(plus(0, z0))) → c17(FROM(mark(z0)), ACTIVE(plus(0, z0)))
ACTIVE(from(plus(s(z0), z1))) → c17(FROM(mark(s(plus(z0, z1)))), ACTIVE(plus(s(z0), z1)))
ACTIVE(from(times(0, z0))) → c17(FROM(mark(0)), ACTIVE(times(0, z0)))
ACTIVE(from(times(s(z0), z1))) → c17(FROM(mark(plus(z1, times(z0, z1)))), ACTIVE(times(s(z0), z1)))
ACTIVE(from(square(z0))) → c17(FROM(mark(times(z0, z0))), ACTIVE(square(z0)))
ACTIVE(from(s(z0))) → c17(FROM(s(active(z0))), ACTIVE(s(z0)))
ACTIVE(from(posrecip(z0))) → c17(FROM(posrecip(active(z0))), ACTIVE(posrecip(z0)))
ACTIVE(from(negrecip(z0))) → c17(FROM(negrecip(active(z0))), ACTIVE(negrecip(z0)))
ACTIVE(from(cons(z0, z1))) → c17(FROM(cons(active(z0), z1)), ACTIVE(cons(z0, z1)))
ACTIVE(from(rcons(z0, z1))) → c17(FROM(rcons(active(z0), z1)), ACTIVE(rcons(z0, z1)))
ACTIVE(from(rcons(z0, z1))) → c17(FROM(rcons(z0, active(z1))), ACTIVE(rcons(z0, z1)))
ACTIVE(from(from(z0))) → c17(FROM(from(active(z0))), ACTIVE(from(z0)))
ACTIVE(from(2ndspos(z0, z1))) → c17(FROM(2ndspos(active(z0), z1)), ACTIVE(2ndspos(z0, z1)))
ACTIVE(from(2ndspos(z0, z1))) → c17(FROM(2ndspos(z0, active(z1))), ACTIVE(2ndspos(z0, z1)))
ACTIVE(from(2ndsneg(z0, z1))) → c17(FROM(2ndsneg(active(z0), z1)), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(from(2ndsneg(z0, z1))) → c17(FROM(2ndsneg(z0, active(z1))), ACTIVE(2ndsneg(z0, z1)))
ACTIVE(from(pi(z0))) → c17(FROM(pi(active(z0))), ACTIVE(pi(z0)))
ACTIVE(from(plus(z0, z1))) → c17(FROM(plus(active(z0), z1)), ACTIVE(plus(z0, z1)))
ACTIVE(from(plus(z0, z1))) → c17(FROM(plus(z0, active(z1))), ACTIVE(plus(z0, z1)))
ACTIVE(from(times(z0, z1))) → c17(FROM(times(active(z0), z1)), ACTIVE(times(z0, z1)))
ACTIVE(from(times(z0, z1))) → c17(FROM(times(z0, active(z1))), ACTIVE(times(z0, z1)))
ACTIVE(from(square(z0))) → c17(FROM(square(active(z0))), ACTIVE(square(z0)))

### (20) Obligation:

Complexity Dependency Tuples Problem
Rules:

active(from(z0)) → mark(cons(z0, from(s(z0))))
active(2ndspos(0, z0)) → mark(rnil)
active(2ndspos(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(posrecip(z2), 2ndsneg(z0, z3)))
active(2ndsneg(0, z0)) → mark(rnil)
active(2ndsneg(s(z0), cons(z1, cons(z2, z3)))) → mark(rcons(negrecip(z2), 2ndspos(z0, z3)))
active(pi(