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) map#(Z, cons(U, V)) => map#(Z, V) (2) minus#(s(P), s(X1)) => minus#(P, X1) (3) div#(s(U1), s(V1)) => minus#(U1, V1) (4) div#(s(U1), s(V1)) => div#(minus(U1, V1), s(V1)) ***** We apply the Graph Processor on P1. Considering the 3 SCCs, this DP problem is split into the following new problems. P2. (1) map#(Z, cons(U, V)) => map#(Z, V) P3. (1) minus#(s(P), s(X1)) => minus#(P, X1) P4. (1) div#(s(U1), s(V1)) => div#(minus(U1, V1), s(V1)) ***** We apply the Subterm Criterion Processor on P2. We use the following projection function: nu(map#) = 2 We thus have: (1) cons(U, V) |>| V 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#) = 1 We thus have: (1) s(P) |>| P All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. ***** We apply the horpo Processor on P4. Constrained HORPO yields: div#(s(U1), s(V1)) (>) div#(minus(U1, V1), s(V1)) map(F, nil) (>=) nil map(Z, cons(U, V)) (>=) cons(Z(U), map(Z, V)) minus(W, 0) (>=) W minus(s(P), s(X1)) (>=) minus(P, X1) div(0, s(Y1)) (>=) 0 div(s(U1), s(V1)) (>=) s(div(minus(U1, V1), s(V1))) We do this using the following settings: * Precedence and status (for non-mentioned symbols the precedence is irrelevant and the status is Lex): div (status: Mul_2) > s (status: Lex) > 0 (status: Lex) > minus (status: Mul_2) > div# (status: Lex) > cons = map = nil (status: Lex) * Well-founded theory orderings: [>]_{Bool} = {(true,false)} [>]_{Int} = {(x,y) | x < 1000 /\ x < y } * Filter: cons disregards argument(s) 1 2 div disregards argument(s) 2 minus disregards argument(s) 2 All dependency pairs were removed.