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_speed_pldi10_ex3_2/5,eval_speed_pldi10_ex3_3/6,eval_speed_pldi10_ex3_bb2_in/4,eval_speed_pldi10_ex3_bb3_in/5] 0.05/0.21 1. recursive : [eval_speed_pldi10_ex3_bb1_in/2,eval_speed_pldi10_ex3_bb2_in_loop_cont/3] 0.05/0.21 2. non_recursive : [eval_speed_pldi10_ex3_stop/1] 0.05/0.21 3. non_recursive : [eval_speed_pldi10_ex3_bb4_in/1] 0.05/0.21 4. non_recursive : [eval_speed_pldi10_ex3_bb1_in_loop_cont/2] 0.05/0.21 5. non_recursive : [eval_speed_pldi10_ex3_bb0_in/2] 0.05/0.21 6. non_recursive : [eval_speed_pldi10_ex3_start/2] 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_speed_pldi10_ex3_bb2_in/4 0.05/0.21 1. SCC is partially evaluated into eval_speed_pldi10_ex3_bb1_in/2 0.05/0.21 2. SCC is completely evaluated into other SCCs 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 partially evaluated into eval_speed_pldi10_ex3_bb0_in/2 0.05/0.21 6. SCC is partially evaluated into eval_speed_pldi10_ex3_start/2 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_speed_pldi10_ex3_bb2_in/4 0.05/0.21 * CE 6 is refined into CE [8] 0.05/0.21 * CE 7 is refined into CE [9] 0.05/0.21 * CE 5 is refined into CE [10] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_speed_pldi10_ex3_bb2_in/4 0.05/0.21 * CEs [10] --> Loop 8 0.05/0.21 * CEs [8] --> Loop 9 0.05/0.21 * CEs [9] --> Loop 10 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_speed_pldi10_ex3_bb2_in(V__0,V__0_sink,B,C) 0.05/0.21 * RF of phase [8]: [V__0_sink-1] 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_speed_pldi10_ex3_bb2_in(V__0,V__0_sink,B,C) 0.05/0.21 * Partial RF of phase [8]: 0.05/0.21 - RF of loop [8:1]: 0.05/0.21 V__0_sink-1 0.05/0.21 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_speed_pldi10_ex3_bb1_in/2 0.05/0.21 * CE 4 is refined into CE [11] 0.05/0.21 * CE 3 is refined into CE [12,13,14,15] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_speed_pldi10_ex3_bb1_in/2 0.05/0.21 * CEs [15] --> Loop 11 0.05/0.21 * CEs [14] --> Loop 12 0.05/0.21 * CEs [13] --> Loop 13 0.05/0.21 * CEs [12] --> Loop 14 0.05/0.21 * CEs [11] --> Loop 15 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_speed_pldi10_ex3_bb1_in(V__0,B) 0.05/0.21 * RF of phase [11,12]: [V__0-1] 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_speed_pldi10_ex3_bb1_in(V__0,B) 0.05/0.21 * Partial RF of phase [11,12]: 0.05/0.21 - RF of loop [11:1]: 0.05/0.21 V__0/2-1 0.05/0.21 - RF of loop [12:1]: 0.05/0.21 V__0-1 0.05/0.21 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_speed_pldi10_ex3_bb0_in/2 0.05/0.21 * CE 2 is refined into CE [16,17,18,19] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_speed_pldi10_ex3_bb0_in/2 0.05/0.21 * CEs [19] --> Loop 16 0.05/0.21 * CEs [18] --> Loop 17 0.05/0.21 * CEs [17] --> Loop 18 0.05/0.21 * CEs [16] --> Loop 19 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_speed_pldi10_ex3_bb0_in(V_n,B) 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_speed_pldi10_ex3_bb0_in(V_n,B) 0.05/0.21 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_speed_pldi10_ex3_start/2 0.05/0.21 * CE 1 is refined into CE [20,21,22,23] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_speed_pldi10_ex3_start/2 0.05/0.21 * CEs [23] --> Loop 20 0.05/0.21 * CEs [22] --> Loop 21 0.05/0.21 * CEs [21] --> Loop 22 0.05/0.21 * CEs [20] --> Loop 23 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_speed_pldi10_ex3_start(V_n,B) 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_speed_pldi10_ex3_start(V_n,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_speed_pldi10_ex3_bb2_in(V__0,V__0_sink,B,C): 0.05/0.21 * Chain [[8],10]: 1*it(8)+0 0.05/0.21 Such that:it(8) =< V__0_sink 0.05/0.21 0.05/0.21 with precondition: [B=2,C=0,V__0_sink>=2,V__0>=V__0_sink] 0.05/0.21 0.05/0.21 * Chain [[8],9]: 1*it(8)+0 0.05/0.21 Such that:it(8) =< V__0_sink-C 0.05/0.21 0.05/0.21 with precondition: [B=2,C>=1,V__0>=V__0_sink,V__0_sink>=C+2] 0.05/0.21 0.05/0.21 * Chain [10]: 0 0.05/0.21 with precondition: [V__0_sink=1,B=2,C=0,V__0>=1] 0.05/0.21 0.05/0.21 * Chain [9]: 0 0.05/0.21 with precondition: [B=2,V__0_sink=C+1,V__0_sink>=2,V__0>=V__0_sink] 0.05/0.21 0.05/0.21 0.05/0.21 #### Cost of chains of eval_speed_pldi10_ex3_bb1_in(V__0,B): 0.05/0.21 * Chain [[11,12],14,15]: 1*it(11)+2*it(12)+1 0.05/0.21 Such that:it(11) =< V__0/2 0.05/0.21 aux(3) =< V__0 0.05/0.21 it(11) =< aux(3) 0.05/0.21 it(12) =< aux(3) 0.05/0.21 0.05/0.21 with precondition: [B=3,V__0>=2] 0.05/0.21 0.05/0.21 * Chain [[11,12],13,15]: 1*it(11)+3*it(12)+1 0.05/0.21 Such that:it(11) =< V__0/2 0.05/0.21 aux(4) =< V__0 0.05/0.21 it(11) =< aux(4) 0.05/0.21 it(12) =< aux(4) 0.05/0.21 0.05/0.21 with precondition: [B=3,V__0>=3] 0.05/0.21 0.05/0.21 * Chain [15]: 0 0.05/0.21 with precondition: [B=3,0>=V__0] 0.05/0.21 0.05/0.21 * Chain [14,15]: 1 0.05/0.21 with precondition: [V__0=1,B=3] 0.05/0.21 0.05/0.21 * Chain [13,15]: 1*s(4)+1 0.05/0.21 Such that:s(4) =< V__0 0.05/0.21 0.05/0.21 with precondition: [B=3,V__0>=2] 0.05/0.21 0.05/0.21 0.05/0.21 #### Cost of chains of eval_speed_pldi10_ex3_bb0_in(V_n,B): 0.05/0.21 * Chain [19]: 1 0.05/0.21 with precondition: [V_n=1] 0.05/0.21 0.05/0.21 * Chain [18]: 0 0.05/0.21 with precondition: [0>=V_n] 0.05/0.21 0.05/0.21 * Chain [17]: 1*s(9)+3*s(11)+1 0.05/0.21 Such that:s(10) =< V_n 0.05/0.21 s(9) =< V_n/2 0.05/0.21 s(11) =< s(10) 0.05/0.21 s(9) =< s(10) 0.05/0.21 0.05/0.21 with precondition: [V_n>=2] 0.05/0.21 0.05/0.21 * Chain [16]: 1*s(12)+3*s(14)+1 0.05/0.21 Such that:s(13) =< V_n 0.05/0.21 s(12) =< V_n/2 0.05/0.21 s(12) =< s(13) 0.05/0.21 s(14) =< s(13) 0.05/0.21 0.05/0.21 with precondition: [V_n>=3] 0.05/0.21 0.05/0.21 0.05/0.21 #### Cost of chains of eval_speed_pldi10_ex3_start(V_n,B): 0.05/0.21 * Chain [23]: 1 0.05/0.21 with precondition: [V_n=1] 0.05/0.21 0.05/0.21 * Chain [22]: 0 0.05/0.21 with precondition: [0>=V_n] 0.05/0.21 0.05/0.21 * Chain [21]: 1*s(16)+3*s(17)+1 0.05/0.21 Such that:s(15) =< V_n 0.05/0.21 s(16) =< V_n/2 0.05/0.21 s(17) =< s(15) 0.05/0.21 s(16) =< s(15) 0.05/0.21 0.05/0.21 with precondition: [V_n>=2] 0.05/0.21 0.05/0.21 * Chain [20]: 1*s(19)+3*s(20)+1 0.05/0.21 Such that:s(18) =< V_n 0.05/0.21 s(19) =< V_n/2 0.05/0.21 s(19) =< s(18) 0.05/0.21 s(20) =< s(18) 0.05/0.21 0.05/0.21 with precondition: [V_n>=3] 0.05/0.21 0.05/0.21 0.05/0.21 Closed-form bounds of eval_speed_pldi10_ex3_start(V_n,B): 0.05/0.21 ------------------------------------- 0.05/0.21 * Chain [23] with precondition: [V_n=1] 0.05/0.21 - Upper bound: 1 0.05/0.21 - Complexity: constant 0.05/0.21 * Chain [22] with precondition: [0>=V_n] 0.05/0.21 - Upper bound: 0 0.05/0.21 - Complexity: constant 0.05/0.21 * Chain [21] with precondition: [V_n>=2] 0.05/0.21 - Upper bound: 7/2*V_n+1 0.05/0.21 - Complexity: n 0.05/0.21 * Chain [20] with precondition: [V_n>=3] 0.05/0.21 - Upper bound: 7/2*V_n+1 0.05/0.21 - Complexity: n 0.05/0.21 0.05/0.21 ### Maximum cost of eval_speed_pldi10_ex3_start(V_n,B): max([1,nat(V_n)*3+1+nat(V_n/2)]) 0.05/0.21 Asymptotic class: n 0.05/0.21 * Total analysis performed in 132 ms. 0.05/0.21 0.05/0.31 EOF