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

plus(x, 0) → x
plus(0, y) → y
plus(s(x), y) → s(plus(x, y))
times(0, y) → 0
times(s(0), y) → y
times(s(x), y) → plus(y, times(x, y))
div(0, y) → 0
div(x, y) → quot(x, y, y)
quot(0, s(y), z) → 0
quot(s(x), s(y), z) → quot(x, y, z)
quot(x, 0, s(z)) → s(div(x, s(z)))
div(div(x, y), z) → div(x, times(y, z))

Rewrite Strategy: INNERMOST


Renamed function symbols to avoid clashes with predefined symbol.


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


plus'(x, 0') → x
plus'(0', y) → y
plus'(s'(x), y) → s'(plus'(x, y))
times'(0', y) → 0'
times'(s'(0'), y) → y
times'(s'(x), y) → plus'(y, times'(x, y))
div'(0', y) → 0'
div'(x, y) → quot'(x, y, y)
quot'(0', s'(y), z) → 0'
quot'(s'(x), s'(y), z) → quot'(x, y, z)
quot'(x, 0', s'(z)) → s'(div'(x, s'(z)))
div'(div'(x, y), z) → div'(x, times'(y, z))

Rewrite Strategy: INNERMOST


Infered types.


Rules:
plus'(x, 0') → x
plus'(0', y) → y
plus'(s'(x), y) → s'(plus'(x, y))
times'(0', y) → 0'
times'(s'(0'), y) → y
times'(s'(x), y) → plus'(y, times'(x, y))
div'(0', y) → 0'
div'(x, y) → quot'(x, y, y)
quot'(0', s'(y), z) → 0'
quot'(s'(x), s'(y), z) → quot'(x, y, z)
quot'(x, 0', s'(z)) → s'(div'(x, s'(z)))
div'(div'(x, y), z) → div'(x, times'(y, z))

Types:
plus' :: 0':s' → 0':s' → 0':s'
0' :: 0':s'
s' :: 0':s' → 0':s'
times' :: 0':s' → 0':s' → 0':s'
div' :: 0':s' → 0':s' → 0':s'
quot' :: 0':s' → 0':s' → 0':s' → 0':s'
_hole_0':s'1 :: 0':s'
_gen_0':s'2 :: Nat → 0':s'


Heuristically decided to analyse the following defined symbols:
plus', times', div', quot'

They will be analysed ascendingly in the following order:
plus' < times'
times' < div'
div' = quot'


Rules:
plus'(x, 0') → x
plus'(0', y) → y
plus'(s'(x), y) → s'(plus'(x, y))
times'(0', y) → 0'
times'(s'(0'), y) → y
times'(s'(x), y) → plus'(y, times'(x, y))
div'(0', y) → 0'
div'(x, y) → quot'(x, y, y)
quot'(0', s'(y), z) → 0'
quot'(s'(x), s'(y), z) → quot'(x, y, z)
quot'(x, 0', s'(z)) → s'(div'(x, s'(z)))
div'(div'(x, y), z) → div'(x, times'(y, z))

Types:
plus' :: 0':s' → 0':s' → 0':s'
0' :: 0':s'
s' :: 0':s' → 0':s'
times' :: 0':s' → 0':s' → 0':s'
div' :: 0':s' → 0':s' → 0':s'
quot' :: 0':s' → 0':s' → 0':s' → 0':s'
_hole_0':s'1 :: 0':s'
_gen_0':s'2 :: Nat → 0':s'

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

The following defined symbols remain to be analysed:
plus', times', div', quot'

They will be analysed ascendingly in the following order:
plus' < times'
times' < div'
div' = quot'


Proved the following rewrite lemma:
plus'(_gen_0':s'2(_n4), _gen_0':s'2(b)) → _gen_0':s'2(+(_n4, b)), rt ∈ Ω(1 + n4)

Induction Base:
plus'(_gen_0':s'2(0), _gen_0':s'2(b)) →RΩ(1)
_gen_0':s'2(b)

Induction Step:
plus'(_gen_0':s'2(+(_$n5, 1)), _gen_0':s'2(_b149)) →RΩ(1)
s'(plus'(_gen_0':s'2(_$n5), _gen_0':s'2(_b149))) →IH
s'(_gen_0':s'2(+(_$n5, _b149)))

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


