0.05/0.27 WORST_CASE(?,O(n^2)) 0.05/0.27 0.05/0.27 Preprocessing Cost Relations 0.05/0.27 ===================================== 0.05/0.27 0.05/0.27 #### Computed strongly connected components 0.05/0.27 0. recursive : [eval_speed_pldi10_ex1_2/7,eval_speed_pldi10_ex1_3/8,eval_speed_pldi10_ex1_bb2_in/6,eval_speed_pldi10_ex1_bb3_in/7,eval_speed_pldi10_ex1_bb4_in/8] 0.05/0.27 1. recursive : [eval_speed_pldi10_ex1_bb1_in/3,eval_speed_pldi10_ex1_bb2_in_loop_cont/7,eval_speed_pldi10_ex1_bb5_in/6] 0.05/0.27 2. non_recursive : [eval_speed_pldi10_ex1_stop/1] 0.05/0.27 3. non_recursive : [eval_speed_pldi10_ex1_bb6_in/1] 0.05/0.27 4. non_recursive : [eval_speed_pldi10_ex1_bb1_in_loop_cont/2] 0.05/0.27 5. non_recursive : [eval_speed_pldi10_ex1_bb0_in/2] 0.05/0.27 6. non_recursive : [eval_speed_pldi10_ex1_start/2] 0.05/0.27 0.05/0.27 #### Obtained direct recursion through partial evaluation 0.05/0.27 0. SCC is partially evaluated into eval_speed_pldi10_ex1_bb2_in/6 0.05/0.27 1. SCC is partially evaluated into eval_speed_pldi10_ex1_bb1_in/3 0.05/0.27 2. SCC is completely evaluated into other SCCs 0.05/0.27 3. SCC is completely evaluated into other SCCs 0.05/0.27 4. SCC is completely evaluated into other SCCs 0.05/0.27 5. SCC is partially evaluated into eval_speed_pldi10_ex1_bb0_in/2 0.05/0.27 6. SCC is partially evaluated into eval_speed_pldi10_ex1_start/2 0.05/0.27 0.05/0.27 Control-Flow Refinement of Cost Relations 0.05/0.27 ===================================== 0.05/0.27 0.05/0.27 ### Specialization of cost equations eval_speed_pldi10_ex1_bb2_in/6 0.05/0.27 * CE 7 is refined into CE [8] 0.05/0.27 * CE 5 is refined into CE [9] 0.05/0.27 * CE 6 is refined into CE [10] 0.05/0.27 0.05/0.27 0.05/0.27 ### Cost equations --> "Loop" of eval_speed_pldi10_ex1_bb2_in/6 0.05/0.27 * CEs [9] --> Loop 8 0.05/0.27 * CEs [10] --> Loop 9 0.05/0.27 * CEs [8] --> Loop 10 0.05/0.27 0.05/0.27 ### Ranking functions of CR eval_speed_pldi10_ex1_bb2_in(V_i_0_sink,V__1,B,C,D,E) 0.05/0.27 * RF of phase [8,9]: [-V_i_0_sink+V__1-1] 0.05/0.27 0.05/0.27 #### Partial ranking functions of CR eval_speed_pldi10_ex1_bb2_in(V_i_0_sink,V__1,B,C,D,E) 0.05/0.27 * Partial RF of phase [8,9]: 0.05/0.27 - RF of loop [8:1,9:1]: 0.05/0.27 -V_i_0_sink+V__1-1 0.05/0.27 - RF of loop [9:1]: 0.05/0.27 V__1-1 0.05/0.27 0.05/0.27 0.05/0.27 ### Specialization of cost equations eval_speed_pldi10_ex1_bb1_in/3 0.05/0.27 * CE 4 is refined into CE [11] 0.05/0.27 * CE 3 is refined into CE [12,13] 0.05/0.27 0.05/0.27 0.05/0.27 ### Cost equations --> "Loop" of eval_speed_pldi10_ex1_bb1_in/3 0.05/0.27 * CEs [12] --> Loop 11 0.05/0.27 * CEs [13] --> Loop 12 0.05/0.27 * CEs [11] --> Loop 13 0.05/0.27 0.05/0.27 ### Ranking functions of CR eval_speed_pldi10_ex1_bb1_in(V_i_0,V__0,B) 0.05/0.27 * RF of phase [12]: [-V_i_0+V__0-1] 0.05/0.27 0.05/0.27 #### Partial ranking functions of CR eval_speed_pldi10_ex1_bb1_in(V_i_0,V__0,B) 0.05/0.27 * Partial RF of phase [12]: 0.05/0.27 - RF of loop [12:1]: 0.05/0.27 -V_i_0+V__0-1 0.05/0.27 0.05/0.27 0.05/0.27 ### Specialization of cost equations eval_speed_pldi10_ex1_bb0_in/2 0.05/0.27 * CE 2 is refined into CE [14,15,16] 0.05/0.27 0.05/0.27 0.05/0.27 ### Cost equations --> "Loop" of eval_speed_pldi10_ex1_bb0_in/2 0.05/0.27 * CEs [15] --> Loop 14 0.05/0.27 * CEs [16] --> Loop 15 0.05/0.27 * CEs [14] --> Loop 16 0.05/0.27 0.05/0.27 ### Ranking functions of CR eval_speed_pldi10_ex1_bb0_in(V_n,B) 0.05/0.27 0.05/0.27 #### Partial ranking functions of CR eval_speed_pldi10_ex1_bb0_in(V_n,B) 0.05/0.27 0.05/0.27 0.05/0.27 ### Specialization of cost equations eval_speed_pldi10_ex1_start/2 0.05/0.27 * CE 1 is refined into CE [17,18,19] 0.05/0.27 0.05/0.27 0.05/0.27 ### Cost equations --> "Loop" of eval_speed_pldi10_ex1_start/2 0.05/0.27 * CEs [19] --> Loop 17 0.05/0.27 * CEs [18] --> Loop 18 0.05/0.27 * CEs [17] --> Loop 19 0.05/0.27 0.05/0.27 ### Ranking functions of CR eval_speed_pldi10_ex1_start(V_n,B) 0.05/0.27 0.05/0.27 #### Partial ranking functions of CR eval_speed_pldi10_ex1_start(V_n,B) 0.05/0.27 0.05/0.27 0.05/0.27 Computing Bounds 0.05/0.27 ===================================== 0.05/0.27 0.05/0.27 #### Cost of chains of eval_speed_pldi10_ex1_bb2_in(V_i_0_sink,V__1,B,C,D,E): 0.05/0.27 * Chain [[8,9],10]: 1*it(8)+1*it(9)+0 0.05/0.27 Such that:it(9) =< V__1-E 0.05/0.27 aux(3) =< -V_i_0_sink+V__1 0.05/0.27 it(8) =< aux(3) 0.05/0.27 it(9) =< aux(3) 0.05/0.27 0.05/0.27 with precondition: [B=2,C+1=D,C+1=E,V_i_0_sink>=0,V__1>=V_i_0_sink+2,C>=V_i_0_sink,V__1>=C+1] 0.05/0.27 0.05/0.27 * Chain [10]: 0 0.05/0.27 with precondition: [B=2,V__1=V_i_0_sink+1,V__1=C+1,V__1=D,V__1=E,V__1>=1] 0.05/0.27 0.05/0.27 0.05/0.27 #### Cost of chains of eval_speed_pldi10_ex1_bb1_in(V_i_0,V__0,B): 0.05/0.27 * Chain [[12],13]: 1*it(12)+1*s(7)+1*s(8)+0 0.05/0.27 Such that:aux(7) =< V__0 0.05/0.27 aux(8) =< -V_i_0+V__0 0.05/0.27 s(7) =< aux(8) 0.05/0.27 aux(4) =< aux(8) 0.05/0.27 it(12) =< aux(8) 0.05/0.27 aux(4) =< aux(7) 0.05/0.27 s(7) =< aux(7) 0.05/0.27 s(9) =< it(12)*aux(4) 0.05/0.27 s(8) =< s(9) 0.05/0.27 s(7) =< s(9) 0.05/0.27 0.05/0.27 with precondition: [B=3,V_i_0>=0,V__0>=V_i_0+2] 0.05/0.27 0.05/0.27 * Chain [[12],11,13]: 1*it(12)+1*s(7)+1*s(8)+1 0.05/0.27 Such that:aux(7) =< V__0 0.05/0.27 aux(9) =< -V_i_0+V__0 0.05/0.27 s(7) =< aux(9) 0.05/0.27 aux(4) =< aux(9) 0.05/0.27 it(12) =< aux(9) 0.05/0.27 aux(4) =< aux(7) 0.05/0.27 s(7) =< aux(7) 0.05/0.27 s(9) =< it(12)*aux(4) 0.05/0.27 s(8) =< s(9) 0.05/0.27 s(7) =< s(9) 0.05/0.27 0.05/0.27 with precondition: [B=3,V_i_0>=0,V__0>=V_i_0+2] 0.05/0.27 0.05/0.27 * Chain [13]: 0 0.05/0.27 with precondition: [B=3,V_i_0>=0,V_i_0>=V__0] 0.05/0.27 0.05/0.27 * Chain [11,13]: 1 0.05/0.27 with precondition: [B=3,V__0=V_i_0+1,V__0>=1] 0.05/0.27 0.05/0.27 0.05/0.27 #### Cost of chains of eval_speed_pldi10_ex1_bb0_in(V_n,B): 0.05/0.27 * Chain [16]: 1 0.05/0.27 with precondition: [V_n=1] 0.05/0.27 0.05/0.27 * Chain [15]: 0 0.05/0.27 with precondition: [0>=V_n] 0.05/0.27 0.05/0.27 * Chain [14]: 2*s(26)+2*s(28)+2*s(30)+1 0.05/0.27 Such that:aux(12) =< V_n 0.05/0.27 s(26) =< aux(12) 0.05/0.27 s(28) =< aux(12) 0.05/0.27 s(29) =< s(28)*aux(12) 0.05/0.27 s(30) =< s(29) 0.05/0.27 s(26) =< s(29) 0.05/0.27 0.05/0.27 with precondition: [V_n>=2] 0.05/0.27 0.05/0.27 0.05/0.27 #### Cost of chains of eval_speed_pldi10_ex1_start(V_n,B): 0.05/0.27 * Chain [19]: 1 0.05/0.27 with precondition: [V_n=1] 0.05/0.27 0.05/0.27 * Chain [18]: 0 0.05/0.27 with precondition: [0>=V_n] 0.05/0.27 0.05/0.27 * Chain [17]: 2*s(32)+2*s(33)+2*s(35)+1 0.05/0.27 Such that:s(31) =< V_n 0.05/0.27 s(32) =< s(31) 0.05/0.27 s(33) =< s(31) 0.05/0.27 s(34) =< s(33)*s(31) 0.05/0.27 s(35) =< s(34) 0.05/0.27 s(32) =< s(34) 0.05/0.27 0.05/0.27 with precondition: [V_n>=2] 0.05/0.27 0.05/0.27 0.05/0.27 Closed-form bounds of eval_speed_pldi10_ex1_start(V_n,B): 0.05/0.27 ------------------------------------- 0.05/0.27 * Chain [19] with precondition: [V_n=1] 0.05/0.27 - Upper bound: 1 0.05/0.27 - Complexity: constant 0.05/0.27 * Chain [18] with precondition: [0>=V_n] 0.05/0.27 - Upper bound: 0 0.05/0.27 - Complexity: constant 0.05/0.27 * Chain [17] with precondition: [V_n>=2] 0.05/0.27 - Upper bound: 4*V_n+1+2*V_n*V_n 0.05/0.27 - Complexity: n^2 0.05/0.27 0.05/0.27 ### Maximum cost of eval_speed_pldi10_ex1_start(V_n,B): max([1,nat(V_n)*4+1+nat(V_n)*2*nat(V_n)]) 0.05/0.27 Asymptotic class: n^2 0.05/0.27 * Total analysis performed in 183 ms. 0.05/0.27 0.05/0.37 EOF