U11#( tt , V2 ) | → | U12#( isNat( activate( V2 ) ) ) |
U11#( tt , V2 ) | → | isNat#( activate( V2 ) ) |
U11#( tt , V2 ) | → | activate#( V2 ) |
U31#( tt , N ) | → | activate#( N ) |
U41#( tt , M , N ) | → | U42#( isNat( activate( N ) ) , activate( M ) , activate( N ) ) |
U41#( tt , M , N ) | → | isNat#( activate( N ) ) |
U41#( tt , M , N ) | → | activate#( N ) |
U41#( tt , M , N ) | → | activate#( M ) |
U41#( tt , M , N ) | → | activate#( N ) |
U42#( tt , M , N ) | → | s#( plus( activate( N ) , activate( M ) ) ) |
U42#( tt , M , N ) | → | plus#( activate( N ) , activate( M ) ) |
U42#( tt , M , N ) | → | activate#( N ) |
U42#( tt , M , N ) | → | activate#( M ) |
isNat#( n__plus( V1 , V2 ) ) | → | U11#( isNat( activate( V1 ) ) , activate( V2 ) ) |
isNat#( n__plus( V1 , V2 ) ) | → | isNat#( activate( V1 ) ) |
isNat#( n__plus( V1 , V2 ) ) | → | activate#( V1 ) |
isNat#( n__plus( V1 , V2 ) ) | → | activate#( V2 ) |
isNat#( n__s( V1 ) ) | → | U21#( isNat( activate( V1 ) ) ) |
isNat#( n__s( V1 ) ) | → | isNat#( activate( V1 ) ) |
isNat#( n__s( V1 ) ) | → | activate#( V1 ) |
plus#( N , 0 ) | → | U31#( isNat( N ) , N ) |
plus#( N , 0 ) | → | isNat#( N ) |
plus#( N , s( M ) ) | → | U41#( isNat( M ) , M , N ) |
plus#( N , s( M ) ) | → | isNat#( M ) |
activate#( n__0 ) | → | 0# |
activate#( n__plus( X1 , X2 ) ) | → | plus#( activate( X1 ) , activate( X2 ) ) |
activate#( n__plus( X1 , X2 ) ) | → | activate#( X1 ) |
activate#( n__plus( X1 , X2 ) ) | → | activate#( X2 ) |
activate#( n__s( X ) ) | → | s#( activate( X ) ) |
activate#( n__s( X ) ) | → | activate#( X ) |
The dependency pairs are split into 1 component(s).
U11#( tt , V2 ) | → | isNat#( activate( V2 ) ) |
isNat#( n__plus( V1 , V2 ) ) | → | U11#( isNat( activate( V1 ) ) , activate( V2 ) ) |
U11#( tt , V2 ) | → | activate#( V2 ) |
activate#( n__plus( X1 , X2 ) ) | → | plus#( activate( X1 ) , activate( X2 ) ) |
plus#( N , 0 ) | → | U31#( isNat( N ) , N ) |
U31#( tt , N ) | → | activate#( N ) |
activate#( n__plus( X1 , X2 ) ) | → | activate#( X1 ) |
activate#( n__plus( X1 , X2 ) ) | → | activate#( X2 ) |
activate#( n__s( X ) ) | → | activate#( X ) |
plus#( N , 0 ) | → | isNat#( N ) |
isNat#( n__plus( V1 , V2 ) ) | → | isNat#( activate( V1 ) ) |
isNat#( n__plus( V1 , V2 ) ) | → | activate#( V1 ) |
isNat#( n__plus( V1 , V2 ) ) | → | activate#( V2 ) |
isNat#( n__s( V1 ) ) | → | isNat#( activate( V1 ) ) |
isNat#( n__s( V1 ) ) | → | activate#( V1 ) |
plus#( N , s( M ) ) | → | U41#( isNat( M ) , M , N ) |
U41#( tt , M , N ) | → | U42#( isNat( activate( N ) ) , activate( M ) , activate( N ) ) |
U42#( tt , M , N ) | → | plus#( activate( N ) , activate( M ) ) |
plus#( N , s( M ) ) | → | isNat#( M ) |
U42#( tt , M , N ) | → | activate#( N ) |
U42#( tt , M , N ) | → | activate#( M ) |
U41#( tt , M , N ) | → | isNat#( activate( N ) ) |
U41#( tt , M , N ) | → | activate#( N ) |
U41#( tt , M , N ) | → | activate#( M ) |
Linear polynomial interpretation over the naturals
[n__plus (x1, x2) ] | = | x1 + x2 | |
[n__0] | = | 0 | |
[n__s (x1) ] | = | x1 + 3 | |
[0] | = | 0 | |
[U41# (x1, x2, x3) ] | = | x1 + x2 + 2 | |
[U41 (x1, x2, x3) ] | = | x1 + x2 + 3 | |
[plus# (x1, x2) ] | = | x1 + x2 | |
[isNat# (x1) ] | = | x1 | |
[tt] | = | 0 | |
[activate (x1) ] | = | x1 | |
[U42# (x1, x2, x3) ] | = | x1 + x2 + 1 | |
[isNat (x1) ] | = | 0 | |
[U11 (x1, x2) ] | = | 0 | |
[U31 (x1, x2) ] | = | x1 | |
[U21 (x1) ] | = | 0 | |
[activate# (x1) ] | = | x1 | |
[plus (x1, x2) ] | = | x1 + x2 | |
[s (x1) ] | = | x1 + 3 | |
[U11# (x1, x2) ] | = | x1 | |
[U42 (x1, x2, x3) ] | = | x1 + x2 + 3 | |
[U31# (x1, x2) ] | = | x1 | |
[U12 (x1) ] | = | 0 | |
[f(x1, ..., xn)] | = | x1 + ... + xn + 1 | for all other symbols f of arity n |
U11#( tt , V2 ) | → | isNat#( activate( V2 ) ) |
isNat#( n__plus( V1 , V2 ) ) | → | U11#( isNat( activate( V1 ) ) , activate( V2 ) ) |
U11#( tt , V2 ) | → | activate#( V2 ) |
activate#( n__plus( X1 , X2 ) ) | → | plus#( activate( X1 ) , activate( X2 ) ) |
plus#( N , 0 ) | → | U31#( isNat( N ) , N ) |
U31#( tt , N ) | → | activate#( N ) |
activate#( n__plus( X1 , X2 ) ) | → | activate#( X1 ) |
activate#( n__plus( X1 , X2 ) ) | → | activate#( X2 ) |
plus#( N , 0 ) | → | isNat#( N ) |
isNat#( n__plus( V1 , V2 ) ) | → | isNat#( activate( V1 ) ) |
isNat#( n__plus( V1 , V2 ) ) | → | activate#( V1 ) |
isNat#( n__plus( V1 , V2 ) ) | → | activate#( V2 ) |
Linear polynomial interpretation over the naturals
[n__plus (x1, x2) ] | = | x1 + 2 x2 + 2 | |
[n__0] | = | 2 | |
[n__s (x1) ] | = | 2 | |
[0] | = | 2 | |
[U41 (x1, x2, x3) ] | = | 3 | |
[plus# (x1, x2) ] | = | 2 x1 + x2 | |
[isNat# (x1) ] | = | 2 x1 | |
[tt] | = | 0 | |
[activate (x1) ] | = | x1 | |
[isNat (x1) ] | = | 0 | |
[U11 (x1, x2) ] | = | 0 | |
[U31 (x1, x2) ] | = | x1 + 3 | |
[U21 (x1) ] | = | 0 | |
[activate# (x1) ] | = | 2 x1 | |
[plus (x1, x2) ] | = | x1 + 2 x2 + 2 | |
[s (x1) ] | = | 2 | |
[U11# (x1, x2) ] | = | 2 x1 + 3 | |
[U42 (x1, x2, x3) ] | = | 3 | |
[U31# (x1, x2) ] | = | 2 x1 | |
[U12 (x1) ] | = | 0 | |
[f(x1, ..., xn)] | = | x1 + ... + xn + 1 | for all other symbols f of arity n |
U31#( tt , N ) | → | activate#( N ) |
The dependency pairs are split into 0 component(s).