YES

The TRS could be proven terminating. The proof took 42567 ms.

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (290ms).
 | – Problem 2 was processed with processor PolynomialLinearRange4 (285ms).
 |    | – Problem 3 was processed with processor PolynomialLinearRange4 (189ms).
 |    |    | – Problem 4 was processed with processor DependencyGraph (25ms).
 |    |    |    | – Problem 5 was processed with processor PolynomialLinearRange4 (214ms).
 |    |    |    |    | – Problem 6 was processed with processor DependencyGraph (24ms).
 |    |    |    |    |    | – Problem 7 was processed with processor PolynomialLinearRange4 (248ms).
 |    |    |    |    |    |    | – Problem 8 was processed with processor DependencyGraph (7ms).
 |    |    |    |    |    |    |    | – Problem 9 was processed with processor PolynomialLinearRange4 (140ms).
 |    |    |    |    |    |    |    |    | – Problem 12 was processed with processor DependencyGraph (0ms).
 |    |    |    |    |    |    |    | – Problem 10 was processed with processor PolynomialLinearRange4 (60ms).
 |    |    |    |    |    |    |    | – Problem 11 was processed with processor PolynomialLinearRange4 (9ms).

Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

U41#(tt, M, N)isNat#(activate(N))activate#(n__plus(X1, X2))plus#(activate(X1), activate(X2))
activate#(n__s(X))activate#(X)U41#(tt, M, N)activate#(M)
isNat#(n__plus(V1, V2))isNat#(activate(V1))isNat#(n__plus(V1, V2))U11#(isNat(activate(V1)), activate(V2))
plus#(N, 0)isNat#(N)isNat#(n__plus(V1, V2))activate#(V2)
U11#(tt, V2)U12#(isNat(activate(V2)))U42#(tt, M, N)activate#(N)
plus#(N, s(M))U41#(isNat(M), M, N)U42#(tt, M, N)plus#(activate(N), activate(M))
activate#(n__plus(X1, X2))activate#(X2)U11#(tt, V2)activate#(V2)
U42#(tt, M, N)s#(plus(activate(N), activate(M)))isNat#(n__s(V1))activate#(V1)
activate#(n__plus(X1, X2))activate#(X1)U11#(tt, V2)isNat#(activate(V2))
U31#(tt, N)activate#(N)U41#(tt, M, N)activate#(N)
plus#(N, 0)U31#(isNat(N), N)plus#(N, s(M))isNat#(M)
U42#(tt, M, N)activate#(M)isNat#(n__s(V1))U21#(isNat(activate(V1)))
isNat#(n__s(V1))isNat#(activate(V1))U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))
activate#(n__0)0#isNat#(n__plus(V1, V2))activate#(V1)
activate#(n__s(X))s#(activate(X))

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


The following SCCs where found

U41#(tt, M, N) → isNat#(activate(N))activate#(n__plus(X1, X2)) → plus#(activate(X1), activate(X2))
activate#(n__s(X)) → activate#(X)U41#(tt, M, N) → activate#(M)
isNat#(n__plus(V1, V2)) → isNat#(activate(V1))U11#(tt, V2) → isNat#(activate(V2))
U31#(tt, N) → activate#(N)isNat#(n__plus(V1, V2)) → U11#(isNat(activate(V1)), activate(V2))
U41#(tt, M, N) → activate#(N)plus#(N, 0) → isNat#(N)
isNat#(n__plus(V1, V2)) → activate#(V2)U42#(tt, M, N) → activate#(N)
plus#(N, 0) → U31#(isNat(N), N)plus#(N, s(M)) → U41#(isNat(M), M, N)
activate#(n__plus(X1, X2)) → activate#(X2)plus#(N, s(M)) → isNat#(M)
U42#(tt, M, N) → plus#(activate(N), activate(M))U42#(tt, M, N) → activate#(M)
U11#(tt, V2) → activate#(V2)isNat#(n__s(V1)) → isNat#(activate(V1))
U41#(tt, M, N) → U42#(isNat(activate(N)), activate(M), activate(N))isNat#(n__plus(V1, V2)) → activate#(V1)
isNat#(n__s(V1)) → activate#(V1)activate#(n__plus(X1, X2)) → activate#(X1)

