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.