The rewrite relation of the following equational TRS is considered.
f(plus(a,a)) | → | plus(f(a),f(a)) | (1) |
plus(a,f(f(a))) | → | plus(f(a),f(a)) | (2) |
Associative symbols: plus
Commutative symbols: plus
The following set of (strict) dependency pairs is constructed for the TRS.
f#(plus(a,a)) | → | f#(a) | (8) |
f#(plus(a,a)) | → | f#(a) | (8) |
plus#(a,f(f(a))) | → | plus#(f(a),f(a)) | (9) |
f#(plus(a,a)) | → | plus#(f(a),f(a)) | (10) |
The dependency pairs are split into 1 component.
plus#(a,f(f(a))) | → | plus#(f(a),f(a)) | (9) |
plus#(x,plus(y,z)) | → | plus#(x,y) | (7) |
plus#(x,y) | → | plus#(y,x) | (6) |
plus#(x,plus(y,z)) | → | plus#(plus(x,y),z) | (5) |
[a] | = | 1 |
[plus#(x1, x2)] | = | x1 + x2 + 0 |
[f(x1)] | = | 0 |
[f#(x1)] | = | 0 |
[plus(x1, x2)] | = | x1 + x2 + 0 |
plus(x,y) | → | plus(y,x) | (4) |
f(plus(a,a)) | → | plus(f(a),f(a)) | (1) |
plus(x,plus(y,z)) | → | plus(plus(x,y),z) | (3) |
plus(a,f(f(a))) | → | plus(f(a),f(a)) | (2) |
plus#(a,f(f(a))) | → | plus#(f(a),f(a)) | (9) |
The dependency pairs are split into 1 component.
plus#(x,y) | → | plus#(y,x) | (6) |
plus#(x,plus(y,z)) | → | plus#(x,y) | (7) |
plus#(x,plus(y,z)) | → | plus#(plus(x,y),z) | (5) |
The extended rules of the TRS
plus(plus(a,f(f(a))),_1) | → | plus(plus(f(a),f(a)),_1) | (11) |
The dependency pairs are split into 1 component.
plus#(plus(a,f(f(a))),_1) | → | plus#(plus(f(a),f(a)),_1) | (12) |
plus#(x,y) | → | plus#(y,x) | (6) |
plus#(x,plus(y,z)) | → | plus#(plus(x,y),z) | (5) |
plus#(x,plus(y,z)) | → | plus#(x,y) | (7) |
[a] | = | 10451 |
[plus#(x1, x2)] | = | x1 + x2 + 0 |
[f(x1)] | = | 0 |
[f#(x1)] | = | 0 |
[plus(x1, x2)] | = | x1 + x2 + 0 |
plus(x,y) | → | plus(y,x) | (4) |
f(plus(a,a)) | → | plus(f(a),f(a)) | (1) |
plus(x,plus(y,z)) | → | plus(plus(x,y),z) | (3) |
plus(a,f(f(a))) | → | plus(f(a),f(a)) | (2) |
plus#(plus(a,f(f(a))),_1) | → | plus#(plus(f(a),f(a)),_1) | (12) |
The dependency pairs are split into 1 component.
plus#(x,y) | → | plus#(y,x) | (6) |
plus#(x,plus(y,z)) | → | plus#(x,y) | (7) |
plus#(x,plus(y,z)) | → | plus#(plus(x,y),z) | (5) |