MAYBE

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

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (0ms).
 | – Problem 2 was processed with processor SubtermCriterion (0ms).
 | – Problem 3 was processed with processor SubtermCriterion (0ms).
 | – Problem 4 remains open; application of the following processors failed [SubtermCriterion (0ms), DependencyGraph (1ms), PolynomialLinearRange4iUR (56ms), DependencyGraph (0ms), PolynomialLinearRange8NegiUR (35ms), DependencyGraph (1ms), ReductionPairSAT (25ms), DependencyGraph (1ms), SizeChangePrinciple (4ms)].

The following open problems remain:



Open Dependency Pair Problem 4

Dependency Pairs

from#(X) → from#(s(X))

Rewrite Rules

and(true, X) → Xand(false, Y) → false
if(true, X, Y) → Xif(false, X, Y) → Y
add(0, X) → Xadd(s(X), Y) → s(add(X, Y))
first(0, X) → nilfirst(s(X), cons(Y, Z)) → cons(Y, first(X, Z))
from(X) → cons(X, from(s(X)))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, false, true, from, add, first, cons, nil, and


Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

add#(s(X), Y) → add#(X, Y)first#(s(X), cons(Y, Z)) → first#(X, Z)
from#(X) → from#(s(X))

Rewrite Rules

and(true, X) → Xand(false, Y) → false
if(true, X, Y) → Xif(false, X, Y) → Y
add(0, X) → Xadd(s(X), Y) → s(add(X, Y))
first(0, X) → nilfirst(s(X), cons(Y, Z)) → cons(Y, first(X, Z))
from(X) → cons(X, from(s(X)))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, true, false, from, add, first, and, nil, cons

Strategy


The following SCCs where found

add#(s(X), Y) → add#(X, Y)

first#(s(X), cons(Y, Z)) → first#(X, Z)

from#(X) → from#(s(X))

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

first#(s(X), cons(Y, Z)) → first#(X, Z)

Rewrite Rules

and(true, X) → Xand(false, Y) → false
if(true, X, Y) → Xif(false, X, Y) → Y
add(0, X) → Xadd(s(X), Y) → s(add(X, Y))
first(0, X) → nilfirst(s(X), cons(Y, Z)) → cons(Y, first(X, Z))
from(X) → cons(X, from(s(X)))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, true, false, from, add, first, and, nil, cons

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

first#(s(X), cons(Y, Z)) → first#(X, Z)

Problem 3: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

add#(s(X), Y) → add#(X, Y)

Rewrite Rules

and(true, X) → Xand(false, Y) → false
if(true, X, Y) → Xif(false, X, Y) → Y
add(0, X) → Xadd(s(X), Y) → s(add(X, Y))
first(0, X) → nilfirst(s(X), cons(Y, Z)) → cons(Y, first(X, Z))
from(X) → cons(X, from(s(X)))

Original Signature

Termination of terms over the following signature is verified: 0, s, if, true, false, from, add, first, and, nil, cons

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

add#(s(X), Y) → add#(X, Y)