YES O(n^4) TRS: { g(empty(), d) -> d, g(cons(x, k), d) -> g(k, cons(x, d)), f(a, empty()) -> g(a, empty()), f(a, cons(x, k)) -> f(cons(x, a), k) } DUP: We consider a non-duplicating system. Trs: { g(empty(), d) -> d, g(cons(x, k), d) -> g(k, cons(x, d)), f(a, empty()) -> g(a, empty()), f(a, cons(x, k)) -> f(cons(x, a), k) } Matrix Interpretation: Interpretation class: triangular [X7] [X3] [1 0 0 0][X7] [1 0 0 0][X3] [0] [X6] [X2] [0 0 0 1][X6] [0 1 0 0][X2] [1] [cons]([X5], [X1]) = [0 0 0 0][X5] + [0 0 1 0][X1] + [0] [X4] [X0] [0 0 0 1][X4] [0 0 0 1][X0] [1] [X7] [X3] [1 1 0 0][X7] [1 1 0 1][X3] [0] [X6] [X2] [0 0 0 1][X6] [0 1 1 0][X2] [0] [f]([X5], [X1]) = [0 0 0 0][X5] + [0 0 0 0][X1] + [1] [X4] [X0] [0 0 0 1][X4] [0 0 0 1][X0] [0] [0] [1] [empty] = [1] [0] [X7] [X3] [1 1 0 0][X7] [1 0 0 0][X3] [0] [X6] [X2] [0 0 0 1][X6] [0 1 0 0][X2] [0] [g]([X5], [X1]) = [0 0 0 0][X5] + [0 0 1 0][X1] + [0] [X4] [X0] [0 0 0 1][X4] [0 0 0 1][X0] [0] Qed