R
↳Dependency Pair Analysis
REV(cons(x, l)) -> REV1(x, l)
REV(cons(x, l)) -> REV2(x, l)
REV1(x, cons(y, l)) -> REV1(y, l)
REV2(x, cons(y, l)) -> REV(cons(x, rev2(y, l)))
REV2(x, cons(y, l)) -> REV2(y, l)
R
↳DPs
→DP Problem 1
↳Polynomial Ordering
→DP Problem 2
↳Polo
REV1(x, cons(y, l)) -> REV1(y, l)
rev(nil) -> nil
rev(cons(x, l)) -> cons(rev1(x, l), rev2(x, l))
rev1(0, nil) -> 0
rev1(s(x), nil) -> s(x)
rev1(x, cons(y, l)) -> rev1(y, l)
rev2(x, nil) -> nil
rev2(x, cons(y, l)) -> rev(cons(x, rev2(y, l)))
REV1(x, cons(y, l)) -> REV1(y, l)
POL(REV1(x1, x2)) = x2 POL(cons(x1, x2)) = 1 + x2
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 3
↳Dependency Graph
→DP Problem 2
↳Polo
rev(nil) -> nil
rev(cons(x, l)) -> cons(rev1(x, l), rev2(x, l))
rev1(0, nil) -> 0
rev1(s(x), nil) -> s(x)
rev1(x, cons(y, l)) -> rev1(y, l)
rev2(x, nil) -> nil
rev2(x, cons(y, l)) -> rev(cons(x, rev2(y, l)))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Polynomial Ordering
REV2(x, cons(y, l)) -> REV2(y, l)
REV2(x, cons(y, l)) -> REV(cons(x, rev2(y, l)))
REV(cons(x, l)) -> REV2(x, l)
rev(nil) -> nil
rev(cons(x, l)) -> cons(rev1(x, l), rev2(x, l))
rev1(0, nil) -> 0
rev1(s(x), nil) -> s(x)
rev1(x, cons(y, l)) -> rev1(y, l)
rev2(x, nil) -> nil
rev2(x, cons(y, l)) -> rev(cons(x, rev2(y, l)))
REV2(x, cons(y, l)) -> REV2(y, l)
REV(cons(x, l)) -> REV2(x, l)
rev2(x, nil) -> nil
rev2(x, cons(y, l)) -> rev(cons(x, rev2(y, l)))
rev(nil) -> nil
rev(cons(x, l)) -> cons(rev1(x, l), rev2(x, l))
POL(rev2(x1, x2)) = x2 POL(rev(x1)) = x1 POL(0) = 0 POL(REV(x1)) = x1 POL(cons(x1, x2)) = 1 + x2 POL(rev1(x1, x2)) = 0 POL(REV2(x1, x2)) = x2 POL(nil) = 0 POL(s(x1)) = 0
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Polo
→DP Problem 4
↳Dependency Graph
REV2(x, cons(y, l)) -> REV(cons(x, rev2(y, l)))
rev(nil) -> nil
rev(cons(x, l)) -> cons(rev1(x, l), rev2(x, l))
rev1(0, nil) -> 0
rev1(s(x), nil) -> s(x)
rev1(x, cons(y, l)) -> rev1(y, l)
rev2(x, nil) -> nil
rev2(x, cons(y, l)) -> rev(cons(x, rev2(y, l)))