We consider universal computability of the LCTRS with only rule scheme Calc: Signature: cond :: Int -> Int -> Int -> Int if :: Bool -> Int -> Int -> Int min :: Int -> Int -> Int minus :: Int -> Int -> Int Rules: minus(x, x) -> 0 | x = x minus(x, y) -> cond(min(x, y), x, y) | x = x /\ y = y cond(y, x, y) -> 1 + minus(x, y + 1) | y = y /\ x = x min(u, v) -> if(u < v, u, v) | u = u /\ v = v if(true, u, v) -> u | u = u /\ v = v if(false, u, v) -> v | u = u /\ v = v 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) minus#(x, y) => min#(x, y) | x = x /\ y = y (2) minus#(x, y) => cond#(min(x, y), x, y) | x = x /\ y = y (3) cond#(y, x, y) => minus#(x, y + 1) | y = y /\ x = x (4) min#(u, v) => if#(u < v, u, v) | u = u /\ v = v ***** We apply the Graph Processor on D1 = (P1, R UNION R_?, i, c). We compute a graph approximation with the following edges: 1: 4 2: 3 3: 1 2 4: There is only one SCC, so all DPs not inside the SCC can be removed. Processor output: { D2 = (P2, R UNION R_?, i, c) }, where: P2. (1) minus#(x, y) => cond#(min(x, y), x, y) | x = x /\ y = y (2) cond#(y, x, y) => minus#(x, y + 1) | y = y /\ x = x ***** We apply the Chaining Processor Processor on D2 = (P2, R UNION R_?, i, c). We chain DPs according to the following mapping: cond#(y, x, y) => cond#(min(x, y + 1), x, y + 1) | y = y /\ x = x /\ (x = x /\ y + 1 = y + 1) is obtained by chaining cond#(y, x, y) => minus#(x, y + 1) | y = y /\ x = x and minus#(x', y') => cond#(min(x', y'), x', y') | x' = x' /\ y' = y' The following DPs were deleted: cond#(y, x, y) => minus#(x, y + 1) | y = y /\ x = x minus#(x, y) => cond#(min(x, y), x, y) | x = x /\ y = y By chaining, we added 1 DPs and removed 2 DPs. Processor output: { D3 = (P3, R UNION R_?, i, c) }, where: P3. (1) cond#(y, x, y) => cond#(min(x, y + 1), x, y + 1) | y = y /\ x = x /\ (x = x /\ y + 1 = y + 1) ***** No progress could be made on DP problem D3 = (P3, R UNION R_?, i, c).