MAYBE Initial complexity problem: 1: T: (1, 1) f0(a) -> f3(a) (?, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 A polynomial rank function with Pol(f0) = V_1 Pol(f3) = V_1 orients all transitions weakly and the transition f3(a) -> f3(a - 1) [ a >= 2 ] strictly and produces the following problem: 2: T: (1, 1) f0(a) -> f3(a) (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a) with all transitions in problem 2, the following new transitions are obtained: f0(a) -> f3(a - 1) f0(a) -> f3(a - 1) [ a >= 2 ] We thus obtain the following problem: 3: T: (1, 2) f0(a) -> f3(a - 1) (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 1) with all transitions in problem 3, the following new transitions are obtained: f0(a) -> f3(a - 2) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] We thus obtain the following problem: 4: T: (1, 3) f0(a) -> f3(a - 2) (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 2) with all transitions in problem 4, the following new transitions are obtained: f0(a) -> f3(a - 3) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] We thus obtain the following problem: 5: T: (1, 4) f0(a) -> f3(a - 3) (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 3) with all transitions in problem 5, the following new transitions are obtained: f0(a) -> f3(a - 4) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] We thus obtain the following problem: 6: T: (1, 5) f0(a) -> f3(a - 4) (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 4) with all transitions in problem 6, the following new transitions are obtained: f0(a) -> f3(a - 5) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] We thus obtain the following problem: 7: T: (1, 6) f0(a) -> f3(a - 5) (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 5) with all transitions in problem 7, the following new transitions are obtained: f0(a) -> f3(a - 6) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] We thus obtain the following problem: 8: T: (1, 7) f0(a) -> f3(a - 6) (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 6) with all transitions in problem 8, the following new transitions are obtained: f0(a) -> f3(a - 7) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] We thus obtain the following problem: 9: T: (1, 8) f0(a) -> f3(a - 7) (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 7) with all transitions in problem 9, the following new transitions are obtained: f0(a) -> f3(a - 8) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] We thus obtain the following problem: 10: T: (1, 9) f0(a) -> f3(a - 8) (1, 9) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 8) with all transitions in problem 10, the following new transitions are obtained: f0(a) -> f3(a - 9) f0(a) -> f3(a - 9) [ a - 8 >= 2 ] We thus obtain the following problem: 11: T: (1, 10) f0(a) -> f3(a - 9) (1, 10) f0(a) -> f3(a - 9) [ a - 8 >= 2 ] (1, 9) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 9) with all transitions in problem 11, the following new transitions are obtained: f0(a) -> f3(a - 10) f0(a) -> f3(a - 10) [ a - 9 >= 2 ] We thus obtain the following problem: 12: T: (1, 11) f0(a) -> f3(a - 10) (1, 11) f0(a) -> f3(a - 10) [ a - 9 >= 2 ] (1, 10) f0(a) -> f3(a - 9) [ a - 8 >= 2 ] (1, 9) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 10) with all transitions in problem 12, the following new transitions are obtained: f0(a) -> f3(a - 11) f0(a) -> f3(a - 11) [ a - 10 >= 2 ] We thus obtain the following problem: 13: T: (1, 12) f0(a) -> f3(a - 11) (1, 12) f0(a) -> f3(a - 11) [ a - 10 >= 2 ] (1, 11) f0(a) -> f3(a - 10) [ a - 9 >= 2 ] (1, 10) f0(a) -> f3(a - 9) [ a - 8 >= 2 ] (1, 9) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 11) with all transitions in problem 13, the following new transitions are obtained: f0(a) -> f3(a - 12) f0(a) -> f3(a - 12) [ a - 11 >= 2 ] We thus obtain the following problem: 14: T: (1, 13) f0(a) -> f3(a - 12) (1, 13) f0(a) -> f3(a - 12) [ a - 11 >= 2 ] (1, 12) f0(a) -> f3(a - 11) [ a - 10 >= 2 ] (1, 11) f0(a) -> f3(a - 10) [ a - 9 >= 2 ] (1, 10) f0(a) -> f3(a - 9) [ a - 8 >= 2 ] (1, 9) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 12) with all transitions in problem 14, the following new transitions are obtained: f0(a) -> f3(a - 13) f0(a) -> f3(a - 13) [ a - 12 >= 2 ] We thus obtain the following problem: 15: T: (1, 14) f0(a) -> f3(a - 13) (1, 14) f0(a) -> f3(a - 13) [ a - 12 >= 2 ] (1, 13) f0(a) -> f3(a - 12) [ a - 11 >= 2 ] (1, 12) f0(a) -> f3(a - 11) [ a - 10 >= 2 ] (1, 11) f0(a) -> f3(a - 10) [ a - 9 >= 2 ] (1, 10) f0(a) -> f3(a - 9) [ a - 8 >= 2 ] (1, 9) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 13) with all transitions in problem 15, the following new transitions are obtained: f0(a) -> f3(a - 14) f0(a) -> f3(a - 14) [ a - 13 >= 2 ] We thus obtain the following problem: 16: T: (1, 15) f0(a) -> f3(a - 14) (1, 15) f0(a) -> f3(a - 14) [ a - 13 >= 2 ] (1, 14) f0(a) -> f3(a - 13) [ a - 12 >= 2 ] (1, 13) f0(a) -> f3(a - 12) [ a - 11 >= 2 ] (1, 12) f0(a) -> f3(a - 11) [ a - 10 >= 2 ] (1, 11) f0(a) -> f3(a - 10) [ a - 9 >= 2 ] (1, 10) f0(a) -> f3(a - 9) [ a - 8 >= 2 ] (1, 9) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 By chaining the transition f0(a) -> f3(a - 14) with all transitions in problem 16, the following new transitions are obtained: f0(a) -> f3(a - 15) f0(a) -> f3(a - 15) [ a - 14 >= 2 ] We thus obtain the following problem: 17: T: (1, 16) f0(a) -> f3(a - 15) (1, 16) f0(a) -> f3(a - 15) [ a - 14 >= 2 ] (1, 15) f0(a) -> f3(a - 14) [ a - 13 >= 2 ] (1, 14) f0(a) -> f3(a - 13) [ a - 12 >= 2 ] (1, 13) f0(a) -> f3(a - 12) [ a - 11 >= 2 ] (1, 12) f0(a) -> f3(a - 11) [ a - 10 >= 2 ] (1, 11) f0(a) -> f3(a - 10) [ a - 9 >= 2 ] (1, 10) f0(a) -> f3(a - 9) [ a - 8 >= 2 ] (1, 9) f0(a) -> f3(a - 8) [ a - 7 >= 2 ] (1, 8) f0(a) -> f3(a - 7) [ a - 6 >= 2 ] (1, 7) f0(a) -> f3(a - 6) [ a - 5 >= 2 ] (1, 6) f0(a) -> f3(a - 5) [ a - 4 >= 2 ] (1, 5) f0(a) -> f3(a - 4) [ a - 3 >= 2 ] (1, 4) f0(a) -> f3(a - 3) [ a - 2 >= 2 ] (1, 3) f0(a) -> f3(a - 2) [ a - 1 >= 2 ] (1, 2) f0(a) -> f3(a - 1) [ a >= 2 ] (a, 1) f3(a) -> f3(a - 1) [ a >= 2 ] (?, 1) f3(a) -> f3(a - 1) start location: f0 leaf cost: 0 Complexity upper bound ? Time: 1.798 sec (SMT: 1.707 sec)