0.03/0.31 WORST_CASE(?,O(n^2)) 0.03/0.31 0.03/0.31 Preprocessing Cost Relations 0.03/0.31 ===================================== 0.03/0.31 0.03/0.31 #### Computed strongly connected components 0.03/0.31 0. recursive : [eval_loops_bb3_in/4,eval_loops_bb4_in/4] 0.03/0.31 1. recursive : [eval_loops_bb1_in/5,eval_loops_bb2_in/5,eval_loops_bb3_in_loop_cont/6,eval_loops_bb5_in/5] 0.03/0.31 2. non_recursive : [eval_loops_stop/4] 0.03/0.31 3. non_recursive : [eval_loops_bb6_in/4] 0.03/0.31 4. non_recursive : [exit_location/1] 0.03/0.31 5. non_recursive : [eval_loops_bb1_in_loop_cont/5] 0.03/0.31 6. non_recursive : [eval_loops_2/4] 0.03/0.31 7. non_recursive : [eval_loops_1/4] 0.03/0.31 8. non_recursive : [eval_loops_0/4] 0.03/0.31 9. non_recursive : [eval_loops_bb0_in/4] 0.03/0.31 10. non_recursive : [eval_loops_start/4] 0.03/0.31 0.03/0.31 #### Obtained direct recursion through partial evaluation 0.03/0.31 0. SCC is partially evaluated into eval_loops_bb3_in/4 0.03/0.31 1. SCC is partially evaluated into eval_loops_bb1_in/5 0.03/0.31 2. SCC is completely evaluated into other SCCs 0.03/0.31 3. SCC is completely evaluated into other SCCs 0.03/0.31 4. SCC is completely evaluated into other SCCs 0.03/0.31 5. SCC is partially evaluated into eval_loops_bb1_in_loop_cont/5 0.03/0.31 6. SCC is partially evaluated into eval_loops_2/4 0.03/0.31 7. SCC is completely evaluated into other SCCs 0.03/0.31 8. SCC is completely evaluated into other SCCs 0.03/0.31 9. SCC is completely evaluated into other SCCs 0.03/0.31 10. SCC is partially evaluated into eval_loops_start/4 0.03/0.31 0.03/0.31 Control-Flow Refinement of Cost Relations 0.03/0.31 ===================================== 0.03/0.31 0.03/0.31 ### Specialization of cost equations eval_loops_bb3_in/4 0.03/0.31 * CE 13 is refined into CE [14] 0.03/0.31 * CE 12 is refined into CE [15] 0.03/0.31 * CE 11 is refined into CE [16] 0.03/0.31 0.03/0.31 0.03/0.31 ### Cost equations --> "Loop" of eval_loops_bb3_in/4 0.03/0.31 * CEs [16] --> Loop 14 0.03/0.31 * CEs [14] --> Loop 15 0.03/0.31 * CEs [15] --> Loop 16 0.03/0.31 0.03/0.31 ### Ranking functions of CR eval_loops_bb3_in(V_x_0,V_y_0,B,C) 0.03/0.31 * RF of phase [14]: [2*V_x_0-2*V_y_0-1] 0.03/0.31 0.03/0.31 #### Partial ranking functions of CR eval_loops_bb3_in(V_x_0,V_y_0,B,C) 0.03/0.31 * Partial RF of phase [14]: 0.03/0.31 - RF of loop [14:1]: 0.03/0.31 2*V_x_0-2*V_y_0-1 0.03/0.31 0.03/0.31 0.03/0.31 ### Specialization of cost equations eval_loops_bb1_in/5 0.03/0.31 * CE 7 is refined into CE [17] 0.03/0.31 * CE 6 is refined into CE [18,19] 0.03/0.31 * CE 8 is refined into CE [20] 0.03/0.31 * CE 5 is refined into CE [21] 0.03/0.31 * CE 4 is refined into CE [22] 0.03/0.31 0.03/0.31 0.03/0.31 ### Cost equations --> "Loop" of eval_loops_bb1_in/5 0.03/0.31 * CEs [21] --> Loop 17 0.03/0.31 * CEs [22] --> Loop 18 0.03/0.31 * CEs [18,19] --> Loop 19 0.03/0.31 * CEs [20] --> Loop 20 0.03/0.31 * CEs [17] --> Loop 21 0.03/0.31 0.03/0.31 ### Ranking functions of CR eval_loops_bb1_in(V_x_0,V_y_0,B,C,D) 0.03/0.31 * RF of phase [17]: [V_x_0-1] 0.03/0.31 * RF of phase [18]: [V_x_0+1] 0.03/0.31 0.03/0.31 #### Partial ranking functions of CR eval_loops_bb1_in(V_x_0,V_y_0,B,C,D) 0.03/0.31 * Partial RF of phase [17]: 0.03/0.31 - RF of loop [17:1]: 0.03/0.31 V_x_0-1 0.03/0.31 * Partial RF of phase [18]: 0.03/0.31 - RF of loop [18:1]: 0.03/0.31 V_x_0+1 0.03/0.31 0.03/0.31 0.03/0.31 ### Specialization of cost equations eval_loops_bb1_in_loop_cont/5 0.03/0.31 * CE 9 is refined into CE [23] 0.03/0.31 * CE 10 is refined into CE [24] 0.03/0.31 0.03/0.31 0.03/0.31 ### Cost equations --> "Loop" of eval_loops_bb1_in_loop_cont/5 0.03/0.31 * CEs [23] --> Loop 22 0.03/0.31 * CEs [24] --> Loop 23 0.03/0.31 0.03/0.31 ### Ranking functions of CR eval_loops_bb1_in_loop_cont(A,B,C,D,E) 0.03/0.31 0.03/0.31 #### Partial ranking functions of CR eval_loops_bb1_in_loop_cont(A,B,C,D,E) 0.03/0.31 0.03/0.31 0.03/0.31 ### Specialization of cost equations eval_loops_2/4 0.03/0.31 * CE 3 is refined into CE [25,26,27,28,29,30] 0.03/0.31 * CE 2 is refined into CE [31] 0.03/0.31 0.03/0.31 0.03/0.31 ### Cost equations --> "Loop" of eval_loops_2/4 0.03/0.31 * CEs [28] --> Loop 24 0.03/0.31 * CEs [27,29] --> Loop 25 0.03/0.31 * CEs [26] --> Loop 26 0.03/0.31 * CEs [31] --> Loop 27 0.03/0.31 * CEs [25,30] --> Loop 28 0.03/0.31 0.03/0.31 ### Ranking functions of CR eval_loops_2(V_n,V_x_0,V_y_0,B) 0.03/0.31 0.03/0.31 #### Partial ranking functions of CR eval_loops_2(V_n,V_x_0,V_y_0,B) 0.03/0.31 0.03/0.31 0.03/0.31 ### Specialization of cost equations eval_loops_start/4 0.03/0.31 * CE 1 is refined into CE [32,33,34,35,36] 0.03/0.31 0.03/0.31 0.03/0.31 ### Cost equations --> "Loop" of eval_loops_start/4 0.03/0.31 * CEs [36] --> Loop 29 0.03/0.31 * CEs [35] --> Loop 30 0.03/0.31 * CEs [34] --> Loop 31 0.03/0.31 * CEs [33] --> Loop 32 0.03/0.31 * CEs [32] --> Loop 33 0.03/0.31 0.03/0.31 ### Ranking functions of CR eval_loops_start(V_n,V_x_0,V_y_0,B) 0.03/0.31 0.03/0.31 #### Partial ranking functions of CR eval_loops_start(V_n,V_x_0,V_y_0,B) 0.03/0.31 0.03/0.31 0.03/0.31 Computing Bounds 0.03/0.31 ===================================== 0.03/0.31 0.03/0.31 #### Cost of chains of eval_loops_bb3_in(V_x_0,V_y_0,B,C): 0.03/0.31 * Chain [[14],16]: 1*it(14)+0 0.03/0.31 Such that:it(14) =< 2*V_x_0-2*V_y_0 0.03/0.31 0.03/0.31 with precondition: [B=2,V_y_0>=1,C>=2*V_y_0,C>=V_x_0,2*V_x_0>=C+2] 0.03/0.31 0.03/0.31 * Chain [[14],15]: 1*it(14)+0 0.03/0.31 Such that:it(14) =< 2*V_x_0-2*V_y_0 0.03/0.31 0.03/0.31 with precondition: [B=3,V_y_0>=1,V_x_0>=V_y_0+1] 0.03/0.31 0.03/0.31 * Chain [15]: 0 0.03/0.31 with precondition: [B=3,V_x_0>=2,V_y_0>=1] 0.03/0.31 0.03/0.31 0.03/0.31 #### Cost of chains of eval_loops_bb1_in(V_x_0,V_y_0,B,C,D): 0.03/0.31 * Chain [[18],21]: 1*it(18)+0 0.03/0.31 Such that:it(18) =< V_x_0+1 0.03/0.31 0.03/0.31 with precondition: [B=4,C+1=0,V_y_0=D,1>=V_x_0,V_x_0>=0] 0.03/0.31 0.03/0.31 * Chain [[18],20]: 1*it(18)+0 0.03/0.31 Such that:it(18) =< V_x_0+1 0.03/0.31 0.03/0.31 with precondition: [B=3,1>=V_x_0,V_x_0>=0] 0.03/0.31 0.03/0.31 * Chain [[17],[18],21]: 1*it(17)+1*it(18)+1*s(3)+0 0.03/0.31 Such that:it(18) =< 2 0.03/0.31 it(17) =< V_x_0 0.03/0.31 aux(1) =< 2*V_x_0 0.03/0.31 s(3) =< it(17)*aux(1) 0.03/0.31 0.03/0.31 with precondition: [B=4,C+1=0,D=2,V_x_0>=2] 0.03/0.31 0.03/0.31 * Chain [[17],[18],20]: 1*it(17)+1*it(18)+1*s(3)+0 0.03/0.31 Such that:it(18) =< 2 0.03/0.31 it(17) =< V_x_0 0.03/0.31 aux(1) =< 2*V_x_0 0.03/0.31 s(3) =< it(17)*aux(1) 0.03/0.31 0.03/0.31 with precondition: [B=3,V_x_0>=2] 0.03/0.31 0.03/0.31 * Chain [[17],20]: 1*it(17)+1*s(3)+0 0.03/0.31 Such that:it(17) =< V_x_0 0.03/0.31 aux(1) =< 2*V_x_0 0.03/0.31 s(3) =< it(17)*aux(1) 0.03/0.31 0.03/0.31 with precondition: [B=3,V_x_0>=2] 0.03/0.31 0.03/0.31 * Chain [[17],19]: 1*it(17)+1*s(3)+1*s(4)+0 0.03/0.31 Such that:it(17) =< V_x_0 0.03/0.31 aux(2) =< 2*V_x_0 0.03/0.31 it(17) =< aux(2) 0.03/0.31 s(4) =< aux(2) 0.03/0.31 s(3) =< it(17)*aux(2) 0.03/0.31 0.03/0.31 with precondition: [B=3,V_x_0>=3] 0.03/0.31 0.03/0.31 * Chain [20]: 0 0.03/0.31 with precondition: [B=3,V_x_0+1>=0] 0.03/0.31 0.03/0.31 * Chain [19]: 1*s(4)+0 0.03/0.31 Such that:s(4) =< 2*V_x_0 0.03/0.31 0.03/0.31 with precondition: [B=3,V_x_0>=2] 0.03/0.31 0.03/0.31 0.03/0.31 #### Cost of chains of eval_loops_bb1_in_loop_cont(A,B,C,D,E): 0.03/0.31 * Chain [23]: 0 0.03/0.31 with precondition: [A=3,B>=0] 0.03/0.31 0.03/0.31 * Chain [22]: 0 0.03/0.31 with precondition: [A=4,B>=0] 0.03/0.31 0.03/0.31 0.03/0.31 #### Cost of chains of eval_loops_2(V_n,V_x_0,V_y_0,B): 0.03/0.31 * Chain [28]: 2*s(13)+0 0.03/0.31 Such that:aux(5) =< V_n+1 0.03/0.31 s(13) =< aux(5) 0.03/0.31 0.03/0.31 with precondition: [1>=V_n,V_n>=0] 0.03/0.31 0.03/0.31 * Chain [27]: 0 0.03/0.31 with precondition: [0>=V_n+1] 0.03/0.31 0.03/0.31 * Chain [26]: 0 0.03/0.31 with precondition: [V_n>=0] 0.03/0.31 0.03/0.31 * Chain [25]: 2*s(15)+3*s(18)+1*s(19)+3*s(20)+0 0.03/0.31 Such that:aux(6) =< 2 0.03/0.31 aux(7) =< V_n 0.03/0.31 aux(8) =< 2*V_n 0.03/0.31 s(15) =< aux(6) 0.03/0.31 s(18) =< aux(7) 0.03/0.31 s(19) =< aux(8) 0.03/0.31 s(20) =< s(18)*aux(8) 0.03/0.31 0.03/0.31 with precondition: [V_n>=2] 0.03/0.31 0.03/0.31 * Chain [24]: 1*s(25)+1*s(27)+1*s(28)+0 0.03/0.31 Such that:s(25) =< V_n 0.03/0.31 s(26) =< 2*V_n 0.03/0.31 s(25) =< s(26) 0.03/0.31 s(27) =< s(26) 0.03/0.31 s(28) =< s(25)*s(26) 0.03/0.31 0.03/0.31 with precondition: [V_n>=3] 0.03/0.31 0.03/0.31 0.03/0.31 #### Cost of chains of eval_loops_start(V_n,V_x_0,V_y_0,B): 0.03/0.31 * Chain [33]: 2*s(30)+0 0.03/0.31 Such that:s(29) =< V_n+1 0.03/0.31 s(30) =< s(29) 0.03/0.31 0.03/0.31 with precondition: [1>=V_n,V_n>=0] 0.03/0.31 0.03/0.31 * Chain [32]: 0 0.03/0.31 with precondition: [0>=V_n+1] 0.03/0.31 0.03/0.31 * Chain [31]: 0 0.03/0.31 with precondition: [V_n>=0] 0.03/0.31 0.03/0.31 * Chain [30]: 2*s(34)+3*s(35)+1*s(36)+3*s(37)+0 0.03/0.31 Such that:s(31) =< 2 0.03/0.31 s(32) =< V_n 0.03/0.31 s(33) =< 2*V_n 0.03/0.31 s(34) =< s(31) 0.03/0.31 s(35) =< s(32) 0.03/0.31 s(36) =< s(33) 0.03/0.31 s(37) =< s(35)*s(33) 0.03/0.31 0.03/0.31 with precondition: [V_n>=2] 0.03/0.31 0.03/0.31 * Chain [29]: 1*s(38)+1*s(40)+1*s(41)+0 0.03/0.31 Such that:s(38) =< V_n 0.03/0.31 s(39) =< 2*V_n 0.03/0.31 s(38) =< s(39) 0.03/0.31 s(40) =< s(39) 0.03/0.31 s(41) =< s(38)*s(39) 0.03/0.31 0.03/0.31 with precondition: [V_n>=3] 0.03/0.31 0.03/0.31 0.03/0.31 Closed-form bounds of eval_loops_start(V_n,V_x_0,V_y_0,B): 0.03/0.31 ------------------------------------- 0.03/0.31 * Chain [33] with precondition: [1>=V_n,V_n>=0] 0.03/0.31 - Upper bound: 2*V_n+2 0.03/0.31 - Complexity: n 0.03/0.31 * Chain [32] with precondition: [0>=V_n+1] 0.03/0.31 - Upper bound: 0 0.03/0.31 - Complexity: constant 0.03/0.31 * Chain [31] with precondition: [V_n>=0] 0.03/0.31 - Upper bound: 0 0.03/0.31 - Complexity: constant 0.03/0.31 * Chain [30] with precondition: [V_n>=2] 0.03/0.31 - Upper bound: 3*V_n+4+3*V_n*(2*V_n)+2*V_n 0.03/0.31 - Complexity: n^2 0.03/0.31 * Chain [29] with precondition: [V_n>=3] 0.03/0.31 - Upper bound: 2*V_n*V_n+V_n+2*V_n 0.03/0.31 - Complexity: n^2 0.03/0.31 0.03/0.31 ### Maximum cost of eval_loops_start(V_n,V_x_0,V_y_0,B): max([nat(V_n+1)*2,nat(2*V_n)*nat(V_n)+nat(V_n)+nat(2*V_n)+(nat(V_n)*2+4+nat(V_n)*2*nat(2*V_n))]) 0.03/0.31 Asymptotic class: n^2 0.03/0.31 * Total analysis performed in 238 ms. 0.03/0.31 0.03/0.41 EOF