The rewrite relation of the following TRS is considered.
| minus(x,0) | → | x | (1) |
| minus(s(x),s(y)) | → | minus(x,y) | (2) |
| quot(0,s(y)) | → | 0 | (3) |
| quot(s(x),s(y)) | → | s(quot(minus(x,y),s(y))) | (4) |
| plus(0,y) | → | y | (5) |
| plus(s(x),y) | → | s(plus(x,y)) | (6) |
| plus(minus(x,s(0)),minus(y,s(s(z)))) | → | plus(minus(y,s(s(z))),minus(x,s(0))) | (7) |
| plus(plus(x,s(0)),plus(y,s(s(z)))) | → | plus(plus(y,s(s(z))),plus(x,s(0))) | (8) |
| minus#(s(x),s(y)) | → | minus#(x,y) | (9) |
| quot#(s(x),s(y)) | → | quot#(minus(x,y),s(y)) | (10) |
| quot#(s(x),s(y)) | → | minus#(x,y) | (11) |
| plus#(s(x),y) | → | plus#(x,y) | (12) |
| plus#(minus(x,s(0)),minus(y,s(s(z)))) | → | plus#(minus(y,s(s(z))),minus(x,s(0))) | (13) |
| plus#(plus(x,s(0)),plus(y,s(s(z)))) | → | plus#(plus(y,s(s(z))),plus(x,s(0))) | (14) |
The dependency pairs are split into 3 components.
| quot#(s(x),s(y)) | → | quot#(minus(x,y),s(y)) | (10) |
| prec(quot#) | = | 1 | stat(quot#) | = | lex | |
| prec(s) | = | 0 | stat(s) | = | lex | |
| prec(0) | = | 2 | stat(0) | = | lex |
| π(quot#) | = | [2,1] |
| π(s) | = | [1] |
| π(minus) | = | 1 |
| π(0) | = | [] |
| minus(x,0) | → | x | (1) |
| minus(s(x),s(y)) | → | minus(x,y) | (2) |
| quot#(s(x),s(y)) | → | quot#(minus(x,y),s(y)) | (10) |
There are no pairs anymore.
| minus#(s(x),s(y)) | → | minus#(x,y) | (9) |
| [s(x1)] | = | 1 · x1 |
| [minus#(x1, x2)] | = | 1 · x1 + 1 · x2 |
Using size-change termination in combination with the subterm criterion one obtains the following initial size-change graphs.
| minus#(s(x),s(y)) | → | minus#(x,y) | (9) |
| 1 | > | 1 | |
| 2 | > | 2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
| plus#(minus(x,s(0)),minus(y,s(s(z)))) | → | plus#(minus(y,s(s(z))),minus(x,s(0))) | (13) |
| plus#(s(x),y) | → | plus#(x,y) | (12) |
| plus#(plus(x,s(0)),plus(y,s(s(z)))) | → | plus#(plus(y,s(s(z))),plus(x,s(0))) | (14) |
| [plus(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [0] | = | 0 |
| [s(x1)] | = | 1 · x1 |
| [minus(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [plus#(x1, x2)] | = | 1 · x1 + 1 · x2 |
| plus(0,y) | → | y | (5) |
| plus(s(x),y) | → | s(plus(x,y)) | (6) |
| plus(plus(x,s(0)),plus(y,s(s(z)))) | → | plus(plus(y,s(s(z))),plus(x,s(0))) | (8) |
| plus(minus(x,s(0)),minus(y,s(s(z)))) | → | plus(minus(y,s(s(z))),minus(x,s(0))) | (7) |
| minus(s(x),s(y)) | → | minus(x,y) | (2) |
| minus(x,0) | → | x | (1) |
| [plus(x1, x2)] | = | 2 · x1 + 2 · x2 |
| [0] | = | 0 |
| [s(x1)] | = | 1 · x1 |
| [minus(x1, x2)] | = | 1 + 1 · x1 + 1 · x2 |
| [plus#(x1, x2)] | = | 1 · x1 + 1 · x2 |
| minus(x,0) | → | x | (1) |
| [plus(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [0] | = | 2 |
| [s(x1)] | = | 1 · x1 |
| [minus(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [plus#(x1, x2)] | = | 1 · x1 + 1 · x2 |
| plus(0,y) | → | y | (5) |
| [plus(x1, x2)] | = | 1 + 2 · x1 + 2 · x2 |
| [s(x1)] | = | 1 + 1 · x1 |
| [0] | = | 0 |
| [minus(x1, x2)] | = | 2 · x1 + 1 · x2 |
| [plus#(x1, x2)] | = | 1 · x1 + 1 · x2 |
| plus#(s(x),y) | → | plus#(x,y) | (12) |
| plus(s(x),y) | → | s(plus(x,y)) | (6) |
| minus(s(x),s(y)) | → | minus(x,y) | (2) |
The dependency pairs are split into 0 components.