Problem 2: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

U41#(tt, M, N)isNat#(activate(N))activate#(n__s(X))activate#(X)
activate#(n__plus(X1, X2))plus#(activate(X1), activate(X2))U41#(tt, M, N)activate#(M)
U11#(tt, V2)isNat#(activate(V2))isNat#(n__plus(V1, V2))isNat#(activate(V1))
U31#(tt, N)activate#(N)U41#(tt, M, N)activate#(N)
isNat#(n__plus(V1, V2))U11#(isNat(activate(V1)), activate(V2))U42#(tt, M, N)activate#(N)
isNat#(n__plus(V1, V2))activate#(V2)plus#(N, 0)isNat#(N)
plus#(N, 0)U31#(isNat(N), N)plus#(N, s(M))U41#(isNat(M), M, N)
plus#(N, s(M))isNat#(M)U42#(tt, M, N)plus#(activate(N), activate(M))
activate#(n__plus(X1, X2))activate#(X2)U42#(tt, M, N)activate#(M)
U11#(tt, V2)activate#(V2)isNat#(n__s(V1))isNat#(activate(V1))
U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))isNat#(n__plus(V1, V2))activate#(V1)
isNat#(n__s(V1))activate#(V1)activate#(n__plus(X1, X2))activate#(X1)

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


Polynomial Interpretation

Standard Usable rules

plus(X1, X2)n__plus(X1, X2)U12(tt)tt
U31(tt, N)activate(N)U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))
activate(n__0)00n__0
isNat(n__0)ttU42(tt, M, N)s(plus(activate(N), activate(M)))
s(X)n__s(X)activate(X)X
U21(tt)ttplus(N, 0)U31(isNat(N), N)
isNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))U11(tt, V2)U12(isNat(activate(V2)))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, s(M))U41(isNat(M), M, N)
activate(n__plus(X1, X2))plus(activate(X1), activate(X2))activate(n__s(X))s(activate(X))

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

plus#(N, 0)isNat#(N)

Problem 3: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

U41#(tt, M, N)isNat#(activate(N))activate#(n__s(X))activate#(X)
activate#(n__plus(X1, X2))plus#(activate(X1), activate(X2))U41#(tt, M, N)activate#(M)
U11#(tt, V2)isNat#(activate(V2))isNat#(n__plus(V1, V2))isNat#(activate(V1))
U31#(tt, N)activate#(N)U41#(tt, M, N)activate#(N)
isNat#(n__plus(V1, V2))U11#(isNat(activate(V1)), activate(V2))U42#(tt, M, N)activate#(N)
isNat#(n__plus(V1, V2))activate#(V2)plus#(N, 0)U31#(isNat(N), N)
plus#(N, s(M))U41#(isNat(M), M, N)activate#(n__plus(X1, X2))activate#(X2)
U42#(tt, M, N)plus#(activate(N), activate(M))plus#(N, s(M))isNat#(M)
U11#(tt, V2)activate#(V2)U42#(tt, M, N)activate#(M)
U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))isNat#(n__s(V1))isNat#(activate(V1))
isNat#(n__plus(V1, V2))activate#(V1)isNat#(n__s(V1))activate#(V1)
activate#(n__plus(X1, X2))activate#(X1)

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


Polynomial Interpretation

Standard Usable rules

plus(X1, X2)n__plus(X1, X2)U12(tt)tt
U31(tt, N)activate(N)U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))
activate(n__0)00n__0
isNat(n__0)ttU42(tt, M, N)s(plus(activate(N), activate(M)))
s(X)n__s(X)activate(X)X
U21(tt)ttplus(N, 0)U31(isNat(N), N)
isNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))U11(tt, V2)U12(isNat(activate(V2)))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, s(M))U41(isNat(M), M, N)
activate(n__plus(X1, X2))plus(activate(X1), activate(X2))activate(n__s(X))s(activate(X))

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

U31#(tt, N)activate#(N)

Problem 4: DependencyGraph



Dependency Pair Problem

Dependency Pairs

