YES

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

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (27ms).
 | – Problem 2 was processed with processor SubtermCriterion (3ms).
 | – Problem 3 was processed with processor SubtermCriterion (1ms).

Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

minus#(+(x, y))+#(minus(y), minus(x))*#(x, +(y, z))*#(x, z)
*#(x, minus(y))minus#(*(x, y))*#(x, minus(y))*#(x, y)
minus#(+(x, y))minus#(x)*#(x, +(y, z))+#(*(x, y), *(x, z))
minus#(+(x, y))minus#(y)*#(x, +(y, z))*#(x, y)

Rewrite Rules

+(x, 0)x+(minus(x), x)0
minus(0)0minus(minus(x))x
minus(+(x, y))+(minus(y), minus(x))*(x, 1)x
*(x, 0)0*(x, +(y, z))+(*(x, y), *(x, z))
*(x, minus(y))minus(*(x, y))

Original Signature

Termination of terms over the following signature is verified: 1, 0, minus, *, +

Strategy


The following SCCs where found

minus#(+(x, y)) → minus#(x)minus#(+(x, y)) → minus#(y)

*#(x, +(y, z)) → *#(x, z)*#(x, minus(y)) → *#(x, y)
*#(x, +(y, z)) → *#(x, y)

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

minus#(+(x, y))minus#(x)minus#(+(x, y))minus#(y)

Rewrite Rules

+(x, 0)x+(minus(x), x)0
minus(0)0minus(minus(x))x
minus(+(x, y))+(minus(y), minus(x))*(x, 1)x
*(x, 0)0*(x, +(y, z))+(*(x, y), *(x, z))
*(x, minus(y))minus(*(x, y))

Original Signature

Termination of terms over the following signature is verified: 1, 0, minus, *, +

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

minus#(+(x, y))minus#(x)minus#(+(x, y))minus#(y)

Problem 3: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

*#(x, +(y, z))*#(x, z)*#(x, minus(y))*#(x, y)
*#(x, +(y, z))*#(x, y)

Rewrite Rules

+(x, 0)x+(minus(x), x)0
minus(0)0minus(minus(x))x
minus(+(x, y))+(minus(y), minus(x))*(x, 1)x
*(x, 0)0*(x, +(y, z))+(*(x, y), *(x, z))
*(x, minus(y))minus(*(x, y))

Original Signature

Termination of terms over the following signature is verified: 1, 0, minus, *, +

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

*#(x, +(y, z))*#(x, z)*#(x, minus(y))*#(x, y)
*#(x, +(y, z))*#(x, y)