R
↳Dependency Pair Analysis
CONCAT(cons(U, V), Y) -> CONCAT(V, Y)
LESSLEAVES(cons(U, V), cons(W, Z)) -> LESSLEAVES(concat(U, V), concat(W, Z))
LESSLEAVES(cons(U, V), cons(W, Z)) -> CONCAT(U, V)
LESSLEAVES(cons(U, V), cons(W, Z)) -> CONCAT(W, Z)
R
↳DPs
→DP Problem 1
↳Argument Filtering and Ordering
→DP Problem 2
↳Nar
CONCAT(cons(U, V), Y) -> CONCAT(V, Y)
concat(leaf, Y) -> Y
concat(cons(U, V), Y) -> cons(U, concat(V, Y))
lessleaves(X, leaf) -> false
lessleaves(leaf, cons(W, Z)) -> true
lessleaves(cons(U, V), cons(W, Z)) -> lessleaves(concat(U, V), concat(W, Z))
innermost
CONCAT(cons(U, V), Y) -> CONCAT(V, Y)
CONCAT(x1, x2) -> CONCAT(x1, x2)
cons(x1, x2) -> cons(x1, x2)
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 3
↳Dependency Graph
→DP Problem 2
↳Nar
concat(leaf, Y) -> Y
concat(cons(U, V), Y) -> cons(U, concat(V, Y))
lessleaves(X, leaf) -> false
lessleaves(leaf, cons(W, Z)) -> true
lessleaves(cons(U, V), cons(W, Z)) -> lessleaves(concat(U, V), concat(W, Z))
innermost
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳Narrowing Transformation
LESSLEAVES(cons(U, V), cons(W, Z)) -> LESSLEAVES(concat(U, V), concat(W, Z))
concat(leaf, Y) -> Y
concat(cons(U, V), Y) -> cons(U, concat(V, Y))
lessleaves(X, leaf) -> false
lessleaves(leaf, cons(W, Z)) -> true
lessleaves(cons(U, V), cons(W, Z)) -> lessleaves(concat(U, V), concat(W, Z))
innermost
four new Dependency Pairs are created:
LESSLEAVES(cons(U, V), cons(W, Z)) -> LESSLEAVES(concat(U, V), concat(W, Z))
LESSLEAVES(cons(leaf, V'), cons(W, Z)) -> LESSLEAVES(V', concat(W, Z))
LESSLEAVES(cons(cons(U'', V''), V0), cons(W, Z)) -> LESSLEAVES(cons(U'', concat(V'', V0)), concat(W, Z))
LESSLEAVES(cons(U, V), cons(leaf, Z')) -> LESSLEAVES(concat(U, V), Z')
LESSLEAVES(cons(U, V), cons(cons(U'', V''), Z')) -> LESSLEAVES(concat(U, V), cons(U'', concat(V'', Z')))
R
↳DPs
→DP Problem 1
↳AFS
→DP Problem 2
↳Nar
→DP Problem 4
↳Remaining Obligation(s)
LESSLEAVES(cons(U, V), cons(cons(U'', V''), Z')) -> LESSLEAVES(concat(U, V), cons(U'', concat(V'', Z')))
LESSLEAVES(cons(U, V), cons(leaf, Z')) -> LESSLEAVES(concat(U, V), Z')
LESSLEAVES(cons(cons(U'', V''), V0), cons(W, Z)) -> LESSLEAVES(cons(U'', concat(V'', V0)), concat(W, Z))
LESSLEAVES(cons(leaf, V'), cons(W, Z)) -> LESSLEAVES(V', concat(W, Z))
concat(leaf, Y) -> Y
concat(cons(U, V), Y) -> cons(U, concat(V, Y))
lessleaves(X, leaf) -> false
lessleaves(leaf, cons(W, Z)) -> true
lessleaves(cons(U, V), cons(W, Z)) -> lessleaves(concat(U, V), concat(W, Z))
innermost