Trying to load file: main.koat Initial Control flow graph problem: Start location: evalaaron2start 0: evalaaron2start -> evalaaron2entryin : [], cost: 1 1: evalaaron2entryin -> evalaaron2bb6in : B'=C, C'=B, [ A>=0 ], cost: 1 2: evalaaron2entryin -> evalaaron2returnin : [ 0>=1+A ], cost: 1 3: evalaaron2bb6in -> evalaaron2returnin : [ B>=1+C ], cost: 1 4: evalaaron2bb6in -> evalaaron2returnin : [ 0>=1+A ], cost: 1 5: evalaaron2bb6in -> evalaaron2bb3in : [ C>=B && A>=0 ], cost: 1 11: evalaaron2returnin -> evalaaron2stop : [], cost: 1 6: evalaaron2bb3in -> evalaaron2bb4in : [ 0>=1+free ], cost: 1 7: evalaaron2bb3in -> evalaaron2bb4in : [ free_1>=1 ], cost: 1 8: evalaaron2bb3in -> evalaaron2bb5in : [], cost: 1 9: evalaaron2bb4in -> evalaaron2bb6in : C'=-1+C-A, [], cost: 1 10: evalaaron2bb5in -> evalaaron2bb6in : B'=1+B+A, [], cost: 1 Removing duplicate transition: 6. Simplified the transitions: Start location: evalaaron2start 0: evalaaron2start -> evalaaron2entryin : [], cost: 1 1: evalaaron2entryin -> evalaaron2bb6in : B'=C, C'=B, [ A>=0 ], cost: 1 5: evalaaron2bb6in -> evalaaron2bb3in : [ C>=B && A>=0 ], cost: 1 7: evalaaron2bb3in -> evalaaron2bb4in : [], cost: 1 8: evalaaron2bb3in -> evalaaron2bb5in : [], cost: 1 9: evalaaron2bb4in -> evalaaron2bb6in : C'=-1+C-A, [], cost: 1 10: evalaaron2bb5in -> evalaaron2bb6in : B'=1+B+A, [], cost: 1 Applied simple chaining: Start location: evalaaron2start 0: evalaaron2start -> evalaaron2bb6in : B'=C, C'=B, [ A>=0 ], cost: 2 5: evalaaron2bb6in -> evalaaron2bb3in : [ C>=B && A>=0 ], cost: 1 7: evalaaron2bb3in -> evalaaron2bb6in : C'=-1+C-A, [], cost: 2 8: evalaaron2bb3in -> evalaaron2bb6in : B'=1+B+A, [], cost: 2 Applied chaining over branches and pruning: Start location: evalaaron2start 0: evalaaron2start -> evalaaron2bb6in : B'=C, C'=B, [ A>=0 ], cost: 2 12: evalaaron2bb6in -> evalaaron2bb6in : C'=-1+C-A, [ C>=B && A>=0 ], cost: 3 13: evalaaron2bb6in -> evalaaron2bb6in : B'=1+B+A, [ C>=B && A>=0 ], cost: 3 Eliminating 2 self-loops for location evalaaron2bb6in Removing the self-loops: 12 13. Adding an epsilon transition (to model nonexecution of the loops): 16. Removed all Self-loops using metering functions (where possible): Start location: evalaaron2start 0: evalaaron2start -> evalaaron2bb6in : B'=C, C'=B, [ A>=0 ], cost: 2 14: evalaaron2bb6in -> [8] : C'=-1+C-A, [ C>=B && A>=0 ], cost: 3 15: evalaaron2bb6in -> [8] : B'=1+B+A, [ C>=B && A>=0 ], cost: 3 16: evalaaron2bb6in -> [8] : [], cost: 0 Applied chaining over branches and pruning: Start location: evalaaron2start Final control flow graph problem, now checking costs for infinitely many models: Start location: evalaaron2start Computing complexity for remaining 0 transitions. The final runtime is determined by this resulting transition: Final Guard: Final Cost: 1 Obtained the following complexity w.r.t. the length of the input n: Complexity class: const Complexity value: 0 WORST_CASE(Omega(1),?)