TIMEOUT
The TRS could not be proven terminating. The proof attempt took 60000 ms.
The following DP Processors were used
Problem 1 was processed with processor DependencyGraph (140ms).
| Problem 2 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (47ms), PolynomialLinearRange4iUR (2090ms), DependencyGraph (48ms), PolynomialLinearRange8NegiUR (12397ms), DependencyGraph (41ms), ReductionPairSAT (9212ms), DependencyGraph (37ms), SizeChangePrinciple (timeout)].
The following open problems remain:
Open Dependency Pair Problem 2
Dependency Pairs
activate#(n__nats(X)) | → | activate#(X) | | activate#(n__s(X)) | → | activate#(X) |
activate#(n__filter(X1, X2, X3)) | → | filter#(activate(X1), activate(X2), activate(X3)) | | filter#(cons(X, Y), 0, M) | → | activate#(Y) |
activate#(n__filter(X1, X2, X3)) | → | activate#(X3) | | activate#(n__filter(X1, X2, X3)) | → | activate#(X2) |
filter#(cons(X, Y), s(N), M) | → | activate#(Y) | | sieve#(cons(s(N), Y)) | → | activate#(Y) |
activate#(n__sieve(X)) | → | activate#(X) | | sieve#(cons(0, Y)) | → | activate#(Y) |
activate#(n__sieve(X)) | → | sieve#(activate(X)) | | activate#(n__filter(X1, X2, X3)) | → | activate#(X1) |
Rewrite Rules
filter(cons(X, Y), 0, M) | → | cons(0, n__filter(activate(Y), M, M)) | | filter(cons(X, Y), s(N), M) | → | cons(X, n__filter(activate(Y), N, M)) |
sieve(cons(0, Y)) | → | cons(0, n__sieve(activate(Y))) | | sieve(cons(s(N), Y)) | → | cons(s(N), n__sieve(n__filter(activate(Y), N, N))) |
nats(N) | → | cons(N, n__nats(n__s(N))) | | zprimes | → | sieve(nats(s(s(0)))) |
filter(X1, X2, X3) | → | n__filter(X1, X2, X3) | | sieve(X) | → | n__sieve(X) |
nats(X) | → | n__nats(X) | | s(X) | → | n__s(X) |
activate(n__filter(X1, X2, X3)) | → | filter(activate(X1), activate(X2), activate(X3)) | | activate(n__sieve(X)) | → | sieve(activate(X)) |
activate(n__nats(X)) | → | nats(activate(X)) | | activate(n__s(X)) | → | s(activate(X)) |
activate(X) | → | X |
Original Signature
Termination of terms over the following signature is verified: n__nats, n__s, activate, nats, 0, sieve, s, n__filter, zprimes, n__sieve, filter, cons
Problem 1: DependencyGraph
Dependency Pair Problem
Dependency Pairs
sieve#(cons(s(N), Y)) | → | s#(N) | | activate#(n__nats(X)) | → | activate#(X) |
activate#(n__s(X)) | → | activate#(X) | | activate#(n__filter(X1, X2, X3)) | → | filter#(activate(X1), activate(X2), activate(X3)) |
activate#(n__nats(X)) | → | nats#(activate(X)) | | filter#(cons(X, Y), 0, M) | → | activate#(Y) |
activate#(n__filter(X1, X2, X3)) | → | activate#(X3) | | zprimes# | → | s#(0) |
zprimes# | → | nats#(s(s(0))) | | zprimes# | → | sieve#(nats(s(s(0)))) |
zprimes# | → | s#(s(0)) | | activate#(n__filter(X1, X2, X3)) | → | activate#(X2) |
filter#(cons(X, Y), s(N), M) | → | activate#(Y) | | sieve#(cons(s(N), Y)) | → | activate#(Y) |
activate#(n__sieve(X)) | → | activate#(X) | | sieve#(cons(0, Y)) | → | activate#(Y) |
activate#(n__sieve(X)) | → | sieve#(activate(X)) | | activate#(n__filter(X1, X2, X3)) | → | activate#(X1) |
activate#(n__s(X)) | → | s#(activate(X)) |
Rewrite Rules
filter(cons(X, Y), 0, M) | → | cons(0, n__filter(activate(Y), M, M)) | | filter(cons(X, Y), s(N), M) | → | cons(X, n__filter(activate(Y), N, M)) |
sieve(cons(0, Y)) | → | cons(0, n__sieve(activate(Y))) | | sieve(cons(s(N), Y)) | → | cons(s(N), n__sieve(n__filter(activate(Y), N, N))) |
nats(N) | → | cons(N, n__nats(n__s(N))) | | zprimes | → | sieve(nats(s(s(0)))) |
filter(X1, X2, X3) | → | n__filter(X1, X2, X3) | | sieve(X) | → | n__sieve(X) |
nats(X) | → | n__nats(X) | | s(X) | → | n__s(X) |
activate(n__filter(X1, X2, X3)) | → | filter(activate(X1), activate(X2), activate(X3)) | | activate(n__sieve(X)) | → | sieve(activate(X)) |
activate(n__nats(X)) | → | nats(activate(X)) | | activate(n__s(X)) | → | s(activate(X)) |
activate(X) | → | X |
Original Signature
Termination of terms over the following signature is verified: activate, n__s, n__nats, nats, 0, s, sieve, n__filter, zprimes, filter, n__sieve, cons
Strategy
The following SCCs where found
activate#(n__filter(X1, X2, X3)) → activate#(X2) | filter#(cons(X, Y), s(N), M) → activate#(Y) |
sieve#(cons(s(N), Y)) → activate#(Y) | activate#(n__nats(X)) → activate#(X) |
activate#(n__filter(X1, X2, X3)) → filter#(activate(X1), activate(X2), activate(X3)) | activate#(n__s(X)) → activate#(X) |
activate#(n__sieve(X)) → activate#(X) | filter#(cons(X, Y), 0, M) → activate#(Y) |
activate#(n__filter(X1, X2, X3)) → activate#(X3) | sieve#(cons(0, Y)) → activate#(Y) |
activate#(n__sieve(X)) → sieve#(activate(X)) | activate#(n__filter(X1, X2, X3)) → activate#(X1) |