R
↳Dependency Pair Analysis
MINUS(s(X), s(Y)) -> P(minus(X, Y))
MINUS(s(X), s(Y)) -> MINUS(X, Y)
DIV(s(X), s(Y)) -> DIV(minus(X, Y), s(Y))
DIV(s(X), s(Y)) -> MINUS(X, Y)
R
↳DPs
→DP Problem 1
↳Forward Instantiation Transformation
→DP Problem 2
↳Nar
MINUS(s(X), s(Y)) -> MINUS(X, Y)
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
one new Dependency Pair is created:
MINUS(s(X), s(Y)) -> MINUS(X, Y)
MINUS(s(s(X'')), s(s(Y''))) -> MINUS(s(X''), s(Y''))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳Forward Instantiation Transformation
→DP Problem 2
↳Nar
MINUS(s(s(X'')), s(s(Y''))) -> MINUS(s(X''), s(Y''))
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
one new Dependency Pair is created:
MINUS(s(s(X'')), s(s(Y''))) -> MINUS(s(X''), s(Y''))
MINUS(s(s(s(X''''))), s(s(s(Y'''')))) -> MINUS(s(s(X'''')), s(s(Y'''')))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳FwdInst
...
→DP Problem 4
↳Polynomial Ordering
→DP Problem 2
↳Nar
MINUS(s(s(s(X''''))), s(s(s(Y'''')))) -> MINUS(s(s(X'''')), s(s(Y'''')))
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
MINUS(s(s(s(X''''))), s(s(s(Y'''')))) -> MINUS(s(s(X'''')), s(s(Y'''')))
POL(MINUS(x1, x2)) = 1 + x1 POL(s(x1)) = 1 + x1
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳FwdInst
...
→DP Problem 5
↳Dependency Graph
→DP Problem 2
↳Nar
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Narrowing Transformation
DIV(s(X), s(Y)) -> DIV(minus(X, Y), s(Y))
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
two new Dependency Pairs are created:
DIV(s(X), s(Y)) -> DIV(minus(X, Y), s(Y))
DIV(s(X''), s(0)) -> DIV(X'', s(0))
DIV(s(s(X'')), s(s(Y''))) -> DIV(p(minus(X'', Y'')), s(s(Y'')))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳Forward Instantiation Transformation
→DP Problem 7
↳Nar
DIV(s(X''), s(0)) -> DIV(X'', s(0))
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
one new Dependency Pair is created:
DIV(s(X''), s(0)) -> DIV(X'', s(0))
DIV(s(s(X'''')), s(0)) -> DIV(s(X''''), s(0))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳FwdInst
...
→DP Problem 8
↳Polynomial Ordering
→DP Problem 7
↳Nar
DIV(s(s(X'''')), s(0)) -> DIV(s(X''''), s(0))
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
DIV(s(s(X'''')), s(0)) -> DIV(s(X''''), s(0))
POL(0) = 0 POL(DIV(x1, x2)) = 1 + x1 POL(s(x1)) = 1 + x1
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳FwdInst
...
→DP Problem 11
↳Dependency Graph
→DP Problem 7
↳Nar
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳FwdInst
→DP Problem 7
↳Narrowing Transformation
DIV(s(s(X'')), s(s(Y''))) -> DIV(p(minus(X'', Y'')), s(s(Y'')))
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
two new Dependency Pairs are created:
DIV(s(s(X'')), s(s(Y''))) -> DIV(p(minus(X'', Y'')), s(s(Y'')))
DIV(s(s(X''')), s(s(0))) -> DIV(p(X'''), s(s(0)))
DIV(s(s(s(X'))), s(s(s(Y')))) -> DIV(p(p(minus(X', Y'))), s(s(s(Y'))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳FwdInst
→DP Problem 7
↳Nar
...
→DP Problem 9
↳Polynomial Ordering
DIV(s(s(X''')), s(s(0))) -> DIV(p(X'''), s(s(0)))
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
DIV(s(s(X''')), s(s(0))) -> DIV(p(X'''), s(s(0)))
p(s(X)) -> X
POL(0) = 0 POL(DIV(x1, x2)) = 1 + x1 POL(s(x1)) = 1 + x1 POL(p(x1)) = x1
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
→DP Problem 6
↳FwdInst
→DP Problem 7
↳Nar
...
→DP Problem 10
↳Polynomial Ordering
DIV(s(s(s(X'))), s(s(s(Y')))) -> DIV(p(p(minus(X', Y'))), s(s(s(Y'))))
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
p(s(X)) -> X
div(0, s(Y)) -> 0
div(s(X), s(Y)) -> s(div(minus(X, Y), s(Y)))
innermost
DIV(s(s(s(X'))), s(s(s(Y')))) -> DIV(p(p(minus(X', Y'))), s(s(s(Y'))))
p(s(X)) -> X
minus(X, 0) -> X
minus(s(X), s(Y)) -> p(minus(X, Y))
POL(0) = 1 POL(DIV(x1, x2)) = 1 + x1 POL(minus(x1, x2)) = x1 POL(s(x1)) = 1 + x1 POL(p(x1)) = x1