R
↳Overlay and local confluence Check
R
↳OC
→TRS2
↳Dependency Pair Analysis
LEQ(s(x), s(y)) -> LEQ(x, y)
-'(s(x), s(y)) -> -'(x, y)
MOD(s(x), s(y)) -> IF(leq(y, x), mod(-(s(x), s(y)), s(y)), s(x))
MOD(s(x), s(y)) -> LEQ(y, x)
MOD(s(x), s(y)) -> MOD(-(s(x), s(y)), s(y))
MOD(s(x), s(y)) -> -'(s(x), s(y))
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳Usable Rules (Innermost)
→DP Problem 2
↳UsableRules
→DP Problem 3
↳UsableRules
LEQ(s(x), s(y)) -> LEQ(x, y)
leq(0, y) -> true
leq(s(x), 0) -> false
leq(s(x), s(y)) -> leq(x, y)
if(true, x, y) -> x
if(false, x, y) -> y
-(x, 0) -> x
-(s(x), s(y)) -> -(x, y)
mod(0, y) -> 0
mod(s(x), 0) -> 0
mod(s(x), s(y)) -> if(leq(y, x), mod(-(s(x), s(y)), s(y)), s(x))
innermost
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳UsableRules
...
→DP Problem 4
↳Size-Change Principle
→DP Problem 2
↳UsableRules
→DP Problem 3
↳UsableRules
LEQ(s(x), s(y)) -> LEQ(x, y)
none
innermost
|
|
trivial
s(x1) -> s(x1)
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳UsableRules
→DP Problem 2
↳Usable Rules (Innermost)
→DP Problem 3
↳UsableRules
-'(s(x), s(y)) -> -'(x, y)
leq(0, y) -> true
leq(s(x), 0) -> false
leq(s(x), s(y)) -> leq(x, y)
if(true, x, y) -> x
if(false, x, y) -> y
-(x, 0) -> x
-(s(x), s(y)) -> -(x, y)
mod(0, y) -> 0
mod(s(x), 0) -> 0
mod(s(x), s(y)) -> if(leq(y, x), mod(-(s(x), s(y)), s(y)), s(x))
innermost
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳UsableRules
→DP Problem 2
↳UsableRules
...
→DP Problem 5
↳Size-Change Principle
→DP Problem 3
↳UsableRules
-'(s(x), s(y)) -> -'(x, y)
none
innermost
|
|
trivial
s(x1) -> s(x1)
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳UsableRules
→DP Problem 2
↳UsableRules
→DP Problem 3
↳Usable Rules (Innermost)
MOD(s(x), s(y)) -> MOD(-(s(x), s(y)), s(y))
leq(0, y) -> true
leq(s(x), 0) -> false
leq(s(x), s(y)) -> leq(x, y)
if(true, x, y) -> x
if(false, x, y) -> y
-(x, 0) -> x
-(s(x), s(y)) -> -(x, y)
mod(0, y) -> 0
mod(s(x), 0) -> 0
mod(s(x), s(y)) -> if(leq(y, x), mod(-(s(x), s(y)), s(y)), s(x))
innermost
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳UsableRules
→DP Problem 2
↳UsableRules
→DP Problem 3
↳UsableRules
...
→DP Problem 6
↳Rewriting Transformation
MOD(s(x), s(y)) -> MOD(-(s(x), s(y)), s(y))
-(s(x), s(y)) -> -(x, y)
-(x, 0) -> x
innermost
one new Dependency Pair is created:
MOD(s(x), s(y)) -> MOD(-(s(x), s(y)), s(y))
MOD(s(x), s(y)) -> MOD(-(x, y), s(y))
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳UsableRules
→DP Problem 2
↳UsableRules
→DP Problem 3
↳UsableRules
...
→DP Problem 7
↳Negative Polynomial Order
MOD(s(x), s(y)) -> MOD(-(x, y), s(y))
-(s(x), s(y)) -> -(x, y)
-(x, 0) -> x
innermost
MOD(s(x), s(y)) -> MOD(-(x, y), s(y))
-(s(x), s(y)) -> -(x, y)
-(x, 0) -> x
POL( MOD(x1, x2) ) = x1
POL( s(x1) ) = x1 + 1
POL( -(x1, x2) ) = x1
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳UsableRules
→DP Problem 2
↳UsableRules
→DP Problem 3
↳UsableRules
...
→DP Problem 8
↳Dependency Graph
-(s(x), s(y)) -> -(x, y)
-(x, 0) -> x
innermost