(0) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
average(s(x), y) → average(x, s(y))
average(x, s(s(s(y)))) → s(average(s(x), y))
average(0, 0) → 0
average(0, s(0)) → 0
average(0, s(s(0))) → s(0)
Q is empty.
(1) QTRSRRRProof (EQUIVALENT transformation)
Used ordering:
Polynomial interpretation [POLO]:
POL(0) = 0
POL(average(x1, x2)) = 1 + x1 + x2
POL(s(x1)) = x1
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
average(0, 0) → 0
average(0, s(0)) → 0
average(0, s(s(0))) → s(0)
(2) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
average(s(x), y) → average(x, s(y))
average(x, s(s(s(y)))) → s(average(s(x), y))
Q is empty.
(3) QTRSRRRProof (EQUIVALENT transformation)
Used ordering:
Polynomial interpretation [POLO]:
POL(average(x1, x2)) = x1 + x2
POL(s(x1)) = 1 + x1
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
average(x, s(s(s(y)))) → s(average(s(x), y))
(4) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
average(s(x), y) → average(x, s(y))
Q is empty.
(5) QTRSRRRProof (EQUIVALENT transformation)
Used ordering:
Recursive path order with status [RPO].
Quasi-Precedence:
average2 > s1
Status:
average2: [1,2]
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:
average(s(x), y) → average(x, s(y))
(6) Obligation:
Q restricted rewrite system:
R is empty.
Q is empty.
(7) RisEmptyProof (EQUIVALENT transformation)
The TRS R is empty. Hence, termination is trivially proven.
(8) TRUE