YES

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

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (120ms).
 | – Problem 2 was processed with processor SubtermCriterion (1ms).
 | – Problem 3 was processed with processor SubtermCriterion (0ms).
 | – Problem 4 was processed with processor PolynomialLinearRange4iUR (1691ms).
 |    | – Problem 6 was processed with processor PolynomialLinearRange4iUR (731ms).
 |    |    | – Problem 7 was processed with processor PolynomialLinearRange4iUR (676ms).
 |    |    |    | – Problem 8 was processed with processor DependencyGraph (1ms).
 | – Problem 5 was processed with processor SubtermCriterion (0ms).

Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

c#(active(X))c#(X)active#(f(f(a)))mark#(c(f(g(f(a)))))
g#(mark(X))g#(X)mark#(g(X))mark#(X)
mark#(g(X))g#(mark(X))mark#(c(X))active#(c(X))
mark#(a)active#(a)f#(active(X))f#(X)
mark#(f(X))mark#(X)mark#(f(X))active#(f(mark(X)))
g#(active(X))g#(X)active#(f(f(a)))c#(f(g(f(a))))
active#(f(f(a)))f#(a)active#(f(f(a)))f#(g(f(a)))
active#(f(f(a)))g#(f(a))mark#(g(X))active#(g(mark(X)))
mark#(c(X))c#(X)c#(mark(X))c#(X)
mark#(f(X))f#(mark(X))f#(mark(X))f#(X)

Rewrite Rules

active(f(f(a)))mark(c(f(g(f(a)))))mark(f(X))active(f(mark(X)))
mark(a)active(a)mark(c(X))active(c(X))
mark(g(X))active(g(mark(X)))f(mark(X))f(X)
f(active(X))f(X)c(mark(X))c(X)
c(active(X))c(X)g(mark(X))g(X)
g(active(X))g(X)

Original Signature

Termination of terms over the following signature is verified: f, g, c, a, active, mark

Strategy


The following SCCs where found

f#(active(X)) → f#(X)f#(mark(X)) → f#(X)

g#(active(X)) → g#(X)g#(mark(X)) → g#(X)

active#(f(f(a))) → mark#(c(f(g(f(a)))))mark#(g(X)) → mark#(X)
mark#(c(X)) → active#(c(X))mark#(g(X)) → active#(g(mark(X)))
mark#(f(X)) → mark#(X)mark#(f(X)) → active#(f(mark(X)))

c#(active(X)) → c#(X)c#(mark(X)) → c#(X)

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

c#(active(X))c#(X)c#(mark(X))c#(X)

Rewrite Rules

active(f(f(a)))mark(c(f(g(f(a)))))mark(f(X))active(f(mark(X)))
mark(a)active(a)mark(c(X))active(c(X))
mark(g(X))active(g(mark(X)))f(mark(X))f(X)
f(active(X))f(X)c(mark(X))c(X)
c(active(X))c(X)g(mark(X))g(X)
g(active(X))g(X)

Original Signature

Termination of terms over the following signature is verified: f, g, c, a, active, mark

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

c#(active(X))c#(X)c#(mark(X))c#(X)

Problem 3: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

g#(active(X))g#(X)g#(mark(X))g#(X)

Rewrite Rules

active(f(f(a)))mark(c(f(g(f(a)))))mark(f(X))active(f(mark(X)))
mark(a)active(a)mark(c(X))active(c(X))
mark(g(X))active(g(mark(X)))f(mark(X))f(X)
f(active(X))f(X)c(mark(X))c(X)
c(active(X))c(X)g(mark(X))g(X)
g(active(X))g(X)

Original Signature

Termination of terms over the following signature is verified: f, g, c, a, active, mark

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

g#(active(X))g#(X)g#(mark(X))g#(X)

Problem 4: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(f(f(a)))mark#(c(f(g(f(a)))))mark#(g(X))mark#(X)
mark#(c(X))active#(c(X))mark#(g(X))active#(g(mark(X)))
mark#(f(X))mark#(X)mark#(f(X))active#(f(mark(X)))

