We consider termination of the STRS with no additional rule schemes: Signature: append :: b -> b -> b cons :: a -> b -> b map :: (a -> a) -> b -> b nil :: b Rules: append(nil, X) -> X append(cons(Y, V), U) -> cons(Y, append(V, U)) map(I, nil) -> nil map(J, cons(X1, Y1)) -> cons(J(X1), map(J, Y1)) append(append(U1, V1), W1) -> append(U1, append(V1, W1)) map(J1, append(X2, Y2)) -> append(map(J1, X2), map(J1, Y2)) The system is accessible function passing by a sort ordering that equates all sorts. We start by computing the initial DP problem D1 = (P1, R, i, c), where: P1. (1) append#(cons(Y, V), U) => append#(V, U) (2) map#(J, cons(X1, Y1)) => map#(J, Y1) (3) append#(append(U1, V1), W1) => append#(V1, W1) (4) append#(append(U1, V1), W1) => append#(U1, append(V1, W1)) (5) map#(J1, append(X2, Y2)) => map#(J1, X2) (6) map#(J1, append(X2, Y2)) => map#(J1, Y2) (7) map#(J1, append(X2, Y2)) => append#(map(J1, X2), map(J1, Y2)) ***** We apply the Graph Processor on D1 = (P1, R, i, c). We compute a graph approximation with the following edges: 1: 1 3 4 2: 2 5 6 7 3: 1 3 4 4: 1 3 4 5: 2 5 6 7 6: 2 5 6 7 7: 1 3 4 There are 2 SCCs. Processor output: { D2 = (P2, R, i, c) ; D3 = (P3, R, i, c) }, where: P2. (1) append#(cons(Y, V), U) => append#(V, U) (2) append#(append(U1, V1), W1) => append#(V1, W1) (3) append#(append(U1, V1), W1) => append#(U1, append(V1, W1)) P3. (1) map#(J, cons(X1, Y1)) => map#(J, Y1) (2) map#(J1, append(X2, Y2)) => map#(J1, X2) (3) map#(J1, append(X2, Y2)) => map#(J1, Y2) ***** We apply the Subterm Criterion Processor on D2 = (P2, R, i, c). We use the following projection function: nu(append#) = 1 We thus have: (1) cons(Y, V) |>| V (2) append(U1, V1) |>| V1 (3) append(U1, V1) |>| U1 All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. Processor output: { }. ***** We apply the Subterm Criterion Processor on D3 = (P3, R, i, c). We use the following projection function: nu(map#) = 2 We thus have: (1) cons(X1, Y1) |>| Y1 (2) append(X2, Y2) |>| X2 (3) append(X2, Y2) |>| Y2 All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. Processor output: { }.