0.04/0.42 WORST_CASE(?,O(n^2)) 0.04/0.42 0.04/0.42 Preprocessing Cost Relations 0.04/0.42 ===================================== 0.04/0.42 0.04/0.42 #### Computed strongly connected components 0.04/0.42 0. recursive : [eval_insertsort_bb3_in/4,eval_insertsort_bb4_in/4,eval_insertsort_bb5_in/4] 0.04/0.42 1. recursive : [eval_insertsort_25/10,eval_insertsort_26/10,eval_insertsort_bb1_in/10,eval_insertsort_bb2_in/10,eval_insertsort_bb3_in_loop_cont/11,eval_insertsort_bb6_in/10] 0.04/0.42 2. non_recursive : [eval_insertsort_stop/6] 0.04/0.42 3. non_recursive : [eval_insertsort_bb7_in/6] 0.04/0.42 4. non_recursive : [exit_location/1] 0.04/0.42 5. non_recursive : [eval_insertsort_bb1_in_loop_cont/7] 0.04/0.42 6. non_recursive : [eval_insertsort_6/6] 0.04/0.42 7. non_recursive : [eval_insertsort_5/6] 0.04/0.42 8. non_recursive : [eval_insertsort_4/6] 0.04/0.42 9. non_recursive : [eval_insertsort_3/6] 0.04/0.42 10. non_recursive : [eval_insertsort_2/6] 0.04/0.42 11. non_recursive : [eval_insertsort_1/6] 0.04/0.42 12. non_recursive : [eval_insertsort_0/6] 0.04/0.42 13. non_recursive : [eval_insertsort_bb0_in/6] 0.04/0.42 14. non_recursive : [eval_insertsort_start/6] 0.04/0.42 0.04/0.42 #### Obtained direct recursion through partial evaluation 0.04/0.42 0. SCC is partially evaluated into eval_insertsort_bb3_in/4 0.04/0.42 1. SCC is partially evaluated into eval_insertsort_bb1_in/10 0.04/0.42 2. SCC is completely evaluated into other SCCs 0.04/0.42 3. SCC is completely evaluated into other SCCs 0.04/0.42 4. SCC is completely evaluated into other SCCs 0.04/0.42 5. SCC is partially evaluated into eval_insertsort_bb1_in_loop_cont/7 0.04/0.42 6. SCC is partially evaluated into eval_insertsort_6/6 0.04/0.42 7. SCC is completely evaluated into other SCCs 0.04/0.42 8. SCC is completely evaluated into other SCCs 0.04/0.42 9. SCC is completely evaluated into other SCCs 0.04/0.42 10. SCC is completely evaluated into other SCCs 0.04/0.42 11. SCC is completely evaluated into other SCCs 0.04/0.42 12. SCC is completely evaluated into other SCCs 0.04/0.42 13. SCC is completely evaluated into other SCCs 0.04/0.42 14. SCC is partially evaluated into eval_insertsort_start/6 0.04/0.42 0.04/0.42 Control-Flow Refinement of Cost Relations 0.04/0.42 ===================================== 0.04/0.42 0.04/0.42 ### Specialization of cost equations eval_insertsort_bb3_in/4 0.04/0.42 * CE 12 is refined into CE [13] 0.04/0.42 * CE 9 is refined into CE [14] 0.04/0.42 * CE 11 is refined into CE [15] 0.04/0.42 * CE 10 is refined into CE [16] 0.04/0.42 0.04/0.42 0.04/0.42 ### Cost equations --> "Loop" of eval_insertsort_bb3_in/4 0.04/0.42 * CEs [16] --> Loop 13 0.04/0.42 * CEs [13] --> Loop 14 0.04/0.42 * CEs [14] --> Loop 15 0.04/0.42 * CEs [15] --> Loop 16 0.04/0.42 0.04/0.42 ### Ranking functions of CR eval_insertsort_bb3_in(V_3,V_j_0,B,C) 0.04/0.42 * RF of phase [13]: [V_j_0+1] 0.04/0.42 0.04/0.42 #### Partial ranking functions of CR eval_insertsort_bb3_in(V_3,V_j_0,B,C) 0.04/0.42 * Partial RF of phase [13]: 0.04/0.42 - RF of loop [13:1]: 0.04/0.42 V_j_0+1 0.04/0.42 0.04/0.42 0.04/0.42 ### Specialization of cost equations eval_insertsort_bb1_in/10 0.04/0.42 * CE 5 is refined into CE [17] 0.04/0.42 * CE 3 is refined into CE [18,19] 0.04/0.42 * CE 6 is refined into CE [20] 0.04/0.42 * CE 4 is refined into CE [21,22,23] 0.04/0.42 0.04/0.42 0.04/0.42 ### Cost equations --> "Loop" of eval_insertsort_bb1_in/10 0.04/0.42 * CEs [23] --> Loop 17 0.04/0.42 * CEs [22] --> Loop 18 0.04/0.42 * CEs [21] --> Loop 19 0.04/0.42 * CEs [17] --> Loop 20 0.04/0.42 * CEs [18,19] --> Loop 21 0.04/0.42 * CEs [20] --> Loop 22 0.04/0.42 0.04/0.42 ### Ranking functions of CR eval_insertsort_bb1_in(V_20,V_3,V_i_0,V_j_0,V_length,B,C,D,E,F) 0.04/0.42 * RF of phase [17,18,19]: [-V_i_0+V_length] 0.04/0.42 0.04/0.42 #### Partial ranking functions of CR eval_insertsort_bb1_in(V_20,V_3,V_i_0,V_j_0,V_length,B,C,D,E,F) 0.04/0.42 * Partial RF of phase [17,18,19]: 0.04/0.42 - RF of loop [17:1,18:1,19:1]: 0.04/0.42 -V_i_0+V_length 0.04/0.42 0.04/0.42 0.04/0.42 ### Specialization of cost equations eval_insertsort_bb1_in_loop_cont/7 0.04/0.42 * CE 7 is refined into CE [24] 0.04/0.42 * CE 8 is refined into CE [25] 0.04/0.42 0.04/0.42 0.04/0.42 ### Cost equations --> "Loop" of eval_insertsort_bb1_in_loop_cont/7 0.04/0.42 * CEs [24] --> Loop 23 0.04/0.42 * CEs [25] --> Loop 24 0.04/0.42 0.04/0.42 ### Ranking functions of CR eval_insertsort_bb1_in_loop_cont(A,B,C,D,E,F,G) 0.04/0.42 0.04/0.42 #### Partial ranking functions of CR eval_insertsort_bb1_in_loop_cont(A,B,C,D,E,F,G) 0.04/0.42 0.04/0.42 0.04/0.42 ### Specialization of cost equations eval_insertsort_6/6 0.04/0.42 * CE 2 is refined into CE [26,27,28,29,30] 0.04/0.42 0.04/0.42 0.04/0.42 ### Cost equations --> "Loop" of eval_insertsort_6/6 0.04/0.42 * CEs [28] --> Loop 25 0.04/0.42 * CEs [27,30] --> Loop 26 0.04/0.42 * CEs [29] --> Loop 27 0.04/0.42 * CEs [26] --> Loop 28 0.04/0.42 0.04/0.42 ### Ranking functions of CR eval_insertsort_6(V_20,V_3,V_i_0,V_j_0,V_length,B) 0.04/0.42 0.04/0.42 #### Partial ranking functions of CR eval_insertsort_6(V_20,V_3,V_i_0,V_j_0,V_length,B) 0.04/0.42 0.04/0.42 0.04/0.42 ### Specialization of cost equations eval_insertsort_start/6 0.04/0.42 * CE 1 is refined into CE [31,32,33,34] 0.04/0.42 0.04/0.42 0.04/0.42 ### Cost equations --> "Loop" of eval_insertsort_start/6 0.04/0.42 * CEs [34] --> Loop 29 0.04/0.42 * CEs [33] --> Loop 30 0.04/0.42 * CEs [32] --> Loop 31 0.04/0.42 * CEs [31] --> Loop 32 0.04/0.42 0.04/0.42 ### Ranking functions of CR eval_insertsort_start(V_20,V_3,V_i_0,V_j_0,V_length,B) 0.04/0.42 0.04/0.42 #### Partial ranking functions of CR eval_insertsort_start(V_20,V_3,V_i_0,V_j_0,V_length,B) 0.04/0.42 0.04/0.42 0.04/0.42 Computing Bounds 0.04/0.42 ===================================== 0.04/0.42 0.04/0.42 #### Cost of chains of eval_insertsort_bb3_in(V_3,V_j_0,B,C): 0.04/0.42 * Chain [[13],16]: 1*it(13)+0 0.04/0.42 Such that:it(13) =< V_j_0+1 0.04/0.42 0.04/0.42 with precondition: [B=2,C+1=0,V_j_0>=0] 0.04/0.42 0.04/0.42 * Chain [[13],15]: 1*it(13)+0 0.04/0.42 Such that:it(13) =< V_j_0-C 0.04/0.42 0.04/0.42 with precondition: [B=2,C>=0,V_j_0>=C+1] 0.04/0.42 0.04/0.42 * Chain [[13],14]: 1*it(13)+0 0.04/0.42 Such that:it(13) =< V_j_0+1 0.04/0.42 0.04/0.42 with precondition: [B=3,V_j_0>=0] 0.04/0.42 0.04/0.42 * Chain [15]: 0 0.04/0.42 with precondition: [B=2,V_j_0=C,V_j_0>=0] 0.04/0.42 0.04/0.42 * Chain [14]: 0 0.04/0.42 with precondition: [B=3,V_j_0+1>=0] 0.04/0.42 0.04/0.42 0.04/0.42 #### Cost of chains of eval_insertsort_bb1_in(V_20,V_3,V_i_0,V_j_0,V_length,B,C,D,E,F): 0.04/0.42 * Chain [[17,18,19],22]: 3*it(17)+1*s(5)+1*s(6)+0 0.04/0.42 Such that:aux(1) =< V_length 0.04/0.42 aux(5) =< -V_i_0+V_length 0.04/0.42 it(17) =< aux(5) 0.04/0.42 aux(2) =< aux(1) 0.04/0.42 s(5) =< it(17)*aux(1) 0.04/0.42 s(6) =< it(17)*aux(2) 0.04/0.42 0.04/0.42 with precondition: [B=3,V_i_0>=1,V_length>=V_i_0+1] 0.04/0.42 0.04/0.42 * Chain [[17,18,19],21]: 3*it(17)+1*s(5)+1*s(6)+1*s(7)+0 0.04/0.42 Such that:aux(6) =< -V_i_0+V_length 0.04/0.42 aux(7) =< V_length 0.04/0.42 s(7) =< aux(7) 0.04/0.42 it(17) =< aux(6) 0.04/0.42 aux(2) =< aux(7) 0.04/0.42 s(5) =< it(17)*aux(7) 0.04/0.42 s(6) =< it(17)*aux(2) 0.04/0.42 0.04/0.42 with precondition: [B=3,V_i_0>=1,V_length>=V_i_0+2] 0.04/0.42 0.04/0.42 * Chain [[17,18,19],20]: 3*it(17)+1*s(5)+1*s(6)+0 0.04/0.42 Such that:aux(1) =< V_length 0.04/0.42 aux(8) =< -V_i_0+V_length 0.04/0.42 it(17) =< aux(8) 0.04/0.42 aux(2) =< aux(1) 0.04/0.42 s(5) =< it(17)*aux(1) 0.04/0.42 s(6) =< it(17)*aux(2) 0.04/0.42 0.04/0.42 with precondition: [B=4,V_length=C,V_length=E,V_i_0>=1,F+1>=0,V_length>=V_i_0+1,V_length>=F+2] 0.04/0.42 0.04/0.42 * Chain [22]: 0 0.04/0.42 with precondition: [B=3,V_i_0>=1] 0.04/0.42 0.04/0.42 * Chain [21]: 1*s(7)+0 0.04/0.42 Such that:s(7) =< V_i_0 0.04/0.42 0.04/0.42 with precondition: [B=3,V_i_0>=1,V_length>=V_i_0+1] 0.04/0.42 0.04/0.42 * Chain [20]: 0 0.04/0.42 with precondition: [B=4,C=V_20,D=V_3,F=V_j_0,V_i_0=E,V_i_0>=1,V_i_0>=V_length] 0.04/0.42 0.04/0.42 0.04/0.42 #### Cost of chains of eval_insertsort_bb1_in_loop_cont(A,B,C,D,E,F,G): 0.04/0.42 * Chain [24]: 0 0.04/0.42 with precondition: [A=3] 0.04/0.42 0.04/0.42 * Chain [23]: 0 0.04/0.42 with precondition: [A=4] 0.04/0.42 0.04/0.42 0.04/0.42 #### Cost of chains of eval_insertsort_6(V_20,V_3,V_i_0,V_j_0,V_length,B): 0.04/0.42 * Chain [28]: 0 0.04/0.42 with precondition: [] 0.04/0.42 0.04/0.42 * Chain [27]: 0 0.04/0.42 with precondition: [1>=V_length] 0.04/0.42 0.04/0.42 * Chain [26]: 1*s(16)+6*s(18)+2*s(20)+2*s(21)+0 0.04/0.42 Such that:s(16) =< 1 0.04/0.42 aux(11) =< V_length 0.04/0.42 s(18) =< aux(11) 0.04/0.42 s(19) =< aux(11) 0.04/0.42 s(20) =< s(18)*aux(11) 0.04/0.42 s(21) =< s(18)*s(19) 0.04/0.42 0.04/0.42 with precondition: [V_length>=2] 0.04/0.42 0.04/0.42 * Chain [25]: 4*s(30)+1*s(33)+1*s(34)+0 0.04/0.42 Such that:aux(12) =< V_length 0.04/0.42 s(30) =< aux(12) 0.04/0.42 s(32) =< aux(12) 0.04/0.42 s(33) =< s(30)*aux(12) 0.04/0.42 s(34) =< s(30)*s(32) 0.04/0.42 0.04/0.42 with precondition: [V_length>=3] 0.04/0.42 0.04/0.42 0.04/0.42 #### Cost of chains of eval_insertsort_start(V_20,V_3,V_i_0,V_j_0,V_length,B): 0.04/0.42 * Chain [32]: 0 0.04/0.42 with precondition: [] 0.04/0.42 0.04/0.42 * Chain [31]: 0 0.04/0.42 with precondition: [1>=V_length] 0.04/0.42 0.04/0.42 * Chain [30]: 1*s(35)+6*s(37)+2*s(39)+2*s(40)+0 0.04/0.42 Such that:s(35) =< 1 0.04/0.42 s(36) =< V_length 0.04/0.42 s(37) =< s(36) 0.04/0.42 s(38) =< s(36) 0.04/0.42 s(39) =< s(37)*s(36) 0.04/0.42 s(40) =< s(37)*s(38) 0.04/0.42 0.04/0.42 with precondition: [V_length>=2] 0.04/0.42 0.04/0.42 * Chain [29]: 4*s(42)+1*s(44)+1*s(45)+0 0.04/0.42 Such that:s(41) =< V_length 0.04/0.42 s(42) =< s(41) 0.04/0.42 s(43) =< s(41) 0.04/0.42 s(44) =< s(42)*s(41) 0.04/0.42 s(45) =< s(42)*s(43) 0.04/0.42 0.04/0.42 with precondition: [V_length>=3] 0.04/0.42 0.04/0.42 0.04/0.42 Closed-form bounds of eval_insertsort_start(V_20,V_3,V_i_0,V_j_0,V_length,B): 0.04/0.42 ------------------------------------- 0.04/0.42 * Chain [32] with precondition: [] 0.04/0.42 - Upper bound: 0 0.04/0.42 - Complexity: constant 0.04/0.42 * Chain [31] with precondition: [1>=V_length] 0.04/0.42 - Upper bound: 0 0.04/0.42 - Complexity: constant 0.04/0.42 * Chain [30] with precondition: [V_length>=2] 0.04/0.42 - Upper bound: 6*V_length+1+4*V_length*V_length 0.04/0.42 - Complexity: n^2 0.04/0.42 * Chain [29] with precondition: [V_length>=3] 0.04/0.42 - Upper bound: 2*V_length*V_length+4*V_length 0.04/0.42 - Complexity: n^2 0.04/0.42 0.04/0.42 ### Maximum cost of eval_insertsort_start(V_20,V_3,V_i_0,V_j_0,V_length,B): nat(V_length)*2+1+nat(V_length)*2*nat(V_length)+(nat(V_length)*2*nat(V_length)+nat(V_length)*4) 0.04/0.42 Asymptotic class: n^2 0.04/0.42 * Total analysis performed in 334 ms. 0.04/0.42 0.43/0.53 EOF