U41#(tt, M, N)isNat#(activate(N))activate#(n__s(X))activate#(X)
activate#(n__plus(X1, X2))plus#(activate(X1), activate(X2))U41#(tt, M, N)activate#(M)
U11#(tt, V2)isNat#(activate(V2))isNat#(n__plus(V1, V2))isNat#(activate(V1))
U41#(tt, M, N)activate#(N)isNat#(n__plus(V1, V2))U11#(isNat(activate(V1)), activate(V2))
U42#(tt, M, N)activate#(N)isNat#(n__plus(V1, V2))activate#(V2)
plus#(N, 0)U31#(isNat(N), N)plus#(N, s(M))U41#(isNat(M), M, N)
plus#(N, s(M))isNat#(M)U42#(tt, M, N)plus#(activate(N), activate(M))
activate#(n__plus(X1, X2))activate#(X2)U42#(tt, M, N)activate#(M)
U11#(tt, V2)activate#(V2)isNat#(n__s(V1))isNat#(activate(V1))
U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))isNat#(n__plus(V1, V2))activate#(V1)
isNat#(n__s(V1))activate#(V1)activate#(n__plus(X1, X2))activate#(X1)

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


The following SCCs where found

U41#(tt, M, N) → isNat#(activate(N))activate#(n__plus(X1, X2)) → plus#(activate(X1), activate(X2))
activate#(n__s(X)) → activate#(X)U41#(tt, M, N) → activate#(M)
U11#(tt, V2) → isNat#(activate(V2))isNat#(n__plus(V1, V2)) → isNat#(activate(V1))
isNat#(n__plus(V1, V2)) → U11#(isNat(activate(V1)), activate(V2))U41#(tt, M, N) → activate#(N)
U42#(tt, M, N) → activate#(N)isNat#(n__plus(V1, V2)) → activate#(V2)
plus#(N, s(M)) → U41#(isNat(M), M, N)plus#(N, s(M)) → isNat#(M)
activate#(n__plus(X1, X2)) → activate#(X2)U42#(tt, M, N) → plus#(activate(N), activate(M))
U42#(tt, M, N) → activate#(M)U11#(tt, V2) → activate#(V2)
isNat#(n__s(V1)) → isNat#(activate(V1))U41#(tt, M, N) → U42#(isNat(activate(N)), activate(M), activate(N))
isNat#(n__plus(V1, V2)) → activate#(V1)isNat#(n__s(V1)) → activate#(V1)
activate#(n__plus(X1, X2)) → activate#(X1)

Problem 5: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

U41#(tt, M, N)isNat#(activate(N))activate#(n__s(X))activate#(X)
activate#(n__plus(X1, X2))plus#(activate(X1), activate(X2))U41#(tt, M, N)activate#(M)
isNat#(n__plus(V1, V2))isNat#(activate(V1))U11#(tt, V2)isNat#(activate(V2))
U41#(tt, M, N)activate#(N)isNat#(n__plus(V1, V2))U11#(isNat(activate(V1)), activate(V2))
isNat#(n__plus(V1, V2))activate#(V2)U42#(tt, M, N)activate#(N)
plus#(N, s(M))U41#(isNat(M), M, N)plus#(N, s(M))isNat#(M)
U42#(tt, M, N)plus#(activate(N), activate(M))activate#(n__plus(X1, X2))activate#(X2)
U42#(tt, M, N)activate#(M)U11#(tt, V2)activate#(V2)
isNat#(n__s(V1))isNat#(activate(V1))U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))
isNat#(n__plus(V1, V2))activate#(V1)isNat#(n__s(V1))activate#(V1)
activate#(n__plus(X1, X2))activate#(X1)

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


Polynomial Interpretation

Standard Usable rules

plus(X1, X2)n__plus(X1, X2)U12(tt)tt
U31(tt, N)activate(N)U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))
activate(n__0)00n__0
isNat(n__0)ttU42(tt, M, N)s(plus(activate(N), activate(M)))
s(X)n__s(X)activate(X)X
U21(tt)ttplus(N, 0)U31(isNat(N), N)
isNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))U11(tt, V2)U12(isNat(activate(V2)))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, s(M))U41(isNat(M), M, N)
activate(n__plus(X1, X2))plus(activate(X1), activate(X2))activate(n__s(X))s(activate(X))

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

isNat#(n__plus(V1, V2))U11#(isNat(activate(V1)), activate(V2))

