R
↳Dependency Pair Analysis
REV(++(x, y)) -> REV1(x, y)
REV(++(x, y)) -> REV2(x, y)
REV1(x, ++(y, z)) -> REV1(y, z)
REV2(x, ++(y, z)) -> REV(++(x, rev(rev2(y, z))))
REV2(x, ++(y, z)) -> REV(rev2(y, z))
REV2(x, ++(y, z)) -> REV2(y, z)
R
↳DPs
→DP Problem 1
↳Argument Filtering and Ordering
→DP Problem 2
↳AFS
REV1(x, ++(y, z)) -> REV1(y, z)
rev(nil) -> nil
rev(++(x, y)) -> ++(rev1(x, y), rev2(x, y))
rev1(x, nil) -> x
rev1(x, ++(y, z)) -> rev1(y, z)
rev2(x, nil) -> nil
rev2(x, ++(y, z)) -> rev(++(x, rev(rev2(y, z))))
REV1(x, ++(y, z)) -> REV1(y, z)
REV1(x1, x2) -> x2
++(x1, x2) -> ++(x1, x2)
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 3
↳Dependency Graph
→DP Problem 2
↳AFS
rev(nil) -> nil
rev(++(x, y)) -> ++(rev1(x, y), rev2(x, y))
rev1(x, nil) -> x
rev1(x, ++(y, z)) -> rev1(y, z)
rev2(x, nil) -> nil
rev2(x, ++(y, z)) -> rev(++(x, rev(rev2(y, z))))
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳Argument Filtering and Ordering
REV2(x, ++(y, z)) -> REV2(y, z)
REV2(x, ++(y, z)) -> REV(rev2(y, z))
REV2(x, ++(y, z)) -> REV(++(x, rev(rev2(y, z))))
REV(++(x, y)) -> REV2(x, y)
rev(nil) -> nil
rev(++(x, y)) -> ++(rev1(x, y), rev2(x, y))
rev1(x, nil) -> x
rev1(x, ++(y, z)) -> rev1(y, z)
rev2(x, nil) -> nil
rev2(x, ++(y, z)) -> rev(++(x, rev(rev2(y, z))))
REV2(x, ++(y, z)) -> REV2(y, z)
REV2(x, ++(y, z)) -> REV(rev2(y, z))
REV(++(x, y)) -> REV2(x, y)
rev2(x, nil) -> nil
rev2(x, ++(y, z)) -> rev(++(x, rev(rev2(y, z))))
rev(nil) -> nil
rev(++(x, y)) -> ++(rev1(x, y), rev2(x, y))
REV(x1) -> x1
++(x1, x2) -> ++(x2)
REV2(x1, x2) -> x2
rev(x1) -> x1
rev2(x1, x2) -> x2
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳AFS
→DP Problem 4
↳Dependency Graph
REV2(x, ++(y, z)) -> REV(++(x, rev(rev2(y, z))))
rev(nil) -> nil
rev(++(x, y)) -> ++(rev1(x, y), rev2(x, y))
rev1(x, nil) -> x
rev1(x, ++(y, z)) -> rev1(y, z)
rev2(x, nil) -> nil
rev2(x, ++(y, z)) -> rev(++(x, rev(rev2(y, z))))