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