Problem 6: DependencyGraph



Dependency Pair Problem

Dependency Pairs

U41#(tt, M, N)isNat#(activate(N))activate#(n__s(X))activate#(X)
activate#(n__plus(X1, X2))plus#(activate(X1), activate(X2))U41#(tt, M, N)activate#(M)
isNat#(n__plus(V1, V2))isNat#(activate(V1))U11#(tt, V2)isNat#(activate(V2))
U41#(tt, M, N)activate#(N)isNat#(n__plus(V1, V2))activate#(V2)
U42#(tt, M, N)activate#(N)plus#(N, s(M))U41#(isNat(M), M, N)
plus#(N, s(M))isNat#(M)U42#(tt, M, N)plus#(activate(N), activate(M))
activate#(n__plus(X1, X2))activate#(X2)U11#(tt, V2)activate#(V2)
U42#(tt, M, N)activate#(M)U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))
isNat#(n__s(V1))isNat#(activate(V1))isNat#(n__plus(V1, V2))activate#(V1)
isNat#(n__s(V1))activate#(V1)activate#(n__plus(X1, X2))activate#(X1)

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


The following SCCs where found

U41#(tt, M, N) → isNat#(activate(N))activate#(n__plus(X1, X2)) → plus#(activate(X1), activate(X2))
activate#(n__s(X)) → activate#(X)U41#(tt, M, N) → activate#(M)
isNat#(n__plus(V1, V2)) → isNat#(activate(V1))U41#(tt, M, N) → activate#(N)
U42#(tt, M, N) → activate#(N)isNat#(n__plus(V1, V2)) → activate#(V2)
plus#(N, s(M)) → U41#(isNat(M), M, N)plus#(N, s(M)) → isNat#(M)
U42#(tt, M, N) → plus#(activate(N), activate(M))activate#(n__plus(X1, X2)) → activate#(X2)
U42#(tt, M, N) → activate#(M)isNat#(n__s(V1)) → isNat#(activate(V1))
U41#(tt, M, N) → U42#(isNat(activate(N)), activate(M), activate(N))isNat#(n__plus(V1, V2)) → activate#(V1)
isNat#(n__s(V1)) → activate#(V1)activate#(n__plus(X1, X2)) → activate#(X1)

Problem 7: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

U41#(tt, M, N)isNat#(activate(N))activate#(n__s(X))activate#(X)
activate#(n__plus(X1, X2))plus#(activate(X1), activate(X2))U41#(tt, M, N)activate#(M)
isNat#(n__plus(V1, V2))isNat#(activate(V1))U41#(tt, M, N)activate#(N)
isNat#(n__plus(V1, V2))activate#(V2)U42#(tt, M, N)activate#(N)
plus#(N, s(M))U41#(isNat(M), M, N)activate#(n__plus(X1, X2))activate#(X2)
U42#(tt, M, N)plus#(activate(N), activate(M))plus#(N, s(M))isNat#(M)
U42#(tt, M, N)activate#(M)isNat#(n__s(V1))isNat#(activate(V1))
U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))isNat#(n__plus(V1, V2))activate#(V1)
isNat#(n__s(V1))activate#(V1)activate#(n__plus(X1, X2))activate#(X1)

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


Polynomial Interpretation

Standard Usable rules

plus(X1, X2)n__plus(X1, X2)U12(tt)tt
U31(tt, N)activate(N)U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))
activate(n__0)00n__0
isNat(n__0)ttU42(tt, M, N)s(plus(activate(N), activate(M)))
s(X)n__s(X)activate(X)X
U21(tt)ttplus(N, 0)U31(isNat(N), N)
isNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))U11(tt, V2)U12(isNat(activate(V2)))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, s(M))U41(isNat(M), M, N)
activate(n__plus(X1, X2))plus(activate(X1), activate(X2))activate(n__s(X))s(activate(X))

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

activate#(n__plus(X1, X2))plus#(activate(X1), activate(X2))isNat#(n__plus(V1, V2))isNat#(activate(V1))
isNat#(n__plus(V1, V2))activate#(V2)activate#(n__plus(X1, X2))activate#(X2)
isNat#(n__plus(V1, V2))activate#(V1)activate#(n__plus(X1, X2))activate#(X1)

