YES

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

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (303ms).
 | – Problem 2 was processed with processor SubtermCriterion (1ms).
 | – Problem 3 was processed with processor PolynomialLinearRange4iUR (6122ms).
 |    | – Problem 8 was processed with processor PolynomialLinearRange4iUR (4276ms).
 |    |    | – Problem 9 was processed with processor PolynomialLinearRange4iUR (4579ms).
 |    |    |    | – Problem 10 was processed with processor PolynomialLinearRange4iUR (3200ms).
 |    |    |    |    | – Problem 11 was processed with processor PolynomialLinearRange4iUR (2957ms).
 |    |    |    |    |    | – Problem 12 was processed with processor PolynomialLinearRange4iUR (2792ms).
 |    |    |    |    |    |    | – Problem 13 was processed with processor PolynomialLinearRange4iUR (2283ms).
 |    |    |    |    |    |    |    | – Problem 14 was processed with processor PolynomialLinearRange4iUR (2300ms).
 |    |    |    |    |    |    |    |    | – Problem 15 was processed with processor DependencyGraph (0ms).
 | – Problem 4 was processed with processor SubtermCriterion (0ms).
 | – Problem 5 was processed with processor SubtermCriterion (10ms).
 | – Problem 6 was processed with processor SubtermCriterion (1ms).
 |    | – Problem 7 was processed with processor SubtermCriterion (1ms).

Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

mark#(__(X1, X2))__#(mark(X1), mark(X2))mark#(U11(X))U11#(mark(X))
mark#(isNePal(X))isNePal#(mark(X))U11#(active(X))U11#(X)
active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))mark#(tt)active#(tt)
active#(__(__(X, Y), Z))__#(X, __(Y, Z))active#(__(X, nil))mark#(X)
mark#(U11(X))mark#(X)U12#(mark(X))U12#(X)
__#(X1, active(X2))__#(X1, X2)__#(active(X1), X2)__#(X1, X2)
active#(U11(tt))mark#(U12(tt))mark#(nil)active#(nil)
active#(isNePal(__(I, __(P, I))))U11#(tt)mark#(U11(X))active#(U11(mark(X)))
active#(isNePal(__(I, __(P, I))))mark#(U11(tt))mark#(isNePal(X))mark#(X)
mark#(__(X1, X2))mark#(X2)U11#(mark(X))U11#(X)
__#(mark(X1), X2)__#(X1, X2)mark#(U12(X))mark#(X)
isNePal#(active(X))isNePal#(X)mark#(U12(X))U12#(mark(X))
active#(__(nil, X))mark#(X)active#(U11(tt))U12#(tt)
active#(__(__(X, Y), Z))__#(Y, Z)__#(X1, mark(X2))__#(X1, X2)
mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))isNePal#(mark(X))isNePal#(X)
mark#(isNePal(X))active#(isNePal(mark(X)))mark#(U12(X))active#(U12(mark(X)))
active#(U12(tt))mark#(tt)U12#(active(X))U12#(X)
mark#(__(X1, X2))mark#(X1)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


The following SCCs where found

mark#(U12(X)) → mark#(X)active#(__(__(X, Y), Z)) → mark#(__(X, __(Y, Z)))
active#(__(X, nil)) → mark#(X)active#(__(nil, X)) → mark#(X)
mark#(U11(X)) → mark#(X)mark#(__(X1, X2)) → active#(__(mark(X1), mark(X2)))
mark#(isNePal(X)) → active#(isNePal(mark(X)))mark#(U12(X)) → active#(U12(mark(X)))
active#(U11(tt)) → mark#(U12(tt))mark#(U11(X)) → active#(U11(mark(X)))
mark#(__(X1, X2)) → mark#(X1)active#(isNePal(__(I, __(P, I)))) → mark#(U11(tt))
mark#(isNePal(X)) → mark#(X)mark#(__(X1, X2)) → mark#(X2)

U12#(active(X)) → U12#(X)U12#(mark(X)) → U12#(X)

