Termination proof

1: switching to dependency pairs

The following set of initial dependency pairs has been identified.

U11#( tt , V1 , V2 ) U12#( isNat( activate( V1 ) ) , activate( V2 ) )
U11#( tt , V1 , V2 ) isNat#( activate( V1 ) )
U11#( tt , V1 , V2 ) activate#( V1 )
U11#( tt , V1 , V2 ) activate#( V2 )
U12#( tt , V2 ) U13#( isNat( activate( V2 ) ) )
U12#( tt , V2 ) isNat#( activate( V2 ) )
U12#( tt , V2 ) activate#( V2 )
U21#( tt , V1 ) U22#( isNat( activate( V1 ) ) )
U21#( tt , V1 ) isNat#( activate( V1 ) )
U21#( tt , V1 ) activate#( V1 )
U31#( tt , N ) activate#( N )
U41#( tt , M , N ) s#( plus( activate( N ) , activate( M ) ) )
U41#( tt , M , N ) plus#( activate( N ) , activate( M ) )
U41#( tt , M , N ) activate#( N )
U41#( tt , M , N ) activate#( M )
and#( tt , X ) activate#( X )
isNat#( n__plus( V1 , V2 ) ) U11#( and( isNatKind( activate( V1 ) ) , n__isNatKind( activate( V2 ) ) ) , activate( V1 ) , activate( V2 ) )
isNat#( n__plus( V1 , V2 ) ) and#( isNatKind( activate( V1 ) ) , n__isNatKind( activate( V2 ) ) )
isNat#( n__plus( V1 , V2 ) ) isNatKind#( activate( V1 ) )
isNat#( n__plus( V1 , V2 ) ) activate#( V1 )
isNat#( n__plus( V1 , V2 ) ) activate#( V2 )
isNat#( n__plus( V1 , V2 ) ) activate#( V1 )
isNat#( n__plus( V1 , V2 ) ) activate#( V2 )
isNat#( n__s( V1 ) ) U21#( isNatKind( activate( V1 ) ) , activate( V1 ) )
isNat#( n__s( V1 ) ) isNatKind#( activate( V1 ) )
isNat#( n__s( V1 ) ) activate#( V1 )
isNat#( n__s( V1 ) ) activate#( V1 )
isNatKind#( n__plus( V1 , V2 ) ) and#( isNatKind( activate( V1 ) ) , n__isNatKind( activate( V2 ) ) )
isNatKind#( n__plus( V1 , V2 ) ) isNatKind#( activate( V1 ) )
isNatKind#( n__plus( V1 , V2 ) ) activate#( V1 )
isNatKind#( n__plus( V1 , V2 ) ) activate#( V2 )
isNatKind#( n__s( V1 ) ) isNatKind#( activate( V1 ) )
isNatKind#( n__s( V1 ) ) activate#( V1 )
plus#( N , 0 ) U31#( and( isNat( N ) , n__isNatKind( N ) ) , N )
plus#( N , 0 ) and#( isNat( N ) , n__isNatKind( N ) )
plus#( N , 0 ) isNat#( N )
plus#( N , s( M ) ) U41#( and( and( isNat( M ) , n__isNatKind( M ) ) , n__and( n__isNat( N ) , n__isNatKind( N ) ) ) , M , N )
plus#( N , s( M ) ) and#( and( isNat( M ) , n__isNatKind( M ) ) , n__and( n__isNat( N ) , n__isNatKind( N ) ) )
plus#( N , s( M ) ) and#( isNat( M ) , n__isNatKind( M ) )
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__isNatKind( X ) ) isNatKind#( X )
activate#( n__s( X ) ) s#( activate( X ) )
activate#( n__s( X ) ) activate#( X )
activate#( n__and( X1 , X2 ) ) and#( activate( X1 ) , X2 )
activate#( n__and( X1 , X2 ) ) activate#( X1 )
activate#( n__isNat( X ) ) isNat#( X )

1.1: dependency graph processor

The dependency pairs are split into 1 component(s).