Term Rewriting System R:
[x, y, z]
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
double(0) -> 0
double(s(x)) -> s(s(double(x)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
plus(s(x), y) -> plus(x, s(y))
plus(s(x), y) -> s(plus(minus(x, y), double(y)))
plus(s(plus(x, y)), z) -> s(plus(plus(x, y), z))
Termination of R to be shown.
R
↳Dependency Pair Analysis
R contains the following Dependency Pairs:
MINUS(s(x), s(y)) -> MINUS(x, y)
DOUBLE(s(x)) -> DOUBLE(x)
PLUS(s(x), y) -> PLUS(x, y)
PLUS(s(x), y) -> PLUS(x, s(y))
PLUS(s(x), y) -> PLUS(minus(x, y), double(y))
PLUS(s(x), y) -> MINUS(x, y)
PLUS(s(x), y) -> DOUBLE(y)
PLUS(s(plus(x, y)), z) -> PLUS(plus(x, y), z)
Furthermore, R contains three SCCs.
R
↳DPs
→DP Problem 1
↳Size-Change Principle
→DP Problem 2
↳SCP
→DP Problem 3
↳AFS
Dependency Pair:
MINUS(s(x), s(y)) -> MINUS(x, y)
Rules:
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
double(0) -> 0
double(s(x)) -> s(s(double(x)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
plus(s(x), y) -> plus(x, s(y))
plus(s(x), y) -> s(plus(minus(x, y), double(y)))
plus(s(plus(x, y)), z) -> s(plus(plus(x, y), z))
We number the DPs as follows:
- MINUS(s(x), s(y)) -> MINUS(x, y)
and get the following Size-Change Graph(s):
which lead(s) to this/these maximal multigraph(s):
DP: empty set
Oriented Rules: none
We used the order Homeomorphic Embedding Order with Non-Strict Precedence.
trivial
with Argument Filtering System:
s(x1) -> s(x1)
We obtain no new DP problems.
R
↳DPs
→DP Problem 1
↳SCP
→DP Problem 2
↳Size-Change Principle
→DP Problem 3
↳AFS
Dependency Pair:
DOUBLE(s(x)) -> DOUBLE(x)
Rules:
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
double(0) -> 0
double(s(x)) -> s(s(double(x)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
plus(s(x), y) -> plus(x, s(y))
plus(s(x), y) -> s(plus(minus(x, y), double(y)))
plus(s(plus(x, y)), z) -> s(plus(plus(x, y), z))
We number the DPs as follows:
- DOUBLE(s(x)) -> DOUBLE(x)
and get the following Size-Change Graph(s):
which lead(s) to this/these maximal multigraph(s):
DP: empty set
Oriented Rules: none
We used the order Homeomorphic Embedding Order with Non-Strict Precedence.
trivial
with Argument Filtering System:
s(x1) -> s(x1)
We obtain no new DP problems.
R
↳DPs
→DP Problem 1
↳SCP
→DP Problem 2
↳SCP
→DP Problem 3
↳Argument Filtering and Ordering
Dependency Pairs:
PLUS(s(plus(x, y)), z) -> PLUS(plus(x, y), z)
PLUS(s(x), y) -> PLUS(minus(x, y), double(y))
PLUS(s(x), y) -> PLUS(x, s(y))
PLUS(s(x), y) -> PLUS(x, y)
Rules:
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
double(0) -> 0
double(s(x)) -> s(s(double(x)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
plus(s(x), y) -> plus(x, s(y))
plus(s(x), y) -> s(plus(minus(x, y), double(y)))
plus(s(plus(x, y)), z) -> s(plus(plus(x, y), z))
The following dependency pairs can be strictly oriented:
PLUS(s(plus(x, y)), z) -> PLUS(plus(x, y), z)
PLUS(s(x), y) -> PLUS(minus(x, y), double(y))
PLUS(s(x), y) -> PLUS(x, s(y))
PLUS(s(x), y) -> PLUS(x, y)
The following usable rules w.r.t. the AFS can be oriented:
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
plus(s(x), y) -> plus(x, s(y))
plus(s(x), y) -> s(plus(minus(x, y), double(y)))
plus(s(plus(x, y)), z) -> s(plus(plus(x, y), z))
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
double(0) -> 0
double(s(x)) -> s(s(double(x)))
Used ordering: Lexicographic Path Order with Precedence:
plus > double > s
resulting in one new DP problem.
Used Argument Filtering System: PLUS(x1, x2) -> x1
s(x1) -> s(x1)
plus(x1, x2) -> plus(x1, x2)
minus(x1, x2) -> x1
double(x1) -> double(x1)
R
↳DPs
→DP Problem 1
↳SCP
→DP Problem 2
↳SCP
→DP Problem 3
↳AFS
→DP Problem 4
↳Dependency Graph
Dependency Pair:
Rules:
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
double(0) -> 0
double(s(x)) -> s(s(double(x)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
plus(s(x), y) -> plus(x, s(y))
plus(s(x), y) -> s(plus(minus(x, y), double(y)))
plus(s(plus(x, y)), z) -> s(plus(plus(x, y), z))
Using the Dependency Graph resulted in no new DP problems.
Termination of R successfully shown.
Duration:
0:00 minutes