merge#( .( x , y ) , .( u , v ) ) | → | if#( <( x , u ) , .( x , merge( y , .( u , v ) ) ) , .( u , merge( .( x , y ) , v ) ) ) |
merge#( .( x , y ) , .( u , v ) ) | → | merge#( y , .( u , v ) ) |
merge#( .( x , y ) , .( u , v ) ) | → | merge#( .( x , y ) , v ) |
++#( .( x , y ) , z ) | → | ++#( y , z ) |
The dependency pairs are split into 2 component(s).
merge#( .( x , y ) , .( u , v ) ) | → | merge#( .( x , y ) , v ) |
merge#( .( x , y ) , .( u , v ) ) | → | merge#( y , .( u , v ) ) |
Linear polynomial interpretation over the naturals
[< (x1, x2) ] | = | 0 | |
[true] | = | 0 | |
[if (x1, x2, x3) ] | = | x1 | |
[++ (x1, x2) ] | = | 2 x1 + x2 | |
[merge# (x1, x2) ] | = | 3 x1 | |
[false] | = | 0 | |
[merge (x1, x2) ] | = | x1 + x2 + 1 | |
[. (x1, x2) ] | = | 2 x1 + x2 + 3 | |
[nil] | = | 0 | |
[f(x1, ..., xn)] | = | x1 + ... + xn + 1 | for all other symbols f of arity n |
merge#( .( x , y ) , .( u , v ) ) | → | merge#( .( x , y ) , v ) |
Linear polynomial interpretation over the naturals
[< (x1, x2) ] | = | 0 | |
[true] | = | 0 | |
[if (x1, x2, x3) ] | = | x1 + 1 | |
[++ (x1, x2) ] | = | 2 x1 + x2 + 3 | |
[merge# (x1, x2) ] | = | x1 | |
[false] | = | 0 | |
[merge (x1, x2) ] | = | 2 x1 + x2 + 2 | |
[. (x1, x2) ] | = | 3 x1 + x2 + 3 | |
[nil] | = | 0 | |
[f(x1, ..., xn)] | = | x1 + ... + xn + 1 | for all other symbols f of arity n |
none |
All dependency pairs have been removed.
++#( .( x , y ) , z ) | → | ++#( y , z ) |
Linear polynomial interpretation over the naturals
[< (x1, x2) ] | = | 0 | |
[true] | = | 0 | |
[if (x1, x2, x3) ] | = | x1 + 1 | |
[++ (x1, x2) ] | = | 2 x1 + x2 + 3 | |
[false] | = | 0 | |
[merge (x1, x2) ] | = | 2 x1 + x2 + 2 | |
[. (x1, x2) ] | = | 3 x1 + x2 + 3 | |
[nil] | = | 0 | |
[++# (x1, x2) ] | = | x1 | |
[f(x1, ..., xn)] | = | x1 + ... + xn + 1 | for all other symbols f of arity n |
none |
All dependency pairs have been removed.