YES
The TRS could be proven terminating. The proof took 39 ms.
The following DP Processors were used
Problem 1 was processed with processor DependencyGraph (8ms).
| Problem 2 was processed with processor SubtermCriterion (0ms).
| Problem 3 was processed with processor SubtermCriterion (1ms).
| Problem 4 was processed with processor SubtermCriterion (1ms).
Problem 1: DependencyGraph
Dependency Pair Problem
Dependency Pairs
exp#(x, s(y)) | → | exp#(x, y) | | *#(s(x), y) | → | *#(x, y) |
exp#(x, s(y)) | → | *#(x, exp(x, y)) | | -#(s(x), s(y)) | → | -#(x, y) |
Rewrite Rules
exp(x, 0) | → | s(0) | | exp(x, s(y)) | → | *(x, exp(x, y)) |
*(0, y) | → | 0 | | *(s(x), y) | → | +(y, *(x, y)) |
-(0, y) | → | 0 | | -(x, 0) | → | x |
-(s(x), s(y)) | → | -(x, y) |
Original Signature
Termination of terms over the following signature is verified: exp, 0, s, *, +, -
Strategy
The following SCCs where found
exp#(x, s(y)) → exp#(x, y) |
-#(s(x), s(y)) → -#(x, y) |
Problem 2: SubtermCriterion
Dependency Pair Problem
Dependency Pairs
Rewrite Rules
exp(x, 0) | → | s(0) | | exp(x, s(y)) | → | *(x, exp(x, y)) |
*(0, y) | → | 0 | | *(s(x), y) | → | +(y, *(x, y)) |
-(0, y) | → | 0 | | -(x, 0) | → | x |
-(s(x), s(y)) | → | -(x, y) |
Original Signature
Termination of terms over the following signature is verified: exp, 0, s, *, +, -
Strategy
Projection
The following projection was used:
Thus, the following dependency pairs are removed:
Problem 3: SubtermCriterion
Dependency Pair Problem
Dependency Pairs
exp#(x, s(y)) | → | exp#(x, y) |
Rewrite Rules
exp(x, 0) | → | s(0) | | exp(x, s(y)) | → | *(x, exp(x, y)) |
*(0, y) | → | 0 | | *(s(x), y) | → | +(y, *(x, y)) |
-(0, y) | → | 0 | | -(x, 0) | → | x |
-(s(x), s(y)) | → | -(x, y) |
Original Signature
Termination of terms over the following signature is verified: exp, 0, s, *, +, -
Strategy
Projection
The following projection was used:
Thus, the following dependency pairs are removed:
exp#(x, s(y)) | → | exp#(x, y) |
Problem 4: SubtermCriterion
Dependency Pair Problem
Dependency Pairs
-#(s(x), s(y)) | → | -#(x, y) |
Rewrite Rules
exp(x, 0) | → | s(0) | | exp(x, s(y)) | → | *(x, exp(x, y)) |
*(0, y) | → | 0 | | *(s(x), y) | → | +(y, *(x, y)) |
-(0, y) | → | 0 | | -(x, 0) | → | x |
-(s(x), s(y)) | → | -(x, y) |
Original Signature
Termination of terms over the following signature is verified: exp, 0, s, *, +, -
Strategy
Projection
The following projection was used:
Thus, the following dependency pairs are removed:
-#(s(x), s(y)) | → | -#(x, y) |