Rules:
plus'(x, 0') → x
plus'(0', y) → y
plus'(s'(x), y) → s'(plus'(x, y))
times'(0', y) → 0'
times'(s'(0'), y) → y
times'(s'(x), y) → plus'(y, times'(x, y))
div'(0', y) → 0'
div'(x, y) → quot'(x, y, y)
quot'(0', s'(y), z) → 0'
quot'(s'(x), s'(y), z) → quot'(x, y, z)
quot'(x, 0', s'(z)) → s'(div'(x, s'(z)))
div'(div'(x, y), z) → div'(x, times'(y, z))

Types:
plus' :: 0':s' → 0':s' → 0':s'
0' :: 0':s'
s' :: 0':s' → 0':s'
times' :: 0':s' → 0':s' → 0':s'
div' :: 0':s' → 0':s' → 0':s'
quot' :: 0':s' → 0':s' → 0':s' → 0':s'
_hole_0':s'1 :: 0':s'
_gen_0':s'2 :: Nat → 0':s'

Lemmas:
plus'(_gen_0':s'2(_n4), _gen_0':s'2(b)) → _gen_0':s'2(+(_n4, b)), rt ∈ Ω(1 + n4)

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

The following defined symbols remain to be analysed:
times', div', quot'

They will be analysed ascendingly in the following order:
times' < div'
div' = quot'


Proved the following rewrite lemma:
times'(_gen_0':s'2(_n876), _gen_0':s'2(b)) → _gen_0':s'2(*(_n876, b)), rt ∈ Ω(1 + b1199·n876 + n876)

Induction Base:
times'(_gen_0':s'2(0), _gen_0':s'2(b)) →RΩ(1)
0'

Induction Step:
times'(_gen_0':s'2(+(_$n877, 1)), _gen_0':s'2(_b1199)) →RΩ(1)
plus'(_gen_0':s'2(_b1199), times'(_gen_0':s'2(_$n877), _gen_0':s'2(_b1199))) →IH
plus'(_gen_0':s'2(_b1199), _gen_0':s'2(*(_$n877, _b1199))) →LΩ(1 + b1199)
_gen_0':s'2(+(_b1199, *(_$n877, _b1199)))

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


Rules:
plus'(x, 0') → x
plus'(0', y) → y
plus'(s'(x), y) → s'(plus'(x, y))
times'(0', y) → 0'
times'(s'(0'), y) → y
times'(s'(x), y) → plus'(y, times'(x, y))
div'(0', y) → 0'
div'(x, y) → quot'(x, y, y)
quot'(0', s'(y), z) → 0'
quot'(s'(x), s'(y), z) → quot'(x, y, z)
quot'(x, 0', s'(z)) → s'(div'(x, s'(z)))
div'(div'(x, y), z) → div'(x, times'(y, z))

Types:
plus' :: 0':s' → 0':s' → 0':s'
0' :: 0':s'
s' :: 0':s' → 0':s'
times' :: 0':s' → 0':s' → 0':s'
div' :: 0':s' → 0':s' → 0':s'
quot' :: 0':s' → 0':s' → 0':s' → 0':s'
_hole_0':s'1 :: 0':s'
_gen_0':s'2 :: Nat → 0':s'

Lemmas:
plus'(_gen_0':s'2(_n4), _gen_0':s'2(b)) → _gen_0':s'2(+(_n4, b)), rt ∈ Ω(1 + n4)
times'(_gen_0':s'2(_n876), _gen_0':s'2(b)) → _gen_0':s'2(*(_n876, b)), rt ∈ Ω(1 + b1199·n876 + n876)

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

The following defined symbols remain to be analysed:
quot', div'

They will be analysed ascendingly in the following order:
div' = quot'


Proved the following rewrite lemma:
quot'(_gen_0':s'2(_n2249), _gen_0':s'2(+(1, _n2249)), _gen_0':s'2(c)) → _gen_0':s'2(0), rt ∈ Ω(1 + n2249)

