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) le#(s(U), s(V)) => le#(U, V) (2) minus#(X1, s(Y1)) => minus#(X1, Y1) (3) minus#(X1, s(Y1)) => pred#(minus(X1, Y1)) (4) gcd#(s(W1), s(P1)) => le#(P1, W1) (5) gcd#(s(W1), s(P1)) => if_gcd#(le(P1, W1), s(W1), s(P1)) (6) if_gcd#(true, s(X2), s(Y2)) => minus#(X2, Y2) (7) if_gcd#(true, s(X2), s(Y2)) => gcd#(minus(X2, Y2), s(Y2)) (8) if_gcd#(false, s(U2), s(V2)) => minus#(V2, U2) (9) if_gcd#(false, s(U2), s(V2)) => gcd#(minus(V2, U2), s(U2)) (10) map#(J2, cons(X3, Y3)) => map#(J2, Y3) (11) filter#(H3, cons(W3, P3)) => filter2#(H3(W3), H3, W3, P3) (12) filter2#(true, F4, Y4, U4) => filter#(F4, U4) (13) filter2#(false, H4, W4, P4) => filter#(H4, P4) ***** We apply the Graph Processor on P1. Considering the 5 SCCs, this DP problem is split into the following new problems. P2. (1) le#(s(U), s(V)) => le#(U, V) P3. (1) minus#(X1, s(Y1)) => minus#(X1, Y1) P4. (1) gcd#(s(W1), s(P1)) => if_gcd#(le(P1, W1), s(W1), s(P1)) (2) if_gcd#(true, s(X2), s(Y2)) => gcd#(minus(X2, Y2), s(Y2)) (3) if_gcd#(false, s(U2), s(V2)) => gcd#(minus(V2, U2), s(U2)) P5. (1) map#(J2, cons(X3, Y3)) => map#(J2, Y3) P6. (1) filter#(H3, cons(W3, P3)) => filter2#(H3(W3), H3, W3, P3) (2) filter2#(true, F4, Y4, U4) => filter#(F4, U4) (3) filter2#(false, H4, W4, P4) => filter#(H4, P4) ***** We apply the Subterm Criterion Processor on P2. We use the following projection function: nu(le#) = 1 We thus have: (1) s(U) |>| U 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(minus#) = 2 We thus have: (1) s(Y1) |>| Y1 All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. ***** No progress could be made on DP problem P4.