0.06/0.50 WORST_CASE(?,O(n^2)) 0.06/0.50 0.06/0.50 Preprocessing Cost Relations 0.06/0.50 ===================================== 0.06/0.50 0.06/0.50 #### Computed strongly connected components 0.06/0.50 0. recursive : [eval_rank1_2/4,eval_rank1_3/5,eval_rank1_bb3_in/4,eval_rank1_bb4_in/4,eval_rank1_bb5_in/5] 0.06/0.50 1. recursive : [eval_rank1_0/4,eval_rank1_1/5,eval_rank1__critedge_in/6,eval_rank1_bb1_in/4,eval_rank1_bb2_in/4,eval_rank1_bb3_in_loop_cont/7,eval_rank1_bb6_in/7] 0.06/0.50 2. non_recursive : [eval_rank1_stop/1] 0.06/0.50 3. non_recursive : [eval_rank1_bb7_in/1] 0.06/0.50 4. non_recursive : [eval_rank1_bb1_in_loop_cont/2] 0.06/0.50 5. non_recursive : [eval_rank1_bb0_in/2] 0.06/0.50 6. non_recursive : [eval_rank1_start/2] 0.06/0.50 0.06/0.50 #### Obtained direct recursion through partial evaluation 0.06/0.50 0. SCC is partially evaluated into eval_rank1_bb3_in/4 0.06/0.50 1. SCC is partially evaluated into eval_rank1_bb1_in/4 0.06/0.50 2. SCC is completely evaluated into other SCCs 0.06/0.50 3. SCC is completely evaluated into other SCCs 0.06/0.50 4. SCC is completely evaluated into other SCCs 0.06/0.50 5. SCC is partially evaluated into eval_rank1_bb0_in/2 0.06/0.50 6. SCC is partially evaluated into eval_rank1_start/2 0.06/0.50 0.06/0.50 Control-Flow Refinement of Cost Relations 0.06/0.50 ===================================== 0.06/0.50 0.06/0.50 ### Specialization of cost equations eval_rank1_bb3_in/4 0.06/0.50 * CE 7 is refined into CE [10] 0.06/0.50 * CE 9 is refined into CE [11] 0.06/0.50 * CE 8 is refined into CE [12] 0.06/0.50 0.06/0.50 0.06/0.50 ### Cost equations --> "Loop" of eval_rank1_bb3_in/4 0.06/0.50 * CEs [12] --> Loop 10 0.06/0.50 * CEs [10] --> Loop 11 0.06/0.50 * CEs [11] --> Loop 12 0.06/0.50 0.06/0.50 ### Ranking functions of CR eval_rank1_bb3_in(V_m,V_y_1,B,C) 0.06/0.50 * RF of phase [10]: [V_m-V_y_1+1] 0.06/0.50 0.06/0.50 #### Partial ranking functions of CR eval_rank1_bb3_in(V_m,V_y_1,B,C) 0.06/0.50 * Partial RF of phase [10]: 0.06/0.50 - RF of loop [10:1]: 0.06/0.50 V_m-V_y_1+1 0.06/0.50 0.06/0.50 0.06/0.50 ### Specialization of cost equations eval_rank1_bb1_in/4 0.06/0.50 * CE 6 is refined into CE [13] 0.06/0.50 * CE 5 is refined into CE [14] 0.06/0.50 * CE 4 is refined into CE [15,16,17,18] 0.06/0.50 * CE 3 is refined into CE [19] 0.06/0.50 0.06/0.50 0.06/0.50 ### Cost equations --> "Loop" of eval_rank1_bb1_in/4 0.06/0.50 * CEs [18] --> Loop 13 0.06/0.50 * CEs [16] --> Loop 14 0.06/0.50 * CEs [17] --> Loop 15 0.06/0.50 * CEs [19] --> Loop 16 0.06/0.50 * CEs [15] --> Loop 17 0.06/0.50 * CEs [13] --> Loop 18 0.06/0.50 * CEs [14] --> Loop 19 0.06/0.50 0.06/0.50 ### Ranking functions of CR eval_rank1_bb1_in(V_m,V_x_0,V_y_0,B) 0.06/0.50 0.06/0.50 #### Partial ranking functions of CR eval_rank1_bb1_in(V_m,V_x_0,V_y_0,B) 0.06/0.50 * Partial RF of phase [13,14,15,16,17]: 0.06/0.50 - RF of loop [13:1,14:1,15:1,17:1]: 0.06/0.50 V_x_0+1 0.06/0.50 - RF of loop [14:1]: 0.06/0.50 -V_m+V_y_0 depends on loops [13:1,17:1] 0.06/0.50 V_y_0 depends on loops [13:1,17:1] 0.06/0.50 - RF of loop [15:1,16:1]: 0.06/0.50 V_y_0+1 depends on loops [13:1,17:1] 0.06/0.50 0.06/0.50 0.06/0.50 ### Specialization of cost equations eval_rank1_bb0_in/2 0.06/0.50 * CE 2 is refined into CE [20,21] 0.06/0.50 0.06/0.50 0.06/0.50 ### Cost equations --> "Loop" of eval_rank1_bb0_in/2 0.06/0.50 * CEs [21] --> Loop 20 0.06/0.50 * CEs [20] --> Loop 21 0.06/0.50 0.06/0.50 ### Ranking functions of CR eval_rank1_bb0_in(V_m,B) 0.06/0.50 0.06/0.50 #### Partial ranking functions of CR eval_rank1_bb0_in(V_m,B) 0.06/0.50 0.06/0.50 0.06/0.50 ### Specialization of cost equations eval_rank1_start/2 0.06/0.50 * CE 1 is refined into CE [22,23] 0.06/0.50 0.06/0.50 0.06/0.50 ### Cost equations --> "Loop" of eval_rank1_start/2 0.06/0.50 * CEs [23] --> Loop 22 0.06/0.50 * CEs [22] --> Loop 23 0.06/0.50 0.06/0.50 ### Ranking functions of CR eval_rank1_start(V_m,B) 0.06/0.50 0.06/0.50 #### Partial ranking functions of CR eval_rank1_start(V_m,B) 0.06/0.50 0.06/0.50 0.06/0.50 Computing Bounds 0.06/0.50 ===================================== 0.06/0.50 0.06/0.50 #### Cost of chains of eval_rank1_bb3_in(V_m,V_y_1,B,C): 0.06/0.50 * Chain [[10],12]: 1*it(10)+0 0.06/0.50 Such that:it(10) =< -V_y_1+C 0.06/0.50 0.06/0.50 with precondition: [B=2,V_m+1=C,V_y_1>=0,V_m>=V_y_1] 0.06/0.50 0.06/0.50 * Chain [[10],11]: 1*it(10)+0 0.06/0.50 Such that:it(10) =< -V_y_1+C 0.06/0.50 0.06/0.50 with precondition: [B=2,V_y_1>=0,C>=V_y_1+1,V_m>=C] 0.06/0.50 0.06/0.50 * Chain [12]: 0 0.06/0.50 with precondition: [B=2,V_y_1=C,V_m>=0,V_y_1>=V_m+1] 0.06/0.50 0.06/0.50 * Chain [11]: 0 0.06/0.50 with precondition: [B=2,V_y_1=C,V_y_1>=0,V_m>=V_y_1] 0.06/0.50 0.06/0.50 0.06/0.50 #### Cost of chains of eval_rank1_bb1_in(V_m,V_x_0,V_y_0,B): 0.06/0.50 * Chain [[13,14,15,16,17],19]: 2*it(13)+1*it(14)+1*it(15)+1*it(16)+1*s(5)+1*s(6)+0 0.06/0.50 Such that:aux(9) =< -V_m+V_y_0 0.06/0.50 aux(40) =< V_m 0.06/0.50 aux(41) =< V_m+V_x_0+1 0.06/0.50 aux(29) =< V_m+V_x_0-V_y_0+1 0.06/0.50 aux(46) =< V_x_0+1 0.06/0.50 aux(47) =< V_y_0+1 0.06/0.50 it(13) =< aux(46) 0.06/0.50 it(14) =< aux(46) 0.06/0.50 it(15) =< aux(46) 0.06/0.50 aux(31) =< aux(40)+1 0.06/0.50 aux(15) =< aux(40) 0.06/0.50 aux(14) =< it(13)*aux(40) 0.06/0.50 it(14) =< aux(46)+aux(9) 0.06/0.50 s(5) =< it(13)*aux(40) 0.06/0.50 aux(16) =< it(13)*aux(15) 0.06/0.50 aux(10) =< aux(14) 0.06/0.50 aux(10) =< aux(16) 0.06/0.50 aux(33) =< it(13)*aux(31) 0.06/0.50 s(6) =< it(13)*aux(31) 0.06/0.50 it(15) =< aux(33)+aux(10)+aux(47) 0.06/0.50 it(16) =< aux(33)+aux(10)+aux(47) 0.06/0.50 it(14) =< aux(33)+aux(10)+aux(47) 0.06/0.50 s(6) =< it(16)+aux(41) 0.06/0.50 s(6) =< it(16)+aux(29) 0.06/0.50 0.06/0.50 with precondition: [B=3,V_x_0>=0,V_y_0>=0,V_m>=V_x_0] 0.06/0.50 0.06/0.50 * Chain [[13,14,15,16,17],18]: 2*it(13)+1*it(14)+1*it(15)+1*it(16)+1*s(5)+1*s(6)+0 0.06/0.50 Such that:aux(9) =< -V_m+V_y_0 0.06/0.50 aux(40) =< V_m 0.06/0.50 aux(29) =< V_m+V_x_0-V_y_0+1 0.06/0.50 aux(41) =< V_m-V_y_0 0.06/0.50 aux(41) =< V_x_0-V_y_0 0.06/0.50 aux(48) =< V_x_0+1 0.06/0.50 aux(49) =< V_y_0+1 0.06/0.50 it(13) =< aux(48) 0.06/0.50 it(14) =< aux(48) 0.06/0.50 it(15) =< aux(48) 0.06/0.50 aux(31) =< aux(40)+1 0.06/0.50 aux(15) =< aux(40) 0.06/0.50 aux(14) =< it(13)*aux(40) 0.06/0.50 it(14) =< aux(48)+aux(9) 0.06/0.50 s(5) =< it(13)*aux(40) 0.06/0.50 aux(16) =< it(13)*aux(15) 0.06/0.50 aux(10) =< aux(14) 0.06/0.50 aux(10) =< aux(16) 0.06/0.50 aux(33) =< it(13)*aux(31) 0.06/0.50 s(6) =< it(13)*aux(31) 0.06/0.50 it(15) =< aux(33)+aux(10)+aux(49) 0.06/0.50 it(16) =< aux(33)+aux(10)+aux(49) 0.06/0.50 it(14) =< aux(33)+aux(10)+aux(49) 0.06/0.50 s(6) =< it(16)+aux(41) 0.06/0.50 s(6) =< it(16)+aux(29) 0.06/0.50 0.06/0.50 with precondition: [B=3,V_x_0>=0,V_y_0>=0,V_m>=V_x_0] 0.06/0.50 0.06/0.50 * Chain [19]: 0 0.06/0.50 with precondition: [B=3,0>=V_x_0+1,V_y_0+1>=0,V_m>=V_x_0] 0.06/0.50 0.06/0.50 0.06/0.50 #### Cost of chains of eval_rank1_bb0_in(V_m,B): 0.06/0.50 * Chain [21]: 0 0.06/0.50 with precondition: [0>=V_m+1] 0.06/0.50 0.06/0.50 * Chain [20]: 4*s(50)+2*s(51)+2*s(52)+2*s(56)+1*s(60)+2*s(61)+1*s(62)+0 0.06/0.50 Such that:s(49) =< 1 0.06/0.50 s(48) =< V_m+1 0.06/0.50 aux(55) =< V_m 0.06/0.50 aux(56) =< 2*V_m+1 0.06/0.50 s(50) =< s(48) 0.06/0.50 s(51) =< s(48) 0.06/0.50 s(52) =< s(48) 0.06/0.50 s(53) =< aux(55)+1 0.06/0.50 s(54) =< aux(55) 0.06/0.50 s(55) =< s(50)*aux(55) 0.06/0.50 s(51) =< s(48) 0.06/0.50 s(56) =< s(50)*aux(55) 0.06/0.50 s(57) =< s(50)*s(54) 0.06/0.50 s(58) =< s(55) 0.06/0.50 s(58) =< s(57) 0.06/0.50 s(59) =< s(50)*s(53) 0.06/0.50 s(60) =< s(50)*s(53) 0.06/0.50 s(52) =< s(59)+s(58)+s(49) 0.06/0.50 s(61) =< s(59)+s(58)+s(49) 0.06/0.50 s(51) =< s(59)+s(58)+s(49) 0.06/0.50 s(60) =< s(61)+aux(55) 0.06/0.50 s(60) =< s(61)+aux(56) 0.06/0.50 s(62) =< s(50)*s(53) 0.06/0.50 s(62) =< s(61)+aux(56) 0.06/0.50 0.06/0.50 with precondition: [V_m>=0] 0.06/0.50 0.06/0.50 0.06/0.50 #### Cost of chains of eval_rank1_start(V_m,B): 0.06/0.50 * Chain [23]: 0 0.06/0.50 with precondition: [0>=V_m+1] 0.06/0.50 0.06/0.50 * Chain [22]: 4*s(67)+4*s(68)+2*s(73)+1*s(77)+2*s(78)+1*s(79)+0 0.06/0.50 Such that:s(63) =< 1 0.06/0.50 s(65) =< V_m 0.06/0.50 s(64) =< V_m+1 0.06/0.50 s(66) =< 2*V_m+1 0.06/0.50 s(67) =< s(64) 0.06/0.50 s(68) =< s(64) 0.06/0.50 s(70) =< s(65)+1 0.06/0.50 s(71) =< s(65) 0.06/0.50 s(72) =< s(67)*s(65) 0.06/0.50 s(73) =< s(67)*s(65) 0.06/0.50 s(74) =< s(67)*s(71) 0.06/0.50 s(75) =< s(72) 0.06/0.50 s(75) =< s(74) 0.06/0.50 s(76) =< s(67)*s(70) 0.06/0.50 s(77) =< s(67)*s(70) 0.06/0.50 s(68) =< s(76)+s(75)+s(63) 0.06/0.50 s(78) =< s(76)+s(75)+s(63) 0.06/0.50 s(77) =< s(78)+s(65) 0.06/0.50 s(77) =< s(78)+s(66) 0.06/0.50 s(79) =< s(67)*s(70) 0.06/0.50 s(79) =< s(78)+s(66) 0.06/0.50 0.06/0.50 with precondition: [V_m>=0] 0.06/0.50 0.06/0.50 0.06/0.50 Closed-form bounds of eval_rank1_start(V_m,B): 0.06/0.50 ------------------------------------- 0.06/0.50 * Chain [23] with precondition: [0>=V_m+1] 0.06/0.50 - Upper bound: 0 0.06/0.50 - Complexity: constant 0.06/0.50 * Chain [22] with precondition: [V_m>=0] 0.06/0.50 - Upper bound: (V_m+1)*(8*V_m)+2+(12*V_m+12) 0.06/0.50 - Complexity: n^2 0.06/0.50 0.06/0.50 ### Maximum cost of eval_rank1_start(V_m,B): nat(V_m)*8*nat(V_m+1)+2+nat(V_m+1)*12 0.06/0.50 Asymptotic class: n^2 0.06/0.50 * Total analysis performed in 384 ms. 0.06/0.50 0.51/0.61 EOF