(0) Obligation:

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


The TRS R consists of the following rules:

h(x, c(y, z)) → h(c(s(y), x), z)
h(c(s(x), c(s(0), y)), z) → h(y, c(s(0), c(x, z)))

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, n^1).


The TRS R consists of the following rules:

h(x, c(y, z)) → h(c(s(y), x), z)
h(c(s(x), c(s(0), y)), z) → h(y, c(s(0), c(x, z)))

Rewrite Strategy: INNERMOST

(3) CpxTrsMatchBoundsTAProof (EQUIVALENT transformation)

A linear upper bound on the runtime complexity of the TRS R could be shown with a Match-Bound[TAB_LEFTLINEAR,TAB_NONLEFTLINEAR] (for contructor-based start-terms) of 2.

The compatible tree automaton used to show the Match-Boundedness (for constructor-based start-terms) is represented by:
final states : [1]
transitions:
c0(0, 0) → 0
s0(0) → 0
00() → 0
h0(0, 0) → 1
s1(0) → 3
c1(3, 0) → 2
h1(2, 0) → 1
01() → 6
s1(6) → 5
c1(0, 0) → 7
c1(5, 7) → 4
h1(0, 4) → 1
c1(3, 2) → 2
s2(5) → 9
c2(9, 0) → 8
h2(8, 7) → 1
c1(0, 4) → 7
h1(2, 4) → 1
s2(0) → 9
c2(9, 8) → 8
h2(8, 0) → 1
h2(8, 4) → 1
c1(5, 7) → 7
c2(9, 2) → 8
c1(3, 8) → 2
c1(0, 7) → 7
c1(5, 0) → 7
c1(5, 4) → 7
h1(8, 4) → 1

(4) BOUNDS(1, n^1)