The rewrite relation of the following TRS is considered.
| purge(nil) | → | nil | (1) |
| purge(.(x,y)) | → | .(x,purge(remove(x,y))) | (2) |
| remove(x,nil) | → | nil | (3) |
| remove(x,.(y,z)) | → | if(=(x,y),remove(x,z),.(y,remove(x,z))) | (4) |
| purge#(.(x,y)) | → | remove#(x,y) | (5) |
| remove#(x,.(y,z)) | → | remove#(x,z) | (6) |
| purge#(.(x,y)) | → | purge#(remove(x,y)) | (7) |
| remove#(x,.(y,z)) | → | remove#(x,z) | (6) |
The dependency pairs are split into 2 components.
| purge#(.(x,y)) | → | purge#(remove(x,y)) | (7) |
| [purge#(x1)] | = | x1 + 0 |
| [purge(x1)] | = | 0 |
| [if(x1, x2, x3)] | = | x1 + x2 + 0 |
| [=(x1, x2)] | = | 1 |
| [nil] | = | 16575 |
| [.(x1, x2)] | = | x1 + x2 + 23677 |
| [remove#(x1, x2)] | = | 0 |
| [remove(x1, x2)] | = | x1 + x2 + 23676 |
| remove(x,.(y,z)) | → | if(=(x,y),remove(x,z),.(y,remove(x,z))) | (4) |
| remove(x,nil) | → | nil | (3) |
| purge#(.(x,y)) | → | purge#(remove(x,y)) | (7) |
The dependency pairs are split into 0 components.
| remove#(x,.(y,z)) | → | remove#(x,z) | (6) |
| remove#(x,.(y,z)) | → | remove#(x,z) | (6) |
| [purge#(x1)] | = | x1 + 0 |
| [purge(x1)] | = | 0 |
| [if(x1, x2, x3)] | = | x1 + x2 + 0 |
| [=(x1, x2)] | = | 1 |
| [nil] | = | 16575 |
| [.(x1, x2)] | = | x1 + x2 + 23677 |
| [remove#(x1, x2)] | = | x2 + 0 |
| [remove(x1, x2)] | = | x1 + x2 + 20163 |
| remove(x,.(y,z)) | → | if(=(x,y),remove(x,z),.(y,remove(x,z))) | (4) |
| remove(x,nil) | → | nil | (3) |
| remove#(x,.(y,z)) | → | remove#(x,z) | (6) |
| remove#(x,.(y,z)) | → | remove#(x,z) | (6) |
The dependency pairs are split into 0 components.