YES(?, c^2 + 5*c + 7) Initial complexity problem: 1: T: (?, 1) f4(a, b, c) -> f4(a, b + 1, c) [ a >= b + 1 ] (?, 1) f4(a, b, c) -> f4(a + 1, 0, c) [ c >= a + 2 /\ b >= a ] (1, 1) f0(a, b, c) -> f4(0, 0, c) [ c >= 1 ] start location: f0 leaf cost: 0 A polynomial rank function with Pol(f4) = -V_1 + V_3 + 2 Pol(f0) = V_3 + 2 orients all transitions weakly and the transition f4(a, b, c) -> f4(a + 1, 0, c) [ c >= a + 2 /\ b >= a ] strictly and produces the following problem: 2: T: (?, 1) f4(a, b, c) -> f4(a, b + 1, c) [ a >= b + 1 ] (c + 2, 1) f4(a, b, c) -> f4(a + 1, 0, c) [ c >= a + 2 /\ b >= a ] (1, 1) f0(a, b, c) -> f4(0, 0, c) [ c >= 1 ] start location: f0 leaf cost: 0 A polynomial rank function with Pol(f4) = V_1 - V_2 and size complexities S("f0(a, b, c) -> f4(0, 0, c) [ c >= 1 ]", 0-0) = 0 S("f0(a, b, c) -> f4(0, 0, c) [ c >= 1 ]", 0-1) = 0 S("f0(a, b, c) -> f4(0, 0, c) [ c >= 1 ]", 0-2) = c S("f4(a, b, c) -> f4(a + 1, 0, c) [ c >= a + 2 /\\ b >= a ]", 0-0) = c + 2 S("f4(a, b, c) -> f4(a + 1, 0, c) [ c >= a + 2 /\\ b >= a ]", 0-1) = 0 S("f4(a, b, c) -> f4(a + 1, 0, c) [ c >= a + 2 /\\ b >= a ]", 0-2) = c S("f4(a, b, c) -> f4(a, b + 1, c) [ a >= b + 1 ]", 0-0) = c + 2 S("f4(a, b, c) -> f4(a, b + 1, c) [ a >= b + 1 ]", 0-1) = ? S("f4(a, b, c) -> f4(a, b + 1, c) [ a >= b + 1 ]", 0-2) = c orients the transition f4(a, b, c) -> f4(a, b + 1, c) [ a >= b + 1 ] weakly and the transition f4(a, b, c) -> f4(a, b + 1, c) [ a >= b + 1 ] strictly and produces the following problem: 3: T: (c^2 + 4*c + 4, 1) f4(a, b, c) -> f4(a, b + 1, c) [ a >= b + 1 ] (c + 2, 1) f4(a, b, c) -> f4(a + 1, 0, c) [ c >= a + 2 /\ b >= a ] (1, 1) f0(a, b, c) -> f4(0, 0, c) [ c >= 1 ] start location: f0 leaf cost: 0 Complexity upper bound c^2 + 5*c + 7 Time: 0.108 sec (SMT: 0.100 sec)