YES Problem: from(X) -> cons(X,n__from(s(X))) after(0(),XS) -> XS after(s(N),cons(X,XS)) -> after(N,activate(XS)) from(X) -> n__from(X) activate(n__from(X)) -> from(X) activate(X) -> X Proof: DP Processor: DPs: after#(s(N),cons(X,XS)) -> activate#(XS) after#(s(N),cons(X,XS)) -> after#(N,activate(XS)) activate#(n__from(X)) -> from#(X) TRS: from(X) -> cons(X,n__from(s(X))) after(0(),XS) -> XS after(s(N),cons(X,XS)) -> after(N,activate(XS)) from(X) -> n__from(X) activate(n__from(X)) -> from(X) activate(X) -> X TDG Processor: DPs: after#(s(N),cons(X,XS)) -> activate#(XS) after#(s(N),cons(X,XS)) -> after#(N,activate(XS)) activate#(n__from(X)) -> from#(X) TRS: from(X) -> cons(X,n__from(s(X))) after(0(),XS) -> XS after(s(N),cons(X,XS)) -> after(N,activate(XS)) from(X) -> n__from(X) activate(n__from(X)) -> from(X) activate(X) -> X graph: after#(s(N),cons(X,XS)) -> activate#(XS) -> activate#(n__from(X)) -> from#(X) after#(s(N),cons(X,XS)) -> after#(N,activate(XS)) -> after#(s(N),cons(X,XS)) -> after#(N,activate(XS)) after#(s(N),cons(X,XS)) -> after#(N,activate(XS)) -> after#(s(N),cons(X,XS)) -> activate#(XS) SCC Processor: #sccs: 1 #rules: 1 #arcs: 3/9 DPs: after#(s(N),cons(X,XS)) -> after#(N,activate(XS)) TRS: from(X) -> cons(X,n__from(s(X))) after(0(),XS) -> XS after(s(N),cons(X,XS)) -> after(N,activate(XS)) from(X) -> n__from(X) activate(n__from(X)) -> from(X) activate(X) -> X Arctic Interpretation Processor: dimension: 1 interpretation: [after#](x0, x1) = x0 + x1 + 0, [activate](x0) = 1x0 + 4, [after](x0, x1) = 1x0 + 1x1 + 0, [0] = 1, [cons](x0, x1) = 2x1, [n__from](x0) = 0, [s](x0) = 4x0 + 5, [from](x0) = 3 orientation: after#(s(N),cons(X,XS)) = 4N + 2XS + 5 >= N + 1XS + 4 = after#(N,activate(XS)) from(X) = 3 >= 2 = cons(X,n__from(s(X))) after(0(),XS) = 1XS + 2 >= XS = XS after(s(N),cons(X,XS)) = 5N + 3XS + 6 >= 1N + 2XS + 5 = after(N,activate(XS)) from(X) = 3 >= 0 = n__from(X) activate(n__from(X)) = 4 >= 3 = from(X) activate(X) = 1X + 4 >= X = X problem: DPs: TRS: from(X) -> cons(X,n__from(s(X))) after(0(),XS) -> XS after(s(N),cons(X,XS)) -> after(N,activate(XS)) from(X) -> n__from(X) activate(n__from(X)) -> from(X) activate(X) -> X Qed