0.56/0.57 WORST_CASE(?,O(n^1)) 0.56/0.57 0.56/0.57 Preprocessing Cost Relations 0.56/0.57 ===================================== 0.56/0.57 0.56/0.57 #### Computed strongly connected components 0.56/0.57 0. recursive : [eval_foo_bb3_in/6,eval_foo_bb4_in/6] 0.56/0.57 1. recursive : [eval_foo_10/13,eval_foo_11/13,eval_foo_bb1_in/13,eval_foo_bb2_in/13,eval_foo_bb3_in_loop_cont/14] 0.56/0.57 2. non_recursive : [eval_foo_stop/8] 0.56/0.57 3. non_recursive : [eval_foo_bb5_in/8] 0.56/0.57 4. non_recursive : [exit_location/1] 0.56/0.57 5. non_recursive : [eval_foo_bb1_in_loop_cont/9] 0.56/0.57 6. non_recursive : [eval_foo_7/8] 0.56/0.57 7. non_recursive : [eval_foo_6/8] 0.56/0.57 8. non_recursive : [eval_foo_5/8] 0.56/0.57 9. non_recursive : [eval_foo_4/8] 0.56/0.57 10. non_recursive : [eval_foo_3/8] 0.56/0.57 11. non_recursive : [eval_foo_2/8] 0.56/0.57 12. non_recursive : [eval_foo_1/8] 0.56/0.57 13. non_recursive : [eval_foo_0/8] 0.56/0.57 14. non_recursive : [eval_foo_bb0_in/8] 0.56/0.57 15. non_recursive : [eval_foo_start/8] 0.56/0.57 0.56/0.57 #### Obtained direct recursion through partial evaluation 0.56/0.57 0. SCC is partially evaluated into eval_foo_bb3_in/6 0.56/0.57 1. SCC is partially evaluated into eval_foo_bb1_in/13 0.56/0.57 2. SCC is completely evaluated into other SCCs 0.56/0.57 3. SCC is completely evaluated into other SCCs 0.56/0.57 4. SCC is completely evaluated into other SCCs 0.56/0.57 5. SCC is partially evaluated into eval_foo_bb1_in_loop_cont/9 0.56/0.57 6. SCC is partially evaluated into eval_foo_7/8 0.56/0.57 7. SCC is completely evaluated into other SCCs 0.56/0.57 8. SCC is completely evaluated into other SCCs 0.56/0.57 9. SCC is completely evaluated into other SCCs 0.56/0.57 10. SCC is completely evaluated into other SCCs 0.56/0.57 11. SCC is completely evaluated into other SCCs 0.56/0.57 12. SCC is completely evaluated into other SCCs 0.56/0.57 13. SCC is completely evaluated into other SCCs 0.56/0.57 14. SCC is completely evaluated into other SCCs 0.56/0.57 15. SCC is partially evaluated into eval_foo_start/8 0.56/0.57 0.56/0.57 Control-Flow Refinement of Cost Relations 0.56/0.57 ===================================== 0.56/0.57 0.56/0.58 ### Specialization of cost equations eval_foo_bb3_in/6 0.56/0.58 * CE 12 is refined into CE [13] 0.56/0.58 * CE 11 is refined into CE [14] 0.56/0.58 * CE 10 is refined into CE [15] 0.56/0.58 0.56/0.58 0.56/0.58 ### Cost equations --> "Loop" of eval_foo_bb3_in/6 0.56/0.58 * CEs [15] --> Loop 13 0.56/0.58 * CEs [13] --> Loop 14 0.56/0.58 * CEs [14] --> Loop 15 0.56/0.58 0.56/0.58 ### Ranking functions of CR eval_foo_bb3_in(V_p_0,V_r_0,V_x_0,B,C,D) 0.56/0.58 * RF of phase [13]: [V_p_0] 0.56/0.58 0.56/0.58 #### Partial ranking functions of CR eval_foo_bb3_in(V_p_0,V_r_0,V_x_0,B,C,D) 0.56/0.58 * Partial RF of phase [13]: 0.56/0.58 - RF of loop [13:1]: 0.56/0.58 V_p_0 0.56/0.58 0.56/0.58 0.56/0.58 ### Specialization of cost equations eval_foo_bb1_in/13 0.56/0.58 * CE 6 is refined into CE [16] 0.56/0.58 * CE 5 is refined into CE [17,18] 0.56/0.58 * CE 7 is refined into CE [19] 0.56/0.58 * CE 4 is refined into CE [20,21] 0.56/0.58 * CE 3 is refined into CE [22] 0.56/0.58 0.56/0.58 0.56/0.58 ### Cost equations --> "Loop" of eval_foo_bb1_in/13 0.56/0.58 * CEs [22] --> Loop 16 0.56/0.58 * CEs [21] --> Loop 17 0.56/0.58 * CEs [20] --> Loop 18 0.56/0.58 * CEs [16] --> Loop 19 0.56/0.58 * CEs [18] --> Loop 20 0.56/0.58 * CEs [17] --> Loop 21 0.56/0.58 * CEs [19] --> Loop 22 0.56/0.58 0.56/0.58 ### Ranking functions of CR eval_foo_bb1_in(V_1,V_2,V_3,V_p_0,V_r_0,V_x_0,B,C,D,E,F,G,H) 0.56/0.58 * RF of phase [16,17,18]: [V_x_0] 0.56/0.58 0.56/0.58 #### Partial ranking functions of CR eval_foo_bb1_in(V_1,V_2,V_3,V_p_0,V_r_0,V_x_0,B,C,D,E,F,G,H) 0.56/0.58 0.56/0.58 0.56/0.58 ### Specialization of cost equations eval_foo_bb1_in_loop_cont/9 0.56/0.58 * CE 8 is refined into CE [23] 0.56/0.58 * CE 9 is refined into CE [24] 0.56/0.58 0.56/0.58 0.56/0.58 ### Cost equations --> "Loop" of eval_foo_bb1_in_loop_cont/9 0.56/0.58 * CEs [23] --> Loop 23 0.56/0.58 * CEs [24] --> Loop 24 0.56/0.58 0.56/0.58 ### Ranking functions of CR eval_foo_bb1_in_loop_cont(A,B,C,D,E,F,G,H,I) 0.56/0.58 0.56/0.58 #### Partial ranking functions of CR eval_foo_bb1_in_loop_cont(A,B,C,D,E,F,G,H,I) 0.56/0.58 0.56/0.58 0.56/0.58 ### Specialization of cost equations eval_foo_7/8 0.56/0.58 * CE 2 is refined into CE [25,26,27,28,29] 0.56/0.58 0.56/0.58 0.56/0.58 ### Cost equations --> "Loop" of eval_foo_7/8 0.56/0.58 * CEs [27] --> Loop 25 0.56/0.58 * CEs [26,28] --> Loop 26 0.56/0.58 * CEs [29] --> Loop 27 0.56/0.58 * CEs [25] --> Loop 28 0.56/0.58 0.56/0.58 ### Ranking functions of CR eval_foo_7(V_1,V_2,V_3,V_n,V_p_0,V_r_0,V_x_0,B) 0.56/0.58 0.56/0.58 #### Partial ranking functions of CR eval_foo_7(V_1,V_2,V_3,V_n,V_p_0,V_r_0,V_x_0,B) 0.56/0.58 0.56/0.58 0.56/0.58 ### Specialization of cost equations eval_foo_start/8 0.56/0.58 * CE 1 is refined into CE [30,31,32,33] 0.56/0.58 0.56/0.58 0.56/0.58 ### Cost equations --> "Loop" of eval_foo_start/8 0.56/0.58 * CEs [33] --> Loop 29 0.56/0.58 * CEs [32] --> Loop 30 0.56/0.58 * CEs [31] --> Loop 31 0.56/0.58 * CEs [30] --> Loop 32 0.56/0.58 0.56/0.58 ### Ranking functions of CR eval_foo_start(V_1,V_2,V_3,V_n,V_p_0,V_r_0,V_x_0,B) 0.56/0.58 0.56/0.58 #### Partial ranking functions of CR eval_foo_start(V_1,V_2,V_3,V_n,V_p_0,V_r_0,V_x_0,B) 0.56/0.58 0.56/0.58 0.56/0.58 Computing Bounds 0.56/0.58 ===================================== 0.56/0.58 0.56/0.58 #### Cost of chains of eval_foo_bb3_in(V_p_0,V_r_0,V_x_0,B,C,D): 0.56/0.58 * Chain [[13],15]: 1*it(13)+0 0.56/0.58 Such that:it(13) =< V_p_0 0.56/0.58 0.56/0.58 with precondition: [B=2,C=0,D=0,V_p_0>=1,V_x_0>=1,V_r_0+1>=V_p_0] 0.56/0.58 0.56/0.58 * Chain [[13],14]: 1*it(13)+0 0.56/0.58 Such that:it(13) =< V_p_0 0.56/0.58 0.56/0.58 with precondition: [B=3,V_p_0>=1,V_x_0>=1,V_r_0+1>=V_p_0] 0.56/0.58 0.56/0.58 * Chain [15]: 0 0.56/0.58 with precondition: [B=2,D=0,V_p_0=C,0>=V_p_0,V_x_0>=1,V_r_0+1>=V_p_0] 0.56/0.58 0.56/0.58 * Chain [14]: 0 0.56/0.58 with precondition: [B=3,V_x_0>=1,V_r_0+1>=V_p_0] 0.56/0.58 0.56/0.58 0.56/0.58 #### Cost of chains of eval_foo_bb1_in(V_1,V_2,V_3,V_p_0,V_r_0,V_x_0,B,C,D,E,F,G,H): 0.56/0.58 * Chain [[16,17,18],22]: 2*it(16)+1*s(3)+0 0.56/0.58 Such that:s(3) =< V_r_0+V_x_0 0.56/0.58 aux(3) =< V_x_0 0.56/0.58 it(16) =< aux(3) 0.56/0.58 0.56/0.58 with precondition: [B=3,V_r_0>=0,V_x_0>=1] 0.56/0.58 0.56/0.58 * Chain [[16,17,18],21]: 2*it(16)+2*s(3)+0 0.56/0.58 Such that:aux(4) =< V_r_0+V_x_0 0.56/0.58 aux(5) =< V_x_0 0.56/0.58 s(3) =< aux(4) 0.56/0.58 it(16) =< aux(5) 0.56/0.58 0.56/0.58 with precondition: [B=3,V_r_0>=0,V_x_0>=2] 0.56/0.58 0.56/0.58 * Chain [[16,17,18],20]: 2*it(16)+1*s(3)+0 0.56/0.58 Such that:s(3) =< V_r_0+V_x_0 0.56/0.58 aux(6) =< V_x_0 0.56/0.58 it(16) =< aux(6) 0.56/0.58 0.56/0.58 with precondition: [B=3,V_r_0>=0,V_x_0>=2] 0.56/0.58 0.56/0.58 * Chain [[16,17,18],19]: 2*it(16)+1*s(3)+0 0.56/0.58 Such that:s(3) =< V_r_0+V_x_0 0.56/0.58 s(3) =< V_r_0+V_x_0-G 0.56/0.58 aux(7) =< V_x_0 0.56/0.58 it(16) =< aux(7) 0.56/0.58 0.56/0.58 with precondition: [B=4,C=0,H=0,V_r_0>=0,V_x_0>=1,D>=1,G>=0,D>=G,V_r_0+V_x_0>=D] 0.56/0.58 0.56/0.58 * Chain [22]: 0 0.56/0.58 with precondition: [B=3,V_r_0>=0] 0.56/0.58 0.56/0.58 * Chain [21]: 1*s(4)+0 0.56/0.58 Such that:s(4) =< V_r_0+1 0.56/0.58 0.56/0.58 with precondition: [B=3,V_r_0>=0,V_x_0>=1] 0.56/0.58 0.56/0.58 * Chain [20]: 0 0.56/0.58 with precondition: [B=3,V_r_0>=0,V_x_0>=1] 0.56/0.58 0.56/0.58 * Chain [19]: 0 0.56/0.58 with precondition: [B=4,C=V_1,D=V_2,E=V_3,F=V_p_0,V_r_0=G,V_x_0=H,0>=V_x_0,V_r_0>=0] 0.56/0.58 0.56/0.58 0.56/0.58 #### Cost of chains of eval_foo_bb1_in_loop_cont(A,B,C,D,E,F,G,H,I): 0.56/0.58 * Chain [24]: 0 0.56/0.58 with precondition: [A=3] 0.56/0.58 0.56/0.58 * Chain [23]: 0 0.56/0.58 with precondition: [A=4] 0.56/0.58 0.56/0.58 0.56/0.58 #### Cost of chains of eval_foo_7(V_1,V_2,V_3,V_n,V_p_0,V_r_0,V_x_0,B): 0.56/0.58 * Chain [28]: 0 0.56/0.58 with precondition: [] 0.56/0.58 0.56/0.58 * Chain [27]: 0 0.56/0.58 with precondition: [0>=V_n] 0.56/0.58 0.56/0.58 * Chain [26]: 1*s(17)+6*s(18)+0 0.56/0.58 Such that:s(17) =< 1 0.56/0.58 aux(12) =< V_n 0.56/0.58 s(18) =< aux(12) 0.56/0.58 0.56/0.58 with precondition: [V_n>=1] 0.56/0.58 0.56/0.58 * Chain [25]: 7*s(26)+0 0.56/0.58 Such that:aux(13) =< V_n 0.56/0.58 s(26) =< aux(13) 0.56/0.58 0.56/0.58 with precondition: [V_n>=2] 0.56/0.58 0.56/0.58 0.56/0.58 #### Cost of chains of eval_foo_start(V_1,V_2,V_3,V_n,V_p_0,V_r_0,V_x_0,B): 0.56/0.58 * Chain [32]: 0 0.56/0.58 with precondition: [] 0.56/0.58 0.56/0.58 * Chain [31]: 0 0.56/0.58 with precondition: [0>=V_n] 0.56/0.58 0.56/0.58 * Chain [30]: 1*s(28)+6*s(30)+0 0.56/0.58 Such that:s(28) =< 1 0.56/0.58 s(29) =< V_n 0.56/0.58 s(30) =< s(29) 0.56/0.58 0.56/0.58 with precondition: [V_n>=1] 0.56/0.58 0.56/0.58 * Chain [29]: 7*s(32)+0 0.56/0.58 Such that:s(31) =< V_n 0.56/0.58 s(32) =< s(31) 0.56/0.58 0.56/0.58 with precondition: [V_n>=2] 0.56/0.58 0.56/0.58 0.56/0.58 Closed-form bounds of eval_foo_start(V_1,V_2,V_3,V_n,V_p_0,V_r_0,V_x_0,B): 0.56/0.58 ------------------------------------- 0.56/0.58 * Chain [32] with precondition: [] 0.56/0.58 - Upper bound: 0 0.56/0.58 - Complexity: constant 0.56/0.58 * Chain [31] with precondition: [0>=V_n] 0.56/0.58 - Upper bound: 0 0.56/0.58 - Complexity: constant 0.56/0.58 * Chain [30] with precondition: [V_n>=1] 0.56/0.58 - Upper bound: 6*V_n+1 0.56/0.58 - Complexity: n 0.56/0.58 * Chain [29] with precondition: [V_n>=2] 0.56/0.58 - Upper bound: 7*V_n 0.56/0.58 - Complexity: n 0.56/0.58 0.56/0.58 ### Maximum cost of eval_foo_start(V_1,V_2,V_3,V_n,V_p_0,V_r_0,V_x_0,B): nat(V_n)*6+max([1,nat(V_n)]) 0.56/0.58 Asymptotic class: n 0.56/0.58 * Total analysis performed in 470 ms. 0.56/0.58 0.57/0.68 EOF