R
↳Dependency Pair Analysis
MINUS(s(x), s(y)) -> MINUS(x, y)
MINUS(minus(x, y), z) -> MINUS(x, plus(y, z))
MINUS(minus(x, y), z) -> PLUS(y, z)
QUOT(s(x), s(y)) -> QUOT(minus(x, y), s(y))
QUOT(s(x), s(y)) -> MINUS(x, y)
PLUS(s(x), y) -> PLUS(x, y)
R
↳DPs
→DP Problem 1
↳Argument Filtering and Ordering
→DP Problem 2
↳AFS
→DP Problem 3
↳Nar
PLUS(s(x), y) -> PLUS(x, y)
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
minus(minus(x, y), z) -> minus(x, plus(y, z))
quot(0, s(y)) -> 0
quot(s(x), s(y)) -> s(quot(minus(x, y), s(y)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
innermost
PLUS(s(x), y) -> PLUS(x, y)
PLUS(x1, x2) -> PLUS(x1, x2)
s(x1) -> s(x1)
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 4
↳Dependency Graph
→DP Problem 2
↳AFS
→DP Problem 3
↳Nar
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
minus(minus(x, y), z) -> minus(x, plus(y, z))
quot(0, s(y)) -> 0
quot(s(x), s(y)) -> s(quot(minus(x, y), s(y)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
innermost
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳Argument Filtering and Ordering
→DP Problem 3
↳Nar
MINUS(minus(x, y), z) -> MINUS(x, plus(y, z))
MINUS(s(x), s(y)) -> MINUS(x, y)
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
minus(minus(x, y), z) -> minus(x, plus(y, z))
quot(0, s(y)) -> 0
quot(s(x), s(y)) -> s(quot(minus(x, y), s(y)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
innermost
MINUS(minus(x, y), z) -> MINUS(x, plus(y, z))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
MINUS(x1, x2) -> MINUS(x1, x2)
s(x1) -> x1
minus(x1, x2) -> minus(x1, x2)
plus(x1, x2) -> x2
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳AFS
→DP Problem 5
↳Argument Filtering and Ordering
→DP Problem 3
↳Nar
MINUS(s(x), s(y)) -> MINUS(x, y)
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
minus(minus(x, y), z) -> minus(x, plus(y, z))
quot(0, s(y)) -> 0
quot(s(x), s(y)) -> s(quot(minus(x, y), s(y)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
innermost
MINUS(s(x), s(y)) -> MINUS(x, y)
MINUS(x1, x2) -> MINUS(x1, x2)
s(x1) -> s(x1)
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳AFS
→DP Problem 5
↳AFS
...
→DP Problem 6
↳Dependency Graph
→DP Problem 3
↳Nar
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
minus(minus(x, y), z) -> minus(x, plus(y, z))
quot(0, s(y)) -> 0
quot(s(x), s(y)) -> s(quot(minus(x, y), s(y)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
innermost
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳AFS
→DP Problem 3
↳Narrowing Transformation
QUOT(s(x), s(y)) -> QUOT(minus(x, y), s(y))
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
minus(minus(x, y), z) -> minus(x, plus(y, z))
quot(0, s(y)) -> 0
quot(s(x), s(y)) -> s(quot(minus(x, y), s(y)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
innermost
three new Dependency Pairs are created:
QUOT(s(x), s(y)) -> QUOT(minus(x, y), s(y))
QUOT(s(x''), s(0)) -> QUOT(x'', s(0))
QUOT(s(s(x'')), s(s(y''))) -> QUOT(minus(x'', y''), s(s(y'')))
QUOT(s(minus(x'', y'')), s(y0)) -> QUOT(minus(x'', plus(y'', y0)), s(y0))
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳AFS
→DP Problem 3
↳Nar
→DP Problem 7
↳Forward Instantiation Transformation
QUOT(s(s(x'')), s(s(y''))) -> QUOT(minus(x'', y''), s(s(y'')))
QUOT(s(minus(x'', y'')), s(y0)) -> QUOT(minus(x'', plus(y'', y0)), s(y0))
QUOT(s(x''), s(0)) -> QUOT(x'', s(0))
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
minus(minus(x, y), z) -> minus(x, plus(y, z))
quot(0, s(y)) -> 0
quot(s(x), s(y)) -> s(quot(minus(x, y), s(y)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
innermost
two new Dependency Pairs are created:
QUOT(s(x''), s(0)) -> QUOT(x'', s(0))
QUOT(s(s(x'''')), s(0)) -> QUOT(s(x''''), s(0))
QUOT(s(s(minus(x'''', y''''))), s(0)) -> QUOT(s(minus(x'''', y'''')), s(0))
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳AFS
→DP Problem 3
↳Nar
→DP Problem 7
↳FwdInst
...
→DP Problem 8
↳Remaining Obligation(s)
QUOT(s(s(minus(x'''', y''''))), s(0)) -> QUOT(s(minus(x'''', y'''')), s(0))
QUOT(s(s(x'''')), s(0)) -> QUOT(s(x''''), s(0))
QUOT(s(minus(x'', y'')), s(y0)) -> QUOT(minus(x'', plus(y'', y0)), s(y0))
QUOT(s(s(x'')), s(s(y''))) -> QUOT(minus(x'', y''), s(s(y'')))
minus(x, 0) -> x
minus(s(x), s(y)) -> minus(x, y)
minus(minus(x, y), z) -> minus(x, plus(y, z))
quot(0, s(y)) -> 0
quot(s(x), s(y)) -> s(quot(minus(x, y), s(y)))
plus(0, y) -> y
plus(s(x), y) -> s(plus(x, y))
innermost