We consider termination of the STRS with no additional rule schemes: Signature: and :: c -> c -> c cons :: a -> b -> b false :: c forall :: (a -> c) -> b -> c forsome :: (a -> c) -> b -> c nil :: b or :: c -> c -> c true :: c Rules: and(true, true) -> true and(true, false) -> false and(false, true) -> false and(false, false) -> false or(true, true) -> true or(true, false) -> true or(false, true) -> true or(false, false) -> false forall(F, nil) -> true forall(Z, cons(U, V)) -> and(Z(U), forall(Z, V)) forsome(I, nil) -> false forsome(J, cons(X1, Y1)) -> or(J(X1), forsome(J, Y1)) 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) forall#(Z, cons(U, V)) => forall#(Z, V) (2) forall#(Z, cons(U, V)) => and#(Z(U), forall(Z, V)) (3) forsome#(J, cons(X1, Y1)) => forsome#(J, Y1) (4) forsome#(J, cons(X1, Y1)) => or#(J(X1), forsome(J, Y1)) ***** We apply the Graph Processor on D1 = (P1, R, i, c). We compute a graph approximation with the following edges: 1: 1 2 2: 3: 3 4 4: There are 2 SCCs. Processor output: { D2 = (P2, R, i, c) ; D3 = (P3, R, i, c) }, where: P2. (1) forall#(Z, cons(U, V)) => forall#(Z, V) P3. (1) forsome#(J, cons(X1, Y1)) => forsome#(J, Y1) ***** We apply the Subterm Criterion Processor on D2 = (P2, R, i, c). We use the following projection function: nu(forall#) = 2 We thus have: (1) cons(U, V) |>| V 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(forsome#) = 2 We thus have: (1) cons(X1, Y1) |>| Y1 All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. Processor output: { }.