We consider termination of the LCTRS with only rule scheme Calc: Signature: f :: Int -> Int -> A g :: Int -> Int -> A Rules: f(x, y) -> g(x, y - 1) | x = x /\ y >= 0 g(x, y) -> f(x, y) | x = x /\ y = y 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) f#(x, y) => g#(x, y - 1) | x = x /\ y >= 0 (2) g#(x, y) => f#(x, y) | x = x /\ y = y ***** We apply the Chaining Processor Processor on D1 = (P1, R, i, c). We chain DPs according to the following mapping: g#(x, y) => g#(x, y - 1) | x = x /\ y = y /\ (x = x /\ y >= 0) is obtained by chaining g#(x, y) => f#(x, y) | x = x /\ y = y and f#(x', y') => g#(x', y' - 1) | x' = x' /\ y' >= 0 The following DPs were deleted: g#(x, y) => f#(x, y) | x = x /\ y = y f#(x, y) => g#(x, y - 1) | x = x /\ y >= 0 By chaining, we added 1 DPs and removed 2 DPs. Processor output: { D2 = (P2, R, i, c) }, where: P2. (1) g#(x, y) => g#(x, y - 1) | x = x /\ y = y /\ (x = x /\ y >= 0) ***** We apply the Integer Function Processor on D2 = (P2, R, i, c). We use the following integer mapping: J(g#) = arg_2 We thus have: (1) x = x /\ y = y /\ (x = x /\ y >= 0) |= y > y - 1 (and y >= 0) All DPs are strictly oriented, and may be removed. Hence, this DP problem is finite. Processor output: { }.