0.03/0.30 WORST_CASE(?,O(n^2)) 0.03/0.30 0.03/0.30 Preprocessing Cost Relations 0.03/0.30 ===================================== 0.03/0.30 0.03/0.30 #### Computed strongly connected components 0.03/0.30 0. recursive : [eval_ex2_5/4,eval_ex2_6/4,eval_ex2_bb2_in/4,eval_ex2_bb3_in/4] 0.03/0.30 1. recursive : [eval_ex2_10/8,eval_ex2_9/8,eval_ex2_bb1_in/8,eval_ex2_bb2_in_loop_cont/9,eval_ex2_bb4_in/8] 0.03/0.30 2. non_recursive : [eval_ex2_stop/5] 0.03/0.30 3. non_recursive : [eval_ex2_bb5_in/5] 0.03/0.30 4. non_recursive : [exit_location/1] 0.03/0.30 5. non_recursive : [eval_ex2_bb1_in_loop_cont/6] 0.03/0.30 6. non_recursive : [eval_ex2_4/5] 0.03/0.30 7. non_recursive : [eval_ex2_3/5] 0.03/0.30 8. non_recursive : [eval_ex2_2/5] 0.03/0.30 9. non_recursive : [eval_ex2_1/5] 0.03/0.30 10. non_recursive : [eval_ex2_0/5] 0.03/0.30 11. non_recursive : [eval_ex2_bb0_in/5] 0.03/0.30 12. non_recursive : [eval_ex2_start/5] 0.03/0.30 0.03/0.30 #### Obtained direct recursion through partial evaluation 0.03/0.30 0. SCC is partially evaluated into eval_ex2_bb2_in/4 0.03/0.30 1. SCC is partially evaluated into eval_ex2_bb1_in/8 0.03/0.30 2. SCC is completely evaluated into other SCCs 0.03/0.30 3. SCC is completely evaluated into other SCCs 0.03/0.30 4. SCC is completely evaluated into other SCCs 0.03/0.30 5. SCC is partially evaluated into eval_ex2_bb1_in_loop_cont/6 0.03/0.30 6. SCC is partially evaluated into eval_ex2_4/5 0.03/0.30 7. SCC is completely evaluated into other SCCs 0.03/0.30 8. SCC is completely evaluated into other SCCs 0.03/0.30 9. SCC is completely evaluated into other SCCs 0.03/0.30 10. SCC is completely evaluated into other SCCs 0.03/0.30 11. SCC is completely evaluated into other SCCs 0.03/0.30 12. SCC is partially evaluated into eval_ex2_start/5 0.03/0.30 0.03/0.30 Control-Flow Refinement of Cost Relations 0.03/0.30 ===================================== 0.03/0.30 0.03/0.30 ### Specialization of cost equations eval_ex2_bb2_in/4 0.03/0.30 * CE 11 is refined into CE [12] 0.03/0.30 * CE 10 is refined into CE [13] 0.03/0.30 * CE 9 is refined into CE [14] 0.03/0.30 0.03/0.30 0.03/0.30 ### Cost equations --> "Loop" of eval_ex2_bb2_in/4 0.03/0.30 * CEs [14] --> Loop 12 0.03/0.30 * CEs [12] --> Loop 13 0.03/0.30 * CEs [13] --> Loop 14 0.03/0.30 0.03/0.30 ### Ranking functions of CR eval_ex2_bb2_in(V_n,V_y_0,B,C) 0.03/0.30 * RF of phase [12]: [V_n-V_y_0+1] 0.03/0.30 0.03/0.30 #### Partial ranking functions of CR eval_ex2_bb2_in(V_n,V_y_0,B,C) 0.03/0.30 * Partial RF of phase [12]: 0.03/0.30 - RF of loop [12:1]: 0.03/0.30 V_n-V_y_0+1 0.03/0.30 0.03/0.30 0.03/0.30 ### Specialization of cost equations eval_ex2_bb1_in/8 0.03/0.30 * CE 5 is refined into CE [15] 0.03/0.30 * CE 3 is refined into CE [16,17] 0.03/0.30 * CE 6 is refined into CE [18] 0.03/0.30 * CE 4 is refined into CE [19] 0.03/0.30 0.03/0.30 0.03/0.30 ### Cost equations --> "Loop" of eval_ex2_bb1_in/8 0.03/0.30 * CEs [19] --> Loop 15 0.03/0.30 * CEs [15] --> Loop 16 0.03/0.30 * CEs [16,17] --> Loop 17 0.03/0.30 * CEs [18] --> Loop 18 0.03/0.30 0.03/0.30 ### Ranking functions of CR eval_ex2_bb1_in(V_3,V_n,V_x_0,V_y_0,B,C,D,E) 0.03/0.30 * RF of phase [15]: [V_n-V_x_0+1] 0.03/0.30 0.03/0.30 #### Partial ranking functions of CR eval_ex2_bb1_in(V_3,V_n,V_x_0,V_y_0,B,C,D,E) 0.03/0.30 * Partial RF of phase [15]: 0.03/0.30 - RF of loop [15:1]: 0.03/0.30 V_n-V_x_0+1 0.03/0.30 0.03/0.30 0.03/0.30 ### Specialization of cost equations eval_ex2_bb1_in_loop_cont/6 0.03/0.30 * CE 7 is refined into CE [20] 0.03/0.30 * CE 8 is refined into CE [21] 0.03/0.30 0.03/0.30 0.03/0.30 ### Cost equations --> "Loop" of eval_ex2_bb1_in_loop_cont/6 0.03/0.30 * CEs [20] --> Loop 19 0.03/0.30 * CEs [21] --> Loop 20 0.03/0.30 0.03/0.30 ### Ranking functions of CR eval_ex2_bb1_in_loop_cont(A,B,C,D,E,F) 0.03/0.30 0.03/0.30 #### Partial ranking functions of CR eval_ex2_bb1_in_loop_cont(A,B,C,D,E,F) 0.03/0.30 0.03/0.30 0.03/0.30 ### Specialization of cost equations eval_ex2_4/5 0.03/0.30 * CE 2 is refined into CE [22,23,24,25,26] 0.03/0.30 0.03/0.30 0.03/0.30 ### Cost equations --> "Loop" of eval_ex2_4/5 0.03/0.30 * CEs [24] --> Loop 21 0.03/0.30 * CEs [23,26] --> Loop 22 0.03/0.30 * CEs [25] --> Loop 23 0.03/0.30 * CEs [22] --> Loop 24 0.03/0.30 0.03/0.30 ### Ranking functions of CR eval_ex2_4(V_3,V_n,V_x_0,V_y_0,B) 0.03/0.30 0.03/0.30 #### Partial ranking functions of CR eval_ex2_4(V_3,V_n,V_x_0,V_y_0,B) 0.03/0.30 0.03/0.30 0.03/0.30 ### Specialization of cost equations eval_ex2_start/5 0.03/0.30 * CE 1 is refined into CE [27,28,29,30] 0.03/0.30 0.03/0.30 0.03/0.30 ### Cost equations --> "Loop" of eval_ex2_start/5 0.03/0.30 * CEs [30] --> Loop 25 0.03/0.30 * CEs [29] --> Loop 26 0.03/0.30 * CEs [28] --> Loop 27 0.03/0.30 * CEs [27] --> Loop 28 0.03/0.30 0.03/0.30 ### Ranking functions of CR eval_ex2_start(V_3,V_n,V_x_0,V_y_0,B) 0.03/0.30 0.03/0.30 #### Partial ranking functions of CR eval_ex2_start(V_3,V_n,V_x_0,V_y_0,B) 0.03/0.30 0.03/0.30 0.03/0.30 Computing Bounds 0.03/0.30 ===================================== 0.03/0.30 0.03/0.30 #### Cost of chains of eval_ex2_bb2_in(V_n,V_y_0,B,C): 0.03/0.30 * Chain [[12],14]: 1*it(12)+0 0.03/0.30 Such that:it(12) =< -V_y_0+C 0.03/0.30 0.03/0.30 with precondition: [B=2,V_n+1=C,V_y_0>=1,V_n>=V_y_0] 0.03/0.30 0.03/0.30 * Chain [[12],13]: 1*it(12)+0 0.03/0.30 Such that:it(12) =< V_n-V_y_0+1 0.03/0.30 0.03/0.30 with precondition: [B=3,V_y_0>=1,V_n>=V_y_0] 0.03/0.30 0.03/0.30 * Chain [13]: 0 0.03/0.30 with precondition: [B=3,V_n>=1,V_y_0>=1,V_n+1>=V_y_0] 0.03/0.30 0.03/0.30 0.03/0.30 #### Cost of chains of eval_ex2_bb1_in(V_3,V_n,V_x_0,V_y_0,B,C,D,E): 0.03/0.30 * Chain [[15],18]: 1*it(15)+1*s(3)+0 0.03/0.30 Such that:aux(3) =< V_n-V_x_0+1 0.03/0.30 it(15) =< aux(3) 0.03/0.30 s(3) =< it(15)*aux(3) 0.03/0.30 0.03/0.30 with precondition: [B=3,V_x_0>=1,V_n>=V_x_0] 0.03/0.30 0.03/0.30 * Chain [[15],17]: 2*it(15)+1*s(3)+0 0.03/0.30 Such that:aux(4) =< V_n-V_x_0 0.03/0.30 aux(5) =< V_n-V_x_0+1 0.03/0.30 it(15) =< aux(4) 0.03/0.30 it(15) =< aux(5) 0.03/0.30 s(3) =< it(15)*aux(5) 0.03/0.30 0.03/0.30 with precondition: [B=3,V_x_0>=1,V_n>=V_x_0+1] 0.03/0.30 0.03/0.30 * Chain [[15],16]: 1*it(15)+1*s(3)+0 0.03/0.30 Such that:aux(6) =< -V_x_0+C 0.03/0.30 it(15) =< aux(6) 0.03/0.30 s(3) =< it(15)*aux(6) 0.03/0.30 0.03/0.30 with precondition: [B=4,V_n+1=C,V_n+1=D,V_n+1=E,V_x_0>=1,V_n>=V_x_0] 0.03/0.30 0.03/0.30 * Chain [18]: 0 0.03/0.30 with precondition: [B=3,V_x_0>=1] 0.03/0.30 0.03/0.30 * Chain [17]: 1*s(4)+0 0.03/0.30 Such that:s(4) =< V_n-V_x_0+1 0.03/0.30 0.03/0.30 with precondition: [B=3,V_x_0>=1,V_n>=V_x_0] 0.03/0.30 0.03/0.30 * Chain [16]: 0 0.03/0.30 with precondition: [B=4,C=V_3,E=V_y_0,V_x_0=D,V_x_0>=1,V_x_0>=V_n+1] 0.03/0.30 0.03/0.30 0.03/0.30 #### Cost of chains of eval_ex2_bb1_in_loop_cont(A,B,C,D,E,F): 0.03/0.30 * Chain [20]: 0 0.03/0.30 with precondition: [A=3] 0.03/0.30 0.03/0.30 * Chain [19]: 0 0.03/0.30 with precondition: [A=4] 0.03/0.30 0.03/0.30 0.03/0.30 #### Cost of chains of eval_ex2_4(V_3,V_n,V_x_0,V_y_0,B): 0.03/0.30 * Chain [24]: 0 0.03/0.30 with precondition: [] 0.03/0.30 0.03/0.30 * Chain [23]: 0 0.03/0.30 with precondition: [0>=V_n] 0.03/0.30 0.03/0.30 * Chain [22]: 3*s(10)+2*s(11)+0 0.03/0.30 Such that:aux(8) =< V_n 0.03/0.30 s(10) =< aux(8) 0.03/0.30 s(11) =< s(10)*aux(8) 0.03/0.30 0.03/0.30 with precondition: [V_n>=1] 0.03/0.30 0.03/0.30 * Chain [21]: 2*s(17)+1*s(18)+0 0.03/0.30 Such that:aux(9) =< V_n 0.03/0.30 s(17) =< aux(9) 0.03/0.30 s(18) =< s(17)*aux(9) 0.03/0.30 0.03/0.30 with precondition: [V_n>=2] 0.03/0.30 0.03/0.30 0.03/0.30 #### Cost of chains of eval_ex2_start(V_3,V_n,V_x_0,V_y_0,B): 0.03/0.30 * Chain [28]: 0 0.03/0.30 with precondition: [] 0.03/0.30 0.03/0.30 * Chain [27]: 0 0.03/0.30 with precondition: [0>=V_n] 0.03/0.30 0.03/0.30 * Chain [26]: 3*s(20)+2*s(21)+0 0.03/0.30 Such that:s(19) =< V_n 0.03/0.30 s(20) =< s(19) 0.03/0.30 s(21) =< s(20)*s(19) 0.03/0.30 0.03/0.30 with precondition: [V_n>=1] 0.03/0.30 0.03/0.30 * Chain [25]: 2*s(23)+1*s(24)+0 0.03/0.30 Such that:s(22) =< V_n 0.03/0.30 s(23) =< s(22) 0.03/0.30 s(24) =< s(23)*s(22) 0.03/0.30 0.03/0.30 with precondition: [V_n>=2] 0.03/0.30 0.03/0.30 0.03/0.30 Closed-form bounds of eval_ex2_start(V_3,V_n,V_x_0,V_y_0,B): 0.03/0.30 ------------------------------------- 0.03/0.30 * Chain [28] with precondition: [] 0.03/0.30 - Upper bound: 0 0.03/0.30 - Complexity: constant 0.03/0.30 * Chain [27] with precondition: [0>=V_n] 0.03/0.30 - Upper bound: 0 0.03/0.30 - Complexity: constant 0.03/0.30 * Chain [26] with precondition: [V_n>=1] 0.03/0.30 - Upper bound: 2*V_n*V_n+3*V_n 0.03/0.30 - Complexity: n^2 0.03/0.30 * Chain [25] with precondition: [V_n>=2] 0.03/0.30 - Upper bound: 2*V_n+V_n*V_n 0.03/0.30 - Complexity: n^2 0.03/0.30 0.03/0.30 ### Maximum cost of eval_ex2_start(V_3,V_n,V_x_0,V_y_0,B): nat(V_n)*nat(V_n)+nat(V_n)*2+(nat(V_n)*nat(V_n)+nat(V_n)) 0.03/0.30 Asymptotic class: n^2 0.03/0.30 * Total analysis performed in 227 ms. 0.03/0.30 0.03/0.40 EOF