R
↳Dependency Pair Analysis
DIV(X, e) -> I(X)
DIV(div(X, Y), Z) -> DIV(Y, div(i(X), Z))
DIV(div(X, Y), Z) -> DIV(i(X), Z)
DIV(div(X, Y), Z) -> I(X)
I(div(X, Y)) -> DIV(Y, X)
R
↳DPs
→DP Problem 1
↳Forward Instantiation Transformation
DIV(div(X, Y), Z) -> DIV(i(X), Z)
DIV(div(X, Y), Z) -> DIV(Y, div(i(X), Z))
I(div(X, Y)) -> DIV(Y, X)
DIV(X, e) -> I(X)
div(X, e) -> i(X)
div(div(X, Y), Z) -> div(Y, div(i(X), Z))
i(div(X, Y)) -> div(Y, X)
innermost
one new Dependency Pair is created:
DIV(X, e) -> I(X)
DIV(div(X'', Y''), e) -> I(div(X'', Y''))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Narrowing Transformation
I(div(X, Y)) -> DIV(Y, X)
DIV(div(X'', Y''), e) -> I(div(X'', Y''))
DIV(div(X, Y), Z) -> DIV(Y, div(i(X), Z))
DIV(div(X, Y), Z) -> DIV(i(X), Z)
div(X, e) -> i(X)
div(div(X, Y), Z) -> div(Y, div(i(X), Z))
i(div(X, Y)) -> div(Y, X)
innermost
no new Dependency Pairs are created.
DIV(div(X, Y), Z) -> DIV(i(X), Z)
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
...
→DP Problem 3
↳Forward Instantiation Transformation
DIV(div(X'', Y''), e) -> I(div(X'', Y''))
DIV(div(X, Y), Z) -> DIV(Y, div(i(X), Z))
I(div(X, Y)) -> DIV(Y, X)
div(X, e) -> i(X)
div(div(X, Y), Z) -> div(Y, div(i(X), Z))
i(div(X, Y)) -> div(Y, X)
innermost
two new Dependency Pairs are created:
I(div(X, Y)) -> DIV(Y, X)
I(div(X0, div(X'', Y''))) -> DIV(div(X'', Y''), X0)
I(div(e, div(X'''', Y''''))) -> DIV(div(X'''', Y''''), e)
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
...
→DP Problem 4
↳Argument Filtering and Ordering
I(div(e, div(X'''', Y''''))) -> DIV(div(X'''', Y''''), e)
DIV(div(X, Y), Z) -> DIV(Y, div(i(X), Z))
I(div(X0, div(X'', Y''))) -> DIV(div(X'', Y''), X0)
DIV(div(X'', Y''), e) -> I(div(X'', Y''))
div(X, e) -> i(X)
div(div(X, Y), Z) -> div(Y, div(i(X), Z))
i(div(X, Y)) -> div(Y, X)
innermost
I(div(e, div(X'''', Y''''))) -> DIV(div(X'''', Y''''), e)
DIV(div(X, Y), Z) -> DIV(Y, div(i(X), Z))
I(div(X0, div(X'', Y''))) -> DIV(div(X'', Y''), X0)
DIV(div(X'', Y''), e) -> I(div(X'', Y''))
i(div(X, Y)) -> div(Y, X)
div(X, e) -> i(X)
div(div(X, Y), Z) -> div(Y, div(i(X), Z))
{I, DIV} > {i, div}
DIV(x1, x2) -> DIV(x1, x2)
div(x1, x2) -> div(x1, x2)
i(x1) -> i(x1)
I(x1) -> I(x1)
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Nar
...
→DP Problem 5
↳Dependency Graph
div(X, e) -> i(X)
div(div(X, Y), Z) -> div(Y, div(i(X), Z))
i(div(X, Y)) -> div(Y, X)
innermost