(0) Obligation:

The Runtime Complexity (innermost) of the given CpxTRS could be proven to be BOUNDS(1, 1).


The TRS R consists of the following rules:

b(x, y) → c(a(c(y), a(0, x)))
a(y, x) → y
a(y, c(b(a(0, x), 0))) → b(a(c(b(0, y)), x), 0)

Rewrite Strategy: INNERMOST

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

The following defined symbols can occur below the 1th argument of a: a

Hence, the left-hand sides of the following rules are not basic-reachable and can be removed:
a(y, c(b(a(0, x), 0))) → b(a(c(b(0, y)), x), 0)

(2) Obligation:

The Runtime Complexity (innermost) of the given CpxTRS could be proven to be BOUNDS(1, 1).


The TRS R consists of the following rules:

a(y, x) → y
b(x, y) → c(a(c(y), a(0, x)))

Rewrite Strategy: INNERMOST

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

Converted Cpx (relative) TRS to CDT

(4) Obligation:

Complexity Dependency Tuples Problem
Rules:

a(z0, z1) → z0
b(z0, z1) → c(a(c(z1), a(0, z0)))
Tuples:

A(z0, z1) → c1
B(z0, z1) → c2(A(c(z1), a(0, z0)), A(0, z0))
S tuples:

A(z0, z1) → c1
B(z0, z1) → c2(A(c(z1), a(0, z0)), A(0, z0))
K tuples:none
Defined Rule Symbols:

a, b

Defined Pair Symbols:

A, B

Compound Symbols:

c1, c2

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

Removed 2 trailing nodes:

A(z0, z1) → c1
B(z0, z1) → c2(A(c(z1), a(0, z0)), A(0, z0))

(6) Obligation:

Complexity Dependency Tuples Problem
Rules:

a(z0, z1) → z0
b(z0, z1) → c(a(c(z1), a(0, z0)))
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:

a, b

Defined Pair Symbols:none

Compound Symbols:none

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

The set S is empty

(8) BOUNDS(1, 1)