Trying to load file: main.koat Initial Control flow graph problem: Start location: f0 0: f20 -> f28 : [ 0>=A ], cost: 1 6: f20 -> f28 : A'=0, B'=free_2, G'=0, H'=free_2, Q'=free_2, [ A>=1 ], cost: 1 3: f28 -> f40 : [ A>=1 ], cost: 1 4: f28 -> f40 : C'=0, D'=free, E'=free, F'=free, [ 0>=A && 999+B>=free ], cost: 1 5: f28 -> f40 : A'=1, C'=0, D'=free_1, E'=free_1, F'=free_1, [ 0>=A && free_1>=1000+B ], cost: 1 1: f40 -> f40 : [], cost: 1 2: f42 -> f45 : [], cost: 1 7: f0 -> f20 : A'=1, J'=free_3, [ 0>=free_3 ], cost: 1 8: f0 -> f20 : A'=1, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 && free_5>=1 ], cost: 1 9: f0 -> f40 : A'=1, J'=0, K'=1, L'=free_6, M'=free_6, N'=free_6, O'=free_6, [ 0>=free_6 && free_7>=1 ], cost: 1 Simplified the transitions: Start location: f0 0: f20 -> f28 : [ 0>=A ], cost: 1 6: f20 -> f28 : A'=0, B'=free_2, G'=0, H'=free_2, Q'=free_2, [ A>=1 ], cost: 1 3: f28 -> f40 : [ A>=1 ], cost: 1 4: f28 -> f40 : C'=0, D'=free, E'=free, F'=free, [ 0>=A && 999+B>=free ], cost: 1 5: f28 -> f40 : A'=1, C'=0, D'=free_1, E'=free_1, F'=free_1, [ 0>=A && free_1>=1000+B ], cost: 1 1: f40 -> f40 : [], cost: 1 7: f0 -> f20 : A'=1, J'=free_3, [ 0>=free_3 ], cost: 1 8: f0 -> f20 : A'=1, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 ], cost: 1 9: f0 -> f40 : A'=1, J'=0, K'=1, L'=free_6, M'=free_6, N'=free_6, O'=free_6, [ 0>=free_6 ], cost: 1 Eliminating 1 self-loops for location f40 Self-Loop 1 has unbounded runtime, resulting in the new transition 10. Removing the self-loops: 1. Removed all Self-loops using metering functions (where possible): Start location: f0 0: f20 -> f28 : [ 0>=A ], cost: 1 6: f20 -> f28 : A'=0, B'=free_2, G'=0, H'=free_2, Q'=free_2, [ A>=1 ], cost: 1 3: f28 -> f40 : [ A>=1 ], cost: 1 4: f28 -> f40 : C'=0, D'=free, E'=free, F'=free, [ 0>=A && 999+B>=free ], cost: 1 5: f28 -> f40 : A'=1, C'=0, D'=free_1, E'=free_1, F'=free_1, [ 0>=A && free_1>=1000+B ], cost: 1 10: f40 -> [6] : [], cost: INF 7: f0 -> f20 : A'=1, J'=free_3, [ 0>=free_3 ], cost: 1 8: f0 -> f20 : A'=1, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 ], cost: 1 9: f0 -> f40 : A'=1, J'=0, K'=1, L'=free_6, M'=free_6, N'=free_6, O'=free_6, [ 0>=free_6 ], cost: 1 Applied chaining over branches and pruning: Start location: f0 3: f28 -> f40 : [ A>=1 ], cost: 1 4: f28 -> f40 : C'=0, D'=free, E'=free, F'=free, [ 0>=A && 999+B>=free ], cost: 1 5: f28 -> f40 : A'=1, C'=0, D'=free_1, E'=free_1, F'=free_1, [ 0>=A && free_1>=1000+B ], cost: 1 10: f40 -> [6] : [], cost: INF 11: f0 -> f28 : A'=0, B'=free_2, G'=0, H'=free_2, Q'=free_2, J'=free_3, [ 0>=free_3 && 1>=1 ], cost: 2 12: f0 -> f28 : A'=0, B'=free_2, G'=0, H'=free_2, Q'=free_2, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 && 1>=1 ], cost: 2 9: f0 -> f40 : A'=1, J'=0, K'=1, L'=free_6, M'=free_6, N'=free_6, O'=free_6, [ 0>=free_6 ], cost: 1 Applied chaining over branches and pruning: Start location: f0 10: f40 -> [6] : [], cost: INF 9: f0 -> f40 : A'=1, J'=0, K'=1, L'=free_6, M'=free_6, N'=free_6, O'=free_6, [ 0>=free_6 ], cost: 1 13: f0 -> f40 : A'=0, B'=free_2, C'=0, D'=free, E'=free, F'=free, G'=0, H'=free_2, Q'=free_2, J'=free_3, [ 0>=free_3 && 1>=1 && 0>=0 && 999+free_2>=free ], cost: 3 14: f0 -> f40 : A'=1, B'=free_2, C'=0, D'=free_1, E'=free_1, F'=free_1, G'=0, H'=free_2, Q'=free_2, J'=free_3, [ 0>=free_3 && 1>=1 && 0>=0 && free_1>=1000+free_2 ], cost: 3 15: f0 -> f40 : A'=0, B'=free_2, C'=0, D'=free, E'=free, F'=free, G'=0, H'=free_2, Q'=free_2, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 && 1>=1 && 0>=0 && 999+free_2>=free ], cost: 3 16: f0 -> f40 : A'=1, B'=free_2, C'=0, D'=free_1, E'=free_1, F'=free_1, G'=0, H'=free_2, Q'=free_2, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 && 1>=1 && 0>=0 && free_1>=1000+free_2 ], cost: 3 Applied chaining over branches and pruning: Start location: f0 17: f0 -> [6] : A'=1, J'=0, K'=1, L'=free_6, M'=free_6, N'=free_6, O'=free_6, [ 0>=free_6 ], cost: INF 18: f0 -> [6] : A'=0, B'=free_2, C'=0, D'=free, E'=free, F'=free, G'=0, H'=free_2, Q'=free_2, J'=free_3, [ 0>=free_3 && 1>=1 && 0>=0 && 999+free_2>=free ], cost: INF 19: f0 -> [6] : A'=1, B'=free_2, C'=0, D'=free_1, E'=free_1, F'=free_1, G'=0, H'=free_2, Q'=free_2, J'=free_3, [ 0>=free_3 && 1>=1 && 0>=0 && free_1>=1000+free_2 ], cost: INF 20: f0 -> [6] : A'=0, B'=free_2, C'=0, D'=free, E'=free, F'=free, G'=0, H'=free_2, Q'=free_2, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 && 1>=1 && 0>=0 && 999+free_2>=free ], cost: INF 21: f0 -> [6] : A'=1, B'=free_2, C'=0, D'=free_1, E'=free_1, F'=free_1, G'=0, H'=free_2, Q'=free_2, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 && 1>=1 && 0>=0 && free_1>=1000+free_2 ], cost: INF Final control flow graph problem, now checking costs for infinitely many models: Start location: f0 17: f0 -> [6] : A'=1, J'=0, K'=1, L'=free_6, M'=free_6, N'=free_6, O'=free_6, [ 0>=free_6 ], cost: INF 18: f0 -> [6] : A'=0, B'=free_2, C'=0, D'=free, E'=free, F'=free, G'=0, H'=free_2, Q'=free_2, J'=free_3, [ 0>=free_3 && 1>=1 && 0>=0 && 999+free_2>=free ], cost: INF 19: f0 -> [6] : A'=1, B'=free_2, C'=0, D'=free_1, E'=free_1, F'=free_1, G'=0, H'=free_2, Q'=free_2, J'=free_3, [ 0>=free_3 && 1>=1 && 0>=0 && free_1>=1000+free_2 ], cost: INF 20: f0 -> [6] : A'=0, B'=free_2, C'=0, D'=free, E'=free, F'=free, G'=0, H'=free_2, Q'=free_2, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 && 1>=1 && 0>=0 && 999+free_2>=free ], cost: INF 21: f0 -> [6] : A'=1, B'=free_2, C'=0, D'=free_1, E'=free_1, F'=free_1, G'=0, H'=free_2, Q'=free_2, J'=0, K'=1, L'=free_4, M'=free_4, N'=free_4, O'=free_4, [ free_4>=1 && 1>=1 && 0>=0 && free_1>=1000+free_2 ], cost: INF Computing complexity for remaining 5 transitions. Found new complexity INF, because: INF sat. The final runtime is determined by this resulting transition: Final Guard: 0>=free_6 Final Cost: INF Obtained the following complexity w.r.t. the length of the input n: Complexity class: INF Complexity value: INF WORST_CASE(INF,?)