__#(active(X1), X2) → __#(X1, X2)__#(mark(X1), X2) → __#(X1, X2)
__#(X1, mark(X2)) → __#(X1, X2)__#(X1, active(X2)) → __#(X1, X2)

isNePal#(active(X)) → isNePal#(X)isNePal#(mark(X)) → isNePal#(X)

U11#(active(X)) → U11#(X)U11#(mark(X)) → U11#(X)

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U12#(active(X))U12#(X)U12#(mark(X))U12#(X)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U12#(active(X))U12#(X)U12#(mark(X))U12#(X)

Problem 3: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

mark#(U12(X))mark#(X)active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))
active#(__(X, nil))mark#(X)active#(__(nil, X))mark#(X)
mark#(U11(X))mark#(X)mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))
mark#(isNePal(X))active#(isNePal(mark(X)))mark#(U12(X))active#(U12(mark(X)))
active#(U11(tt))mark#(U12(tt))mark#(__(X1, X2))mark#(X1)
mark#(U11(X))active#(U11(mark(X)))active#(isNePal(__(I, __(P, I))))mark#(U11(tt))
mark#(isNePal(X))mark#(X)mark#(__(X1, X2))mark#(X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


Polynomial Interpretation

Improved Usable rules

isNePal(active(X))isNePal(X)__(mark(X1), X2)__(X1, X2)
U12(active(X))U12(X)U11(mark(X))U11(X)
isNePal(mark(X))isNePal(X)__(active(X1), X2)__(X1, X2)
__(X1, mark(X2))__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(active(X))U11(X)U12(mark(X))U12(X)

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

mark#(U12(X))active#(U12(mark(X)))

Problem 8: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

mark#(U12(X))mark#(X)active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))
active#(__(X, nil))mark#(X)active#(__(nil, X))mark#(X)
mark#(U11(X))mark#(X)mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))
mark#(isNePal(X))active#(isNePal(mark(X)))active#(U11(tt))mark#(U12(tt))
mark#(__(X1, X2))mark#(X1)mark#(U11(X))active#(U11(mark(X)))
active#(isNePal(__(I, __(P, I))))mark#(U11(tt))mark#(isNePal(X))mark#(X)
mark#(__(X1, X2))mark#(X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, U11, __, active, U12, mark, nil

Strategy


Polynomial Interpretation

Improved Usable rules

isNePal(active(X))isNePal(X)active(__(nil, X))mark(X)
U11(mark(X))U11(X)active(__(X, nil))mark(X)
__(active(X1), X2)__(X1, X2)mark(__(X1, X2))active(__(mark(X1), mark(X2)))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
active(U12(tt))mark(tt)__(X1, mark(X2))__(X1, X2)
active(U11(tt))mark(U12(tt))mark(U11(X))active(U11(mark(X)))
U11(active(X))U11(X)mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)U12(active(X))U12(X)
active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))isNePal(mark(X))isNePal(X)
active(isNePal(__(I, __(P, I))))mark(U11(tt))mark(nil)active(nil)
__(X1, active(X2))__(X1, X2)U12(mark(X))U12(X)

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

mark#(U12(X))mark#(X)mark#(U11(X))mark#(X)
mark#(isNePal(X))mark#(X)

Problem 9: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(U11(tt))mark#(U12(tt))active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))
active#(__(X, nil))mark#(X)active#(__(nil, X))mark#(X)
mark#(U11(X))active#(U11(mark(X)))mark#(__(X1, X2))mark#(X1)
mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))active#(isNePal(__(I, __(P, I))))mark#(U11(tt))
mark#(isNePal(X))active#(isNePal(mark(X)))mark#(__(X1, X2))mark#(X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


Polynomial Interpretation

Improved Usable rules

isNePal(active(X))isNePal(X)active(__(nil, X))mark(X)
U11(mark(X))U11(X)active(__(X, nil))mark(X)
__(active(X1), X2)__(X1, X2)mark(__(X1, X2))active(__(mark(X1), mark(X2)))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
active(U12(tt))mark(tt)__(X1, mark(X2))__(X1, X2)
active(U11(tt))mark(U12(tt))mark(U11(X))active(U11(mark(X)))
U11(active(X))U11(X)mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)U12(active(X))U12(X)
active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))isNePal(mark(X))isNePal(X)
active(isNePal(__(I, __(P, I))))mark(U11(tt))mark(nil)active(nil)
__(X1, active(X2))__(X1, X2)U12(mark(X))U12(X)

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

