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#(g(X)) => f#(X) (2) map#(H, cons(W, P)) => map#(H, P) (3) filter#(Z1, cons(U1, V1)) => filter2#(Z1(U1), Z1, U1, V1) (4) filter2#(true, I1, P1, X2) => filter#(I1, X2) (5) filter2#(false, Z2, U2, V2) => filter#(Z2, V2) ***** We apply the Graph Processor on P1. Considering the 3 SCCs, this DP problem is split into the following new problems. P2. (1) f#(g(X)) => f#(X) P3. (1) map#(H, cons(W, P)) => map#(H, P) P4. (1) filter#(Z1, cons(U1, V1)) => filter2#(Z1(U1), Z1, U1, V1) (2) filter2#(true, I1, P1, X2) => filter#(I1, X2) (3) filter2#(false, Z2, U2, V2) => filter#(Z2, V2) ***** We apply the Subterm Criterion Processor on P2. We use the following projection function: nu(f#) = 1 We thus have: (1) g(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(map#) = 2 We thus have: (1) cons(W, P) |>| P All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. ***** We apply the Subterm Criterion Processor on P4. We use the following projection function: nu(filter#) = 2 nu(filter2#) = 4 We thus have: (1) cons(U1, V1) |>| V1 (2) X2 |>=| X2 (3) V2 |>=| V2 We may remove the strictly oriented DPs, which yields: P5. (1) filter2#(true, I1, P1, X2) => filter#(I1, X2) (2) filter2#(false, Z2, U2, V2) => filter#(Z2, V2) ***** We apply the Graph Processor on P5. As there are no SCCs, this DP problem is removed.