Trying to load file: main.koat Initial Control flow graph problem: Start location: f2 0: f2 -> f1 : B'=free, [ 1>=A ], cost: 1 1: f2 -> f300 : [ A>=2 && C>=2 ], cost: 1 2: f300 -> f1 : B'=free_1, [ 1+D>=0 ], cost: 1 3: f300 -> f300 : D'=1+D, E'=1+E, [ E>=0 && 0>=2+D ], cost: 1 4: f300 -> f300 : D'=1+D, E'=1+E, [ 0>=2+E && 0>=2+D ], cost: 1 Simplified the transitions: Start location: f2 1: f2 -> f300 : [ A>=2 && C>=2 ], cost: 1 3: f300 -> f300 : D'=1+D, E'=1+E, [ E>=0 && 0>=2+D ], cost: 1 4: f300 -> f300 : D'=1+D, E'=1+E, [ 0>=2+E && 0>=2+D ], cost: 1 Eliminating 2 self-loops for location f300 Self-Loop 3 has the metering function: -1-D, resulting in the new transition 5. Self-Loop 6 has the metering function: -1-D, resulting in the new transition 9. Self-Loop 7 has the metering function: -1-E, resulting in the new transition 10. Removing the self-loops: 3 4 6 7. Adding an epsilon transition (to model nonexecution of the loops): 11. Removed all Self-loops using metering functions (where possible): Start location: f2 1: f2 -> f300 : [ A>=2 && C>=2 ], cost: 1 5: f300 -> [3] : D'=-1, E'=-1+E-D, [ E>=0 && 0>=2+D ], cost: -1-D 8: f300 -> [3] : D'=1+D, E'=1+E, [ 0>=2+E && 0>=2+D ], cost: 1 9: f300 -> [3] : D'=-1, E'=-1+E-D, [ 0>=2+E && 0>=2+D && D>E ], cost: -1-D 10: f300 -> [3] : D'=-1-E+D, E'=-1, [ 0>=2+E && 0>=2+D && E>D ], cost: -1-E 11: f300 -> [3] : [], cost: 0 Applied chaining over branches and pruning: Start location: f2 12: f2 -> [3] : D'=-1, E'=-1+E-D, [ A>=2 && C>=2 && E>=0 && 0>=2+D ], cost: -D 14: f2 -> [3] : D'=-1, E'=-1+E-D, [ A>=2 && C>=2 && 0>=2+E && 0>=2+D && D>E ], cost: -D 15: f2 -> [3] : D'=-1-E+D, E'=-1, [ A>=2 && C>=2 && 0>=2+E && 0>=2+D && E>D ], cost: -E Final control flow graph problem, now checking costs for infinitely many models: Start location: f2 12: f2 -> [3] : D'=-1, E'=-1+E-D, [ A>=2 && C>=2 && E>=0 && 0>=2+D ], cost: -D 14: f2 -> [3] : D'=-1, E'=-1+E-D, [ A>=2 && C>=2 && 0>=2+E && 0>=2+D && D>E ], cost: -D 15: f2 -> [3] : D'=-1-E+D, E'=-1, [ A>=2 && C>=2 && 0>=2+E && 0>=2+D && E>D ], cost: -E Computing complexity for remaining 3 transitions. Found configuration with infinitely models for cost: -D and guard: A>=2 && C>=2 && E>=0 && 0>=2+D: E: Pos, C: Pos, D: Neg, A: Pos Found new complexity n^1, because: Found infinity configuration. The final runtime is determined by this resulting transition: Final Guard: A>=2 && C>=2 && E>=0 && 0>=2+D Final Cost: -D 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),?)