active#(U11(tt))mark#(U12(tt))

Problem 10: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))active#(__(X, nil))mark#(X)
active#(__(nil, X))mark#(X)mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))
mark#(__(X1, X2))mark#(X1)mark#(U11(X))active#(U11(mark(X)))
mark#(isNePal(X))active#(isNePal(mark(X)))active#(isNePal(__(I, __(P, I))))mark#(U11(tt))
mark#(__(X1, X2))mark#(X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, U11, __, active, U12, mark, nil

Strategy


Polynomial Interpretation

Improved Usable rules

isNePal(active(X))isNePal(X)__(mark(X1), X2)__(X1, X2)
U11(mark(X))U11(X)isNePal(mark(X))isNePal(X)
__(active(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(X1, active(X2))__(X1, X2)U11(active(X))U11(X)

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

mark#(U11(X))active#(U11(mark(X)))

Problem 11: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))active#(__(X, nil))mark#(X)
active#(__(nil, X))mark#(X)mark#(__(X1, X2))mark#(X1)
mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))active#(isNePal(__(I, __(P, I))))mark#(U11(tt))
mark#(isNePal(X))active#(isNePal(mark(X)))mark#(__(X1, X2))mark#(X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


Polynomial Interpretation

Improved Usable rules

isNePal(active(X))isNePal(X)active(__(nil, X))mark(X)
U11(mark(X))U11(X)active(__(X, nil))mark(X)
__(active(X1), X2)__(X1, X2)mark(__(X1, X2))active(__(mark(X1), mark(X2)))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
active(U12(tt))mark(tt)__(X1, mark(X2))__(X1, X2)
active(U11(tt))mark(U12(tt))mark(U11(X))active(U11(mark(X)))
U11(active(X))U11(X)mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)U12(active(X))U12(X)
active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))isNePal(mark(X))isNePal(X)
active(isNePal(__(I, __(P, I))))mark(U11(tt))mark(nil)active(nil)
__(X1, active(X2))__(X1, X2)U12(mark(X))U12(X)

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

active#(__(X, nil))mark#(X)active#(__(nil, X))mark#(X)

Problem 12: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))
mark#(__(X1, X2))mark#(X1)mark#(isNePal(X))active#(isNePal(mark(X)))
active#(isNePal(__(I, __(P, I))))mark#(U11(tt))mark#(__(X1, X2))mark#(X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, U11, __, active, U12, mark, nil

Strategy


Polynomial Interpretation

Improved Usable rules

isNePal(active(X))isNePal(X)active(__(nil, X))mark(X)
U11(mark(X))U11(X)active(__(X, nil))mark(X)
__(active(X1), X2)__(X1, X2)mark(__(X1, X2))active(__(mark(X1), mark(X2)))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
active(U12(tt))mark(tt)__(X1, mark(X2))__(X1, X2)
active(U11(tt))mark(U12(tt))mark(U11(X))active(U11(mark(X)))
U11(active(X))U11(X)mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)U12(active(X))U12(X)
active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))isNePal(mark(X))isNePal(X)
active(isNePal(__(I, __(P, I))))mark(U11(tt))mark(nil)active(nil)
__(X1, active(X2))__(X1, X2)U12(mark(X))U12(X)

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

active#(isNePal(__(I, __(P, I))))mark#(U11(tt))

Problem 13: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))mark#(__(X1, X2))mark#(X1)
mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))mark#(isNePal(X))active#(isNePal(mark(X)))
mark#(__(X1, X2))mark#(X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


Polynomial Interpretation

Improved Usable rules

