R
↳Dependency Pair Analysis
APP(cons(X, XS), YS) -> ACTIVATE(XS)
ZWADR(cons(X, XS), cons(Y, YS)) -> APP(Y, cons(X, nnil))
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(XS)
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(YS)
PREFIX(L) -> NIL
PREFIX(L) -> PREFIX(L)
ACTIVATE(napp(X1, X2)) -> APP(X1, X2)
ACTIVATE(nfrom(X)) -> FROM(X)
ACTIVATE(nnil) -> NIL
ACTIVATE(nzWadr(X1, X2)) -> ZWADR(X1, X2)
R
↳DPs
→DP Problem 1
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(YS)
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(XS)
ZWADR(cons(X, XS), cons(Y, YS)) -> APP(Y, cons(X, nnil))
ACTIVATE(nzWadr(X1, X2)) -> ZWADR(X1, X2)
ACTIVATE(napp(X1, X2)) -> APP(X1, X2)
APP(cons(X, XS), YS) -> ACTIVATE(XS)
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
two new Dependency Pairs are created:
APP(cons(X, XS), YS) -> ACTIVATE(XS)
APP(cons(X, napp(X1'', X2'')), YS) -> ACTIVATE(napp(X1'', X2''))
APP(cons(X, nzWadr(X1'', X2'')), YS) -> ACTIVATE(nzWadr(X1'', X2''))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(XS)
ZWADR(cons(X, XS), cons(Y, YS)) -> APP(Y, cons(X, nnil))
ACTIVATE(nzWadr(X1, X2)) -> ZWADR(X1, X2)
APP(cons(X, nzWadr(X1'', X2'')), YS) -> ACTIVATE(nzWadr(X1'', X2''))
APP(cons(X, napp(X1'', X2'')), YS) -> ACTIVATE(napp(X1'', X2''))
ACTIVATE(napp(X1, X2)) -> APP(X1, X2)
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(YS)
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
two new Dependency Pairs are created:
ZWADR(cons(X, XS), cons(Y, YS)) -> APP(Y, cons(X, nnil))
ZWADR(cons(X0, XS), cons(cons(X'', napp(X1'''', X2'''')), YS)) -> APP(cons(X'', napp(X1'''', X2'''')), cons(X0, nnil))
ZWADR(cons(X0, XS), cons(cons(X'', nzWadr(X1'''', X2'''')), YS)) -> APP(cons(X'', nzWadr(X1'''', X2'''')), cons(X0, nnil))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳FwdInst
...
→DP Problem 4
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
ZWADR(cons(X0, XS), cons(cons(X'', nzWadr(X1'''', X2'''')), YS)) -> APP(cons(X'', nzWadr(X1'''', X2'''')), cons(X0, nnil))
ZWADR(cons(X0, XS), cons(cons(X'', napp(X1'''', X2'''')), YS)) -> APP(cons(X'', napp(X1'''', X2'''')), cons(X0, nnil))
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(YS)
ACTIVATE(nzWadr(X1, X2)) -> ZWADR(X1, X2)
APP(cons(X, nzWadr(X1'', X2'')), YS) -> ACTIVATE(nzWadr(X1'', X2''))
APP(cons(X, napp(X1'', X2'')), YS) -> ACTIVATE(napp(X1'', X2''))
ACTIVATE(napp(X1, X2)) -> APP(X1, X2)
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(XS)
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
two new Dependency Pairs are created:
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(XS)
ZWADR(cons(X, napp(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X, nzWadr(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(nzWadr(X1'', X2''))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳FwdInst
...
→DP Problem 5
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
ZWADR(cons(X, nzWadr(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(nzWadr(X1'', X2''))
ZWADR(cons(X, napp(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', napp(X1'''', X2'''')), YS)) -> APP(cons(X'', napp(X1'''', X2'''')), cons(X0, nnil))
APP(cons(X, napp(X1'', X2'')), YS) -> ACTIVATE(napp(X1'', X2''))
ACTIVATE(napp(X1, X2)) -> APP(X1, X2)
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(YS)
ACTIVATE(nzWadr(X1, X2)) -> ZWADR(X1, X2)
APP(cons(X, nzWadr(X1'', X2'')), YS) -> ACTIVATE(nzWadr(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', nzWadr(X1'''', X2'''')), YS)) -> APP(cons(X'', nzWadr(X1'''', X2'''')), cons(X0, nnil))
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
two new Dependency Pairs are created:
ZWADR(cons(X, XS), cons(Y, YS)) -> ACTIVATE(YS)
ZWADR(cons(X, XS), cons(Y, napp(X1'', X2''))) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X, XS), cons(Y, nzWadr(X1'', X2''))) -> ACTIVATE(nzWadr(X1'', X2''))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳FwdInst
...
→DP Problem 6
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
ZWADR(cons(X, XS), cons(Y, nzWadr(X1'', X2''))) -> ACTIVATE(nzWadr(X1'', X2''))
ZWADR(cons(X, XS), cons(Y, napp(X1'', X2''))) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X, napp(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', nzWadr(X1'''', X2'''')), YS)) -> APP(cons(X'', nzWadr(X1'''', X2'''')), cons(X0, nnil))
APP(cons(X, nzWadr(X1'', X2'')), YS) -> ACTIVATE(nzWadr(X1'', X2''))
ACTIVATE(napp(X1, X2)) -> APP(X1, X2)
APP(cons(X, napp(X1'', X2'')), YS) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', napp(X1'''', X2'''')), YS)) -> APP(cons(X'', napp(X1'''', X2'''')), cons(X0, nnil))
ACTIVATE(nzWadr(X1, X2)) -> ZWADR(X1, X2)
ZWADR(cons(X, nzWadr(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(nzWadr(X1'', X2''))
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
two new Dependency Pairs are created:
ACTIVATE(napp(X1, X2)) -> APP(X1, X2)
ACTIVATE(napp(cons(X'', napp(X1'''', X2'''')), X2')) -> APP(cons(X'', napp(X1'''', X2'''')), X2')
ACTIVATE(napp(cons(X'', nzWadr(X1'''', X2'''')), X2')) -> APP(cons(X'', nzWadr(X1'''', X2'''')), X2')
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 3
↳FwdInst
...
→DP Problem 7
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
ZWADR(cons(X, XS), cons(Y, napp(X1'', X2''))) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X, nzWadr(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(nzWadr(X1'', X2''))
ZWADR(cons(X, napp(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', nzWadr(X1'''', X2'''')), YS)) -> APP(cons(X'', nzWadr(X1'''', X2'''')), cons(X0, nnil))
APP(cons(X, nzWadr(X1'', X2'')), YS) -> ACTIVATE(nzWadr(X1'', X2''))
ACTIVATE(napp(cons(X'', nzWadr(X1'''', X2'''')), X2')) -> APP(cons(X'', nzWadr(X1'''', X2'''')), X2')
ACTIVATE(napp(cons(X'', napp(X1'''', X2'''')), X2')) -> APP(cons(X'', napp(X1'''', X2'''')), X2')
APP(cons(X, napp(X1'', X2'')), YS) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', napp(X1'''', X2'''')), YS)) -> APP(cons(X'', napp(X1'''', X2'''')), cons(X0, nnil))
ACTIVATE(nzWadr(X1, X2)) -> ZWADR(X1, X2)
ZWADR(cons(X, XS), cons(Y, nzWadr(X1'', X2''))) -> ACTIVATE(nzWadr(X1'', X2''))
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
six new Dependency Pairs are created:
ACTIVATE(nzWadr(X1, X2)) -> ZWADR(X1, X2)
ACTIVATE(nzWadr(cons(X0'', XS''), cons(cons(X'''', napp(X1'''''', X2'''''')), YS''))) -> ZWADR(cons(X0'', XS''), cons(cons(X'''', napp(X1'''''', X2'''''')), YS''))
ACTIVATE(nzWadr(cons(X0'', XS''), cons(cons(X'''', nzWadr(X1'''''', X2'''''')), YS''))) -> ZWADR(cons(X0'', XS''), cons(cons(X'''', nzWadr(X1'''''', X2'''''')), YS''))
ACTIVATE(nzWadr(cons(X'', napp(X1'''', X2'''')), cons(Y'', YS''))) -> ZWADR(cons(X'', napp(X1'''', X2'''')), cons(Y'', YS''))
ACTIVATE(nzWadr(cons(X'', nzWadr(X1'''', X2'''')), cons(Y'', YS''))) -> ZWADR(cons(X'', nzWadr(X1'''', X2'''')), cons(Y'', YS''))
ACTIVATE(nzWadr(cons(X'', XS''), cons(Y'', napp(X1'''', X2'''')))) -> ZWADR(cons(X'', XS''), cons(Y'', napp(X1'''', X2'''')))
ACTIVATE(nzWadr(cons(X'', XS''), cons(Y'', nzWadr(X1'''', X2'''')))) -> ZWADR(cons(X'', XS''), cons(Y'', nzWadr(X1'''', X2'''')))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Remaining Obligation(s)
ACTIVATE(nzWadr(cons(X'', XS''), cons(Y'', nzWadr(X1'''', X2'''')))) -> ZWADR(cons(X'', XS''), cons(Y'', nzWadr(X1'''', X2'''')))
ACTIVATE(nzWadr(cons(X'', XS''), cons(Y'', napp(X1'''', X2'''')))) -> ZWADR(cons(X'', XS''), cons(Y'', napp(X1'''', X2'''')))
ACTIVATE(nzWadr(cons(X'', nzWadr(X1'''', X2'''')), cons(Y'', YS''))) -> ZWADR(cons(X'', nzWadr(X1'''', X2'''')), cons(Y'', YS''))
ACTIVATE(nzWadr(cons(X'', napp(X1'''', X2'''')), cons(Y'', YS''))) -> ZWADR(cons(X'', napp(X1'''', X2'''')), cons(Y'', YS''))
ZWADR(cons(X, XS), cons(Y, nzWadr(X1'', X2''))) -> ACTIVATE(nzWadr(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', nzWadr(X1'''', X2'''')), YS)) -> APP(cons(X'', nzWadr(X1'''', X2'''')), cons(X0, nnil))
ACTIVATE(nzWadr(cons(X0'', XS''), cons(cons(X'''', nzWadr(X1'''''', X2'''''')), YS''))) -> ZWADR(cons(X0'', XS''), cons(cons(X'''', nzWadr(X1'''''', X2'''''')), YS''))
ZWADR(cons(X, nzWadr(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(nzWadr(X1'', X2''))
ZWADR(cons(X, napp(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', napp(X1'''', X2'''')), YS)) -> APP(cons(X'', napp(X1'''', X2'''')), cons(X0, nnil))
ACTIVATE(nzWadr(cons(X0'', XS''), cons(cons(X'''', napp(X1'''''', X2'''''')), YS''))) -> ZWADR(cons(X0'', XS''), cons(cons(X'''', napp(X1'''''', X2'''''')), YS''))
APP(cons(X, nzWadr(X1'', X2'')), YS) -> ACTIVATE(nzWadr(X1'', X2''))
ACTIVATE(napp(cons(X'', nzWadr(X1'''', X2'''')), X2')) -> APP(cons(X'', nzWadr(X1'''', X2'''')), X2')
APP(cons(X, napp(X1'', X2'')), YS) -> ACTIVATE(napp(X1'', X2''))
ACTIVATE(napp(cons(X'', napp(X1'''', X2'''')), X2')) -> APP(cons(X'', napp(X1'''', X2'''')), X2')
ZWADR(cons(X, XS), cons(Y, napp(X1'', X2''))) -> ACTIVATE(napp(X1'', X2''))
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
PREFIX(L) -> PREFIX(L)
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Remaining Obligation(s)
ACTIVATE(nzWadr(cons(X'', XS''), cons(Y'', nzWadr(X1'''', X2'''')))) -> ZWADR(cons(X'', XS''), cons(Y'', nzWadr(X1'''', X2'''')))
ACTIVATE(nzWadr(cons(X'', XS''), cons(Y'', napp(X1'''', X2'''')))) -> ZWADR(cons(X'', XS''), cons(Y'', napp(X1'''', X2'''')))
ACTIVATE(nzWadr(cons(X'', nzWadr(X1'''', X2'''')), cons(Y'', YS''))) -> ZWADR(cons(X'', nzWadr(X1'''', X2'''')), cons(Y'', YS''))
ACTIVATE(nzWadr(cons(X'', napp(X1'''', X2'''')), cons(Y'', YS''))) -> ZWADR(cons(X'', napp(X1'''', X2'''')), cons(Y'', YS''))
ZWADR(cons(X, XS), cons(Y, nzWadr(X1'', X2''))) -> ACTIVATE(nzWadr(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', nzWadr(X1'''', X2'''')), YS)) -> APP(cons(X'', nzWadr(X1'''', X2'''')), cons(X0, nnil))
ACTIVATE(nzWadr(cons(X0'', XS''), cons(cons(X'''', nzWadr(X1'''''', X2'''''')), YS''))) -> ZWADR(cons(X0'', XS''), cons(cons(X'''', nzWadr(X1'''''', X2'''''')), YS''))
ZWADR(cons(X, nzWadr(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(nzWadr(X1'', X2''))
ZWADR(cons(X, napp(X1'', X2'')), cons(Y, YS)) -> ACTIVATE(napp(X1'', X2''))
ZWADR(cons(X0, XS), cons(cons(X'', napp(X1'''', X2'''')), YS)) -> APP(cons(X'', napp(X1'''', X2'''')), cons(X0, nnil))
ACTIVATE(nzWadr(cons(X0'', XS''), cons(cons(X'''', napp(X1'''''', X2'''''')), YS''))) -> ZWADR(cons(X0'', XS''), cons(cons(X'''', napp(X1'''''', X2'''''')), YS''))
APP(cons(X, nzWadr(X1'', X2'')), YS) -> ACTIVATE(nzWadr(X1'', X2''))
ACTIVATE(napp(cons(X'', nzWadr(X1'''', X2'''')), X2')) -> APP(cons(X'', nzWadr(X1'''', X2'''')), X2')
APP(cons(X, napp(X1'', X2'')), YS) -> ACTIVATE(napp(X1'', X2''))
ACTIVATE(napp(cons(X'', napp(X1'''', X2'''')), X2')) -> APP(cons(X'', napp(X1'''', X2'''')), X2')
ZWADR(cons(X, XS), cons(Y, napp(X1'', X2''))) -> ACTIVATE(napp(X1'', X2''))
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost
PREFIX(L) -> PREFIX(L)
app(nil, YS) -> YS
app(cons(X, XS), YS) -> cons(X, napp(activate(XS), YS))
app(X1, X2) -> napp(X1, X2)
from(X) -> cons(X, nfrom(s(X)))
from(X) -> nfrom(X)
zWadr(nil, YS) -> nil
zWadr(XS, nil) -> nil
zWadr(cons(X, XS), cons(Y, YS)) -> cons(app(Y, cons(X, nnil)), nzWadr(activate(XS), activate(YS)))
zWadr(X1, X2) -> nzWadr(X1, X2)
prefix(L) -> cons(nil, nzWadr(L, prefix(L)))
nil -> nnil
activate(napp(X1, X2)) -> app(X1, X2)
activate(nfrom(X)) -> from(X)
activate(nnil) -> nil
activate(nzWadr(X1, X2)) -> zWadr(X1, X2)
activate(X) -> X
innermost