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