MAYBE Initial complexity problem: 1: T: (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) (?, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ a >= c + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7returnin(a, b, c) [ c = a ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 0) [ c >= b + 1 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b >= c ] (?, 1) evalEx7returnin(a, b, c) -> evalEx7stop(a, b, c) start location: evalEx7start leaf cost: 0 Repeatedly removing leaves of the complexity graph in problem 1 produces the following problem: 2: T: (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) (?, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ a >= c + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ c >= a + 1 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 0) [ c >= b + 1 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b >= c ] start location: evalEx7start leaf cost: 2 Repeatedly propagating knowledge in problem 2 produces the following problem: 3: T: (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ a >= c + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ c >= a + 1 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 0) [ c >= b + 1 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b >= c ] start location: evalEx7start leaf cost: 2 Applied AI with 'oct' on problem 3 to obtain the following invariants: For symbol evalEx7bb3in: X_2 - 2 >= 0 /\ X_1 + X_2 - 3 >= 0 /\ -X_1 + X_2 - 1 >= 0 /\ X_1 - 1 >= 0 For symbol evalEx7bbin: X_2 - 2 >= 0 /\ X_1 + X_2 - 3 >= 0 /\ -X_1 + X_2 - 1 >= 0 /\ X_1 - 1 >= 0 This yielded the following problem: 4: T: (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 0) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 0) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 ] with all transitions in problem 4, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 0) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 ] We thus obtain the following problem: 5: T: (?, 2) evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 0) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 0) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 ] with all transitions in problem 5, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 ] We thus obtain the following problem: 6: T: (?, 3) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 ] with all transitions in problem 6, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 ] We thus obtain the following problem: 7: T: (?, 4) evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 ] with all transitions in problem 7, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 2) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 ] We thus obtain the following problem: 8: T: (?, 5) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 2) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 2) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 ] with all transitions in problem 8, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 2) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 ] We thus obtain the following problem: 9: T: (?, 6) evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 2) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 2) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 ] with all transitions in problem 9, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 3) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 ] We thus obtain the following problem: 10: T: (?, 7) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 3) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 3) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 ] with all transitions in problem 10, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 3) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 ] We thus obtain the following problem: 11: T: (?, 8) evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 3) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 3) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 ] with all transitions in problem 11, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 4) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 ] We thus obtain the following problem: 12: T: (?, 9) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 4) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 4) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 ] with all transitions in problem 12, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 4) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 ] We thus obtain the following problem: 13: T: (?, 10) evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 4) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 4) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 ] with all transitions in problem 13, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 5) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 ] We thus obtain the following problem: 14: T: (?, 11) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 5) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 5) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 ] with all transitions in problem 14, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 5) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 ] We thus obtain the following problem: 15: T: (?, 12) evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 5) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 5) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 ] with all transitions in problem 15, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 6) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 ] We thus obtain the following problem: 16: T: (?, 13) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 6) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 6) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 ] with all transitions in problem 16, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 6) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 /\ a >= 7 ] We thus obtain the following problem: 17: T: (?, 14) evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 6) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 /\ a >= 7 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 6) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 /\ a >= 7 ] with all transitions in problem 17, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 7) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 /\ a >= 7 /\ b >= 6 ] We thus obtain the following problem: 18: T: (?, 15) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 7) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 /\ a >= 7 /\ b >= 6 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 By chaining the transition evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, 7) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 /\ a >= 7 /\ b >= 6 ] with all transitions in problem 18, the following new transition is obtained: evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 7) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 /\ a >= 7 /\ b >= 6 /\ a >= 8 ] We thus obtain the following problem: 19: T: (?, 16) evalEx7bbin(a, b, c) -> evalEx7bbin(a, b, 7) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= b + 1 /\ a >= 1 /\ b >= 0 /\ a >= 2 /\ b >= 1 /\ a >= 3 /\ b >= 2 /\ a >= 4 /\ b >= 3 /\ a >= 5 /\ b >= 4 /\ a >= 6 /\ b >= 5 /\ a >= 7 /\ b >= 6 /\ a >= 8 ] (?, 1) evalEx7bbin(a, b, c) -> evalEx7bb3in(a, b, c + 1) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ b >= c ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ c >= a + 1 ] (?, 1) evalEx7bb3in(a, b, c) -> evalEx7bbin(a, b, c) [ b - 2 >= 0 /\ a + b - 3 >= 0 /\ -a + b - 1 >= 0 /\ a - 1 >= 0 /\ a >= c + 1 ] (1, 1) evalEx7entryin(a, b, c) -> evalEx7bb3in(a, b, a + 1) [ a >= 1 /\ b >= a + 1 ] (1, 1) evalEx7start(a, b, c) -> evalEx7entryin(a, b, c) start location: evalEx7start leaf cost: 2 Complexity upper bound ? Time: 1.450 sec (SMT: 1.314 sec)