0.05/0.25 MAYBE 0.05/0.25 0.05/0.25 Preprocessing Cost Relations 0.05/0.25 ===================================== 0.05/0.25 0.05/0.25 #### Computed strongly connected components 0.05/0.25 0. recursive : [eval_foo_bb3_in/5,eval_foo_bb4_in/5] 0.05/0.25 1. recursive : [eval_foo_bb1_in/3,eval_foo_bb2_in/3,eval_foo_bb3_in_loop_cont/4] 0.05/0.25 2. non_recursive : [eval_foo_stop/1] 0.05/0.25 3. non_recursive : [eval_foo__critedge_in/1] 0.05/0.25 4. non_recursive : [eval_foo_bb1_in_loop_cont/2] 0.05/0.25 5. non_recursive : [eval_foo_bb0_in/3] 0.05/0.25 6. non_recursive : [eval_foo_start/5] 0.05/0.25 0.05/0.25 #### Obtained direct recursion through partial evaluation 0.05/0.25 0. SCC is partially evaluated into eval_foo_bb3_in/5 0.05/0.25 1. SCC is partially evaluated into eval_foo_bb1_in/3 0.05/0.25 2. SCC is completely evaluated into other SCCs 0.05/0.25 3. SCC is completely evaluated into other SCCs 0.05/0.25 4. SCC is completely evaluated into other SCCs 0.05/0.25 5. SCC is partially evaluated into eval_foo_bb0_in/3 0.05/0.25 6. SCC is partially evaluated into eval_foo_start/5 0.05/0.25 0.05/0.25 Control-Flow Refinement of Cost Relations 0.05/0.25 ===================================== 0.05/0.25 0.05/0.25 ### Specialization of cost equations eval_foo_bb3_in/5 0.05/0.25 * CE 10 is refined into CE [11] 0.05/0.25 * CE 9 is refined into CE [12] 0.05/0.25 0.05/0.25 0.05/0.25 ### Cost equations --> "Loop" of eval_foo_bb3_in/5 0.05/0.25 * CEs [12] --> Loop 11 0.05/0.25 * CEs [11] --> Loop 12 0.05/0.25 0.05/0.25 ### Ranking functions of CR eval_foo_bb3_in(V__01,V__0,V__02,B,C) 0.05/0.25 * RF of phase [11]: [-V__01+V__02,V__02-1] 0.05/0.25 0.05/0.25 #### Partial ranking functions of CR eval_foo_bb3_in(V__01,V__0,V__02,B,C) 0.05/0.25 * Partial RF of phase [11]: 0.05/0.25 - RF of loop [11:1]: 0.05/0.25 -V__01+V__02 0.05/0.25 V__02-1 0.05/0.25 0.05/0.25 0.05/0.25 ### Specialization of cost equations eval_foo_bb1_in/3 0.05/0.25 * CE 7 is refined into CE [13] 0.05/0.25 * CE 8 is refined into CE [14] 0.05/0.25 * CE 6 is refined into CE [15] 0.05/0.25 * CE 4 is refined into CE [16] 0.05/0.25 * CE 5 is refined into CE [17] 0.05/0.25 * CE 3 is refined into CE [18] 0.05/0.25 0.05/0.25 0.05/0.25 ### Cost equations --> "Loop" of eval_foo_bb1_in/3 0.05/0.25 * CEs [17] --> Loop 13 0.05/0.25 * CEs [16] --> Loop 14 0.05/0.25 * CEs [18] --> Loop 15 0.05/0.25 * CEs [13] --> Loop 16 0.05/0.25 * CEs [14] --> Loop 17 0.05/0.25 * CEs [15] --> Loop 18 0.05/0.25 0.05/0.25 ### Ranking functions of CR eval_foo_bb1_in(V__01,V__0,B) 0.05/0.25 * RF of phase [13]: [V__0-1] 0.05/0.25 0.05/0.25 #### Partial ranking functions of CR eval_foo_bb1_in(V__01,V__0,B) 0.05/0.25 * Partial RF of phase [13]: 0.05/0.25 - RF of loop [13:1]: 0.05/0.25 V__0-1 0.05/0.25 0.05/0.25 0.05/0.25 ### Specialization of cost equations eval_foo_bb0_in/3 0.05/0.25 * CE 2 is refined into CE [19,20,21,22,23,24,25] 0.05/0.25 0.05/0.25 0.05/0.25 ### Cost equations --> "Loop" of eval_foo_bb0_in/3 0.05/0.25 * CEs [24] --> Loop 19 0.05/0.25 * CEs [25] --> Loop 20 0.05/0.25 * CEs [23] --> Loop 21 0.05/0.25 * CEs [21] --> Loop 22 0.05/0.25 * CEs [22] --> Loop 23 0.05/0.25 * CEs [19] --> Loop 24 0.05/0.25 * CEs [20] --> Loop 25 0.05/0.25 0.05/0.25 ### Ranking functions of CR eval_foo_bb0_in(V_x,V_y,B) 0.05/0.25 0.05/0.25 #### Partial ranking functions of CR eval_foo_bb0_in(V_x,V_y,B) 0.05/0.25 0.05/0.25 0.05/0.25 ### Specialization of cost equations eval_foo_start/5 0.05/0.25 * CE 1 is refined into CE [26,27,28,29,30,31,32] 0.05/0.25 0.05/0.25 0.05/0.25 ### Cost equations --> "Loop" of eval_foo_start/5 0.05/0.25 * CEs [32] --> Loop 26 0.05/0.25 * CEs [31] --> Loop 27 0.05/0.25 * CEs [30] --> Loop 28 0.05/0.25 * CEs [29] --> Loop 29 0.05/0.25 * CEs [28] --> Loop 30 0.05/0.25 * CEs [27] --> Loop 31 0.05/0.25 * CEs [26] --> Loop 32 0.05/0.25 0.05/0.25 ### Ranking functions of CR eval_foo_start(V_x,V_y,V_tmp,V_xtmp,B) 0.05/0.25 0.05/0.25 #### Partial ranking functions of CR eval_foo_start(V_x,V_y,V_tmp,V_xtmp,B) 0.05/0.25 0.05/0.25 0.05/0.25 Computing Bounds 0.05/0.25 ===================================== 0.05/0.25 0.05/0.25 #### Cost of chains of eval_foo_bb3_in(V__01,V__0,V__02,B,C): 0.05/0.25 * Chain [[11],12]: 1*it(11)+0 0.05/0.25 Such that:it(11) =< -V__01+V__02 0.05/0.25 0.05/0.25 with precondition: [B=2,C>=1,V__0>=V__02,V__01>=C,V__02>=V__01+C] 0.05/0.25 0.05/0.25 * Chain [12]: 0 0.05/0.25 with precondition: [B=2,V__02=C,V__01>=1,V__02>=0,V__01>=V__02,V__0>=V__02] 0.05/0.25 0.05/0.25 0.05/0.25 #### Cost of chains of eval_foo_bb1_in(V__01,V__0,B): 0.05/0.25 * Chain [[15]]...: 1*it(15)+0 0.05/0.25 with precondition: [V__01=V__0,V__01>=1,B=3] 0.05/0.25 0.05/0.25 * Chain [[13],[15]]...: 2*it(13)+1*it(15)+0 0.05/0.25 Such that:aux(3) =< V__0 0.05/0.25 it(13) =< aux(3) 0.05/0.25 0.05/0.25 with precondition: [B=3,V__01>=1,V__0>=V__01+1] 0.05/0.25 0.05/0.25 * Chain [18]: 0 0.05/0.25 with precondition: [V__01=0,B=3] 0.05/0.25 0.05/0.25 * Chain [17]: 0 0.05/0.25 with precondition: [B=3,0>=V__01+1] 0.05/0.25 0.05/0.25 * Chain [16]: 0 0.05/0.25 with precondition: [B=3,0>=V__0+1] 0.05/0.25 0.05/0.25 * Chain [14,[13],[15]]...: 2*it(13)+1*it(15)+1 0.05/0.25 Such that:aux(3) =< V__01 0.05/0.25 it(13) =< aux(3) 0.05/0.25 0.05/0.25 with precondition: [B=3,V__0>=1,V__01>=V__0+1] 0.05/0.25 0.05/0.25 * Chain [14,18]: 1 0.05/0.25 with precondition: [V__0=0,B=3,V__01>=1] 0.05/0.25 0.05/0.25 0.05/0.25 #### Cost of chains of eval_foo_bb0_in(V_x,V_y,B): 0.05/0.25 * Chain [25]: 1 0.05/0.25 with precondition: [V_x=0,V_y>=1] 0.05/0.25 0.05/0.25 * Chain [24]: 0 0.05/0.25 with precondition: [V_y=0] 0.05/0.26 0.05/0.26 * Chain [23]: 0 0.05/0.26 with precondition: [0>=V_x+1] 0.05/0.26 0.05/0.26 * Chain [22]: 0 0.05/0.26 with precondition: [0>=V_y+1] 0.05/0.26 0.05/0.26 * Chain [21]...: 1*s(4)+0 0.05/0.26 with precondition: [V_x=V_y,V_x>=1] 0.05/0.26 0.05/0.26 * Chain [20]...: 2*s(6)+1*s(7)+1 0.05/0.26 Such that:s(5) =< V_y 0.05/0.26 s(6) =< s(5) 0.05/0.26 0.05/0.26 with precondition: [V_x>=1,V_y>=V_x+1] 0.05/0.26 0.05/0.26 * Chain [19]...: 2*s(9)+1*s(10)+0 0.05/0.26 Such that:s(8) =< V_x 0.05/0.26 s(9) =< s(8) 0.05/0.26 0.05/0.26 with precondition: [V_y>=1,V_x>=V_y+1] 0.05/0.26 0.05/0.26 0.05/0.26 #### Cost of chains of eval_foo_start(V_x,V_y,V_tmp,V_xtmp,B): 0.05/0.26 * Chain [32]: 1 0.05/0.26 with precondition: [V_x=0,V_y>=1] 0.05/0.26 0.05/0.26 * Chain [31]: 0 0.05/0.26 with precondition: [V_y=0] 0.05/0.26 0.05/0.26 * Chain [30]: 0 0.05/0.26 with precondition: [0>=V_x+1] 0.05/0.26 0.05/0.26 * Chain [29]: 0 0.05/0.26 with precondition: [0>=V_y+1] 0.05/0.26 0.05/0.26 * Chain [28]...: 1*s(11)+0 0.05/0.26 with precondition: [V_x=V_y,V_x>=1] 0.05/0.26 0.05/0.26 * Chain [27]...: 2*s(13)+1*s(14)+1 0.05/0.26 Such that:s(12) =< V_y 0.05/0.26 s(13) =< s(12) 0.05/0.26 0.05/0.26 with precondition: [V_x>=1,V_y>=V_x+1] 0.05/0.26 0.05/0.26 * Chain [26]...: 2*s(16)+1*s(17)+0 0.05/0.26 Such that:s(15) =< V_x 0.05/0.26 s(16) =< s(15) 0.05/0.26 0.05/0.26 with precondition: [V_y>=1,V_x>=V_y+1] 0.05/0.26 0.05/0.26 0.05/0.26 Closed-form bounds of eval_foo_start(V_x,V_y,V_tmp,V_xtmp,B): 0.05/0.26 ------------------------------------- 0.05/0.26 * Chain [32] with precondition: [V_x=0,V_y>=1] 0.05/0.26 - Upper bound: 1 0.05/0.26 - Complexity: constant 0.05/0.26 * Chain [31] with precondition: [V_y=0] 0.05/0.26 - Upper bound: 0 0.05/0.26 - Complexity: constant 0.05/0.26 * Chain [30] with precondition: [0>=V_x+1] 0.05/0.26 - Upper bound: 0 0.05/0.26 - Complexity: constant 0.05/0.26 * Chain [29] with precondition: [0>=V_y+1] 0.05/0.26 - Upper bound: 0 0.05/0.26 - Complexity: constant 0.05/0.26 * Chain [28]... with precondition: [V_x=V_y,V_x>=1] 0.05/0.26 - Upper bound: inf 0.05/0.26 - Complexity: infinity 0.05/0.26 * Chain [27]... with precondition: [V_x>=1,V_y>=V_x+1] 0.05/0.26 - Upper bound: inf 0.05/0.26 - Complexity: infinity 0.05/0.26 * Chain [26]... with precondition: [V_y>=1,V_x>=V_y+1] 0.05/0.26 - Upper bound: inf 0.05/0.26 - Complexity: infinity 0.05/0.26 0.05/0.26 ### Maximum cost of eval_foo_start(V_x,V_y,V_tmp,V_xtmp,B): inf 0.05/0.26 Asymptotic class: infinity 0.05/0.26 * Total analysis performed in 180 ms. 0.05/0.26 0.05/0.36 EOF