Trying to load file: main.koat Initial Control flow graph problem: Start location: f2 0: f2 -> f1 : A'=1, [ A==1 ], cost: 1 1: f2 -> f13 : B'=1, [ 0>=A ], cost: 1 2: f2 -> f13 : B'=1, [ A>=2 ], cost: 1 16: f13 -> f1 : [ B>=1+A ], cost: 1 3: f13 -> f20 : C'=1+B, D'=free, E'=free_1, F'=1, [ A>=B ], cost: 1 4: f20 -> f20 : D'=free_4*free_5+D, E'=E+free_2*free_3, F'=1+F, [ B>=F ], cost: 1 13: f20 -> f31 : F'=1, [ 0>=1+E && F>=1+B ], cost: 1 14: f20 -> f31 : F'=1, [ E>=1 && F>=1+B ], cost: 1 15: f20 -> f31 : E'=0, F'=1, [ F>=1+B && E==0 ], cost: 1 10: f31 -> f1 : C'=A, [ F>=1+B && A==C ], cost: 1 5: f31 -> f31 : F'=1+F, [ B>=F ], cost: 1 11: f31 -> f45 : F'=1, G'=free_22, H'=free_23, Q'=free_21, [ A>=1+C && F>=1+B ], cost: 1 12: f31 -> f45 : F'=1, G'=free_25, H'=free_26, Q'=free_24, [ C>=1+A && F>=1+B ], cost: 1 6: f45 -> f45 : F'=1+F, G'=free_9*free_11+G, H'=H+free_7*free_8, Q'=free_6*free_10+Q, [ B>=F ], cost: 1 9: f45 -> f60 : F'=1, J'=free_17, K'=B, Q_1'=free_18, R'=free_16, [ 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && F>=1+B ], cost: 1 8: f60 -> f13 : B'=1+B, [ F>=1+J ], cost: 1 7: f60 -> f60 : F'=1+F, K'=-1+K, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=K, [ J>=F ], cost: 1 Simplified the transitions: Start location: f2 1: f2 -> f13 : B'=1, [ 0>=A ], cost: 1 2: f2 -> f13 : B'=1, [ A>=2 ], cost: 1 3: f13 -> f20 : C'=1+B, D'=free, E'=free_1, F'=1, [ A>=B ], cost: 1 4: f20 -> f20 : D'=free_4*free_5+D, E'=E+free_2*free_3, F'=1+F, [ B>=F ], cost: 1 13: f20 -> f31 : F'=1, [ 0>=1+E && F>=1+B ], cost: 1 14: f20 -> f31 : F'=1, [ E>=1 && F>=1+B ], cost: 1 15: f20 -> f31 : E'=0, F'=1, [ F>=1+B && E==0 ], cost: 1 5: f31 -> f31 : F'=1+F, [ B>=F ], cost: 1 11: f31 -> f45 : F'=1, G'=free_22, H'=free_23, Q'=free_21, [ A>=1+C && F>=1+B ], cost: 1 12: f31 -> f45 : F'=1, G'=free_25, H'=free_26, Q'=free_24, [ C>=1+A && F>=1+B ], cost: 1 6: f45 -> f45 : F'=1+F, G'=free_9*free_11+G, H'=H+free_7*free_8, Q'=free_6*free_10+Q, [ B>=F ], cost: 1 9: f45 -> f60 : F'=1, J'=free_17, K'=B, Q_1'=free_18, R'=free_16, [ 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && F>=1+B ], cost: 1 8: f60 -> f13 : B'=1+B, [ F>=1+J ], cost: 1 7: f60 -> f60 : F'=1+F, K'=-1+K, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=K, [ J>=F ], cost: 1 Eliminating 1 self-loops for location f20 Self-Loop 4 has the metering function: 1+B-F, resulting in the new transition 17. Removing the self-loops: 4. Eliminating 1 self-loops for location f31 Self-Loop 5 has the metering function: 1+B-F, resulting in the new transition 18. Removing the self-loops: 5. Eliminating 1 self-loops for location f45 Self-Loop 6 has the metering function: 1+B-F, resulting in the new transition 19. Removing the self-loops: 6. Eliminating 1 self-loops for location f60 Self-Loop 7 has the metering function: 1-F+J, resulting in the new transition 20. Removing the self-loops: 7. Removed all Self-loops using metering functions (where possible): Start location: f2 1: f2 -> f13 : B'=1, [ 0>=A ], cost: 1 2: f2 -> f13 : B'=1, [ A>=2 ], cost: 1 3: f13 -> f20 : C'=1+B, D'=free, E'=free_1, F'=1, [ A>=B ], cost: 1 17: f20 -> [7] : D'=free_4*(1+B-F)*free_5+D, E'=E+free_2*free_3*(1+B-F), F'=1+B, [ B>=F ], cost: 1+B-F 18: f31 -> [8] : F'=1+B, [ B>=F ], cost: 1+B-F 19: f45 -> [9] : F'=1+B, G'=G+free_9*(1+B-F)*free_11, H'=H+free_7*(1+B-F)*free_8, Q'=Q+free_6*free_10*(1+B-F), [ B>=F ], cost: 1+B-F 20: f60 -> [10] : F'=1+J, K'=-1+K+F-J, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=K+F-J, [ J>=F ], cost: 1-F+J 13: [7] -> f31 : F'=1, [ 0>=1+E && F>=1+B ], cost: 1 14: [7] -> f31 : F'=1, [ E>=1 && F>=1+B ], cost: 1 15: [7] -> f31 : E'=0, F'=1, [ F>=1+B && E==0 ], cost: 1 11: [8] -> f45 : F'=1, G'=free_22, H'=free_23, Q'=free_21, [ A>=1+C && F>=1+B ], cost: 1 12: [8] -> f45 : F'=1, G'=free_25, H'=free_26, Q'=free_24, [ C>=1+A && F>=1+B ], cost: 1 9: [9] -> f60 : F'=1, J'=free_17, K'=B, Q_1'=free_18, R'=free_16, [ 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && F>=1+B ], cost: 1 8: [10] -> f13 : B'=1+B, [ F>=1+J ], cost: 1 Applied simple chaining: Start location: f2 1: f2 -> f13 : B'=1, [ 0>=A ], cost: 1 2: f2 -> f13 : B'=1, [ A>=2 ], cost: 1 3: f13 -> [7] : C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1+B, [ A>=B && B>=1 ], cost: 1+B 18: f31 -> [8] : F'=1+B, [ B>=F ], cost: 1+B-F 19: f45 -> f13 : B'=1+B, F'=1+free_17, G'=G+free_9*(1+B-F)*free_11, H'=H+free_7*(1+B-F)*free_8, Q'=Q+free_6*free_10*(1+B-F), J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ B>=F && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && 1+B>=1+B && free_17>=1 && 1+free_17>=1+free_17 ], cost: 3+B-F+free_17 13: [7] -> f31 : F'=1, [ 0>=1+E && F>=1+B ], cost: 1 14: [7] -> f31 : F'=1, [ E>=1 && F>=1+B ], cost: 1 15: [7] -> f31 : E'=0, F'=1, [ F>=1+B && E==0 ], cost: 1 11: [8] -> f45 : F'=1, G'=free_22, H'=free_23, Q'=free_21, [ A>=1+C && F>=1+B ], cost: 1 12: [8] -> f45 : F'=1, G'=free_25, H'=free_26, Q'=free_24, [ C>=1+A && F>=1+B ], cost: 1 Applied chaining over branches and pruning: Start location: f2 1: f2 -> f13 : B'=1, [ 0>=A ], cost: 1 2: f2 -> f13 : B'=1, [ A>=2 ], cost: 1 21: f13 -> f31 : C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1, [ A>=B && B>=1 && 0>=1+free_2*B*free_3+free_1 && 1+B>=1+B ], cost: 2+B 22: f13 -> f31 : C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1, [ A>=B && B>=1 && free_2*B*free_3+free_1>=1 && 1+B>=1+B ], cost: 2+B 23: f13 -> f31 : C'=1+B, D'=free+B*free_4*free_5, E'=0, F'=1, [ A>=B && B>=1 && 1+B>=1+B && free_2*B*free_3+free_1==0 ], cost: 2+B 24: f31 -> f45 : F'=1, G'=free_22, H'=free_23, Q'=free_21, [ B>=F && A>=1+C && 1+B>=1+B ], cost: 2+B-F 25: f31 -> f45 : F'=1, G'=free_25, H'=free_26, Q'=free_24, [ B>=F && C>=1+A && 1+B>=1+B ], cost: 2+B-F 19: f45 -> f13 : B'=1+B, F'=1+free_17, G'=G+free_9*(1+B-F)*free_11, H'=H+free_7*(1+B-F)*free_8, Q'=Q+free_6*free_10*(1+B-F), J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ B>=F && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && 1+B>=1+B && free_17>=1 && 1+free_17>=1+free_17 ], cost: 3+B-F+free_17 Applied chaining over branches and pruning: Start location: f2 1: f2 -> f13 : B'=1, [ 0>=A ], cost: 1 2: f2 -> f13 : B'=1, [ A>=2 ], cost: 1 26: f13 -> f45 : C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1, G'=free_22, H'=free_23, Q'=free_21, [ A>=B && B>=1 && 0>=1+free_2*B*free_3+free_1 && 1+B>=1+B && B>=1 && A>=2+B && 1+B>=1+B ], cost: 3+2*B 27: f13 -> f45 : C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1, G'=free_25, H'=free_26, Q'=free_24, [ A>=B && B>=1 && 0>=1+free_2*B*free_3+free_1 && 1+B>=1+B && B>=1 && 1+B>=1+A && 1+B>=1+B ], cost: 3+2*B 28: f13 -> f45 : C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1, G'=free_22, H'=free_23, Q'=free_21, [ A>=B && B>=1 && free_2*B*free_3+free_1>=1 && 1+B>=1+B && B>=1 && A>=2+B && 1+B>=1+B ], cost: 3+2*B 30: f13 -> f45 : C'=1+B, D'=free+B*free_4*free_5, E'=0, F'=1, G'=free_22, H'=free_23, Q'=free_21, [ A>=B && B>=1 && 1+B>=1+B && free_2*B*free_3+free_1==0 && B>=1 && A>=2+B && 1+B>=1+B ], cost: 3+2*B 31: f13 -> f45 : C'=1+B, D'=free+B*free_4*free_5, E'=0, F'=1, G'=free_25, H'=free_26, Q'=free_24, [ A>=B && B>=1 && 1+B>=1+B && free_2*B*free_3+free_1==0 && B>=1 && 1+B>=1+A && 1+B>=1+B ], cost: 3+2*B 19: f45 -> f13 : B'=1+B, F'=1+free_17, G'=G+free_9*(1+B-F)*free_11, H'=H+free_7*(1+B-F)*free_8, Q'=Q+free_6*free_10*(1+B-F), J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ B>=F && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && 1+B>=1+B && free_17>=1 && 1+free_17>=1+free_17 ], cost: 3+B-F+free_17 Applied chaining over branches and pruning: Start location: f2 1: f2 -> f13 : B'=1, [ 0>=A ], cost: 1 2: f2 -> f13 : B'=1, [ A>=2 ], cost: 1 32: f13 -> f13 : B'=1+B, C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1+free_17, G'=free_9*B*free_11+free_22, H'=B*free_7*free_8+free_23, Q'=free_6*B*free_10+free_21, J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ A>=B && B>=1 && 0>=1+free_2*B*free_3+free_1 && 1+B>=1+B && B>=1 && A>=2+B && 1+B>=1+B && B>=1 && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && 1+B>=1+B && free_17>=1 && 1+free_17>=1+free_17 ], cost: 5+3*B+free_17 33: f13 -> f13 : B'=1+B, C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1+free_17, G'=free_9*B*free_11+free_25, H'=B*free_7*free_8+free_26, Q'=free_6*B*free_10+free_24, J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ A>=B && B>=1 && 0>=1+free_2*B*free_3+free_1 && 1+B>=1+B && B>=1 && 1+B>=1+A && 1+B>=1+B && B>=1 && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && 1+B>=1+B && free_17>=1 && 1+free_17>=1+free_17 ], cost: 5+3*B+free_17 34: f13 -> f13 : B'=1+B, C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1+free_17, G'=free_9*B*free_11+free_22, H'=B*free_7*free_8+free_23, Q'=free_6*B*free_10+free_21, J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ A>=B && B>=1 && free_2*B*free_3+free_1>=1 && 1+B>=1+B && B>=1 && A>=2+B && 1+B>=1+B && B>=1 && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && 1+B>=1+B && free_17>=1 && 1+free_17>=1+free_17 ], cost: 5+3*B+free_17 35: f13 -> f13 : B'=1+B, C'=1+B, D'=free+B*free_4*free_5, E'=0, F'=1+free_17, G'=free_9*B*free_11+free_22, H'=B*free_7*free_8+free_23, Q'=free_6*B*free_10+free_21, J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ A>=B && B>=1 && 1+B>=1+B && free_2*B*free_3+free_1==0 && B>=1 && A>=2+B && 1+B>=1+B && B>=1 && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && 1+B>=1+B && free_17>=1 && 1+free_17>=1+free_17 ], cost: 5+3*B+free_17 36: f13 -> f13 : B'=1+B, C'=1+B, D'=free+B*free_4*free_5, E'=0, F'=1+free_17, G'=free_9*B*free_11+free_25, H'=B*free_7*free_8+free_26, Q'=free_6*B*free_10+free_24, J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ A>=B && B>=1 && 1+B>=1+B && free_2*B*free_3+free_1==0 && B>=1 && 1+B>=1+A && 1+B>=1+B && B>=1 && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && 1+B>=1+B && free_17>=1 && 1+free_17>=1+free_17 ], cost: 5+3*B+free_17 Eliminating 5 self-loops for location f13 Self-Loop 33 has the metering function: -B+A, resulting in the new transition 38. Self-Loop 36 has the metering function: -B+A, resulting in the new transition 41. Found this metering function when nesting loops: -B+A, Found this metering function when nesting loops: -B+A, Removing the self-loops: 32 33 34 35 36. Adding an epsilon transition (to model nonexecution of the loops): 42. Removed all Self-loops using metering functions (where possible): Start location: f2 1: f2 -> f13 : B'=1, [ 0>=A ], cost: 1 2: f2 -> f13 : B'=1, [ A>=2 ], cost: 1 37: f13 -> [11] : B'=1+B, C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1+free_17, G'=free_9*B*free_11+free_22, H'=B*free_7*free_8+free_23, Q'=free_6*B*free_10+free_21, J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ B>=1 && 0>=1+free_2*B*free_3+free_1 && A>=2+B && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && free_17>=1 ], cost: 5+3*B+free_17 38: f13 -> [11] : B'=A, C'=A, D'=-free_4*free_5+free-(B-A)*free_4*free_5+B*free_4*free_5, E'=-free_2*(B-A)*free_3+free_2*B*free_3+free_1-free_2*free_3, F'=1+free_17, G'=free_9*B*free_11-free_9*(B-A)*free_11+free_25-free_9*free_11, H'=B*free_7*free_8-(B-A)*free_7*free_8+free_26-free_7*free_8, Q'=-free_6*free_10+free_6*B*free_10-free_6*(B-A)*free_10+free_24, J'=free_17, K'=-1-free_17+A, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=-free_17+A, Q_1'=free_18, R'=free_16, [ B-A==0 && B>=1 && 0>=1+free_2*B*free_3+free_1 && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && free_17>=1 ], cost: -(B-A)*free_17-7/2*B+3/2*(B-A)^2-3*(B-A)*B+7/2*A 39: f13 -> [11] : B'=1+B, C'=1+B, D'=free+B*free_4*free_5, E'=free_2*B*free_3+free_1, F'=1+free_17, G'=free_9*B*free_11+free_22, H'=B*free_7*free_8+free_23, Q'=free_6*B*free_10+free_21, J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ B>=1 && free_2*B*free_3+free_1>=1 && A>=2+B && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && free_17>=1 ], cost: 5+3*B+free_17 40: f13 -> [11] : B'=1+B, C'=1+B, D'=free+B*free_4*free_5, E'=0, F'=1+free_17, G'=free_9*B*free_11+free_22, H'=B*free_7*free_8+free_23, Q'=free_6*B*free_10+free_21, J'=free_17, K'=B-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=1+B-free_17, Q_1'=free_18, R'=free_16, [ B>=1 && A>=2+B && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && free_17>=1 ], cost: 5+3*B+free_17 41: f13 -> [11] : B'=A, C'=A, D'=-free_4*free_5+free-(B-A)*free_4*free_5+B*free_4*free_5, E'=0, F'=1+free_17, G'=free_9*B*free_11-free_9*(B-A)*free_11+free_25-free_9*free_11, H'=B*free_7*free_8-(B-A)*free_7*free_8+free_26-free_7*free_8, Q'=-free_6*free_10+free_6*B*free_10-free_6*(B-A)*free_10+free_24, J'=free_17, K'=-1-free_17+A, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=-free_17+A, Q_1'=free_18, R'=free_16, [ B-A==0 && B>=1 && 1+B>=2*free_19 && 3*free_19>=2+B && free_19>=free_17 && 1+B>=2*free_20 && 3*free_20>=2+B && free_17>=free_20 && free_17>=1 ], cost: -(B-A)*free_17-7/2*B+3/2*(B-A)^2-3*(B-A)*B+7/2*A 42: f13 -> [11] : [], cost: 0 Applied chaining over branches and pruning: Start location: f2 44: f2 -> [11] : B'=2, C'=2, D'=free_4*free_5+free, E'=free_1+free_2*free_3, F'=1+free_17, G'=free_22+free_9*free_11, H'=free_23+free_7*free_8, Q'=free_6*free_10+free_21, J'=free_17, K'=1-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=2-free_17, Q_1'=free_18, R'=free_16, [ A>=2 && 1>=1 && 0>=1+free_1+free_2*free_3 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1 ], cost: 9+free_17 45: f2 -> [11] : B'=2, C'=2, D'=free_4*free_5+free, E'=free_1+free_2*free_3, F'=1+free_17, G'=free_22+free_9*free_11, H'=free_23+free_7*free_8, Q'=free_6*free_10+free_21, J'=free_17, K'=1-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=2-free_17, Q_1'=free_18, R'=free_16, [ A>=2 && 1>=1 && free_1+free_2*free_3>=1 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1 ], cost: 9+free_17 46: f2 -> [11] : B'=2, C'=2, D'=free_4*free_5+free, E'=0, F'=1+free_17, G'=free_22+free_9*free_11, H'=free_23+free_7*free_8, Q'=free_6*free_10+free_21, J'=free_17, K'=1-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=2-free_17, Q_1'=free_18, R'=free_16, [ A>=2 && 1>=1 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1 ], cost: 9+free_17 Final control flow graph problem, now checking costs for infinitely many models: Start location: f2 44: f2 -> [11] : B'=2, C'=2, D'=free_4*free_5+free, E'=free_1+free_2*free_3, F'=1+free_17, G'=free_22+free_9*free_11, H'=free_23+free_7*free_8, Q'=free_6*free_10+free_21, J'=free_17, K'=1-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=2-free_17, Q_1'=free_18, R'=free_16, [ A>=2 && 1>=1 && 0>=1+free_1+free_2*free_3 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1 ], cost: 9+free_17 45: f2 -> [11] : B'=2, C'=2, D'=free_4*free_5+free, E'=free_1+free_2*free_3, F'=1+free_17, G'=free_22+free_9*free_11, H'=free_23+free_7*free_8, Q'=free_6*free_10+free_21, J'=free_17, K'=1-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=2-free_17, Q_1'=free_18, R'=free_16, [ A>=2 && 1>=1 && free_1+free_2*free_3>=1 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1 ], cost: 9+free_17 46: f2 -> [11] : B'=2, C'=2, D'=free_4*free_5+free, E'=0, F'=1+free_17, G'=free_22+free_9*free_11, H'=free_23+free_7*free_8, Q'=free_6*free_10+free_21, J'=free_17, K'=1-free_17, L'=free_14, M'=free_15, N'=free_12, O'=free_13, P'=2-free_17, Q_1'=free_18, R'=free_16, [ A>=2 && 1>=1 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1 ], cost: 9+free_17 Computing complexity for remaining 3 transitions. Found configuration with infinitely models for cost: 9+free_17 and guard: A>=2 && 1>=1 && 0>=1+free_1+free_2*free_3 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1: free_2: Pos, free_19: Const, free_3: Neg, free_20: Const, free_17: Const, free_1: Both, A: Pos Found new complexity const, because: Found infinity configuration. Found configuration with infinitely models for cost: 9+free_17 and guard: A>=2 && 1>=1 && free_1+free_2*free_3>=1 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1: free_2: Pos, free_19: Const, free_3: Pos, free_20: Const, free_17: Const, free_1: Both, A: Pos Found configuration with infinitely models for cost: 9+free_17 and guard: A>=2 && 1>=1 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1: free_19: Const, free_20: Const, free_17: Const, A: Pos The final runtime is determined by this resulting transition: Final Guard: A>=2 && 1>=1 && 0>=1+free_1+free_2*free_3 && A>=3 && 2>=2*free_19 && 3*free_19>=3 && free_19>=free_17 && 2>=2*free_20 && 3*free_20>=3 && free_17>=free_20 && free_17>=1 Final Cost: 10 Obtained the following complexity w.r.t. the length of the input n: Complexity class: const Complexity value: 0 WORST_CASE(Omega(1),?)