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

plus(s(s(x)), y) → s(plus(x, s(y)))
plus(x, s(s(y))) → s(plus(s(x), y))
plus(s(0), y) → s(y)
plus(0, y) → y
ack(0, y) → s(y)
ack(s(x), 0) → ack(x, s(0))
ack(s(x), s(y)) → ack(x, plus(y, ack(s(x), y)))

Rewrite Strategy: INNERMOST


Renamed function symbols to avoid clashes with predefined symbol.


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


plus'(s'(s'(x)), y) → s'(plus'(x, s'(y)))
plus'(x, s'(s'(y))) → s'(plus'(s'(x), y))
plus'(s'(0'), y) → s'(y)
plus'(0', y) → y
ack'(0', y) → s'(y)
ack'(s'(x), 0') → ack'(x, s'(0'))
ack'(s'(x), s'(y)) → ack'(x, plus'(y, ack'(s'(x), y)))

Rewrite Strategy: INNERMOST


Infered types.


Rules:
plus'(s'(s'(x)), y) → s'(plus'(x, s'(y)))
plus'(x, s'(s'(y))) → s'(plus'(s'(x), y))
plus'(s'(0'), y) → s'(y)
plus'(0', y) → y
ack'(0', y) → s'(y)
ack'(s'(x), 0') → ack'(x, s'(0'))
ack'(s'(x), s'(y)) → ack'(x, plus'(y, ack'(s'(x), y)))

Types:
plus' :: s':0' → s':0' → s':0'
s' :: s':0' → s':0'
0' :: s':0'
ack' :: s':0' → s':0' → s':0'
_hole_s':0'1 :: s':0'
_gen_s':0'2 :: Nat → s':0'


Heuristically decided to analyse the following defined symbols:
plus', ack'

They will be analysed ascendingly in the following order:
plus' < ack'


Rules:
plus'(s'(s'(x)), y) → s'(plus'(x, s'(y)))
plus'(x, s'(s'(y))) → s'(plus'(s'(x), y))
plus'(s'(0'), y) → s'(y)
plus'(0', y) → y
ack'(0', y) → s'(y)
ack'(s'(x), 0') → ack'(x, s'(0'))
ack'(s'(x), s'(y)) → ack'(x, plus'(y, ack'(s'(x), y)))

Types:
plus' :: s':0' → s':0' → s':0'
s' :: s':0' → s':0'
0' :: s':0'
ack' :: s':0' → s':0' → s':0'
_hole_s':0'1 :: s':0'
_gen_s':0'2 :: Nat → s':0'

Generator Equations:
_gen_s':0'2(0) ⇔ 0'
_gen_s':0'2(+(x, 1)) ⇔ s'(_gen_s':0'2(x))

The following defined symbols remain to be analysed:
plus', ack'

They will be analysed ascendingly in the following order:
plus' < ack'


Could not prove a rewrite lemma for the defined symbol plus'.

The following conjecture could not be proven:

plus'(_gen_s':0'2(+(1, *(2, _n4))), _gen_s':0'2(b)) →? _gen_s':0'2(+(+(1, *(2, _n4)), b))


Rules:
plus'(s'(s'(x)), y) → s'(plus'(x, s'(y)))
plus'(x, s'(s'(y))) → s'(plus'(s'(x), y))
plus'(s'(0'), y) → s'(y)
plus'(0', y) → y
ack'(0', y) → s'(y)
ack'(s'(x), 0') → ack'(x, s'(0'))
ack'(s'(x), s'(y)) → ack'(x, plus'(y, ack'(s'(x), y)))

Types:
plus' :: s':0' → s':0' → s':0'
s' :: s':0' → s':0'
0' :: s':0'
ack' :: s':0' → s':0' → s':0'
_hole_s':0'1 :: s':0'
_gen_s':0'2 :: Nat → s':0'

Generator Equations:
_gen_s':0'2(0) ⇔ 0'
_gen_s':0'2(+(x, 1)) ⇔ s'(_gen_s':0'2(x))

The following defined symbols remain to be analysed:
ack'


Proved the following rewrite lemma:
ack'(_gen_s':0'2(1), _gen_s':0'2(+(1, _n1908))) → _*3, rt ∈ Ω(n1908)

Induction Base:
ack'(_gen_s':0'2(1), _gen_s':0'2(+(1, 0)))

Induction Step:
ack'(_gen_s':0'2(1), _gen_s':0'2(+(1, +(_$n1909, 1)))) →RΩ(1)
ack'(_gen_s':0'2(0), plus'(_gen_s':0'2(+(1, _$n1909)), ack'(s'(_gen_s':0'2(0)), _gen_s':0'2(+(1, _$n1909))))) →IH
ack'(_gen_s':0'2(0), plus'(_gen_s':0'2(+(1, _$n1909)), _*3))

We have rt ∈ Ω(n) and sz ∈ O(n). Thus, we have ircR ∈ Ω(n).


Rules:
plus'(s'(s'(x)), y) → s'(plus'(x, s'(y)))
plus'(x, s'(s'(y))) → s'(plus'(s'(x), y))
plus'(s'(0'), y) → s'(y)
plus'(0', y) → y
ack'(0', y) → s'(y)
ack'(s'(x), 0') → ack'(x, s'(0'))
ack'(s'(x), s'(y)) → ack'(x, plus'(y, ack'(s'(x), y)))

Types:
plus' :: s':0' → s':0' → s':0'
s' :: s':0' → s':0'
0' :: s':0'
ack' :: s':0' → s':0' → s':0'
_hole_s':0'1 :: s':0'
_gen_s':0'2 :: Nat → s':0'

Lemmas:
ack'(_gen_s':0'2(1), _gen_s':0'2(+(1, _n1908))) → _*3, rt ∈ Ω(n1908)

Generator Equations:
_gen_s':0'2(0) ⇔ 0'
_gen_s':0'2(+(x, 1)) ⇔ s'(_gen_s':0'2(x))

No more defined symbols left to analyse.


The lowerbound Ω(n) was proven with the following lemma:
ack'(_gen_s':0'2(1), _gen_s':0'2(+(1, _n1908))) → _*3, rt ∈ Ω(n1908)