The rewrite relation of the following TRS is considered.
is_empty(nil) | → | true | (1) |
is_empty(cons(x,l)) | → | false | (2) |
hd(cons(x,l)) | → | x | (3) |
tl(cons(x,l)) | → | l | (4) |
append(l1,l2) | → | ifappend(l1,l2,l1) | (5) |
ifappend(l1,l2,nil) | → | l2 | (6) |
ifappend(l1,l2,cons(x,l)) | → | cons(x,append(l,l2)) | (7) |
append#(l1,l2) | → | ifappend#(l1,l2,l1) | (8) |
ifappend#(l1,l2,cons(x,l)) | → | append#(l,l2) | (9) |
The dependency pairs are split into 1 component.
ifappend#(l1,l2,cons(x,l)) | → | append#(l,l2) | (9) |
append#(l1,l2) | → | ifappend#(l1,l2,l1) | (8) |
[hd(x1)] | = | 0 |
[append#(x1, x2)] | = | x1 + 1 |
[is_empty#(x1)] | = | 0 |
[ifappend(x1, x2, x3)] | = | 0 |
[false] | = | 0 |
[true] | = | 0 |
[tl#(x1)] | = | 0 |
[append(x1, x2)] | = | 0 |
[tl(x1)] | = | 0 |
[nil] | = | 0 |
[is_empty(x1)] | = | 0 |
[hd#(x1)] | = | 0 |
[cons(x1, x2)] | = | x2 + 2 |
[ifappend#(x1, x2, x3)] | = | x3 + 0 |
ifappend#(l1,l2,cons(x,l)) | → | append#(l,l2) | (9) |
append#(l1,l2) | → | ifappend#(l1,l2,l1) | (8) |
The dependency pairs are split into 0 components.