(0) Obligation:

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


The TRS R consists of the following rules:

zeroscons(0, n__zeros)
tail(cons(X, XS)) → activate(XS)
zerosn__zeros
activate(n__zeros) → zeros
activate(X) → X

Rewrite Strategy: FULL

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

Converted rc-obligation to irc-obligation.

As the TRS does not nest defined symbols, we have rc = irc.

(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:

zeroscons(0, n__zeros)
tail(cons(X, XS)) → activate(XS)
zerosn__zeros
activate(n__zeros) → zeros
activate(X) → X

Rewrite Strategy: INNERMOST

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

Converted Cpx (relative) TRS to CDT

(4) Obligation:

Complexity Dependency Tuples Problem
Rules:

zeroscons(0, n__zeros)
zerosn__zeros
tail(cons(z0, z1)) → activate(z1)
activate(n__zeros) → zeros
activate(z0) → z0
Tuples:

ZEROSc
ZEROSc1
TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
ACTIVATE(n__zeros) → c3(ZEROS)
ACTIVATE(z0) → c4
S tuples:

ZEROSc
ZEROSc1
TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
ACTIVATE(n__zeros) → c3(ZEROS)
ACTIVATE(z0) → c4
K tuples:none
Defined Rule Symbols:

zeros, tail, activate

Defined Pair Symbols:

ZEROS, TAIL, ACTIVATE

Compound Symbols:

c, c1, c2, c3, c4

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

Removed 5 trailing nodes:

TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
ACTIVATE(n__zeros) → c3(ZEROS)
ZEROSc
ZEROSc1
ACTIVATE(z0) → c4

(6) Obligation:

Complexity Dependency Tuples Problem
Rules:

zeroscons(0, n__zeros)
zerosn__zeros
tail(cons(z0, z1)) → activate(z1)
activate(n__zeros) → zeros
activate(z0) → z0
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:

zeros, tail, activate

Defined Pair Symbols:none

Compound Symbols:none

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

The set S is empty

(8) BOUNDS(1, 1)