0.04/0.30 WORST_CASE(?,O(n^2)) 0.04/0.30 0.04/0.30 Preprocessing Cost Relations 0.04/0.30 ===================================== 0.04/0.30 0.04/0.30 #### Computed strongly connected components 0.04/0.30 0. recursive : [eval_abc_bb2_in/4,eval_abc_bb3_in/4] 0.04/0.30 1. recursive : [eval_abc_8/8,eval_abc_9/8,eval_abc_bb1_in/8,eval_abc_bb2_in_loop_cont/9,eval_abc_bb4_in/8] 0.04/0.30 2. non_recursive : [eval_abc_stop/5] 0.04/0.30 3. non_recursive : [eval_abc_bb5_in/5] 0.04/0.30 4. non_recursive : [exit_location/1] 0.04/0.30 5. non_recursive : [eval_abc_bb1_in_loop_cont/6] 0.04/0.30 6. non_recursive : [eval_abc_4/5] 0.04/0.30 7. non_recursive : [eval_abc_3/5] 0.04/0.30 8. non_recursive : [eval_abc_2/5] 0.04/0.30 9. non_recursive : [eval_abc_1/5] 0.04/0.30 10. non_recursive : [eval_abc_0/5] 0.04/0.30 11. non_recursive : [eval_abc_bb0_in/5] 0.04/0.30 12. non_recursive : [eval_abc_start/5] 0.04/0.30 0.04/0.30 #### Obtained direct recursion through partial evaluation 0.04/0.30 0. SCC is partially evaluated into eval_abc_bb2_in/4 0.04/0.30 1. SCC is partially evaluated into eval_abc_bb1_in/8 0.04/0.30 2. SCC is completely evaluated into other SCCs 0.04/0.30 3. SCC is completely evaluated into other SCCs 0.04/0.30 4. SCC is completely evaluated into other SCCs 0.04/0.30 5. SCC is partially evaluated into eval_abc_bb1_in_loop_cont/6 0.04/0.30 6. SCC is partially evaluated into eval_abc_4/5 0.04/0.30 7. SCC is completely evaluated into other SCCs 0.04/0.30 8. SCC is completely evaluated into other SCCs 0.04/0.30 9. SCC is completely evaluated into other SCCs 0.04/0.30 10. SCC is completely evaluated into other SCCs 0.04/0.30 11. SCC is completely evaluated into other SCCs 0.04/0.30 12. SCC is partially evaluated into eval_abc_start/5 0.04/0.30 0.04/0.30 Control-Flow Refinement of Cost Relations 0.04/0.30 ===================================== 0.04/0.30 0.04/0.30 ### Specialization of cost equations eval_abc_bb2_in/4 0.04/0.30 * CE 11 is refined into CE [12] 0.04/0.30 * CE 10 is refined into CE [13] 0.04/0.30 * CE 9 is refined into CE [14] 0.04/0.30 0.04/0.30 0.04/0.30 ### Cost equations --> "Loop" of eval_abc_bb2_in/4 0.04/0.30 * CEs [14] --> Loop 12 0.04/0.30 * CEs [12] --> Loop 13 0.04/0.30 * CEs [13] --> Loop 14 0.04/0.30 0.04/0.30 ### Ranking functions of CR eval_abc_bb2_in(V_j_0,V_n,B,C) 0.04/0.30 * RF of phase [12]: [-V_j_0+V_n+1] 0.04/0.30 0.04/0.30 #### Partial ranking functions of CR eval_abc_bb2_in(V_j_0,V_n,B,C) 0.04/0.30 * Partial RF of phase [12]: 0.04/0.30 - RF of loop [12:1]: 0.04/0.30 -V_j_0+V_n+1 0.04/0.30 0.04/0.30 0.04/0.30 ### Specialization of cost equations eval_abc_bb1_in/8 0.04/0.30 * CE 5 is refined into CE [15] 0.04/0.30 * CE 3 is refined into CE [16,17] 0.04/0.30 * CE 6 is refined into CE [18] 0.04/0.30 * CE 4 is refined into CE [19] 0.04/0.30 0.04/0.30 0.04/0.30 ### Cost equations --> "Loop" of eval_abc_bb1_in/8 0.04/0.30 * CEs [19] --> Loop 15 0.04/0.30 * CEs [15] --> Loop 16 0.04/0.30 * CEs [16,17] --> Loop 17 0.04/0.30 * CEs [18] --> Loop 18 0.04/0.30 0.04/0.30 ### Ranking functions of CR eval_abc_bb1_in(V_3,V_i_0,V_j_0,V_n,B,C,D,E) 0.04/0.30 * RF of phase [15]: [-V_i_0+V_n+1] 0.04/0.30 0.04/0.30 #### Partial ranking functions of CR eval_abc_bb1_in(V_3,V_i_0,V_j_0,V_n,B,C,D,E) 0.04/0.30 * Partial RF of phase [15]: 0.04/0.30 - RF of loop [15:1]: 0.04/0.30 -V_i_0+V_n+1 0.04/0.30 0.04/0.30 0.04/0.30 ### Specialization of cost equations eval_abc_bb1_in_loop_cont/6 0.04/0.30 * CE 7 is refined into CE [20] 0.04/0.30 * CE 8 is refined into CE [21] 0.04/0.30 0.04/0.30 0.04/0.30 ### Cost equations --> "Loop" of eval_abc_bb1_in_loop_cont/6 0.04/0.30 * CEs [20] --> Loop 19 0.04/0.30 * CEs [21] --> Loop 20 0.04/0.30 0.04/0.30 ### Ranking functions of CR eval_abc_bb1_in_loop_cont(A,B,C,D,E,F) 0.04/0.30 0.04/0.30 #### Partial ranking functions of CR eval_abc_bb1_in_loop_cont(A,B,C,D,E,F) 0.04/0.30 0.04/0.30 0.04/0.30 ### Specialization of cost equations eval_abc_4/5 0.04/0.30 * CE 2 is refined into CE [22,23,24,25,26] 0.04/0.30 0.04/0.30 0.04/0.30 ### Cost equations --> "Loop" of eval_abc_4/5 0.04/0.30 * CEs [24] --> Loop 21 0.04/0.30 * CEs [23,26] --> Loop 22 0.04/0.30 * CEs [25] --> Loop 23 0.04/0.30 * CEs [22] --> Loop 24 0.04/0.30 0.04/0.30 ### Ranking functions of CR eval_abc_4(V_3,V_i_0,V_j_0,V_n,B) 0.04/0.30 0.04/0.30 #### Partial ranking functions of CR eval_abc_4(V_3,V_i_0,V_j_0,V_n,B) 0.04/0.30 0.04/0.30 0.04/0.30 ### Specialization of cost equations eval_abc_start/5 0.04/0.30 * CE 1 is refined into CE [27,28,29,30] 0.04/0.30 0.04/0.30 0.04/0.30 ### Cost equations --> "Loop" of eval_abc_start/5 0.04/0.30 * CEs [30] --> Loop 25 0.04/0.30 * CEs [29] --> Loop 26 0.04/0.30 * CEs [28] --> Loop 27 0.04/0.30 * CEs [27] --> Loop 28 0.04/0.30 0.04/0.30 ### Ranking functions of CR eval_abc_start(V_3,V_i_0,V_j_0,V_n,B) 0.04/0.30 0.04/0.30 #### Partial ranking functions of CR eval_abc_start(V_3,V_i_0,V_j_0,V_n,B) 0.04/0.30 0.04/0.30 0.04/0.30 Computing Bounds 0.04/0.30 ===================================== 0.04/0.30 0.04/0.30 #### Cost of chains of eval_abc_bb2_in(V_j_0,V_n,B,C): 0.04/0.30 * Chain [[12],14]: 1*it(12)+0 0.04/0.30 Such that:it(12) =< -V_j_0+C 0.04/0.30 0.04/0.30 with precondition: [B=2,V_n+1=C,V_j_0>=1,V_n>=V_j_0] 0.04/0.30 0.04/0.30 * Chain [[12],13]: 1*it(12)+0 0.04/0.30 Such that:it(12) =< -V_j_0+V_n+1 0.04/0.30 0.04/0.30 with precondition: [B=3,V_j_0>=1,V_n>=V_j_0] 0.04/0.30 0.04/0.30 * Chain [13]: 0 0.04/0.30 with precondition: [B=3,V_j_0>=1,V_n>=1] 0.04/0.30 0.04/0.30 0.04/0.30 #### Cost of chains of eval_abc_bb1_in(V_3,V_i_0,V_j_0,V_n,B,C,D,E): 0.04/0.30 * Chain [[15],18]: 1*it(15)+1*s(3)+0 0.04/0.30 Such that:it(15) =< -V_i_0+V_n+1 0.04/0.30 aux(1) =< V_n+1 0.04/0.30 s(3) =< it(15)*aux(1) 0.04/0.30 0.04/0.30 with precondition: [B=3,V_i_0>=1,V_n>=V_i_0] 0.04/0.30 0.04/0.30 * Chain [[15],17]: 1*it(15)+1*s(3)+1*s(4)+0 0.04/0.30 Such that:it(15) =< -V_i_0+V_n 0.04/0.30 s(4) =< V_n 0.04/0.30 aux(1) =< V_n+1 0.04/0.30 s(3) =< it(15)*aux(1) 0.04/0.30 0.04/0.30 with precondition: [B=3,V_i_0>=1,V_n>=V_i_0+1] 0.04/0.30 0.04/0.30 * Chain [[15],16]: 1*it(15)+1*s(3)+0 0.04/0.30 Such that:it(15) =< -V_i_0+C 0.04/0.30 aux(1) =< C 0.04/0.30 s(3) =< it(15)*aux(1) 0.04/0.30 0.04/0.30 with precondition: [B=4,V_n+1=C,V_n+1=D,V_n+1=E,V_i_0>=1,V_n>=V_i_0] 0.04/0.30 0.04/0.30 * Chain [18]: 0 0.04/0.30 with precondition: [B=3,V_i_0>=1] 0.04/0.30 0.04/0.30 * Chain [17]: 1*s(4)+0 0.04/0.30 Such that:s(4) =< V_n 0.04/0.30 0.04/0.30 with precondition: [B=3,V_i_0>=1,V_n>=V_i_0] 0.04/0.30 0.04/0.30 * Chain [16]: 0 0.04/0.30 with precondition: [B=4,C=V_3,E=V_j_0,V_i_0=D,V_i_0>=1,V_i_0>=V_n+1] 0.04/0.30 0.04/0.30 0.04/0.30 #### Cost of chains of eval_abc_bb1_in_loop_cont(A,B,C,D,E,F): 0.04/0.30 * Chain [20]: 0 0.04/0.30 with precondition: [A=3] 0.04/0.30 0.04/0.30 * Chain [19]: 0 0.04/0.30 with precondition: [A=4] 0.04/0.30 0.04/0.30 0.04/0.30 #### Cost of chains of eval_abc_4(V_3,V_i_0,V_j_0,V_n,B): 0.04/0.30 * Chain [24]: 0 0.04/0.30 with precondition: [] 0.04/0.30 0.04/0.30 * Chain [23]: 0 0.04/0.30 with precondition: [0>=V_n] 0.04/0.30 0.04/0.30 * Chain [22]: 3*s(9)+2*s(12)+0 0.04/0.30 Such that:aux(3) =< V_n 0.04/0.30 aux(4) =< V_n+1 0.04/0.30 s(9) =< aux(3) 0.04/0.30 s(12) =< s(9)*aux(4) 0.04/0.30 0.04/0.30 with precondition: [V_n>=1] 0.04/0.30 0.04/0.30 * Chain [21]: 2*s(16)+1*s(19)+0 0.04/0.30 Such that:s(18) =< V_n+1 0.04/0.30 aux(5) =< V_n 0.04/0.30 s(16) =< aux(5) 0.04/0.30 s(19) =< s(16)*s(18) 0.04/0.30 0.04/0.30 with precondition: [V_n>=2] 0.04/0.30 0.04/0.30 0.04/0.30 #### Cost of chains of eval_abc_start(V_3,V_i_0,V_j_0,V_n,B): 0.04/0.30 * Chain [28]: 0 0.04/0.30 with precondition: [] 0.04/0.30 0.04/0.30 * Chain [27]: 0 0.04/0.30 with precondition: [0>=V_n] 0.04/0.30 0.04/0.30 * Chain [26]: 3*s(22)+2*s(23)+0 0.04/0.30 Such that:s(20) =< V_n 0.04/0.30 s(21) =< V_n+1 0.04/0.30 s(22) =< s(20) 0.04/0.30 s(23) =< s(22)*s(21) 0.04/0.30 0.04/0.30 with precondition: [V_n>=1] 0.04/0.30 0.04/0.30 * Chain [25]: 2*s(26)+1*s(27)+0 0.04/0.30 Such that:s(25) =< V_n 0.04/0.30 s(24) =< V_n+1 0.04/0.30 s(26) =< s(25) 0.04/0.30 s(27) =< s(26)*s(24) 0.04/0.30 0.04/0.30 with precondition: [V_n>=2] 0.04/0.30 0.04/0.30 0.04/0.30 Closed-form bounds of eval_abc_start(V_3,V_i_0,V_j_0,V_n,B): 0.04/0.30 ------------------------------------- 0.04/0.30 * Chain [28] with precondition: [] 0.04/0.30 - Upper bound: 0 0.04/0.30 - Complexity: constant 0.04/0.30 * Chain [27] with precondition: [0>=V_n] 0.04/0.30 - Upper bound: 0 0.04/0.30 - Complexity: constant 0.04/0.30 * Chain [26] with precondition: [V_n>=1] 0.04/0.30 - Upper bound: (V_n+1)*(2*V_n)+3*V_n 0.04/0.30 - Complexity: n^2 0.04/0.30 * Chain [25] with precondition: [V_n>=2] 0.04/0.30 - Upper bound: (V_n+1)*V_n+2*V_n 0.04/0.30 - Complexity: n^2 0.04/0.30 0.04/0.30 ### Maximum cost of eval_abc_start(V_3,V_i_0,V_j_0,V_n,B): nat(V_n+1)*nat(V_n)+nat(V_n)*2+(nat(V_n+1)*nat(V_n)+nat(V_n)) 0.04/0.30 Asymptotic class: n^2 0.04/0.30 * Total analysis performed in 223 ms. 0.04/0.30 0.04/0.40 EOF