YES LCTRS Theories Core, Ints Sorts Unit Signature fastfib: Int -> Unit return: Int -> Unit u: (Int, Int, Int, Int) -> Unit Rules u(!num, !f0, !f1, !f2) -> return(!f1) [not(>=(!num, 2))] u(!num, !f0, !f1, !f2) -> u(-(!num, 1), !f1, +(!f1, !f0), +(!f1, !f0)) [>=(!num, 2)] fastfib(!num) -> u(!num, 1, 1, !rnd) DPGraph with indexed dependency pairs {1: u#(!num, !f0, !f1, !f2) -> u#(-(!num, 1), !f1, +(!f1, !f0), +(!f1, !f0)) [>=(!num, 2)] , 2: fastfib#(!num) -> u#(!num, 1, 1, !rnd)} and edges 1 -> {1} 2 -> {1} with 1 SCC(s) SCC: {u#(!num, !f0, !f1, !f2) -> u#(-(!num, 1), !f1, +(!f1, !f0), +(!f1, !f0)) [>=(!num, 2)]} Value criterion after 1 iteration(s) with the projections: Iteration 1: projection(s): v(u#) = 1 removing the rule(s): {u#(!num, !f0, !f1, !f2) -> u#(-(!num, 1), !f1, +(!f1, !f0), +(!f1, !f0)) [>=(!num, 2)]} Elapsed Time: 32.97 ms