The rewrite relation of the following equational TRS is considered.
ac1(a,ac2(b,c)) | → | ac1(b,f(ac2(a,c))) | (1) |
ac2(a,ac1(b,c)) | → | ac2(b,f(ac1(a,c))) | (2) |
Associative symbols: ac1, ac2
Commutative symbols: ac1, ac2
The following set of (strict) dependency pairs is constructed for the TRS.
ac2#(a,ac1(b,c)) | → | ac1#(a,c) | (13) |
ac1#(a,ac2(b,c)) | → | ac2#(a,c) | (14) |
ac2#(a,ac1(b,c)) | → | ac2#(b,f(ac1(a,c))) | (15) |
ac1#(a,ac2(b,c)) | → | ac1#(b,f(ac2(a,c))) | (16) |
The dependency pairs are split into 1 component.
ac2#(x,ac2(y,z)) | → | ac2#(ac2(x,y),z) | (12) |
ac1#(a,ac2(b,c)) | → | ac1#(b,f(ac2(a,c))) | (16) |
ac2#(a,ac1(b,c)) | → | ac2#(b,f(ac1(a,c))) | (15) |
ac2#(x,y) | → | ac2#(y,x) | (11) |
ac1#(a,ac2(b,c)) | → | ac2#(a,c) | (14) |
ac1#(x,ac1(y,z)) | → | ac1#(ac1(x,y),z) | (7) |
ac2#(x,ac2(y,z)) | → | ac2#(x,y) | (10) |
ac1#(x,y) | → | ac1#(y,x) | (9) |
ac1#(x,ac1(y,z)) | → | ac1#(x,y) | (8) |
ac2#(a,ac1(b,c)) | → | ac1#(a,c) | (13) |
[a] | = | 0 |
[ac1#(x1, x2)] | = | 2 |
[b] | = | 11292 |
[c] | = | 1 |
[f(x1)] | = | 3 |
[ac1(x1, x2)] | = | x1 + x2 + 3 |
[ac2(x1, x2)] | = | x1 + x2 + 1 |
[ac2#(x1, x2)] | = | x1 + x2 + 0 |
ac2(x,ac2(y,z)) | → | ac2(ac2(x,y),z) | (4) |
ac2(x,y) | → | ac2(y,x) | (3) |
ac2(a,ac1(b,c)) | → | ac2(b,f(ac1(a,c))) | (2) |
ac2#(a,ac1(b,c)) | → | ac1#(a,c) | (13) |
ac2#(x,ac2(y,z)) | → | ac2#(x,y) | (10) |
ac1#(a,ac2(b,c)) | → | ac2#(a,c) | (14) |
ac2#(a,ac1(b,c)) | → | ac2#(b,f(ac1(a,c))) | (15) |
The dependency pairs are split into 2 components.
ac1#(x,y) | → | ac1#(y,x) | (9) |
ac1#(a,ac2(b,c)) | → | ac1#(b,f(ac2(a,c))) | (16) |
ac1#(x,ac1(y,z)) | → | ac1#(x,y) | (8) |
ac1#(x,ac1(y,z)) | → | ac1#(ac1(x,y),z) | (7) |
[a] | = | 0 |
[ac1#(x1, x2)] | = | x1 + x2 + 2 |
[b] | = | 0 |
[c] | = | 1 |
[f(x1)] | = | 1 |
[ac1(x1, x2)] | = | x1 + x2 + 1 |
[ac2(x1, x2)] | = | x1 + x2 + 1 |
[ac2#(x1, x2)] | = | x1 + x2 + 0 |
ac1(x,y) | → | ac1(y,x) | (6) |
ac1(a,ac2(b,c)) | → | ac1(b,f(ac2(a,c))) | (1) |
ac1(x,ac1(y,z)) | → | ac1(ac1(x,y),z) | (5) |
ac2(x,ac2(y,z)) | → | ac2(ac2(x,y),z) | (4) |
ac2(x,y) | → | ac2(y,x) | (3) |
ac2(a,ac1(b,c)) | → | ac2(b,f(ac1(a,c))) | (2) |
ac1#(x,ac1(y,z)) | → | ac1#(x,y) | (8) |
ac1#(a,ac2(b,c)) | → | ac1#(b,f(ac2(a,c))) | (16) |
The dependency pairs are split into 1 component.
ac1#(x,y) | → | ac1#(y,x) | (9) |
ac1#(x,ac1(y,z)) | → | ac1#(ac1(x,y),z) | (7) |
ac2#(x,ac2(y,z)) | → | ac2#(ac2(x,y),z) | (12) |
ac2#(x,y) | → | ac2#(y,x) | (11) |
The extended rules of the TRS
ac2(ac2(a,ac1(b,c)),_1) | → | ac2(ac2(b,f(ac1(a,c))),_1) | (17) |
ac1(ac1(a,ac2(b,c)),_1) | → | ac1(ac1(b,f(ac2(a,c))),_1) | (18) |
The dependency pairs are split into 2 components.
ac2#(x,ac2(y,z)) | → | ac2#(x,y) | (10) |
ac2#(x,y) | → | ac2#(y,x) | (11) |
ac2#(ac2(a,ac1(b,c)),_1) | → | ac2#(ac2(b,f(ac1(a,c))),_1) | (19) |
ac2#(x,ac2(y,z)) | → | ac2#(ac2(x,y),z) | (12) |
[a] | = | 0 |
[ac1#(x1, x2)] | = | x1 + x2 + 2 |
[b] | = | 0 |
[c] | = | 2 |
[f(x1)] | = | 1 |
[ac1(x1, x2)] | = | x1 + x2 + 0 |
[ac2(x1, x2)] | = | x1 + x2 + 1 |
[ac2#(x1, x2)] | = | x1 + x2 + 0 |
ac1(x,y) | → | ac1(y,x) | (6) |
ac1(a,ac2(b,c)) | → | ac1(b,f(ac2(a,c))) | (1) |
ac1(x,ac1(y,z)) | → | ac1(ac1(x,y),z) | (5) |
ac2(x,ac2(y,z)) | → | ac2(ac2(x,y),z) | (4) |
ac2(x,y) | → | ac2(y,x) | (3) |
ac2(a,ac1(b,c)) | → | ac2(b,f(ac1(a,c))) | (2) |
ac2#(ac2(a,ac1(b,c)),_1) | → | ac2#(ac2(b,f(ac1(a,c))),_1) | (19) |
ac2#(x,ac2(y,z)) | → | ac2#(x,y) | (10) |
The dependency pairs are split into 1 component.
ac2#(x,ac2(y,z)) | → | ac2#(ac2(x,y),z) | (12) |
ac2#(x,y) | → | ac2#(y,x) | (11) |
ac1#(x,y) | → | ac1#(y,x) | (9) |
ac1#(x,ac1(y,z)) | → | ac1#(ac1(x,y),z) | (7) |
ac1#(x,ac1(y,z)) | → | ac1#(x,y) | (8) |
ac1#(ac1(a,ac2(b,c)),_1) | → | ac1#(ac1(b,f(ac2(a,c))),_1) | (20) |
[a] | = | 0 |
[ac1#(x1, x2)] | = | x1 + x2 + 2 |
[b] | = | 1 |
[c] | = | 1 |
[f(x1)] | = | 1 |
[ac1(x1, x2)] | = | x1 + x2 + 1 |
[ac2(x1, x2)] | = | x1 + x2 + 1 |
[ac2#(x1, x2)] | = | x1 + x2 + 0 |
ac1(x,y) | → | ac1(y,x) | (6) |
ac1(a,ac2(b,c)) | → | ac1(b,f(ac2(a,c))) | (1) |
ac1(x,ac1(y,z)) | → | ac1(ac1(x,y),z) | (5) |
ac2(x,ac2(y,z)) | → | ac2(ac2(x,y),z) | (4) |
ac2(x,y) | → | ac2(y,x) | (3) |
ac2(a,ac1(b,c)) | → | ac2(b,f(ac1(a,c))) | (2) |
ac1#(ac1(a,ac2(b,c)),_1) | → | ac1#(ac1(b,f(ac2(a,c))),_1) | (20) |
ac1#(x,ac1(y,z)) | → | ac1#(x,y) | (8) |
The dependency pairs are split into 1 component.
ac1#(x,y) | → | ac1#(y,x) | (9) |
ac1#(x,ac1(y,z)) | → | ac1#(ac1(x,y),z) | (7) |