TIMEOUT
The TRS could not be proven terminating. The proof attempt took 60002 ms.
The following DP Processors were used
Problem 1 was processed with processor DependencyGraph (159ms).
| Problem 2 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (1ms), PolynomialLinearRange4iUR (1225ms), DependencyGraph (1ms), PolynomialLinearRange8NegiUR (15000ms), DependencyGraph (1ms), ReductionPairSAT (1464ms), DependencyGraph (1ms), SizeChangePrinciple (2966ms)].
| Problem 3 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (32ms), PolynomialLinearRange4iUR (1104ms), DependencyGraph (31ms), PolynomialLinearRange8NegiUR (1ms), DependencyGraph (31ms), ReductionPairSAT (1650ms), DependencyGraph (27ms), SizeChangePrinciple (timeout)].
The following open problems remain:
Open Dependency Pair Problem 2
Dependency Pairs
eq#(n__s(X), n__s(Y)) | → | eq#(activate(X), activate(Y)) |
Rewrite Rules
eq(n__0, n__0) | → | true | | eq(n__s(X), n__s(Y)) | → | eq(activate(X), activate(Y)) |
eq(X, Y) | → | false | | inf(X) | → | cons(X, n__inf(n__s(X))) |
take(0, X) | → | nil | | take(s(X), cons(Y, L)) | → | cons(activate(Y), n__take(activate(X), activate(L))) |
length(nil) | → | 0 | | length(cons(X, L)) | → | s(n__length(activate(L))) |
0 | → | n__0 | | s(X) | → | n__s(X) |
inf(X) | → | n__inf(X) | | take(X1, X2) | → | n__take(X1, X2) |
length(X) | → | n__length(X) | | activate(n__0) | → | 0 |
activate(n__s(X)) | → | s(X) | | activate(n__inf(X)) | → | inf(activate(X)) |
activate(n__take(X1, X2)) | → | take(activate(X1), activate(X2)) | | activate(n__length(X)) | → | length(activate(X)) |
activate(X) | → | X |
Original Signature
Termination of terms over the following signature is verified: n__inf, n__length, inf, true, n__take, activate, n__s, n__0, 0, s, take, length, false, eq, cons, nil
Open Dependency Pair Problem 3
Dependency Pairs
take#(s(X), cons(Y, L)) | → | activate#(X) | | length#(cons(X, L)) | → | activate#(L) |
activate#(n__length(X)) | → | activate#(X) | | activate#(n__take(X1, X2)) | → | activate#(X1) |
take#(s(X), cons(Y, L)) | → | activate#(Y) | | activate#(n__take(X1, X2)) | → | activate#(X2) |
activate#(n__inf(X)) | → | activate#(X) | | activate#(n__take(X1, X2)) | → | take#(activate(X1), activate(X2)) |
activate#(n__length(X)) | → | length#(activate(X)) | | take#(s(X), cons(Y, L)) | → | activate#(L) |
Rewrite Rules
eq(n__0, n__0) | → | true | | eq(n__s(X), n__s(Y)) | → | eq(activate(X), activate(Y)) |
eq(X, Y) | → | false | | inf(X) | → | cons(X, n__inf(n__s(X))) |
take(0, X) | → | nil | | take(s(X), cons(Y, L)) | → | cons(activate(Y), n__take(activate(X), activate(L))) |
length(nil) | → | 0 | | length(cons(X, L)) | → | s(n__length(activate(L))) |
0 | → | n__0 | | s(X) | → | n__s(X) |
inf(X) | → | n__inf(X) | | take(X1, X2) | → | n__take(X1, X2) |
length(X) | → | n__length(X) | | activate(n__0) | → | 0 |
activate(n__s(X)) | → | s(X) | | activate(n__inf(X)) | → | inf(activate(X)) |
activate(n__take(X1, X2)) | → | take(activate(X1), activate(X2)) | | activate(n__length(X)) | → | length(activate(X)) |
activate(X) | → | X |
Original Signature
Termination of terms over the following signature is verified: n__inf, n__length, inf, true, n__take, activate, n__s, n__0, 0, s, take, length, false, eq, cons, nil
Problem 1: DependencyGraph
Dependency Pair Problem
Dependency Pairs
activate#(n__inf(X)) | → | inf#(activate(X)) | | take#(s(X), cons(Y, L)) | → | activate#(X) |
length#(cons(X, L)) | → | activate#(L) | | activate#(n__length(X)) | → | activate#(X) |
take#(s(X), cons(Y, L)) | → | activate#(Y) | | eq#(n__s(X), n__s(Y)) | → | activate#(Y) |
length#(cons(X, L)) | → | s#(n__length(activate(L))) | | activate#(n__take(X1, X2)) | → | take#(activate(X1), activate(X2)) |
activate#(n__inf(X)) | → | activate#(X) | | activate#(n__length(X)) | → | length#(activate(X)) |
take#(s(X), cons(Y, L)) | → | activate#(L) | | activate#(n__s(X)) | → | s#(X) |
activate#(n__take(X1, X2)) | → | activate#(X1) | | eq#(n__s(X), n__s(Y)) | → | activate#(X) |
eq#(n__s(X), n__s(Y)) | → | eq#(activate(X), activate(Y)) | | activate#(n__0) | → | 0# |
activate#(n__take(X1, X2)) | → | activate#(X2) | | length#(nil) | → | 0# |
Rewrite Rules
eq(n__0, n__0) | → | true | | eq(n__s(X), n__s(Y)) | → | eq(activate(X), activate(Y)) |
eq(X, Y) | → | false | | inf(X) | → | cons(X, n__inf(n__s(X))) |
take(0, X) | → | nil | | take(s(X), cons(Y, L)) | → | cons(activate(Y), n__take(activate(X), activate(L))) |
length(nil) | → | 0 | | length(cons(X, L)) | → | s(n__length(activate(L))) |
0 | → | n__0 | | s(X) | → | n__s(X) |
inf(X) | → | n__inf(X) | | take(X1, X2) | → | n__take(X1, X2) |
length(X) | → | n__length(X) | | activate(n__0) | → | 0 |
activate(n__s(X)) | → | s(X) | | activate(n__inf(X)) | → | inf(activate(X)) |
activate(n__take(X1, X2)) | → | take(activate(X1), activate(X2)) | | activate(n__length(X)) | → | length(activate(X)) |
activate(X) | → | X |
Original Signature
Termination of terms over the following signature is verified: n__inf, n__length, inf, true, n__take, activate, n__s, n__0, 0, s, take, length, false, nil, cons, eq
Strategy
The following SCCs where found
eq#(n__s(X), n__s(Y)) → eq#(activate(X), activate(Y)) |
take#(s(X), cons(Y, L)) → activate#(X) | length#(cons(X, L)) → activate#(L) |
activate#(n__length(X)) → activate#(X) | activate#(n__take(X1, X2)) → activate#(X1) |
take#(s(X), cons(Y, L)) → activate#(Y) | activate#(n__take(X1, X2)) → activate#(X2) |
activate#(n__take(X1, X2)) → take#(activate(X1), activate(X2)) | activate#(n__inf(X)) → activate#(X) |
activate#(n__length(X)) → length#(activate(X)) | take#(s(X), cons(Y, L)) → activate#(L) |