R
↳Removing Redundant Rules for Innermost Termination
app(app(times, x), app(app(plus, y), app(s, z))) -> app(app(plus, app(app(times, x), app(app(plus, y), app(app(times, app(s, z)), 0)))), app(app(times, x), app(s, z)))
R
↳RRRI
→TRS2
↳Dependency Pair Analysis
APP(app(times, x), app(s, y)) -> APP(app(plus, app(app(times, x), y)), x)
APP(app(times, x), app(s, y)) -> APP(plus, app(app(times, x), y))
APP(app(times, x), app(s, y)) -> APP(app(times, x), y)
APP(app(plus, x), app(s, y)) -> APP(s, app(app(plus, x), y))
APP(app(plus, x), app(s, y)) -> APP(app(plus, x), y)
R
↳RRRI
→TRS2
↳DPs
→DP Problem 1
↳Non-Overlappingness Check
→DP Problem 2
↳NOC
APP(app(plus, x), app(s, y)) -> APP(app(plus, x), y)
app(app(times, x), 0) -> 0
app(app(times, x), app(s, y)) -> app(app(plus, app(app(times, x), y)), x)
app(app(plus, x), 0) -> x
app(app(plus, x), app(s, y)) -> app(s, app(app(plus, x), y))
R
↳RRRI
→TRS2
↳DPs
→DP Problem 1
↳NOC
...
→DP Problem 3
↳Usable Rules (Innermost)
→DP Problem 2
↳NOC
APP(app(plus, x), app(s, y)) -> APP(app(plus, x), y)
app(app(times, x), 0) -> 0
app(app(times, x), app(s, y)) -> app(app(plus, app(app(times, x), y)), x)
app(app(plus, x), 0) -> x
app(app(plus, x), app(s, y)) -> app(s, app(app(plus, x), y))
innermost
R
↳RRRI
→TRS2
↳DPs
→DP Problem 1
↳NOC
...
→DP Problem 4
↳A-Transformation
→DP Problem 2
↳NOC
APP(app(plus, x), app(s, y)) -> APP(app(plus, x), y)
none
innermost
R
↳RRRI
→TRS2
↳DPs
→DP Problem 1
↳NOC
...
→DP Problem 5
↳Size-Change Principle
→DP Problem 2
↳NOC
PLUS(x, s(y)) -> PLUS(x, y)
none
innermost
|
|
trivial
s(x1) -> s(x1)
R
↳RRRI
→TRS2
↳DPs
→DP Problem 1
↳NOC
→DP Problem 2
↳Non-Overlappingness Check
APP(app(times, x), app(s, y)) -> APP(app(times, x), y)
app(app(times, x), 0) -> 0
app(app(times, x), app(s, y)) -> app(app(plus, app(app(times, x), y)), x)
app(app(plus, x), 0) -> x
app(app(plus, x), app(s, y)) -> app(s, app(app(plus, x), y))
R
↳RRRI
→TRS2
↳DPs
→DP Problem 1
↳NOC
→DP Problem 2
↳NOC
...
→DP Problem 6
↳Usable Rules (Innermost)
APP(app(times, x), app(s, y)) -> APP(app(times, x), y)
app(app(times, x), 0) -> 0
app(app(times, x), app(s, y)) -> app(app(plus, app(app(times, x), y)), x)
app(app(plus, x), 0) -> x
app(app(plus, x), app(s, y)) -> app(s, app(app(plus, x), y))
innermost
R
↳RRRI
→TRS2
↳DPs
→DP Problem 1
↳NOC
→DP Problem 2
↳NOC
...
→DP Problem 7
↳A-Transformation
APP(app(times, x), app(s, y)) -> APP(app(times, x), y)
none
innermost
R
↳RRRI
→TRS2
↳DPs
→DP Problem 1
↳NOC
→DP Problem 2
↳NOC
...
→DP Problem 8
↳Size-Change Principle
TIMES(x, s(y)) -> TIMES(x, y)
none
innermost
|
|
trivial
s(x1) -> s(x1)