TIMEOUT

The TRS could not be proven terminating. The proof attempt took 60073 ms.

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (158ms).
 | – Problem 2 remains open; application of the following processors failed [SubtermCriterion (0ms), DependencyGraph (93ms), PolynomialLinearRange4iUR (1360ms), DependencyGraph (91ms), PolynomialLinearRange8NegiUR (7140ms), DependencyGraph (69ms), ReductionPairSAT (1824ms), DependencyGraph (66ms), SizeChangePrinciple (timeout)].

The following open problems remain:



Open Dependency Pair Problem 2

Dependency Pairs

sel#(s(X), cons(Y, Z))sel#(activate(X), activate(Z))dbl#(s(X))activate#(X)
activate#(n__indx(X1, X2))indx#(X1, X2)activate#(n__from(X))from#(X)
activate#(n__sel(X1, X2))sel#(X1, X2)dbls#(cons(X, Y))activate#(X)
from#(X)activate#(X)sel#(s(X), cons(Y, Z))activate#(Z)
activate#(n__dbl(X))dbl#(X)indx#(cons(X, Y), Z)activate#(Y)
dbls#(cons(X, Y))activate#(Y)sel#(0, cons(X, Y))activate#(X)
indx#(cons(X, Y), Z)activate#(X)sel#(s(X), cons(Y, Z))activate#(X)
activate#(n__dbls(X))dbls#(X)indx#(cons(X, Y), Z)activate#(Z)

Rewrite Rules

dbl(0)0dbl(s(X))s(n__s(n__dbl(activate(X))))
dbls(nil)nildbls(cons(X, Y))cons(n__dbl(activate(X)), n__dbls(activate(Y)))
sel(0, cons(X, Y))activate(X)sel(s(X), cons(Y, Z))sel(activate(X), activate(Z))
indx(nil, X)nilindx(cons(X, Y), Z)cons(n__sel(activate(X), activate(Z)), n__indx(activate(Y), activate(Z)))
from(X)cons(activate(X), n__from(n__s(activate(X))))s(X)n__s(X)
dbl(X)n__dbl(X)dbls(X)n__dbls(X)
sel(X1, X2)n__sel(X1, X2)indx(X1, X2)n__indx(X1, X2)
from(X)n__from(X)activate(n__s(X))s(X)
activate(n__dbl(X))dbl(X)activate(n__dbls(X))dbls(X)
activate(n__sel(X1, X2))sel(X1, X2)activate(n__indx(X1, X2))indx(X1, X2)
activate(n__from(X))from(X)activate(X)X

Original Signature

Termination of terms over the following signature is verified: n__indx, n__from, dbl, from, n__sel, dbls, activate, n__s, n__dbls, 0, s, indx, n__dbl, sel, nil, cons


Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

dbl#(s(X))s#(n__s(n__dbl(activate(X))))dbl#(s(X))activate#(X)
sel#(s(X), cons(Y, Z))sel#(activate(X), activate(Z))activate#(n__indx(X1, X2))indx#(X1, X2)
activate#(n__from(X))from#(X)activate#(n__s(X))s#(X)
activate#(n__sel(X1, X2))sel#(X1, X2)dbls#(cons(X, Y))activate#(X)
from#(X)activate#(X)sel#(s(X), cons(Y, Z))activate#(Z)
activate#(n__dbl(X))dbl#(X)indx#(cons(X, Y), Z)activate#(Y)
dbls#(cons(X, Y))activate#(Y)sel#(0, cons(X, Y))activate#(X)
indx#(cons(X, Y), Z)activate#(X)sel#(s(X), cons(Y, Z))activate#(X)
indx#(cons(X, Y), Z)activate#(Z)activate#(n__dbls(X))dbls#(X)

Rewrite Rules

dbl(0)0dbl(s(X))s(n__s(n__dbl(activate(X))))
dbls(nil)nildbls(cons(X, Y))cons(n__dbl(activate(X)), n__dbls(activate(Y)))
sel(0, cons(X, Y))activate(X)sel(s(X), cons(Y, Z))sel(activate(X), activate(Z))
indx(nil, X)nilindx(cons(X, Y), Z)cons(n__sel(activate(X), activate(Z)), n__indx(activate(Y), activate(Z)))
from(X)cons(activate(X), n__from(n__s(activate(X))))s(X)n__s(X)
dbl(X)n__dbl(X)dbls(X)n__dbls(X)
sel(X1, X2)n__sel(X1, X2)indx(X1, X2)n__indx(X1, X2)
from(X)n__from(X)activate(n__s(X))s(X)
activate(n__dbl(X))dbl(X)activate(n__dbls(X))dbls(X)
activate(n__sel(X1, X2))sel(X1, X2)activate(n__indx(X1, X2))indx(X1, X2)
activate(n__from(X))from(X)activate(X)X

Original Signature

Termination of terms over the following signature is verified: n__indx, n__from, dbl, from, n__sel, dbls, activate, n__s, n__dbls, 0, s, indx, sel, n__dbl, cons, nil

Strategy


The following SCCs where found

dbl#(s(X)) → activate#(X)sel#(s(X), cons(Y, Z)) → sel#(activate(X), activate(Z))
activate#(n__indx(X1, X2)) → indx#(X1, X2)activate#(n__from(X)) → from#(X)
activate#(n__sel(X1, X2)) → sel#(X1, X2)dbls#(cons(X, Y)) → activate#(X)
from#(X) → activate#(X)sel#(s(X), cons(Y, Z)) → activate#(Z)
indx#(cons(X, Y), Z) → activate#(Y)activate#(n__dbl(X)) → dbl#(X)
dbls#(cons(X, Y)) → activate#(Y)sel#(0, cons(X, Y)) → activate#(X)
indx#(cons(X, Y), Z) → activate#(X)sel#(s(X), cons(Y, Z)) → activate#(X)
indx#(cons(X, Y), Z) → activate#(Z)activate#(n__dbls(X)) → dbls#(X)