YES O(n^4) TRS: { sqr(0()) -> 0(), sqr(s()) -> s(), terms(N) -> cons(recip(sqr(N))), dbl(0()) -> 0(), dbl(s()) -> s(), add(0(), X) -> X, add(s(), Y) -> s(), first(0(), X) -> nil(), first(s(), cons(Y)) -> cons(Y) } DUP: We consider a non-duplicating system. Trs: { sqr(0()) -> 0(), sqr(s()) -> s(), terms(N) -> cons(recip(sqr(N))), dbl(0()) -> 0(), dbl(s()) -> s(), add(0(), X) -> X, add(s(), Y) -> s(), first(0(), X) -> nil(), first(s(), cons(Y)) -> cons(Y) } Matrix Interpretation: Interpretation class: triangular [X7] [X3] [1 0 0 0][X7] [1 0 0 0][X3] [1] [X6] [X2] [0 0 0 1][X6] [0 0 0 0][X2] [1] [first]([X5], [X1]) = [0 0 0 0][X5] + [0 0 0 0][X1] + [1] [X4] [X0] [0 0 0 0][X4] [0 0 0 0][X0] [0] [0] [0] [nil] = [0] [0] [X7] [X3] [1 0 0 0][X7] [1 0 0 0][X3] [1] [X6] [X2] [0 0 0 0][X6] [0 1 0 0][X2] [0] [add]([X5], [X1]) = [0 0 0 0][X5] + [0 0 1 0][X1] + [1] [X4] [X0] [0 0 0 0][X4] [0 0 0 1][X0] [0] [X3] [1 0 0 0][X3] [1] [X2] [0 0 0 1][X2] [1] [dbl]([X1]) = [0 0 0 1][X1] + [1] [X0] [0 0 0 1][X0] [1] [0] [0] [s] = [1] [0] [0] [0] [0] = [0] [1] [X3] [1 1 1 1][X3] [1] [X2] [0 0 1 1][X2] [0] [terms]([X1]) = [0 0 1 1][X1] + [0] [X0] [0 0 0 0][X0] [1] [X3] [1 0 1 1][X3] [0] [X2] [0 0 0 0][X2] [1] [sqr]([X1]) = [0 0 1 0][X1] + [0] [X0] [0 0 0 1][X0] [0] [X3] [1 0 0 0][X3] [0] [X2] [0 0 0 0][X2] [0] [recip]([X1]) = [0 0 0 0][X1] + [0] [X0] [0 0 0 0][X0] [0] [X3] [1 0 0 0][X3] [0] [X2] [0 0 0 0][X2] [0] [cons]([X1]) = [0 0 0 0][X1] + [0] [X0] [0 0 0 0][X0] [0] Qed