isNePal(active(X))isNePal(X)active(__(nil, X))mark(X)
U11(mark(X))U11(X)active(__(X, nil))mark(X)
__(active(X1), X2)__(X1, X2)mark(__(X1, X2))active(__(mark(X1), mark(X2)))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
active(U12(tt))mark(tt)__(X1, mark(X2))__(X1, X2)
active(U11(tt))mark(U12(tt))mark(U11(X))active(U11(mark(X)))
U11(active(X))U11(X)mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)U12(active(X))U12(X)
active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))isNePal(mark(X))isNePal(X)
active(isNePal(__(I, __(P, I))))mark(U11(tt))mark(nil)active(nil)
__(X1, active(X2))__(X1, X2)U12(mark(X))U12(X)

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

mark#(__(X1, X2))mark#(X1)mark#(__(X1, X2))mark#(X2)

Problem 14: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))
mark#(isNePal(X))active#(isNePal(mark(X)))

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, U11, __, active, U12, mark, nil

Strategy


Polynomial Interpretation

Improved Usable rules

isNePal(active(X))isNePal(X)active(__(nil, X))mark(X)
U11(mark(X))U11(X)active(__(X, nil))mark(X)
__(active(X1), X2)__(X1, X2)mark(__(X1, X2))active(__(mark(X1), mark(X2)))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
active(U12(tt))mark(tt)__(X1, mark(X2))__(X1, X2)
active(U11(tt))mark(U12(tt))mark(U11(X))active(U11(mark(X)))
U11(active(X))U11(X)mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)U12(active(X))U12(X)
active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))isNePal(mark(X))isNePal(X)
active(isNePal(__(I, __(P, I))))mark(U11(tt))mark(nil)active(nil)
__(X1, active(X2))__(X1, X2)U12(mark(X))U12(X)

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

active#(__(__(X, Y), Z))mark#(__(X, __(Y, Z)))

Problem 15: DependencyGraph



Dependency Pair Problem

Dependency Pairs

mark#(__(X1, X2))active#(__(mark(X1), mark(X2)))mark#(isNePal(X))active#(isNePal(mark(X)))

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


There are no SCCs!

Problem 4: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

isNePal#(active(X))isNePal#(X)isNePal#(mark(X))isNePal#(X)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

isNePal#(active(X))isNePal#(X)isNePal#(mark(X))isNePal#(X)

Problem 5: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U11#(active(X))U11#(X)U11#(mark(X))U11#(X)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U11#(active(X))U11#(X)U11#(mark(X))U11#(X)

Problem 6: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

__#(active(X1), X2)__#(X1, X2)__#(mark(X1), X2)__#(X1, X2)
__#(X1, mark(X2))__#(X1, X2)__#(X1, active(X2))__#(X1, X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, active, __, U11, mark, U12, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

__#(mark(X1), X2)__#(X1, X2)__#(active(X1), X2)__#(X1, X2)

Problem 7: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

__#(X1, mark(X2))__#(X1, X2)__#(X1, active(X2))__#(X1, X2)

Rewrite Rules

active(__(__(X, Y), Z))mark(__(X, __(Y, Z)))active(__(X, nil))mark(X)
active(__(nil, X))mark(X)active(U11(tt))mark(U12(tt))
active(U12(tt))mark(tt)active(isNePal(__(I, __(P, I))))mark(U11(tt))
mark(__(X1, X2))active(__(mark(X1), mark(X2)))mark(nil)active(nil)
mark(U11(X))active(U11(mark(X)))mark(tt)active(tt)
mark(U12(X))active(U12(mark(X)))mark(isNePal(X))active(isNePal(mark(X)))
__(mark(X1), X2)__(X1, X2)__(X1, mark(X2))__(X1, X2)
__(active(X1), X2)__(X1, X2)__(X1, active(X2))__(X1, X2)
U11(mark(X))U11(X)U11(active(X))U11(X)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNePal(mark(X))isNePal(X)isNePal(active(X))isNePal(X)

Original Signature

Termination of terms over the following signature is verified: tt, isNePal, U11, __, active, U12, mark, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

__#(X1, mark(X2))__#(X1, X2)__#(X1, active(X2))__#(X1, X2)