Rewrite Rules

active(f(f(a)))mark(c(f(g(f(a)))))mark(f(X))active(f(mark(X)))
mark(a)active(a)mark(c(X))active(c(X))
mark(g(X))active(g(mark(X)))f(mark(X))f(X)
f(active(X))f(X)c(mark(X))c(X)
c(active(X))c(X)g(mark(X))g(X)
g(active(X))g(X)

Original Signature

Termination of terms over the following signature is verified: f, g, c, a, active, mark

Strategy


Polynomial Interpretation

Improved Usable rules

c(mark(X))c(X)c(active(X))c(X)

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

mark#(g(X))mark#(X)mark#(g(X))active#(g(mark(X)))

Problem 6: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(f(f(a)))mark#(c(f(g(f(a)))))mark#(c(X))active#(c(X))
mark#(f(X))mark#(X)mark#(f(X))active#(f(mark(X)))

Rewrite Rules

active(f(f(a)))mark(c(f(g(f(a)))))mark(f(X))active(f(mark(X)))
mark(a)active(a)mark(c(X))active(c(X))
mark(g(X))active(g(mark(X)))f(mark(X))f(X)
f(active(X))f(X)c(mark(X))c(X)
c(active(X))c(X)g(mark(X))g(X)
g(active(X))g(X)

Original Signature

Termination of terms over the following signature is verified: f, g, c, a, active, mark

Strategy


Polynomial Interpretation

Improved Usable rules

c(mark(X))c(X)c(active(X))c(X)
f(active(X))f(X)f(mark(X))f(X)

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

mark#(c(X))active#(c(X))

Problem 7: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

active#(f(f(a)))mark#(c(f(g(f(a)))))mark#(f(X))mark#(X)
mark#(f(X))active#(f(mark(X)))

Rewrite Rules

active(f(f(a)))mark(c(f(g(f(a)))))mark(f(X))active(f(mark(X)))
mark(a)active(a)mark(c(X))active(c(X))
mark(g(X))active(g(mark(X)))f(mark(X))f(X)
f(active(X))f(X)c(mark(X))c(X)
c(active(X))c(X)g(mark(X))g(X)
g(active(X))g(X)

Original Signature

Termination of terms over the following signature is verified: f, g, c, a, active, mark

Strategy


Polynomial Interpretation

Improved Usable rules

c(mark(X))c(X)c(active(X))c(X)

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

mark#(f(X))mark#(X)mark#(f(X))active#(f(mark(X)))

Problem 8: DependencyGraph



Dependency Pair Problem

Dependency Pairs

active#(f(f(a)))mark#(c(f(g(f(a)))))

Rewrite Rules

active(f(f(a)))mark(c(f(g(f(a)))))mark(f(X))active(f(mark(X)))
mark(a)active(a)mark(c(X))active(c(X))
mark(g(X))active(g(mark(X)))f(mark(X))f(X)
f(active(X))f(X)c(mark(X))c(X)
c(active(X))c(X)g(mark(X))g(X)
g(active(X))g(X)

Original Signature

Termination of terms over the following signature is verified: f, g, c, a, active, mark

Strategy


There are no SCCs!

Problem 5: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

f#(active(X))f#(X)f#(mark(X))f#(X)

Rewrite Rules

active(f(f(a)))mark(c(f(g(f(a)))))mark(f(X))active(f(mark(X)))
mark(a)active(a)mark(c(X))active(c(X))
mark(g(X))active(g(mark(X)))f(mark(X))f(X)
f(active(X))f(X)c(mark(X))c(X)
c(active(X))c(X)g(mark(X))g(X)
g(active(X))g(X)

Original Signature

Termination of terms over the following signature is verified: f, g, c, a, active, mark

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

f#(active(X))f#(X)f#(mark(X))f#(X)