We consider universal computability of the STRS with no additional rule schemes: Signature: 0 :: b 1 :: b c :: b -> b cons :: c -> d -> d f :: b -> a false :: a filter :: (c -> a) -> d -> d filter2 :: a -> (c -> a) -> c -> d -> d g :: b -> b -> b if :: a -> b -> b -> b map :: (c -> c) -> d -> d nil :: d s :: b -> b true :: a Rules: f(0) -> true f(1) -> false f(s(X)) -> f(X) if(true, Y, U) -> Y if(false, V, W) -> W g(s(P), s(X1)) -> if(f(P), s(P), s(X1)) g(Y1, c(U1)) -> g(Y1, g(s(c(U1)), U1)) map(H1, nil) -> nil map(I1, cons(P1, X2)) -> cons(I1(P1), map(I1, X2)) filter(Z2, nil) -> nil filter(G2, cons(V2, W2)) -> filter2(G2(V2), G2, V2, W2) filter2(true, J2, X3, Y3) -> cons(X3, filter(J2, Y3)) filter2(false, G3, V3, W3) -> filter(G3, W3) 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 UNION R_?, i, c), where: P1. (1) f#(s(X)) => f#(X) (2) g#(s(P), s(X1)) => f#(P) (3) g#(s(P), s(X1)) => if#(f(P), s(P), s(X1)) (4) g#(Y1, c(U1)) => g#(s(c(U1)), U1) (5) g#(Y1, c(U1)) => g#(Y1, g(s(c(U1)), U1)) (6) map#(I1, cons(P1, X2)) => map#(I1, X2) (7) filter#(G2, cons(V2, W2)) => filter2#(G2(V2), G2, V2, W2) (8) filter2#(true, J2, X3, Y3) => filter#(J2, Y3) (9) filter2#(false, G3, V3, W3) => filter#(G3, W3) ***** We apply the Graph Processor on D1 = (P1, R UNION R_?, i, c). We compute a graph approximation with the following edges: 1: 1 2: 1 3: 4: 2 3 4 5 5: 2 3 4 5 6: 6 7: 8 9 8: 7 9: 7 There are 4 SCCs. Processor output: { D2 = (P2, R UNION R_?, i, c) ; D3 = (P3, R UNION R_?, i, c) ; D4 = (P4, R UNION R_?, i, c) ; D5 = (P5, R UNION R_?, i, c) }, where: P2. (1) f#(s(X)) => f#(X) P3. (1) g#(Y1, c(U1)) => g#(s(c(U1)), U1) (2) g#(Y1, c(U1)) => g#(Y1, g(s(c(U1)), U1)) P4. (1) map#(I1, cons(P1, X2)) => map#(I1, X2) P5. (1) filter#(G2, cons(V2, W2)) => filter2#(G2(V2), G2, V2, W2) (2) filter2#(true, J2, X3, Y3) => filter#(J2, Y3) (3) filter2#(false, G3, V3, W3) => filter#(G3, W3) ***** We apply the Subterm Criterion Processor on D2 = (P2, R UNION R_?, i, c). 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. Processor output: { }. ***** We apply the Usable Rules Processor on D3 = (P3, R UNION R_?, i, c). We obtain 7 usable rules (out of 13 rules in the input problem). Processor output: { D6 = (P3, R2, i, c) }, where: R2. (1) f(0) -> true (2) f(1) -> false (3) f(s(X)) -> f(X) (4) g(s(P), s(X1)) -> if(f(P), s(P), s(X1)) (5) g(Y1, c(U1)) -> g(Y1, g(s(c(U1)), U1)) (6) if(true, Y, U) -> Y (7) if(false, V, W) -> W ***** We apply the Subterm Criterion Processor on D4 = (P4, R UNION R_?, i, c). We use the following projection function: nu(map#) = 2 We thus have: (1) cons(P1, X2) |>| X2 All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. Processor output: { }. ***** We apply the Subterm Criterion Processor on D5 = (P5, R UNION R_?, i, c). We use the following projection function: nu(filter#) = 2 nu(filter2#) = 4 We thus have: (1) cons(V2, W2) |>| W2 (2) Y3 |>=| Y3 (3) W3 |>=| W3 We may remove the strictly oriented DPs. Processor output: { D7 = (P6, R UNION R_?, i, c) }, where: P6. (1) filter2#(true, J2, X3, Y3) => filter#(J2, Y3) (2) filter2#(false, G3, V3, W3) => filter#(G3, W3) ***** We apply the Reduction Pair [with HORPO] Processor on D6 = (P3, R2, i, c). Constrained HORPO yields: g#(Y1, c(U1)) (>) g#(s(c(U1)), U1) g#(Y1, c(U1)) (>) g#(Y1, g(s(c(U1)), U1)) f(0) (>=) true f(1) (>=) false f(s(X)) (>=) f(X) g(s(P), s(X1)) (>=) if(f(P), s(P), s(X1)) g(Y1, c(U1)) (>=) g(Y1, g(s(c(U1)), U1)) if(true, Y, U) (>=) Y if(false, V, W) (>=) W We do this using the following settings: * Disregarded arguments: f 1 g# 1 g 2 if 1 s 1 * Precedence and permutation: 0 { } = c { 1 } = s { } > false { } = f { } > 1 { } > g# { 2 } = g { 1 } = if { } 2 3 = true { } * Well-founded theory orderings: [>]_{Bool} = {(true,false)} [>]_{Int} = {(x,y) | x < 1000 /\ x < y } All dependency pairs were removed. Processor output: { }. ***** We apply the Graph Processor on D7 = (P6, R UNION R_?, i, c). We compute a graph approximation with the following edges: 1: 2: As there are no SCCs, this DP problem is removed. Processor output: { }.