YES(O(1), O(n^1)) 0.00/0.89 YES(O(1), O(n^1)) 0.00/0.92 0.00/0.92 0.00/0.92 0.00/0.92 0.00/0.92 0.00/0.92 Runtime Complexity (innermost) proof of /export/starexec/sandbox/benchmark/theBenchmark.xml.xml 0.00/0.92 0.00/0.92 0.00/0.92
0.00/0.92 0.00/0.92 0.00/0.92
0.00/0.92
0.00/0.92

(0) Obligation:

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

revconsapp(C(x1, x2), r) → revconsapp(x2, C(x1, r)) 0.00/0.92
deeprevapp(C(x1, x2), rest) → deeprevapp(x2, C(x1, rest)) 0.00/0.92
deeprevapp(V(n), rest) → revconsapp(rest, V(n)) 0.00/0.92
deeprevapp(N, rest) → rest 0.00/0.92
revconsapp(V(n), r) → r 0.00/0.92
revconsapp(N, r) → r 0.00/0.92
deeprev(C(x1, x2)) → deeprevapp(C(x1, x2), N) 0.00/0.92
deeprev(V(n)) → V(n) 0.00/0.92
deeprev(N) → N 0.00/0.92
second(V(n)) → N 0.00/0.92
second(C(x1, x2)) → x2 0.00/0.92
isVal(C(x1, x2)) → False 0.00/0.92
isVal(V(n)) → True 0.00/0.92
isVal(N) → False 0.00/0.92
isNotEmptyT(C(x1, x2)) → True 0.00/0.92
isNotEmptyT(V(n)) → False 0.00/0.92
isNotEmptyT(N) → False 0.00/0.92
isEmptyT(C(x1, x2)) → False 0.00/0.92
isEmptyT(V(n)) → False 0.00/0.92
isEmptyT(N) → True 0.00/0.92
first(V(n)) → N 0.00/0.92
first(C(x1, x2)) → x1 0.00/0.92
goal(x) → deeprev(x)

Rewrite Strategy: INNERMOST
0.00/0.92
0.00/0.92

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

Converted CpxTRS to CDT
0.00/0.92
0.00/0.92

(2) Obligation:

Complexity Dependency Tuples Problem
Rules:

revconsapp(C(z0, z1), z2) → revconsapp(z1, C(z0, z2)) 0.00/0.92
revconsapp(V(z0), z1) → z1 0.00/0.92
revconsapp(N, z0) → z0 0.00/0.92
deeprevapp(C(z0, z1), z2) → deeprevapp(z1, C(z0, z2)) 0.00/0.92
deeprevapp(V(z0), z1) → revconsapp(z1, V(z0)) 0.00/0.92
deeprevapp(N, z0) → z0 0.00/0.92
deeprev(C(z0, z1)) → deeprevapp(C(z0, z1), N) 0.00/0.92
deeprev(V(z0)) → V(z0) 0.00/0.92
deeprev(N) → N 0.00/0.92
second(V(z0)) → N 0.00/0.92
second(C(z0, z1)) → z1 0.00/0.92
isVal(C(z0, z1)) → False 0.00/0.92
isVal(V(z0)) → True 0.00/0.92
isVal(N) → False 0.00/0.92
isNotEmptyT(C(z0, z1)) → True 0.00/0.92
isNotEmptyT(V(z0)) → False 0.00/0.92
isNotEmptyT(N) → False 0.00/0.92
isEmptyT(C(z0, z1)) → False 0.00/0.92
isEmptyT(V(z0)) → False 0.00/0.92
isEmptyT(N) → True 0.00/0.92
first(V(z0)) → N 0.00/0.92
first(C(z0, z1)) → z0 0.00/0.92
goal(z0) → deeprev(z0)
Tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0))) 0.00/0.92
DEEPREV(C(z0, z1)) → c6(DEEPREVAPP(C(z0, z1), N)) 0.00/0.92
GOAL(z0) → c22(DEEPREV(z0))
S tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0))) 0.00/0.92
DEEPREV(C(z0, z1)) → c6(DEEPREVAPP(C(z0, z1), N)) 0.00/0.92
GOAL(z0) → c22(DEEPREV(z0))
K tuples:none
Defined Rule Symbols:

revconsapp, deeprevapp, deeprev, second, isVal, isNotEmptyT, isEmptyT, first, goal

