The rewrite relation of the following TRS is considered.
| plus(0,x) | → | x | (1) |
| plus(s(x),y) | → | s(plus(p(s(x)),y)) | (2) |
| times(0,y) | → | 0 | (3) |
| times(s(x),y) | → | plus(y,times(p(s(x)),y)) | (4) |
| exp(x,0) | → | s(0) | (5) |
| exp(x,s(y)) | → | times(x,exp(x,y)) | (6) |
| p(s(0)) | → | 0 | (7) |
| p(s(s(x))) | → | s(p(s(x))) | (8) |
| tower(x,y) | → | towerIter(x,y,s(0)) | (9) |
| towerIter(0,y,z) | → | z | (10) |
| towerIter(s(x),y,z) | → | towerIter(p(s(x)),y,exp(y,z)) | (11) |
| plus#(s(x),y) | → | p#(s(x)) | (12) |
| towerIter#(s(x),y,z) | → | towerIter#(p(s(x)),y,exp(y,z)) | (13) |
| p#(s(s(x))) | → | p#(s(x)) | (14) |
| times#(s(x),y) | → | times#(p(s(x)),y) | (15) |
| times#(s(x),y) | → | p#(s(x)) | (16) |
| towerIter#(s(x),y,z) | → | p#(s(x)) | (17) |
| times#(s(x),y) | → | plus#(y,times(p(s(x)),y)) | (18) |
| tower#(x,y) | → | towerIter#(x,y,s(0)) | (19) |
| exp#(x,s(y)) | → | times#(x,exp(x,y)) | (20) |
| plus#(s(x),y) | → | plus#(p(s(x)),y) | (21) |
| towerIter#(s(x),y,z) | → | exp#(y,z) | (22) |
| exp#(x,s(y)) | → | exp#(x,y) | (23) |
The dependency pairs are split into 5 components.
| towerIter#(s(x),y,z) | → | towerIter#(p(s(x)),y,exp(y,z)) | (13) |
| [tower(x1, x2)] | = |
|
|||||||||||||||||||
| [s(x1)] | = |
|
|||||||||||||||||||
| [plus#(x1, x2)] | = |
|
|||||||||||||||||||
| [towerIter(x1, x2, x3)] | = |
|
|||||||||||||||||||
| [exp#(x1, x2)] | = |
|
|||||||||||||||||||
| [p#(x1)] | = |
|
|||||||||||||||||||
| [p(x1)] | = |
|
|||||||||||||||||||
| [times#(x1, x2)] | = |
|
|||||||||||||||||||
| [0] | = |
|
|||||||||||||||||||
| [times(x1, x2)] | = |
x1 +
|
|||||||||||||||||||
| [tower#(x1, x2)] | = |
|
|||||||||||||||||||
| [towerIter#(x1, x2, x3)] | = |
x1 +
|
|||||||||||||||||||
| [plus(x1, x2)] | = |
|
|||||||||||||||||||
| [exp(x1, x2)] | = |
|
| p(s(s(x))) | → | s(p(s(x))) | (8) |
| p(s(0)) | → | 0 | (7) |
| towerIter#(s(x),y,z) | → | towerIter#(p(s(x)),y,exp(y,z)) | (13) |
The dependency pairs are split into 0 components.
| exp#(x,s(y)) | → | exp#(x,y) | (23) |
| [tower(x1, x2)] | = | 0 |
| [s(x1)] | = | x1 + 2 |
| [plus#(x1, x2)] | = | 0 |
| [towerIter(x1, x2, x3)] | = | 0 |
| [exp#(x1, x2)] | = | x2 + 0 |
| [p#(x1)] | = | 0 |
| [p(x1)] | = | 1 |
| [times#(x1, x2)] | = | 0 |
| [0] | = | 5855 |
| [times(x1, x2)] | = | x1 + x2 + 3 |
| [tower#(x1, x2)] | = | 0 |
| [towerIter#(x1, x2, x3)] | = | 0 |
| [plus(x1, x2)] | = | x1 + x2 + 2 |
| [exp(x1, x2)] | = | x1 + x2 + 1 |
| exp#(x,s(y)) | → | exp#(x,y) | (23) |
The dependency pairs are split into 0 components.
| times#(s(x),y) | → | times#(p(s(x)),y) | (15) |
| [tower(x1, x2)] | = |
|
|||||||||||||||||||
| [s(x1)] | = |
|
|||||||||||||||||||
| [plus#(x1, x2)] | = |
|
|||||||||||||||||||
| [towerIter(x1, x2, x3)] | = |
|
|||||||||||||||||||
| [exp#(x1, x2)] | = |
|
|||||||||||||||||||
| [p#(x1)] | = |
|
|||||||||||||||||||
| [p(x1)] | = |
|
|||||||||||||||||||
| [times#(x1, x2)] | = |
|
|||||||||||||||||||
| [0] | = |
|
|||||||||||||||||||
| [times(x1, x2)] | = |
x1 +
|
|||||||||||||||||||
| [tower#(x1, x2)] | = |
|
|||||||||||||||||||
| [towerIter#(x1, x2, x3)] | = |
x1 +
|
|||||||||||||||||||
| [plus(x1, x2)] | = |
|
|||||||||||||||||||
| [exp(x1, x2)] | = |
|
| p(s(s(x))) | → | s(p(s(x))) | (8) |
| p(s(0)) | → | 0 | (7) |
| times#(s(x),y) | → | times#(p(s(x)),y) | (15) |
The dependency pairs are split into 0 components.
| plus#(s(x),y) | → | plus#(p(s(x)),y) | (21) |
| [tower(x1, x2)] | = |
|
|||||||||||||||||||
| [s(x1)] | = |
|
|||||||||||||||||||
| [plus#(x1, x2)] | = |
|
|||||||||||||||||||
| [towerIter(x1, x2, x3)] | = |
|
|||||||||||||||||||
| [exp#(x1, x2)] | = |
|
|||||||||||||||||||
| [p#(x1)] | = |
|
|||||||||||||||||||
| [p(x1)] | = |
|
|||||||||||||||||||
| [times#(x1, x2)] | = |
|
|||||||||||||||||||
| [0] | = |
|
|||||||||||||||||||
| [times(x1, x2)] | = |
x1 +
|
|||||||||||||||||||
| [tower#(x1, x2)] | = |
|
|||||||||||||||||||
| [towerIter#(x1, x2, x3)] | = |
x1 +
|
|||||||||||||||||||
| [plus(x1, x2)] | = |
|
|||||||||||||||||||
| [exp(x1, x2)] | = |
|
| p(s(s(x))) | → | s(p(s(x))) | (8) |
| p(s(0)) | → | 0 | (7) |
| plus#(s(x),y) | → | plus#(p(s(x)),y) | (21) |
The dependency pairs are split into 0 components.
| p#(s(s(x))) | → | p#(s(x)) | (14) |
| [tower(x1, x2)] | = | 0 |
| [s(x1)] | = | x1 + 2 |
| [plus#(x1, x2)] | = | 0 |
| [towerIter(x1, x2, x3)] | = | 0 |
| [exp#(x1, x2)] | = | 0 |
| [p#(x1)] | = | x1 + 0 |
| [p(x1)] | = | 2 |
| [times#(x1, x2)] | = | 0 |
| [0] | = | 9728 |
| [times(x1, x2)] | = | x1 + x2 + 3 |
| [tower#(x1, x2)] | = | 0 |
| [towerIter#(x1, x2, x3)] | = | 0 |
| [plus(x1, x2)] | = | x1 + x2 + 1 |
| [exp(x1, x2)] | = | x1 + x2 + 1 |
| p#(s(s(x))) | → | p#(s(x)) | (14) |
The dependency pairs are split into 0 components.