Trying to load file: main.koat Initial Control flow graph problem: Start location: f15 3: f8 -> f8 : A'=1+A, [ B>=1+A && B>=E ], cost: 1 0: f8 -> f32 : C'=free, [ A>=B ], cost: 1 7: f8 -> f1 : C'=free_11, F'=free_12, G'=free_13, H'=0, J'=0, K'=0, [ B>=1+A && E>=1+B ], cost: 1 1: f15 -> f8 : D'=free_1, [], cost: 1 2: f300 -> f8 : A'=1+A, [ B>=E ], cost: 1 9: f300 -> f1 : C'=free_17, F'=free_18, G'=free_19, H'=0, J'=0, K'=0, [ E>=1+B ], cost: 1 4: f13 -> f1 : C'=free_2, F'=free_3, G'=free_4, H'=0, Q'=2, J'=0, K'=0, [], cost: 1 11: f1 -> f300 : B'=1+B, C'=free_22, F'=free_23, H'=1, J'=1, K'=1, [ E>=1+B && M>=5 ], cost: 1 8: f1 -> f1 : C'=free_14, F'=free_15, G'=free_16, H'=0, J'=0, K'=0, [ E>=1+B && 4>=M ], cost: 1 10: f12 -> f300 : B'=1+B, C'=free_20, F'=free_21, H'=1, J'=1, K'=1, [ Q>=5 ], cost: 1 5: f12 -> f1 : C'=free_5, F'=free_6, G'=free_7, H'=0, J'=0, K'=0, L'=1+Q, [ 4>=Q ], cost: 1 6: f10 -> f1 : C'=free_8, F'=free_9, G'=free_10, H'=0, J'=0, K'=0, M'=2, [], cost: 1 Simplified the transitions: Start location: f15 3: f8 -> f8 : A'=1+A, [ B>=1+A && B>=E ], cost: 1 7: f8 -> f1 : C'=free_11, F'=free_12, G'=free_13, H'=0, J'=0, K'=0, [ B>=1+A && E>=1+B ], cost: 1 1: f15 -> f8 : D'=free_1, [], cost: 1 2: f300 -> f8 : A'=1+A, [ B>=E ], cost: 1 9: f300 -> f1 : C'=free_17, F'=free_18, G'=free_19, H'=0, J'=0, K'=0, [ E>=1+B ], cost: 1 11: f1 -> f300 : B'=1+B, C'=free_22, F'=free_23, H'=1, J'=1, K'=1, [ E>=1+B && M>=5 ], cost: 1 8: f1 -> f1 : C'=free_14, F'=free_15, G'=free_16, H'=0, J'=0, K'=0, [ E>=1+B && 4>=M ], cost: 1 Eliminating 1 self-loops for location f8 Self-Loop 3 has the metering function: B-A, resulting in the new transition 12. Removing the self-loops: 3. Eliminating 1 self-loops for location f1 Self-Loop 8 has unbounded runtime, resulting in the new transition 13. Removing the self-loops: 8. Removed all Self-loops using metering functions (where possible): Start location: f15 12: f8 -> [8] : A'=B, [ B>=1+A && B>=E ], cost: B-A 1: f15 -> f8 : D'=free_1, [], cost: 1 2: f300 -> f8 : A'=1+A, [ B>=E ], cost: 1 9: f300 -> f1 : C'=free_17, F'=free_18, G'=free_19, H'=0, J'=0, K'=0, [ E>=1+B ], cost: 1 13: f1 -> [9] : [ E>=1+B && 4>=M ], cost: INF 7: [8] -> f1 : C'=free_11, F'=free_12, G'=free_13, H'=0, J'=0, K'=0, [ B>=1+A && E>=1+B ], cost: 1 11: [9] -> f300 : B'=1+B, C'=free_22, F'=free_23, H'=1, J'=1, K'=1, [ E>=1+B && M>=5 ], cost: 1 Applied chaining over branches and pruning: Start location: f15 14: f8 -> [10] : A'=B, [ B>=1+A && B>=E ], cost: B-A 1: f15 -> f8 : D'=free_1, [], cost: 1 Applied simple chaining: Start location: f15 1: f15 -> [10] : A'=B, D'=free_1, [ B>=1+A && B>=E ], cost: 1+B-A Final control flow graph problem, now checking costs for infinitely many models: Start location: f15 1: f15 -> [10] : A'=B, D'=free_1, [ B>=1+A && B>=E ], cost: 1+B-A Computing complexity for remaining 1 transitions. Found configuration with infinitely models for cost: 1+B-A and guard: B>=1+A && B>=E: E: Pos, B: Pos, A: Pos, where: B > E B > A Found new complexity n^1, because: Found infinity configuration. The final runtime is determined by this resulting transition: Final Guard: B>=1+A && B>=E Final Cost: 1+B-A Obtained the following complexity w.r.t. the length of the input n: Complexity class: n^1 Complexity value: 1 WORST_CASE(Omega(n^1),?)