The system is accessible function passing by a sort ordering that equates all sorts. We start by computing the following initial DP problem: P1. (1) f#(s(X)) => f#(X) (2) g#(cons(0, Y)) => g#(Y) (3) h#(cons(W, P)) => g#(cons(W, P)) (4) h#(cons(W, P)) => h#(g(cons(W, P))) (5) map#(Z1, cons(U1, V1)) => map#(Z1, V1) (6) filter#(J1, cons(X2, Y2)) => filter2#(J1(X2), J1, X2, Y2) (7) filter2#(true, G2, V2, W2) => filter#(G2, W2) (8) filter2#(false, J2, X3, Y3) => filter#(J2, Y3) ***** We apply the Graph Processor on P1. Considering the 5 SCCs, this DP problem is split into the following new problems. P2. (1) f#(s(X)) => f#(X) P3. (1) g#(cons(0, Y)) => g#(Y) P4. (1) h#(cons(W, P)) => h#(g(cons(W, P))) P5. (1) map#(Z1, cons(U1, V1)) => map#(Z1, V1) P6. (1) filter#(J1, cons(X2, Y2)) => filter2#(J1(X2), J1, X2, Y2) (2) filter2#(true, G2, V2, W2) => filter#(G2, W2) (3) filter2#(false, J2, X3, Y3) => filter#(J2, Y3) ***** We apply the Subterm Criterion Processor on P2. We use the following projection function: nu(f#) = 1 We thus have: (1) s(X) |>| X All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. ***** We apply the Subterm Criterion Processor on P3. We use the following projection function: nu(g#) = 1 We thus have: (1) cons(0, Y) |>| Y All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. ***** No progress could be made on DP problem P4.