R
↳Dependency Pair Analysis
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(app(minus, app(s, x)), app(s, y)) -> APP(minus, x)
APP(f, 0) -> APP(s, 0)
APP(f, app(s, x)) -> APP(app(minus, app(s, x)), app(g, app(f, x)))
APP(f, app(s, x)) -> APP(minus, app(s, x))
APP(f, app(s, x)) -> APP(g, app(f, x))
APP(f, app(s, x)) -> APP(f, x)
APP(g, app(s, x)) -> APP(app(minus, app(s, x)), app(f, app(g, x)))
APP(g, app(s, x)) -> APP(minus, app(s, x))
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(g, app(s, x)) -> APP(g, x)
R
↳DPs
→DP Problem 1
↳Narrowing Transformation
APP(g, app(s, x)) -> APP(g, x)
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(f, app(s, x)) -> APP(f, x)
APP(g, app(s, x)) -> APP(app(minus, app(s, x)), app(f, app(g, x)))
APP(f, app(s, x)) -> APP(g, app(f, x))
APP(f, app(s, x)) -> APP(app(minus, app(s, x)), app(g, app(f, x)))
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost
two new Dependency Pairs are created:
APP(f, app(s, x)) -> APP(app(minus, app(s, x)), app(g, app(f, x)))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(g, app(s, 0)))
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Rewriting Transformation
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(g, app(s, 0)))
APP(f, app(s, x)) -> APP(f, x)
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(f, app(s, x)) -> APP(g, app(f, x))
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(g, app(s, x)) -> APP(app(minus, app(s, x)), app(f, app(g, x)))
APP(g, app(s, x)) -> APP(g, x)
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost
one new Dependency Pair is created:
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(g, app(s, 0)))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(f, app(g, 0))))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Rw
...
→DP Problem 3
↳Rewriting Transformation
APP(g, app(s, x)) -> APP(g, x)
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(f, app(g, 0))))
APP(f, app(s, x)) -> APP(f, x)
APP(g, app(s, x)) -> APP(app(minus, app(s, x)), app(f, app(g, x)))
APP(f, app(s, x)) -> APP(g, app(f, x))
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost
one new Dependency Pair is created:
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(f, app(g, 0))))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(f, 0)))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Rw
...
→DP Problem 4
↳Rewriting Transformation
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(f, 0)))
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
APP(f, app(s, x)) -> APP(f, x)
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(f, app(s, x)) -> APP(g, app(f, x))
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(g, app(s, x)) -> APP(app(minus, app(s, x)), app(f, app(g, x)))
APP(g, app(s, x)) -> APP(g, x)
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost
one new Dependency Pair is created:
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(f, 0)))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(s, 0)))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Rw
...
→DP Problem 5
↳Narrowing Transformation
APP(g, app(s, x)) -> APP(g, x)
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(s, 0)))
APP(f, app(s, x)) -> APP(f, x)
APP(g, app(s, x)) -> APP(app(minus, app(s, x)), app(f, app(g, x)))
APP(f, app(s, x)) -> APP(g, app(f, x))
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost
two new Dependency Pairs are created:
APP(f, app(s, x)) -> APP(g, app(f, x))
APP(f, app(s, 0)) -> APP(g, app(s, 0))
APP(f, app(s, app(s, x''))) -> APP(g, app(app(minus, app(s, x'')), app(g, app(f, x''))))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Rw
...
→DP Problem 6
↳Narrowing Transformation
APP(f, app(s, app(s, x''))) -> APP(g, app(app(minus, app(s, x'')), app(g, app(f, x''))))
APP(f, app(s, 0)) -> APP(g, app(s, 0))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(s, 0)))
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
APP(f, app(s, x)) -> APP(f, x)
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(g, app(s, x)) -> APP(app(minus, app(s, x)), app(f, app(g, x)))
APP(g, app(s, x)) -> APP(g, x)
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost
two new Dependency Pairs are created:
APP(g, app(s, x)) -> APP(app(minus, app(s, x)), app(f, app(g, x)))
APP(g, app(s, 0)) -> APP(app(minus, app(s, 0)), app(f, 0))
APP(g, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(f, app(app(minus, app(s, x'')), app(f, app(g, x'')))))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Rw
...
→DP Problem 7
↳Rewriting Transformation
APP(g, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(f, app(app(minus, app(s, x'')), app(f, app(g, x'')))))
APP(f, app(s, 0)) -> APP(g, app(s, 0))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(s, 0)))
APP(g, app(s, 0)) -> APP(app(minus, app(s, 0)), app(f, 0))
APP(g, app(s, x)) -> APP(g, x)
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
APP(f, app(s, x)) -> APP(f, x)
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(f, app(s, app(s, x''))) -> APP(g, app(app(minus, app(s, x'')), app(g, app(f, x''))))
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost
one new Dependency Pair is created:
APP(g, app(s, 0)) -> APP(app(minus, app(s, 0)), app(f, 0))
APP(g, app(s, 0)) -> APP(app(minus, app(s, 0)), app(s, 0))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Rw
...
→DP Problem 8
↳Narrowing Transformation
APP(f, app(s, app(s, x''))) -> APP(g, app(app(minus, app(s, x'')), app(g, app(f, x''))))
APP(f, app(s, 0)) -> APP(g, app(s, 0))
APP(g, app(s, 0)) -> APP(app(minus, app(s, 0)), app(s, 0))
APP(g, app(s, x)) -> APP(g, x)
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(s, 0)))
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
APP(f, app(s, x)) -> APP(f, x)
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(g, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(f, app(app(minus, app(s, x'')), app(f, app(g, x'')))))
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost
two new Dependency Pairs are created:
APP(g, app(s, x)) -> APP(f, app(g, x))
APP(g, app(s, 0)) -> APP(f, 0)
APP(g, app(s, app(s, x''))) -> APP(f, app(app(minus, app(s, x'')), app(f, app(g, x''))))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Rw
...
→DP Problem 9
↳Remaining Obligation(s)
APP(g, app(s, app(s, x''))) -> APP(f, app(app(minus, app(s, x'')), app(f, app(g, x''))))
APP(g, app(s, 0)) -> APP(app(minus, app(s, 0)), app(s, 0))
APP(f, app(s, 0)) -> APP(g, app(s, 0))
APP(f, app(s, 0)) -> APP(app(minus, app(s, 0)), app(app(minus, app(s, 0)), app(s, 0)))
APP(f, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(g, app(app(minus, app(s, x'')), app(g, app(f, x'')))))
APP(f, app(s, x)) -> APP(f, x)
APP(app(minus, app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(g, app(s, app(s, x''))) -> APP(app(minus, app(s, app(s, x''))), app(f, app(app(minus, app(s, x'')), app(f, app(g, x'')))))
APP(g, app(s, x)) -> APP(g, x)
APP(f, app(s, app(s, x''))) -> APP(g, app(app(minus, app(s, x'')), app(g, app(f, x''))))
app(app(minus, x), 0) -> x
app(app(minus, app(s, x)), app(s, y)) -> app(app(minus, x), y)
app(f, 0) -> app(s, 0)
app(f, app(s, x)) -> app(app(minus, app(s, x)), app(g, app(f, x)))
app(g, 0) -> 0
app(g, app(s, x)) -> app(app(minus, app(s, x)), app(f, app(g, x)))
innermost