0.05/0.16 WORST_CASE(?,O(n^1)) 0.05/0.16 0.05/0.16 Preprocessing Cost Relations 0.05/0.16 ===================================== 0.05/0.16 0.05/0.16 #### Computed strongly connected components 0.05/0.16 0. recursive : [eval_foo_bb2_in/3,eval_foo_bb3_in/3] 0.05/0.16 1. recursive : [eval_foo_bb1_in/3,eval_foo_bb2_in_loop_cont/5,eval_foo_bb4_in/4] 0.05/0.16 2. non_recursive : [eval_foo_stop/1] 0.05/0.16 3. non_recursive : [eval_foo_bb5_in/1] 0.05/0.16 4. non_recursive : [eval_foo_bb1_in_loop_cont/2] 0.05/0.16 5. non_recursive : [eval_foo_bb0_in/3] 0.05/0.16 6. non_recursive : [eval_foo_start/3] 0.05/0.16 0.05/0.16 #### Obtained direct recursion through partial evaluation 0.05/0.16 0. SCC is partially evaluated into eval_foo_bb2_in/3 0.05/0.16 1. SCC is partially evaluated into eval_foo_bb1_in/3 0.05/0.16 2. SCC is completely evaluated into other SCCs 0.05/0.16 3. SCC is completely evaluated into other SCCs 0.05/0.16 4. SCC is completely evaluated into other SCCs 0.05/0.16 5. SCC is partially evaluated into eval_foo_bb0_in/3 0.05/0.16 6. SCC is partially evaluated into eval_foo_start/3 0.05/0.16 0.05/0.16 Control-Flow Refinement of Cost Relations 0.05/0.16 ===================================== 0.05/0.16 0.05/0.16 ### Specialization of cost equations eval_foo_bb2_in/3 0.05/0.16 * CE 6 is refined into CE [7] 0.05/0.16 * CE 5 is refined into CE [8] 0.05/0.16 0.05/0.16 0.05/0.16 ### Cost equations --> "Loop" of eval_foo_bb2_in/3 0.05/0.16 * CEs [8] --> Loop 7 0.05/0.16 * CEs [7] --> Loop 8 0.05/0.16 0.05/0.16 ### Ranking functions of CR eval_foo_bb2_in(V__1,B,C) 0.05/0.16 * RF of phase [7]: [V__1] 0.05/0.16 0.05/0.16 #### Partial ranking functions of CR eval_foo_bb2_in(V__1,B,C) 0.05/0.16 * Partial RF of phase [7]: 0.05/0.16 - RF of loop [7:1]: 0.05/0.16 V__1 0.05/0.16 0.05/0.16 0.05/0.16 ### Specialization of cost equations eval_foo_bb1_in/3 0.05/0.16 * CE 4 is refined into CE [9] 0.05/0.16 * CE 3 is refined into CE [10,11] 0.05/0.16 0.05/0.16 0.05/0.16 ### Cost equations --> "Loop" of eval_foo_bb1_in/3 0.05/0.16 * CEs [11] --> Loop 9 0.05/0.16 * CEs [10] --> Loop 10 0.05/0.16 * CEs [9] --> Loop 11 0.05/0.16 0.05/0.16 ### Ranking functions of CR eval_foo_bb1_in(V__01,V__0,B) 0.05/0.16 * RF of phase [9]: [V__0] 0.05/0.16 0.05/0.16 #### Partial ranking functions of CR eval_foo_bb1_in(V__01,V__0,B) 0.05/0.16 * Partial RF of phase [9]: 0.05/0.16 - RF of loop [9:1]: 0.05/0.16 V__0 0.05/0.16 0.05/0.16 0.05/0.16 ### Specialization of cost equations eval_foo_bb0_in/3 0.05/0.16 * CE 2 is refined into CE [12,13,14,15] 0.05/0.16 0.05/0.16 0.05/0.16 ### Cost equations --> "Loop" of eval_foo_bb0_in/3 0.05/0.16 * CEs [15] --> Loop 12 0.05/0.16 * CEs [13] --> Loop 13 0.05/0.16 * CEs [14] --> Loop 14 0.05/0.16 * CEs [12] --> Loop 15 0.05/0.16 0.05/0.16 ### Ranking functions of CR eval_foo_bb0_in(V_x,V_y,B) 0.05/0.16 0.05/0.16 #### Partial ranking functions of CR eval_foo_bb0_in(V_x,V_y,B) 0.05/0.16 0.05/0.16 0.05/0.16 ### Specialization of cost equations eval_foo_start/3 0.05/0.16 * CE 1 is refined into CE [16,17,18,19] 0.05/0.16 0.05/0.16 0.05/0.16 ### Cost equations --> "Loop" of eval_foo_start/3 0.05/0.16 * CEs [19] --> Loop 16 0.05/0.16 * CEs [18] --> Loop 17 0.05/0.16 * CEs [17] --> Loop 18 0.05/0.16 * CEs [16] --> Loop 19 0.05/0.16 0.05/0.16 ### Ranking functions of CR eval_foo_start(V_x,V_y,B) 0.05/0.16 0.05/0.16 #### Partial ranking functions of CR eval_foo_start(V_x,V_y,B) 0.05/0.16 0.05/0.16 0.05/0.16 Computing Bounds 0.05/0.16 ===================================== 0.05/0.16 0.05/0.16 #### Cost of chains of eval_foo_bb2_in(V__1,B,C): 0.05/0.16 * Chain [[7],8]: 1*it(7)+0 0.05/0.16 Such that:it(7) =< V__1 0.05/0.16 0.05/0.16 with precondition: [B=2,C=0,V__1>=1] 0.05/0.16 0.05/0.16 * Chain [8]: 0 0.05/0.16 with precondition: [B=2,V__1=C,0>=V__1] 0.05/0.16 0.05/0.16 0.05/0.16 #### Cost of chains of eval_foo_bb1_in(V__01,V__0,B): 0.05/0.16 * Chain [[9],11]: 1*it(9)+0 0.05/0.16 Such that:it(9) =< V__0 0.05/0.16 0.05/0.16 with precondition: [B=3,0>=V__01,V__0>=1] 0.05/0.16 0.05/0.16 * Chain [11]: 0 0.05/0.16 with precondition: [B=3,0>=V__0] 0.05/0.16 0.05/0.16 * Chain [10,[9],11]: 1*it(9)+1*s(1)+1 0.05/0.16 Such that:s(1) =< V__01 0.05/0.16 it(9) =< V__0 0.05/0.16 0.05/0.16 with precondition: [B=3,V__01>=1,V__0>=2] 0.05/0.16 0.05/0.16 * Chain [10,11]: 1*s(1)+1 0.05/0.16 Such that:s(1) =< V__01 0.05/0.16 0.05/0.16 with precondition: [V__0=1,B=3,V__01>=1] 0.05/0.16 0.05/0.16 0.05/0.16 #### Cost of chains of eval_foo_bb0_in(V_x,V_y,B): 0.05/0.16 * Chain [15]: 1*s(2)+1 0.05/0.16 Such that:s(2) =< V_y 0.05/0.16 0.05/0.16 with precondition: [V_x=1,V_y>=1] 0.05/0.16 0.05/0.16 * Chain [14]: 0 0.05/0.16 with precondition: [0>=V_x] 0.05/0.16 0.05/0.16 * Chain [13]: 1*s(3)+0 0.05/0.16 Such that:s(3) =< V_x 0.05/0.16 0.05/0.16 with precondition: [0>=V_y,V_x>=1] 0.05/0.16 0.05/0.16 * Chain [12]: 1*s(4)+1*s(5)+1 0.05/0.16 Such that:s(5) =< V_x 0.05/0.16 s(4) =< V_y 0.05/0.16 0.05/0.16 with precondition: [V_x>=2,V_y>=1] 0.05/0.16 0.05/0.16 0.05/0.16 #### Cost of chains of eval_foo_start(V_x,V_y,B): 0.05/0.16 * Chain [19]: 1*s(6)+1 0.05/0.16 Such that:s(6) =< V_y 0.05/0.16 0.05/0.16 with precondition: [V_x=1,V_y>=1] 0.05/0.16 0.05/0.16 * Chain [18]: 0 0.05/0.16 with precondition: [0>=V_x] 0.05/0.16 0.05/0.16 * Chain [17]: 1*s(7)+0 0.05/0.16 Such that:s(7) =< V_x 0.05/0.16 0.05/0.16 with precondition: [0>=V_y,V_x>=1] 0.05/0.16 0.05/0.16 * Chain [16]: 1*s(8)+1*s(9)+1 0.05/0.16 Such that:s(8) =< V_x 0.05/0.16 s(9) =< V_y 0.05/0.16 0.05/0.16 with precondition: [V_x>=2,V_y>=1] 0.05/0.16 0.05/0.16 0.05/0.16 Closed-form bounds of eval_foo_start(V_x,V_y,B): 0.05/0.16 ------------------------------------- 0.05/0.16 * Chain [19] with precondition: [V_x=1,V_y>=1] 0.05/0.16 - Upper bound: V_y+1 0.05/0.16 - Complexity: n 0.05/0.16 * Chain [18] with precondition: [0>=V_x] 0.05/0.16 - Upper bound: 0 0.05/0.16 - Complexity: constant 0.05/0.16 * Chain [17] with precondition: [0>=V_y,V_x>=1] 0.05/0.16 - Upper bound: V_x 0.05/0.16 - Complexity: n 0.05/0.16 * Chain [16] with precondition: [V_x>=2,V_y>=1] 0.05/0.16 - Upper bound: V_x+V_y+1 0.05/0.16 - Complexity: n 0.05/0.16 0.05/0.16 ### Maximum cost of eval_foo_start(V_x,V_y,B): nat(V_y)+1+nat(V_x) 0.05/0.16 Asymptotic class: n 0.05/0.16 * Total analysis performed in 94 ms. 0.05/0.16 0.05/0.27 EOF