0.05/0.23 WORST_CASE(?,O(n^1)) 0.05/0.23 0.05/0.23 Preprocessing Cost Relations 0.05/0.23 ===================================== 0.05/0.23 0.05/0.23 #### Computed strongly connected components 0.05/0.23 0. recursive : [eval_Loopus2015_ex2_bb2_in/4,eval_Loopus2015_ex2_bb3_in/4] 0.05/0.23 1. recursive : [eval_Loopus2015_ex2_bb4_in/2,eval_Loopus2015_ex2_bb5_in/2] 0.05/0.23 2. non_recursive : [eval_Loopus2015_ex2_stop/1] 0.05/0.23 3. non_recursive : [eval_Loopus2015_ex2_bb6_in/1] 0.05/0.23 4. non_recursive : [eval_Loopus2015_ex2_bb4_in_loop_cont/2] 0.05/0.23 5. non_recursive : [eval_Loopus2015_ex2_bb2_in_loop_cont/3] 0.05/0.23 6. non_recursive : [eval_Loopus2015_ex2_1/5] 0.05/0.23 7. non_recursive : [eval_Loopus2015_ex2_0/4] 0.05/0.23 8. non_recursive : [eval_Loopus2015_ex2_bb1_in/4] 0.05/0.23 9. non_recursive : [eval_Loopus2015_ex2_bb0_in/4] 0.05/0.24 10. non_recursive : [eval_Loopus2015_ex2_start/4] 0.05/0.24 0.05/0.24 #### Obtained direct recursion through partial evaluation 0.05/0.24 0. SCC is partially evaluated into eval_Loopus2015_ex2_bb2_in/4 0.05/0.24 1. SCC is partially evaluated into eval_Loopus2015_ex2_bb4_in/2 0.05/0.24 2. SCC is completely evaluated into other SCCs 0.05/0.24 3. SCC is completely evaluated into other SCCs 0.05/0.24 4. SCC is completely evaluated into other SCCs 0.05/0.24 5. SCC is partially evaluated into eval_Loopus2015_ex2_bb2_in_loop_cont/3 0.05/0.24 6. SCC is partially evaluated into eval_Loopus2015_ex2_1/5 0.05/0.24 7. SCC is completely evaluated into other SCCs 0.05/0.24 8. SCC is completely evaluated into other SCCs 0.05/0.24 9. SCC is partially evaluated into eval_Loopus2015_ex2_bb0_in/4 0.05/0.24 10. SCC is partially evaluated into eval_Loopus2015_ex2_start/4 0.05/0.24 0.05/0.24 Control-Flow Refinement of Cost Relations 0.05/0.24 ===================================== 0.05/0.24 0.05/0.24 ### Specialization of cost equations eval_Loopus2015_ex2_bb2_in/4 0.05/0.24 * CE 9 is refined into CE [13] 0.05/0.24 * CE 8 is refined into CE [14] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_Loopus2015_ex2_bb2_in/4 0.05/0.24 * CEs [14] --> Loop 13 0.05/0.24 * CEs [13] --> Loop 14 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_Loopus2015_ex2_bb2_in(V_x_1,V_y_0,B,C) 0.05/0.24 * RF of phase [13]: [V_y_0] 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_Loopus2015_ex2_bb2_in(V_x_1,V_y_0,B,C) 0.05/0.24 * Partial RF of phase [13]: 0.05/0.24 - RF of loop [13:1]: 0.05/0.24 V_y_0 0.05/0.24 0.05/0.24 0.05/0.24 ### Specialization of cost equations eval_Loopus2015_ex2_bb4_in/2 0.05/0.24 * CE 12 is refined into CE [15] 0.05/0.24 * CE 11 is refined into CE [16] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_Loopus2015_ex2_bb4_in/2 0.05/0.24 * CEs [16] --> Loop 15 0.05/0.24 * CEs [15] --> Loop 16 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_Loopus2015_ex2_bb4_in(V_z_0,B) 0.05/0.24 * RF of phase [15]: [V_z_0] 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_Loopus2015_ex2_bb4_in(V_z_0,B) 0.05/0.24 * Partial RF of phase [15]: 0.05/0.24 - RF of loop [15:1]: 0.05/0.24 V_z_0 0.05/0.24 0.05/0.24 0.05/0.24 ### Specialization of cost equations eval_Loopus2015_ex2_bb2_in_loop_cont/3 0.05/0.24 * CE 10 is refined into CE [17,18] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_Loopus2015_ex2_bb2_in_loop_cont/3 0.05/0.24 * CEs [18] --> Loop 17 0.05/0.24 * CEs [17] --> Loop 18 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_Loopus2015_ex2_bb2_in_loop_cont(A,B,C) 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_Loopus2015_ex2_bb2_in_loop_cont(A,B,C) 0.05/0.24 0.05/0.24 0.05/0.24 ### Specialization of cost equations eval_Loopus2015_ex2_1/5 0.05/0.24 * CE 6 is refined into CE [19,20,21] 0.05/0.24 * CE 7 is refined into CE [22,23,24] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_Loopus2015_ex2_1/5 0.05/0.24 * CEs [21] --> Loop 19 0.05/0.24 * CEs [24] --> Loop 20 0.05/0.24 * CEs [20] --> Loop 21 0.05/0.24 * CEs [23] --> Loop 22 0.05/0.24 * CEs [22] --> Loop 23 0.05/0.24 * CEs [19] --> Loop 24 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_Loopus2015_ex2_1(V_n,V_m1,V_m2,V_3,B) 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_Loopus2015_ex2_1(V_n,V_m1,V_m2,V_3,B) 0.05/0.24 0.05/0.24 0.05/0.24 ### Specialization of cost equations eval_Loopus2015_ex2_bb0_in/4 0.05/0.24 * CE 5 is refined into CE [25,26,27,28,29,30] 0.05/0.24 * CE 4 is refined into CE [31] 0.05/0.24 * CE 3 is refined into CE [32] 0.05/0.24 * CE 2 is refined into CE [33] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_Loopus2015_ex2_bb0_in/4 0.05/0.24 * CEs [29,30] --> Loop 25 0.05/0.24 * CEs [31] --> Loop 26 0.05/0.24 * CEs [32] --> Loop 27 0.05/0.24 * CEs [33] --> Loop 28 0.05/0.24 * CEs [28] --> Loop 29 0.05/0.24 * CEs [27] --> Loop 30 0.05/0.24 * CEs [26] --> Loop 31 0.05/0.24 * CEs [25] --> Loop 32 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_Loopus2015_ex2_bb0_in(V_n,V_m1,V_m2,B) 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_Loopus2015_ex2_bb0_in(V_n,V_m1,V_m2,B) 0.05/0.24 0.05/0.24 0.05/0.24 ### Specialization of cost equations eval_Loopus2015_ex2_start/4 0.05/0.24 * CE 1 is refined into CE [34,35,36,37,38,39,40,41] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_Loopus2015_ex2_start/4 0.05/0.24 * CEs [41] --> Loop 33 0.05/0.24 * CEs [40] --> Loop 34 0.05/0.24 * CEs [39] --> Loop 35 0.05/0.24 * CEs [38] --> Loop 36 0.05/0.24 * CEs [37] --> Loop 37 0.05/0.24 * CEs [36] --> Loop 38 0.05/0.24 * CEs [35] --> Loop 39 0.05/0.24 * CEs [34] --> Loop 40 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_Loopus2015_ex2_start(V_n,V_m1,V_m2,B) 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_Loopus2015_ex2_start(V_n,V_m1,V_m2,B) 0.05/0.24 0.05/0.24 0.05/0.24 Computing Bounds 0.05/0.24 ===================================== 0.05/0.24 0.05/0.24 #### Cost of chains of eval_Loopus2015_ex2_bb2_in(V_x_1,V_y_0,B,C): 0.05/0.24 * Chain [[13],14]: 1*it(13)+0 0.05/0.24 Such that:it(13) =< -V_x_1/2+C/2 0.05/0.24 0.05/0.24 with precondition: [B=3,V_x_1+2*V_y_0=C,V_x_1>=0,V_y_0>=1] 0.05/0.24 0.05/0.24 * Chain [14]: 0 0.05/0.24 with precondition: [V_y_0=0,B=3,V_x_1=C,V_x_1>=0] 0.05/0.24 0.05/0.24 0.05/0.24 #### Cost of chains of eval_Loopus2015_ex2_bb4_in(V_z_0,B): 0.05/0.24 * Chain [[15],16]: 1*it(15)+0 0.05/0.24 Such that:it(15) =< V_z_0 0.05/0.24 0.05/0.24 with precondition: [B=2,V_z_0>=1] 0.05/0.24 0.05/0.24 * Chain [16]: 0 0.05/0.24 with precondition: [B=2,0>=V_z_0] 0.05/0.24 0.05/0.24 0.05/0.24 #### Cost of chains of eval_Loopus2015_ex2_bb2_in_loop_cont(A,B,C): 0.05/0.24 * Chain [18]: 0 0.05/0.24 with precondition: [A=3,0>=B] 0.05/0.24 0.05/0.24 * Chain [17]: 1*s(1)+0 0.05/0.24 Such that:s(1) =< B 0.05/0.24 0.05/0.24 with precondition: [A=3,B>=1] 0.05/0.24 0.05/0.24 0.05/0.24 #### Cost of chains of eval_Loopus2015_ex2_1(V_n,V_m1,V_m2,V_3,B): 0.05/0.24 * Chain [24]: 0 0.05/0.24 with precondition: [V_n=0,V_m1=0,V_m2>=0,V_3>=1] 0.05/0.24 0.05/0.24 * Chain [23]: 0 0.05/0.24 with precondition: [V_n=0,V_m2=0,0>=V_3,V_m1>=0] 0.05/0.24 0.05/0.24 * Chain [22]: 1*s(2)+0 0.05/0.24 Such that:s(2) =< V_m2 0.05/0.24 0.05/0.24 with precondition: [V_n=0,0>=V_3,V_m1>=0,V_m2>=1] 0.05/0.24 0.05/0.24 * Chain [21]: 1*s(3)+0 0.05/0.24 Such that:s(3) =< V_m1 0.05/0.24 0.05/0.24 with precondition: [V_n=0,V_m1>=1,V_m2>=0,V_3>=1] 0.05/0.24 0.05/0.24 * Chain [20]: 1*s(4)+1*s(5)+0 0.05/0.24 Such that:s(4) =< V_n 0.05/0.24 s(5) =< 2*V_n+V_m2 0.05/0.24 0.05/0.24 with precondition: [0>=V_3,V_n>=1,V_m1>=0,V_m2>=0] 0.05/0.24 0.05/0.24 * Chain [19]: 1*s(6)+1*s(7)+0 0.05/0.24 Such that:s(6) =< V_n 0.05/0.24 s(7) =< 2*V_n+V_m1 0.05/0.24 0.05/0.24 with precondition: [V_n>=1,V_m1>=0,V_m2>=0,V_3>=1] 0.05/0.24 0.05/0.24 0.05/0.24 #### Cost of chains of eval_Loopus2015_ex2_bb0_in(V_n,V_m1,V_m2,B): 0.05/0.24 * Chain [32]: 0 0.05/0.24 with precondition: [V_n=0,V_m1=0,V_m2>=0] 0.05/0.24 0.05/0.24 * Chain [31]: 0 0.05/0.24 with precondition: [V_n=0,V_m2=0,V_m1>=0] 0.05/0.24 0.05/0.24 * Chain [30]: 1*s(8)+0 0.05/0.24 Such that:s(8) =< V_m2 0.05/0.24 0.05/0.24 with precondition: [V_n=0,V_m1>=0,V_m2>=1] 0.05/0.24 0.05/0.24 * Chain [29]: 1*s(9)+0 0.05/0.24 Such that:s(9) =< V_m1 0.05/0.24 0.05/0.24 with precondition: [V_n=0,V_m1>=1,V_m2>=0] 0.05/0.24 0.05/0.24 * Chain [28]: 0 0.05/0.24 with precondition: [0>=V_n+1] 0.05/0.24 0.05/0.24 * Chain [27]: 0 0.05/0.24 with precondition: [0>=V_m1+1] 0.05/0.24 0.05/0.24 * Chain [26]: 0 0.05/0.24 with precondition: [0>=V_m2+1] 0.05/0.24 0.05/0.24 * Chain [25]: 2*s(10)+1*s(11)+1*s(13)+0 0.05/0.24 Such that:s(13) =< 2*V_n+V_m1 0.05/0.24 s(11) =< 2*V_n+V_m2 0.05/0.24 aux(1) =< V_n 0.05/0.24 s(10) =< aux(1) 0.05/0.24 0.05/0.24 with precondition: [V_n>=1,V_m1>=0,V_m2>=0] 0.05/0.24 0.05/0.24 0.05/0.24 #### Cost of chains of eval_Loopus2015_ex2_start(V_n,V_m1,V_m2,B): 0.05/0.24 * Chain [40]: 0 0.05/0.24 with precondition: [V_n=0,V_m1=0,V_m2>=0] 0.05/0.24 0.05/0.24 * Chain [39]: 0 0.05/0.24 with precondition: [V_n=0,V_m2=0,V_m1>=0] 0.05/0.24 0.05/0.24 * Chain [38]: 1*s(14)+0 0.05/0.24 Such that:s(14) =< V_m2 0.05/0.24 0.05/0.24 with precondition: [V_n=0,V_m1>=0,V_m2>=1] 0.05/0.24 0.05/0.24 * Chain [37]: 1*s(15)+0 0.05/0.24 Such that:s(15) =< V_m1 0.05/0.24 0.05/0.24 with precondition: [V_n=0,V_m1>=1,V_m2>=0] 0.05/0.24 0.05/0.24 * Chain [36]: 0 0.05/0.24 with precondition: [0>=V_n+1] 0.05/0.24 0.05/0.24 * Chain [35]: 0 0.05/0.24 with precondition: [0>=V_m1+1] 0.05/0.24 0.05/0.24 * Chain [34]: 0 0.05/0.24 with precondition: [0>=V_m2+1] 0.05/0.24 0.05/0.24 * Chain [33]: 1*s(16)+1*s(17)+2*s(19)+0 0.05/0.24 Such that:s(18) =< V_n 0.05/0.24 s(16) =< 2*V_n+V_m1 0.05/0.24 s(17) =< 2*V_n+V_m2 0.05/0.24 s(19) =< s(18) 0.05/0.24 0.05/0.24 with precondition: [V_n>=1,V_m1>=0,V_m2>=0] 0.05/0.24 0.05/0.24 0.05/0.24 Closed-form bounds of eval_Loopus2015_ex2_start(V_n,V_m1,V_m2,B): 0.05/0.24 ------------------------------------- 0.05/0.24 * Chain [40] with precondition: [V_n=0,V_m1=0,V_m2>=0] 0.05/0.24 - Upper bound: 0 0.05/0.24 - Complexity: constant 0.05/0.24 * Chain [39] with precondition: [V_n=0,V_m2=0,V_m1>=0] 0.05/0.24 - Upper bound: 0 0.05/0.24 - Complexity: constant 0.05/0.24 * Chain [38] with precondition: [V_n=0,V_m1>=0,V_m2>=1] 0.05/0.24 - Upper bound: V_m2 0.05/0.24 - Complexity: n 0.05/0.24 * Chain [37] with precondition: [V_n=0,V_m1>=1,V_m2>=0] 0.05/0.24 - Upper bound: V_m1 0.05/0.24 - Complexity: n 0.05/0.24 * Chain [36] with precondition: [0>=V_n+1] 0.05/0.24 - Upper bound: 0 0.05/0.24 - Complexity: constant 0.05/0.24 * Chain [35] with precondition: [0>=V_m1+1] 0.05/0.24 - Upper bound: 0 0.05/0.24 - Complexity: constant 0.05/0.24 * Chain [34] with precondition: [0>=V_m2+1] 0.05/0.24 - Upper bound: 0 0.05/0.24 - Complexity: constant 0.05/0.24 * Chain [33] with precondition: [V_n>=1,V_m1>=0,V_m2>=0] 0.05/0.24 - Upper bound: 6*V_n+V_m1+V_m2 0.05/0.24 - Complexity: n 0.05/0.24 0.05/0.24 ### Maximum cost of eval_Loopus2015_ex2_start(V_n,V_m1,V_m2,B): max([nat(V_m1),nat(V_m2),nat(V_n)*2+nat(2*V_n+V_m1)+nat(2*V_n+V_m2)]) 0.05/0.24 Asymptotic class: n 0.05/0.24 * Total analysis performed in 161 ms. 0.05/0.24 0.05/0.34 EOF