0.06/0.46 WORST_CASE(?,O(n^3)) 0.06/0.46 0.06/0.46 Preprocessing Cost Relations 0.06/0.46 ===================================== 0.06/0.46 0.06/0.46 #### Computed strongly connected components 0.06/0.46 0. recursive : [eval_realshellsort_4/5,eval_realshellsort_5/6,eval_realshellsort_bb4_in/5,eval_realshellsort_bb5_in/5,eval_realshellsort_bb6_in/6] 0.06/0.46 1. recursive : [eval_realshellsort_2/5,eval_realshellsort_3/6,eval_realshellsort__critedge_in/7,eval_realshellsort_bb2_in/5,eval_realshellsort_bb3_in/5,eval_realshellsort_bb4_in_loop_cont/8] 0.06/0.46 2. recursive : [eval_realshellsort_bb1_in/3,eval_realshellsort_bb2_in_loop_cont/4] 0.06/0.46 3. non_recursive : [eval_realshellsort_stop/1] 0.06/0.46 4. non_recursive : [eval_realshellsort_bb7_in/1] 0.06/0.46 5. non_recursive : [eval_realshellsort_bb1_in_loop_cont/2] 0.06/0.46 6. non_recursive : [eval_realshellsort_bb0_in/2] 0.06/0.46 7. non_recursive : [eval_realshellsort_start/2] 0.06/0.46 0.06/0.46 #### Obtained direct recursion through partial evaluation 0.06/0.46 0. SCC is partially evaluated into eval_realshellsort_bb4_in/5 0.06/0.46 1. SCC is partially evaluated into eval_realshellsort_bb2_in/5 0.06/0.46 2. SCC is partially evaluated into eval_realshellsort_bb1_in/3 0.06/0.46 3. SCC is completely evaluated into other SCCs 0.06/0.46 4. SCC is completely evaluated into other SCCs 0.06/0.46 5. SCC is completely evaluated into other SCCs 0.06/0.46 6. SCC is partially evaluated into eval_realshellsort_bb0_in/2 0.06/0.46 7. SCC is partially evaluated into eval_realshellsort_start/2 0.06/0.46 0.06/0.46 Control-Flow Refinement of Cost Relations 0.06/0.46 ===================================== 0.06/0.46 0.06/0.46 ### Specialization of cost equations eval_realshellsort_bb4_in/5 0.06/0.46 * CE 11 is refined into CE [12] 0.06/0.46 * CE 9 is refined into CE [13] 0.06/0.46 * CE 10 is refined into CE [14] 0.06/0.46 0.06/0.46 0.06/0.46 ### Cost equations --> "Loop" of eval_realshellsort_bb4_in/5 0.06/0.46 * CEs [14] --> Loop 12 0.06/0.46 * CEs [12] --> Loop 13 0.06/0.46 * CEs [13] --> Loop 14 0.06/0.46 0.06/0.46 ### Ranking functions of CR eval_realshellsort_bb4_in(V_0,V_3,V_j_0,B,C) 0.06/0.46 * RF of phase [12]: [-V_0+V_j_0+1,V_j_0] 0.06/0.46 0.06/0.46 #### Partial ranking functions of CR eval_realshellsort_bb4_in(V_0,V_3,V_j_0,B,C) 0.06/0.46 * Partial RF of phase [12]: 0.06/0.46 - RF of loop [12:1]: 0.06/0.46 -V_0+V_j_0+1 0.06/0.46 V_j_0 0.06/0.46 0.06/0.46 0.06/0.46 ### Specialization of cost equations eval_realshellsort_bb2_in/5 0.06/0.46 * CE 8 is refined into CE [15] 0.06/0.46 * CE 7 is refined into CE [16,17,18,19] 0.06/0.46 0.06/0.46 0.06/0.46 ### Cost equations --> "Loop" of eval_realshellsort_bb2_in/5 0.06/0.46 * CEs [17] --> Loop 15 0.06/0.46 * CEs [16] --> Loop 16 0.06/0.46 * CEs [19] --> Loop 17 0.06/0.46 * CEs [18] --> Loop 18 0.06/0.46 * CEs [15] --> Loop 19 0.06/0.46 0.06/0.46 ### Ranking functions of CR eval_realshellsort_bb2_in(V_array_size,V_array_size_sink,V_0,V_i_0,B) 0.06/0.46 * RF of phase [15]: [V_0-V_i_0,V_array_size/2-V_i_0-1/2,V_array_size_sink/2-V_i_0-1/2] 0.06/0.46 * RF of phase [16,17,18]: [V_array_size-V_i_0] 0.06/0.46 0.06/0.46 #### Partial ranking functions of CR eval_realshellsort_bb2_in(V_array_size,V_array_size_sink,V_0,V_i_0,B) 0.06/0.46 * Partial RF of phase [15]: 0.06/0.46 - RF of loop [15:1]: 0.06/0.46 V_0-V_i_0 0.06/0.46 V_array_size/2-V_i_0-1/2 0.06/0.46 V_array_size_sink/2-V_i_0-1/2 0.06/0.46 * Partial RF of phase [16,17,18]: 0.06/0.46 - RF of loop [16:1,17:1,18:1]: 0.06/0.46 V_array_size-V_i_0 0.06/0.46 0.06/0.46 0.06/0.46 ### Specialization of cost equations eval_realshellsort_bb1_in/3 0.06/0.46 * CE 6 is refined into CE [20] 0.06/0.46 * CE 5 is refined into CE [21] 0.06/0.46 * CE 4 is refined into CE [22] 0.06/0.46 * CE 3 is refined into CE [23] 0.06/0.46 0.06/0.46 0.06/0.46 ### Cost equations --> "Loop" of eval_realshellsort_bb1_in/3 0.06/0.46 * CEs [23] --> Loop 20 0.06/0.46 * CEs [20] --> Loop 21 0.06/0.46 * CEs [21] --> Loop 22 0.06/0.46 * CEs [22] --> Loop 23 0.06/0.46 0.06/0.46 ### Ranking functions of CR eval_realshellsort_bb1_in(V_array_size,V_array_size_sink,B) 0.06/0.46 * RF of phase [20]: [V_array_size_sink-1] 0.06/0.46 0.06/0.46 #### Partial ranking functions of CR eval_realshellsort_bb1_in(V_array_size,V_array_size_sink,B) 0.06/0.46 * Partial RF of phase [20]: 0.06/0.46 - RF of loop [20:1]: 0.06/0.46 V_array_size_sink-1 0.06/0.46 0.06/0.46 0.06/0.46 ### Specialization of cost equations eval_realshellsort_bb0_in/2 0.06/0.46 * CE 2 is refined into CE [24,25,26,27] 0.06/0.46 0.06/0.46 0.06/0.46 ### Cost equations --> "Loop" of eval_realshellsort_bb0_in/2 0.06/0.46 * CEs [27] --> Loop 24 0.06/0.46 * CEs [26] --> Loop 25 0.06/0.46 * CEs [25] --> Loop 26 0.06/0.46 * CEs [24] --> Loop 27 0.06/0.46 0.06/0.46 ### Ranking functions of CR eval_realshellsort_bb0_in(V_array_size,B) 0.06/0.46 0.06/0.46 #### Partial ranking functions of CR eval_realshellsort_bb0_in(V_array_size,B) 0.06/0.46 0.06/0.46 0.06/0.46 ### Specialization of cost equations eval_realshellsort_start/2 0.06/0.46 * CE 1 is refined into CE [28,29,30,31] 0.06/0.46 0.06/0.46 0.06/0.46 ### Cost equations --> "Loop" of eval_realshellsort_start/2 0.06/0.46 * CEs [31] --> Loop 28 0.06/0.46 * CEs [30] --> Loop 29 0.06/0.46 * CEs [29] --> Loop 30 0.06/0.46 * CEs [28] --> Loop 31 0.06/0.46 0.06/0.46 ### Ranking functions of CR eval_realshellsort_start(V_array_size,B) 0.06/0.46 0.06/0.46 #### Partial ranking functions of CR eval_realshellsort_start(V_array_size,B) 0.06/0.46 0.06/0.46 0.06/0.46 Computing Bounds 0.06/0.46 ===================================== 0.06/0.46 0.06/0.46 #### Cost of chains of eval_realshellsort_bb4_in(V_0,V_3,V_j_0,B,C): 0.06/0.46 * Chain [[12],14]: 1*it(12)+0 0.06/0.46 Such that:it(12) =< V_j_0-C 0.06/0.46 0.06/0.46 with precondition: [B=2,V_0>=1,C>=V_0,V_j_0>=V_0+C] 0.06/0.46 0.06/0.46 * Chain [[12],13]: 1*it(12)+0 0.06/0.46 Such that:it(12) =< -V_0+V_j_0+1 0.06/0.46 0.06/0.46 with precondition: [B=2,C>=0,V_0>=C+1,V_j_0>=V_0+C] 0.06/0.46 0.06/0.46 * Chain [14]: 0 0.06/0.46 with precondition: [B=2,V_j_0=C,V_0>=1,V_j_0>=V_0] 0.06/0.46 0.06/0.46 * Chain [13]: 0 0.06/0.46 with precondition: [B=2,V_j_0=C,V_j_0>=0,V_0>=V_j_0+1] 0.06/0.46 0.06/0.46 0.06/0.46 #### Cost of chains of eval_realshellsort_bb2_in(V_array_size,V_array_size_sink,V_0,V_i_0,B): 0.06/0.46 * Chain [[15],[16,17,18],19]: 1*it(15)+3*it(16)+1*s(5)+1*s(6)+0 0.06/0.46 Such that:it(15) =< V_0-V_i_0 0.06/0.46 aux(6) =< V_array_size-V_0 0.06/0.46 it(16) =< aux(6) 0.06/0.46 aux(2) =< aux(6) 0.06/0.46 s(5) =< it(16)*aux(6) 0.06/0.46 s(6) =< it(16)*aux(2) 0.06/0.46 0.06/0.46 with precondition: [B=3,V_i_0>=0,V_array_size_sink>=2*V_0,V_array_size>=V_array_size_sink,2*V_0+1>=V_array_size_sink,V_0>=V_i_0+1] 0.06/0.46 0.06/0.46 0.06/0.46 #### Cost of chains of eval_realshellsort_bb1_in(V_array_size,V_array_size_sink,B): 0.06/0.46 * Chain [[20],22]: 2*it(20)+3*s(20)+1*s(21)+1*s(22)+0 0.06/0.46 Such that:aux(8) =< V_array_size 0.06/0.46 aux(11) =< V_array_size_sink 0.06/0.46 aux(7) =< aux(8) 0.06/0.46 it(20) =< aux(11) 0.06/0.46 aux(7) =< aux(8) 0.06/0.46 s(23) =< it(20)*aux(7) 0.06/0.46 s(20) =< s(23) 0.06/0.46 s(16) =< aux(8) 0.06/0.46 s(21) =< s(20)*aux(8) 0.06/0.46 s(22) =< s(20)*s(16) 0.06/0.46 0.06/0.46 with precondition: [B=4,V_array_size_sink>=2,V_array_size>=V_array_size_sink] 0.06/0.46 0.06/0.46 * Chain [23]: 0 0.06/0.46 with precondition: [V_array_size=0,V_array_size_sink=0,B=4] 0.06/0.46 0.06/0.46 * Chain [22]: 0 0.06/0.46 with precondition: [V_array_size_sink=1,B=4,V_array_size>=1] 0.06/0.46 0.06/0.46 * Chain [21]: 0 0.06/0.46 with precondition: [B=4,V_array_size_sink=V_array_size,0>=V_array_size_sink+1] 0.06/0.46 0.06/0.46 0.06/0.46 #### Cost of chains of eval_realshellsort_bb0_in(V_array_size,B): 0.06/0.46 * Chain [27]: 0 0.06/0.46 with precondition: [V_array_size=0] 0.06/0.46 0.06/0.46 * Chain [26]: 0 0.06/0.46 with precondition: [V_array_size=1] 0.06/0.46 0.06/0.46 * Chain [25]: 0 0.06/0.46 with precondition: [0>=V_array_size+1] 0.06/0.46 0.06/0.46 * Chain [24]: 2*s(27)+3*s(29)+1*s(31)+1*s(32)+0 0.06/0.46 Such that:aux(12) =< V_array_size 0.06/0.46 s(26) =< aux(12) 0.06/0.46 s(27) =< aux(12) 0.06/0.46 s(26) =< aux(12) 0.06/0.46 s(28) =< s(27)*s(26) 0.06/0.46 s(29) =< s(28) 0.06/0.46 s(30) =< aux(12) 0.06/0.46 s(31) =< s(29)*aux(12) 0.06/0.46 s(32) =< s(29)*s(30) 0.06/0.46 0.06/0.46 with precondition: [V_array_size>=2] 0.06/0.46 0.06/0.46 0.06/0.46 #### Cost of chains of eval_realshellsort_start(V_array_size,B): 0.06/0.46 * Chain [31]: 0 0.06/0.46 with precondition: [V_array_size=0] 0.06/0.46 0.06/0.46 * Chain [30]: 0 0.06/0.46 with precondition: [V_array_size=1] 0.06/0.46 0.06/0.46 * Chain [29]: 0 0.06/0.46 with precondition: [0>=V_array_size+1] 0.06/0.46 0.06/0.46 * Chain [28]: 2*s(35)+3*s(37)+1*s(39)+1*s(40)+0 0.06/0.46 Such that:s(33) =< V_array_size 0.06/0.46 s(34) =< s(33) 0.06/0.46 s(35) =< s(33) 0.06/0.46 s(34) =< s(33) 0.06/0.46 s(36) =< s(35)*s(34) 0.06/0.46 s(37) =< s(36) 0.06/0.46 s(38) =< s(33) 0.06/0.46 s(39) =< s(37)*s(33) 0.06/0.46 s(40) =< s(37)*s(38) 0.06/0.46 0.06/0.46 with precondition: [V_array_size>=2] 0.06/0.46 0.06/0.46 0.06/0.46 Closed-form bounds of eval_realshellsort_start(V_array_size,B): 0.06/0.46 ------------------------------------- 0.06/0.46 * Chain [31] with precondition: [V_array_size=0] 0.06/0.46 - Upper bound: 0 0.06/0.46 - Complexity: constant 0.06/0.46 * Chain [30] with precondition: [V_array_size=1] 0.06/0.46 - Upper bound: 0 0.06/0.46 - Complexity: constant 0.06/0.46 * Chain [29] with precondition: [0>=V_array_size+1] 0.06/0.46 - Upper bound: 0 0.06/0.46 - Complexity: constant 0.06/0.46 * Chain [28] with precondition: [V_array_size>=2] 0.06/0.46 - Upper bound: 3*V_array_size*V_array_size+2*V_array_size+2*V_array_size*V_array_size*V_array_size 0.06/0.46 - Complexity: n^3 0.06/0.46 0.06/0.46 ### Maximum cost of eval_realshellsort_start(V_array_size,B): nat(V_array_size)*3*nat(V_array_size)+nat(V_array_size)*2+nat(V_array_size)*2*nat(V_array_size)*nat(V_array_size) 0.06/0.46 Asymptotic class: n^3 0.06/0.46 * Total analysis performed in 353 ms. 0.06/0.46 0.46/0.56 EOF