Induction Base:
quot'(_gen_0':s'2(0), _gen_0':s'2(+(1, 0)), _gen_0':s'2(c)) →RΩ(1)
0'

Induction Step:
quot'(_gen_0':s'2(+(_$n2250, 1)), _gen_0':s'2(+(1, +(_$n2250, 1))), _gen_0':s'2(_c2490)) →RΩ(1)
quot'(_gen_0':s'2(_$n2250), _gen_0':s'2(+(1, _$n2250)), _gen_0':s'2(_c2490)) →IH
_gen_0':s'2(0)

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


Rules:
plus'(x, 0') → x
plus'(0', y) → y
plus'(s'(x), y) → s'(plus'(x, y))
times'(0', y) → 0'
times'(s'(0'), y) → y
times'(s'(x), y) → plus'(y, times'(x, y))
div'(0', y) → 0'
div'(x, y) → quot'(x, y, y)
quot'(0', s'(y), z) → 0'
quot'(s'(x), s'(y), z) → quot'(x, y, z)
quot'(x, 0', s'(z)) → s'(div'(x, s'(z)))
div'(div'(x, y), z) → div'(x, times'(y, z))

Types:
plus' :: 0':s' → 0':s' → 0':s'
0' :: 0':s'
s' :: 0':s' → 0':s'
times' :: 0':s' → 0':s' → 0':s'
div' :: 0':s' → 0':s' → 0':s'
quot' :: 0':s' → 0':s' → 0':s' → 0':s'
_hole_0':s'1 :: 0':s'
_gen_0':s'2 :: Nat → 0':s'

Lemmas:
plus'(_gen_0':s'2(_n4), _gen_0':s'2(b)) → _gen_0':s'2(+(_n4, b)), rt ∈ Ω(1 + n4)
times'(_gen_0':s'2(_n876), _gen_0':s'2(b)) → _gen_0':s'2(*(_n876, b)), rt ∈ Ω(1 + b1199·n876 + n876)
quot'(_gen_0':s'2(_n2249), _gen_0':s'2(+(1, _n2249)), _gen_0':s'2(c)) → _gen_0':s'2(0), rt ∈ Ω(1 + n2249)

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

The following defined symbols remain to be analysed:
div'

They will be analysed ascendingly in the following order:
div' = quot'


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


Rules:
plus'(x, 0') → x
plus'(0', y) → y
plus'(s'(x), y) → s'(plus'(x, y))
times'(0', y) → 0'
times'(s'(0'), y) → y
times'(s'(x), y) → plus'(y, times'(x, y))
div'(0', y) → 0'
div'(x, y) → quot'(x, y, y)
quot'(0', s'(y), z) → 0'
quot'(s'(x), s'(y), z) → quot'(x, y, z)
quot'(x, 0', s'(z)) → s'(div'(x, s'(z)))
div'(div'(x, y), z) → div'(x, times'(y, z))

Types:
plus' :: 0':s' → 0':s' → 0':s'
0' :: 0':s'
s' :: 0':s' → 0':s'
times' :: 0':s' → 0':s' → 0':s'
div' :: 0':s' → 0':s' → 0':s'
quot' :: 0':s' → 0':s' → 0':s' → 0':s'
_hole_0':s'1 :: 0':s'
_gen_0':s'2 :: Nat → 0':s'

Lemmas:
plus'(_gen_0':s'2(_n4), _gen_0':s'2(b)) → _gen_0':s'2(+(_n4, b)), rt ∈ Ω(1 + n4)
times'(_gen_0':s'2(_n876), _gen_0':s'2(b)) → _gen_0':s'2(*(_n876, b)), rt ∈ Ω(1 + b1199·n876 + n876)
quot'(_gen_0':s'2(_n2249), _gen_0':s'2(+(1, _n2249)), _gen_0':s'2(c)) → _gen_0':s'2(0), rt ∈ Ω(1 + n2249)

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

No more defined symbols left to analyse.


The lowerbound Ω(n2) was proven with the following lemma:
times'(_gen_0':s'2(_n876), _gen_0':s'2(b)) → _gen_0':s'2(*(_n876, b)), rt ∈ Ω(1 + b1199·n876 + n876)