The rewrite relation of the following TRS is considered.
app(app(F,app(app(F,f),x)),x) | → | app(app(F,app(G,app(app(F,f),x))),app(f,x)) | (1) |
We uncurry the binary symbol app in combination with the following symbol map which also determines the applicative arities of these symbols.
F | is mapped to | F, | F1(x1), | F2(x1, x2) |
G | is mapped to | G, | G1(x1) |
F2(F2(f,x),x) | → | F2(G1(F2(f,x)),app(f,x)) | (5) |
app(F,y1) | → | F1(y1) | (2) |
app(F1(x0),y1) | → | F2(x0,y1) | (3) |
app(G,y1) | → | G1(y1) | (4) |
F2#(F2(f,x),x) | → | F2#(G1(F2(f,x)),app(f,x)) | (6) |
F2#(F2(f,x),x) | → | app#(f,x) | (7) |
app#(F1(x0),y1) | → | F2#(x0,y1) | (8) |
The dependency pairs are split into 1 component.
F2#(F2(f,x),x) | → | app#(f,x) | (7) |
app#(F1(x0),y1) | → | F2#(x0,y1) | (8) |
[F2(x1, x2)] | = | 1 · x1 + 1 · x2 |
[F1(x1)] | = | 1 · x1 |
[app#(x1, x2)] | = | 1 · x1 + 1 · x2 |
[F2#(x1, x2)] | = | 1 · x1 + 1 · x2 |
Using size-change termination in combination with the subterm criterion one obtains the following initial size-change graphs.
app#(F1(x0),y1) | → | F2#(x0,y1) | (8) |
1 | > | 1 | |
2 | ≥ | 2 | |
F2#(F2(f,x),x) | → | app#(f,x) | (7) |
1 | > | 1 | |
1 | > | 2 | |
2 | ≥ | 2 |
As there is no critical graph in the transitive closure, there are no infinite chains.