Defined Pair Symbols:

REVCONSAPP, DEEPREVAPP, DEEPREV, GOAL

Compound Symbols:

c, c3, c4, c6, c22

0.00/0.92
0.00/0.92

(3) CdtLeafRemovalProof (ComplexityIfPolyImplication transformation)

Removed 2 leading nodes:

GOAL(z0) → c22(DEEPREV(z0)) 0.00/0.92
DEEPREV(C(z0, z1)) → c6(DEEPREVAPP(C(z0, z1), N))
0.00/0.92
0.00/0.92

(4) Obligation:

Complexity Dependency Tuples Problem
Rules:

revconsapp(C(z0, z1), z2) → revconsapp(z1, C(z0, z2)) 0.00/0.92
revconsapp(V(z0), z1) → z1 0.00/0.92
revconsapp(N, z0) → z0 0.00/0.92
deeprevapp(C(z0, z1), z2) → deeprevapp(z1, C(z0, z2)) 0.00/0.92
deeprevapp(V(z0), z1) → revconsapp(z1, V(z0)) 0.00/0.92
deeprevapp(N, z0) → z0 0.00/0.92
deeprev(C(z0, z1)) → deeprevapp(C(z0, z1), N) 0.00/0.92
deeprev(V(z0)) → V(z0) 0.00/0.92
deeprev(N) → N 0.00/0.92
second(V(z0)) → N 0.00/0.92
second(C(z0, z1)) → z1 0.00/0.92
isVal(C(z0, z1)) → False 0.00/0.92
isVal(V(z0)) → True 0.00/0.92
isVal(N) → False 0.00/0.92
isNotEmptyT(C(z0, z1)) → True 0.00/0.92
isNotEmptyT(V(z0)) → False 0.00/0.92
isNotEmptyT(N) → False 0.00/0.92
isEmptyT(C(z0, z1)) → False 0.00/0.92
isEmptyT(V(z0)) → False 0.00/0.92
isEmptyT(N) → True 0.00/0.92
first(V(z0)) → N 0.00/0.92
first(C(z0, z1)) → z0 0.00/0.92
goal(z0) → deeprev(z0)
Tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0)))
S tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0)))
K tuples:none
Defined Rule Symbols:

revconsapp, deeprevapp, deeprev, second, isVal, isNotEmptyT, isEmptyT, first, goal

Defined Pair Symbols:

REVCONSAPP, DEEPREVAPP

Compound Symbols:

c, c3, c4

0.00/0.92
0.00/0.92

(5) CdtPolyRedPairProof (UPPER BOUND (ADD(O(n^1))) transformation)

Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S.

DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0)))
We considered the (Usable) Rules:none
And the Tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0)))
The order we found is given by the following interpretation:
Polynomial interpretation : 0.00/0.92

POL(C(x1, x2)) = [2] + x2    0.00/0.92
POL(DEEPREVAPP(x1, x2)) = [3] + [4]x1 + [3]x2    0.00/0.92
POL(REVCONSAPP(x1, x2)) = [3] + [2]x1 + [2]x2    0.00/0.92
POL(V(x1)) = [4] + x1    0.00/0.92
POL(c(x1)) = x1    0.00/0.92
POL(c3(x1)) = x1    0.00/0.92
POL(c4(x1)) = x1   
0.00/0.92
0.00/0.92

(6) Obligation:

Complexity Dependency Tuples Problem
Rules:

revconsapp(C(z0, z1), z2) → revconsapp(z1, C(z0, z2)) 0.00/0.92
revconsapp(V(z0), z1) → z1 0.00/0.92
revconsapp(N, z0) → z0 0.00/0.92
deeprevapp(C(z0, z1), z2) → deeprevapp(z1, C(z0, z2)) 0.00/0.92
deeprevapp(V(z0), z1) → revconsapp(z1, V(z0)) 0.00/0.92
deeprevapp(N, z0) → z0 0.00/0.92
deeprev(C(z0, z1)) → deeprevapp(C(z0, z1), N) 0.00/0.92
deeprev(V(z0)) → V(z0) 0.00/0.92
deeprev(N) → N 0.00/0.92
second(V(z0)) → N 0.00/0.92
second(C(z0, z1)) → z1 0.00/0.92
isVal(C(z0, z1)) → False 0.00/0.92
isVal(V(z0)) → True 0.00/0.92
isVal(N) → False 0.00/0.92
isNotEmptyT(C(z0, z1)) → True 0.00/0.92
isNotEmptyT(V(z0)) → False 0.00/0.92
isNotEmptyT(N) → False 0.00/0.92
isEmptyT(C(z0, z1)) → False 0.00/0.92
isEmptyT(V(z0)) → False 0.00/0.92
isEmptyT(N) → True 0.00/0.92
first(V(z0)) → N 0.00/0.92
first(C(z0, z1)) → z0 0.00/0.92
goal(z0) → deeprev(z0)
Tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0)))
S tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2)))
K tuples:

DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0)))
Defined Rule Symbols:

revconsapp, deeprevapp, deeprev, second, isVal, isNotEmptyT, isEmptyT, first, goal

Defined Pair Symbols:

REVCONSAPP, DEEPREVAPP

Compound Symbols:

c, c3, c4

0.00/0.92
0.00/0.92

(7) CdtPolyRedPairProof (UPPER BOUND (ADD(O(n^1))) transformation)

Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S.

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2)))
We considered the (Usable) Rules:none
And the Tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0)))
The order we found is given by the following interpretation:
Polynomial interpretation : 0.00/0.92

POL(C(x1, x2)) = [1] + x1 + x2    0.00/0.92
POL(DEEPREVAPP(x1, x2)) = [5] + [5]x1 + [2]x2    0.00/0.92
POL(REVCONSAPP(x1, x2)) = [3] + [2]x1 + x2    0.00/0.92
POL(V(x1)) = [1] + x1    0.00/0.92
POL(c(x1)) = x1    0.00/0.92
POL(c3(x1)) = x1    0.00/0.92
POL(c4(x1)) = x1   
0.00/0.92
0.00/0.92

(8) Obligation:

Complexity Dependency Tuples Problem
Rules:

revconsapp(C(z0, z1), z2) → revconsapp(z1, C(z0, z2)) 0.00/0.92
revconsapp(V(z0), z1) → z1 0.00/0.92
revconsapp(N, z0) → z0 0.00/0.92
deeprevapp(C(z0, z1), z2) → deeprevapp(z1, C(z0, z2)) 0.00/0.92
deeprevapp(V(z0), z1) → revconsapp(z1, V(z0)) 0.00/0.92
deeprevapp(N, z0) → z0 0.00/0.92
deeprev(C(z0, z1)) → deeprevapp(C(z0, z1), N) 0.00/0.92
deeprev(V(z0)) → V(z0) 0.00/0.92
deeprev(N) → N 0.00/0.92
second(V(z0)) → N 0.00/0.92
second(C(z0, z1)) → z1 0.00/0.92
isVal(C(z0, z1)) → False 0.00/0.92
isVal(V(z0)) → True 0.00/0.92
isVal(N) → False 0.00/0.92
isNotEmptyT(C(z0, z1)) → True 0.00/0.92
isNotEmptyT(V(z0)) → False 0.00/0.92
isNotEmptyT(N) → False 0.00/0.92
isEmptyT(C(z0, z1)) → False 0.00/0.92
isEmptyT(V(z0)) → False 0.00/0.92
isEmptyT(N) → True 0.00/0.92
first(V(z0)) → N 0.00/0.92
first(C(z0, z1)) → z0 0.00/0.92
goal(z0) → deeprev(z0)
Tuples:

REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0)))
S tuples:none
K tuples:

DEEPREVAPP(C(z0, z1), z2) → c3(DEEPREVAPP(z1, C(z0, z2))) 0.00/0.92
DEEPREVAPP(V(z0), z1) → c4(REVCONSAPP(z1, V(z0))) 0.00/0.92
REVCONSAPP(C(z0, z1), z2) → c(REVCONSAPP(z1, C(z0, z2)))
Defined Rule Symbols:

revconsapp, deeprevapp, deeprev, second, isVal, isNotEmptyT, isEmptyT, first, goal

Defined Pair Symbols:

REVCONSAPP, DEEPREVAPP

Compound Symbols:

c, c3, c4

0.00/0.92
0.00/0.92

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

The set S is empty
0.00/0.92
0.00/0.92

(10) BOUNDS(O(1), O(1))

0.00/0.92
0.00/0.92
0.00/0.94 EOF