R
↳Dependency Pair Analysis
APPEND(l1, l2) -> IFAPPEND(l1, l2, l1)
IFAPPEND(l1, l2, cons(x, l)) -> APPEND(l, l2)
R
↳DPs
→DP Problem 1
↳Instantiation Transformation
IFAPPEND(l1, l2, cons(x, l)) -> APPEND(l, l2)
APPEND(l1, l2) -> IFAPPEND(l1, l2, l1)
isempty(nil) -> true
isempty(cons(x, l)) -> false
hd(cons(x, l)) -> x
tl(cons(x, l)) -> l
append(l1, l2) -> ifappend(l1, l2, l1)
ifappend(l1, l2, nil) -> l2
ifappend(l1, l2, cons(x, l)) -> cons(x, append(l, l2))
innermost
one new Dependency Pair is created:
IFAPPEND(l1, l2, cons(x, l)) -> APPEND(l, l2)
IFAPPEND(cons(x', l'), l2'', cons(x', l')) -> APPEND(l', l2'')
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳Forward Instantiation Transformation
IFAPPEND(cons(x', l'), l2'', cons(x', l')) -> APPEND(l', l2'')
APPEND(l1, l2) -> IFAPPEND(l1, l2, l1)
isempty(nil) -> true
isempty(cons(x, l)) -> false
hd(cons(x, l)) -> x
tl(cons(x, l)) -> l
append(l1, l2) -> ifappend(l1, l2, l1)
ifappend(l1, l2, nil) -> l2
ifappend(l1, l2, cons(x, l)) -> cons(x, append(l, l2))
innermost
one new Dependency Pair is created:
APPEND(l1, l2) -> IFAPPEND(l1, l2, l1)
APPEND(cons(x'''', l''''), l2') -> IFAPPEND(cons(x'''', l''''), l2', cons(x'''', l''''))
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳FwdInst
...
→DP Problem 3
↳Forward Instantiation Transformation
APPEND(cons(x'''', l''''), l2') -> IFAPPEND(cons(x'''', l''''), l2', cons(x'''', l''''))
IFAPPEND(cons(x', l'), l2'', cons(x', l')) -> APPEND(l', l2'')
isempty(nil) -> true
isempty(cons(x, l)) -> false
hd(cons(x, l)) -> x
tl(cons(x, l)) -> l
append(l1, l2) -> ifappend(l1, l2, l1)
ifappend(l1, l2, nil) -> l2
ifappend(l1, l2, cons(x, l)) -> cons(x, append(l, l2))
innermost
one new Dependency Pair is created:
IFAPPEND(cons(x', l'), l2'', cons(x', l')) -> APPEND(l', l2'')
IFAPPEND(cons(x', cons(x'''''', l'''''')), l2'''', cons(x', cons(x'''''', l''''''))) -> APPEND(cons(x'''''', l''''''), l2'''')
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳FwdInst
...
→DP Problem 4
↳Forward Instantiation Transformation
IFAPPEND(cons(x', cons(x'''''', l'''''')), l2'''', cons(x', cons(x'''''', l''''''))) -> APPEND(cons(x'''''', l''''''), l2'''')
APPEND(cons(x'''', l''''), l2') -> IFAPPEND(cons(x'''', l''''), l2', cons(x'''', l''''))
isempty(nil) -> true
isempty(cons(x, l)) -> false
hd(cons(x, l)) -> x
tl(cons(x, l)) -> l
append(l1, l2) -> ifappend(l1, l2, l1)
ifappend(l1, l2, nil) -> l2
ifappend(l1, l2, cons(x, l)) -> cons(x, append(l, l2))
innermost
one new Dependency Pair is created:
APPEND(cons(x'''', l''''), l2') -> IFAPPEND(cons(x'''', l''''), l2', cons(x'''', l''''))
APPEND(cons(x''''', cons(x''''''''', l''''''''')), l2'') -> IFAPPEND(cons(x''''', cons(x''''''''', l''''''''')), l2'', cons(x''''', cons(x''''''''', l''''''''')))
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳FwdInst
...
→DP Problem 5
↳Argument Filtering and Ordering
APPEND(cons(x''''', cons(x''''''''', l''''''''')), l2'') -> IFAPPEND(cons(x''''', cons(x''''''''', l''''''''')), l2'', cons(x''''', cons(x''''''''', l''''''''')))
IFAPPEND(cons(x', cons(x'''''', l'''''')), l2'''', cons(x', cons(x'''''', l''''''))) -> APPEND(cons(x'''''', l''''''), l2'''')
isempty(nil) -> true
isempty(cons(x, l)) -> false
hd(cons(x, l)) -> x
tl(cons(x, l)) -> l
append(l1, l2) -> ifappend(l1, l2, l1)
ifappend(l1, l2, nil) -> l2
ifappend(l1, l2, cons(x, l)) -> cons(x, append(l, l2))
innermost
IFAPPEND(cons(x', cons(x'''''', l'''''')), l2'''', cons(x', cons(x'''''', l''''''))) -> APPEND(cons(x'''''', l''''''), l2'''')
trivial
IFAPPEND(x1, x2, x3) -> x1
cons(x1, x2) -> cons(x1, x2)
APPEND(x1, x2) -> x1
R
↳DPs
→DP Problem 1
↳Inst
→DP Problem 2
↳FwdInst
...
→DP Problem 6
↳Dependency Graph
APPEND(cons(x''''', cons(x''''''''', l''''''''')), l2'') -> IFAPPEND(cons(x''''', cons(x''''''''', l''''''''')), l2'', cons(x''''', cons(x''''''''', l''''''''')))
isempty(nil) -> true
isempty(cons(x, l)) -> false
hd(cons(x, l)) -> x
tl(cons(x, l)) -> l
append(l1, l2) -> ifappend(l1, l2, l1)
ifappend(l1, l2, nil) -> l2
ifappend(l1, l2, cons(x, l)) -> cons(x, append(l, l2))
innermost