Problem 8: DependencyGraph



Dependency Pair Problem

Dependency Pairs

plus#(N, s(M))U41#(isNat(M), M, N)plus#(N, s(M))isNat#(M)
U42#(tt, M, N)plus#(activate(N), activate(M))U42#(tt, M, N)activate#(M)
U41#(tt, M, N)isNat#(activate(N))U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))
isNat#(n__s(V1))isNat#(activate(V1))activate#(n__s(X))activate#(X)
U41#(tt, M, N)activate#(M)isNat#(n__s(V1))activate#(V1)
U41#(tt, M, N)activate#(N)U42#(tt, M, N)activate#(N)

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


The following SCCs where found

plus#(N, s(M)) → U41#(isNat(M), M, N)U42#(tt, M, N) → plus#(activate(N), activate(M))
U41#(tt, M, N) → U42#(isNat(activate(N)), activate(M), activate(N))

activate#(n__s(X)) → activate#(X)

isNat#(n__s(V1)) → isNat#(activate(V1))

Problem 9: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

plus#(N, s(M))U41#(isNat(M), M, N)U42#(tt, M, N)plus#(activate(N), activate(M))
U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


Polynomial Interpretation

Standard Usable rules

plus(X1, X2)n__plus(X1, X2)U12(tt)tt
U31(tt, N)activate(N)U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))
activate(n__0)00n__0
isNat(n__0)ttU42(tt, M, N)s(plus(activate(N), activate(M)))
s(X)n__s(X)activate(X)X
U21(tt)ttplus(N, 0)U31(isNat(N), N)
isNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))U11(tt, V2)U12(isNat(activate(V2)))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, s(M))U41(isNat(M), M, N)
activate(n__plus(X1, X2))plus(activate(X1), activate(X2))activate(n__s(X))s(activate(X))

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

plus#(N, s(M))U41#(isNat(M), M, N)

Problem 12: DependencyGraph



Dependency Pair Problem

Dependency Pairs

U42#(tt, M, N)plus#(activate(N), activate(M))U41#(tt, M, N)U42#(isNat(activate(N)), activate(M), activate(N))

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


There are no SCCs!

Problem 10: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

isNat#(n__s(V1))isNat#(activate(V1))

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


Polynomial Interpretation

Standard Usable rules

plus(X1, X2)n__plus(X1, X2)U12(tt)tt
U31(tt, N)activate(N)U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))
activate(n__0)00n__0
isNat(n__0)tts(X)n__s(X)
U42(tt, M, N)s(plus(activate(N), activate(M)))activate(X)X
U21(tt)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
plus(N, 0)U31(isNat(N), N)isNat(n__s(V1))U21(isNat(activate(V1)))
U11(tt, V2)U12(isNat(activate(V2)))plus(N, s(M))U41(isNat(M), M, N)
activate(n__plus(X1, X2))plus(activate(X1), activate(X2))activate(n__s(X))s(activate(X))

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

isNat#(n__s(V1))isNat#(activate(V1))

Problem 11: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

activate#(n__s(X))activate#(X)

Rewrite Rules

U11(tt, V2)U12(isNat(activate(V2)))U12(tt)tt
U21(tt)ttU31(tt, N)activate(N)
U41(tt, M, N)U42(isNat(activate(N)), activate(M), activate(N))U42(tt, M, N)s(plus(activate(N), activate(M)))
isNat(n__0)ttisNat(n__plus(V1, V2))U11(isNat(activate(V1)), activate(V2))
isNat(n__s(V1))U21(isNat(activate(V1)))plus(N, 0)U31(isNat(N), N)
plus(N, s(M))U41(isNat(M), M, N)0n__0
plus(X1, X2)n__plus(X1, X2)s(X)n__s(X)
activate(n__0)0activate(n__plus(X1, X2))plus(activate(X1), activate(X2))
activate(n__s(X))s(activate(X))activate(X)X

Original Signature

Termination of terms over the following signature is verified: plus, n__plus, n__s, activate, isNat, 0, n__0, U42, s, tt, U41, U11, U12, U31, U21

Strategy


Polynomial Interpretation

There are no usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

activate#(n__s(X))activate#(X)