0.06/0.30 WORST_CASE(?,O(n^1)) 0.06/0.30 0.06/0.30 Preprocessing Cost Relations 0.06/0.30 ===================================== 0.06/0.30 0.06/0.30 #### Computed strongly connected components 0.06/0.30 0. recursive : [eval_Loopus2014_ex2_5/6,eval_Loopus2014_ex2_6/7,eval_Loopus2014_ex2_bb3_in/6,eval_Loopus2014_ex2_bb4_in/6,eval_Loopus2014_ex2_bb5_in/7] 0.06/0.30 1. recursive : [eval_Loopus2014_ex2_1/4,eval_Loopus2014_ex2_2/5,eval_Loopus2014_ex2__critedge_in/3,eval_Loopus2014_ex2_bb1_in/3,eval_Loopus2014_ex2_bb2_in/5,eval_Loopus2014_ex2_bb3_in_loop_cont/4] 0.06/0.30 2. non_recursive : [eval_Loopus2014_ex2_stop/1] 0.06/0.30 3. non_recursive : [eval_Loopus2014_ex2_bb6_in/1] 0.06/0.30 4. non_recursive : [eval_Loopus2014_ex2__critedge_in_loop_cont/2] 0.06/0.30 5. non_recursive : [eval_Loopus2014_ex2_bb0_in/2] 0.06/0.30 6. non_recursive : [eval_Loopus2014_ex2_start/2] 0.06/0.30 0.06/0.30 #### Obtained direct recursion through partial evaluation 0.06/0.30 0. SCC is partially evaluated into eval_Loopus2014_ex2_bb3_in/6 0.06/0.30 1. SCC is partially evaluated into eval_Loopus2014_ex2__critedge_in/3 0.06/0.30 2. SCC is completely evaluated into other SCCs 0.06/0.30 3. SCC is completely evaluated into other SCCs 0.06/0.30 4. SCC is completely evaluated into other SCCs 0.06/0.30 5. SCC is partially evaluated into eval_Loopus2014_ex2_bb0_in/2 0.06/0.30 6. SCC is partially evaluated into eval_Loopus2014_ex2_start/2 0.06/0.30 0.06/0.30 Control-Flow Refinement of Cost Relations 0.06/0.30 ===================================== 0.06/0.30 0.06/0.30 ### Specialization of cost equations eval_Loopus2014_ex2_bb3_in/6 0.06/0.30 * CE 6 is refined into CE [9] 0.06/0.30 * CE 8 is refined into CE [10] 0.06/0.30 * CE 7 is refined into CE [11] 0.06/0.30 0.06/0.30 0.06/0.30 ### Cost equations --> "Loop" of eval_Loopus2014_ex2_bb3_in/6 0.06/0.30 * CEs [11] --> Loop 9 0.06/0.30 * CEs [9] --> Loop 10 0.06/0.30 * CEs [10] --> Loop 11 0.06/0.30 0.06/0.30 ### Ranking functions of CR eval_Loopus2014_ex2_bb3_in(V_i_0,V_n_0,V_2,V_n_1,B,C) 0.06/0.30 * RF of phase [9]: [V_n_1] 0.06/0.30 0.06/0.30 #### Partial ranking functions of CR eval_Loopus2014_ex2_bb3_in(V_i_0,V_n_0,V_2,V_n_1,B,C) 0.06/0.30 * Partial RF of phase [9]: 0.06/0.30 - RF of loop [9:1]: 0.06/0.30 V_n_1 0.06/0.30 0.06/0.30 0.06/0.30 ### Specialization of cost equations eval_Loopus2014_ex2__critedge_in/3 0.06/0.30 * CE 5 is refined into CE [12] 0.06/0.30 * CE 4 is refined into CE [13,14,15,16] 0.06/0.30 * CE 3 is refined into CE [17] 0.06/0.30 0.06/0.30 0.06/0.30 ### Cost equations --> "Loop" of eval_Loopus2014_ex2__critedge_in/3 0.06/0.30 * CEs [16] --> Loop 12 0.06/0.30 * CEs [15] --> Loop 13 0.06/0.30 * CEs [14] --> Loop 14 0.06/0.30 * CEs [17] --> Loop 15 0.06/0.30 * CEs [13] --> Loop 16 0.06/0.30 * CEs [12] --> Loop 17 0.06/0.30 0.06/0.30 ### Ranking functions of CR eval_Loopus2014_ex2__critedge_in(V_i_0,V_n_0,B) 0.06/0.30 * RF of phase [12,13,14,15,16]: [V_i_0] 0.06/0.30 0.06/0.30 #### Partial ranking functions of CR eval_Loopus2014_ex2__critedge_in(V_i_0,V_n_0,B) 0.06/0.30 * Partial RF of phase [12,13,14,15,16]: 0.06/0.30 - RF of loop [12:1]: 0.06/0.30 V_n_0-1 depends on loops [15:1] 0.06/0.30 - RF of loop [12:1,13:1,14:1,15:1,16:1]: 0.06/0.30 V_i_0 0.06/0.30 - RF of loop [16:1]: 0.06/0.30 V_n_0 depends on loops [15:1] 0.06/0.30 0.06/0.30 0.06/0.30 ### Specialization of cost equations eval_Loopus2014_ex2_bb0_in/2 0.06/0.30 * CE 2 is refined into CE [18,19] 0.06/0.30 0.06/0.30 0.06/0.30 ### Cost equations --> "Loop" of eval_Loopus2014_ex2_bb0_in/2 0.06/0.30 * CEs [19] --> Loop 18 0.06/0.30 * CEs [18] --> Loop 19 0.06/0.30 0.06/0.30 ### Ranking functions of CR eval_Loopus2014_ex2_bb0_in(V_m,B) 0.06/0.30 0.06/0.30 #### Partial ranking functions of CR eval_Loopus2014_ex2_bb0_in(V_m,B) 0.06/0.30 0.06/0.30 0.06/0.30 ### Specialization of cost equations eval_Loopus2014_ex2_start/2 0.06/0.30 * CE 1 is refined into CE [20,21] 0.06/0.30 0.06/0.30 0.06/0.30 ### Cost equations --> "Loop" of eval_Loopus2014_ex2_start/2 0.06/0.30 * CEs [21] --> Loop 20 0.06/0.30 * CEs [20] --> Loop 21 0.06/0.30 0.06/0.30 ### Ranking functions of CR eval_Loopus2014_ex2_start(V_m,B) 0.06/0.30 0.06/0.30 #### Partial ranking functions of CR eval_Loopus2014_ex2_start(V_m,B) 0.06/0.30 0.06/0.30 0.06/0.30 Computing Bounds 0.06/0.30 ===================================== 0.06/0.30 0.06/0.30 #### Cost of chains of eval_Loopus2014_ex2_bb3_in(V_i_0,V_n_0,V_2,V_n_1,B,C): 0.06/0.30 * Chain [[9],11]: 1*it(9)+0 0.06/0.30 Such that:it(9) =< V_n_1 0.06/0.30 0.06/0.30 with precondition: [B=2,C=0,0>=V_2,V_i_0>=1,V_n_1>=1,V_n_0>=V_n_1] 0.06/0.30 0.06/0.30 * Chain [[9],10]: 1*it(9)+0 0.06/0.30 Such that:it(9) =< V_n_1-C 0.06/0.30 0.06/0.30 with precondition: [B=2,0>=V_2,V_i_0>=1,C>=1,V_n_0>=V_n_1,V_n_1>=C+1] 0.06/0.30 0.06/0.30 * Chain [11]: 0 0.06/0.30 with precondition: [B=2,V_n_1=C,0>=V_2,0>=V_n_1,V_i_0>=1,V_n_0>=V_n_1] 0.06/0.30 0.06/0.30 * Chain [10]: 0 0.06/0.30 with precondition: [B=2,V_n_1=C,0>=V_2,V_i_0>=1,V_n_1>=1,V_n_0>=V_n_1] 0.06/0.30 0.06/0.30 0.06/0.30 #### Cost of chains of eval_Loopus2014_ex2__critedge_in(V_i_0,V_n_0,B): 0.06/0.30 * Chain [[12,13,14,15,16],17]: 2*it(12)+3*it(13)+1*s(5)+1*s(6)+0 0.06/0.30 Such that:aux(5) =< V_i_0+V_n_0 0.06/0.30 aux(15) =< V_i_0 0.06/0.30 aux(16) =< V_n_0 0.06/0.30 it(12) =< aux(15) 0.06/0.30 it(13) =< aux(15) 0.06/0.30 aux(10) =< aux(5)+1 0.06/0.30 s(6) =< it(13)+aux(16) 0.06/0.30 it(12) =< it(13)+aux(16) 0.06/0.30 s(5) =< it(13)+aux(16) 0.06/0.30 s(6) =< it(12)*aux(10) 0.06/0.30 s(5) =< it(12)*aux(5) 0.06/0.30 0.06/0.30 with precondition: [B=3,V_i_0>=1,V_n_0>=0] 0.06/0.30 0.06/0.30 * Chain [17]: 0 0.06/0.30 with precondition: [B=3,0>=V_i_0,V_n_0>=0] 0.06/0.30 0.06/0.30 0.06/0.30 #### Cost of chains of eval_Loopus2014_ex2_bb0_in(V_m,B): 0.06/0.30 * Chain [19]: 0 0.06/0.30 with precondition: [0>=V_m] 0.06/0.30 0.06/0.30 * Chain [18]: 2*s(10)+3*s(11)+1*s(13)+1*s(14)+0 0.06/0.30 Such that:aux(17) =< V_m 0.06/0.30 s(10) =< aux(17) 0.06/0.30 s(11) =< aux(17) 0.06/0.30 s(12) =< aux(17)+1 0.06/0.30 s(13) =< s(11) 0.06/0.30 s(10) =< s(11) 0.06/0.30 s(14) =< s(11) 0.06/0.30 s(13) =< s(10)*s(12) 0.06/0.30 s(14) =< s(10)*aux(17) 0.06/0.30 0.06/0.30 with precondition: [V_m>=1] 0.06/0.30 0.06/0.30 0.06/0.30 #### Cost of chains of eval_Loopus2014_ex2_start(V_m,B): 0.06/0.30 * Chain [21]: 0 0.06/0.30 with precondition: [0>=V_m] 0.06/0.30 0.06/0.30 * Chain [20]: 2*s(16)+3*s(17)+1*s(19)+1*s(20)+0 0.06/0.30 Such that:s(15) =< V_m 0.06/0.30 s(16) =< s(15) 0.06/0.30 s(17) =< s(15) 0.06/0.30 s(18) =< s(15)+1 0.06/0.30 s(19) =< s(17) 0.06/0.30 s(16) =< s(17) 0.06/0.30 s(20) =< s(17) 0.06/0.30 s(19) =< s(16)*s(18) 0.06/0.30 s(20) =< s(16)*s(15) 0.06/0.30 0.06/0.30 with precondition: [V_m>=1] 0.06/0.30 0.06/0.30 0.06/0.30 Closed-form bounds of eval_Loopus2014_ex2_start(V_m,B): 0.06/0.30 ------------------------------------- 0.06/0.30 * Chain [21] with precondition: [0>=V_m] 0.06/0.30 - Upper bound: 0 0.06/0.30 - Complexity: constant 0.06/0.30 * Chain [20] with precondition: [V_m>=1] 0.06/0.30 - Upper bound: 7*V_m 0.06/0.30 - Complexity: n 0.06/0.30 0.06/0.30 ### Maximum cost of eval_Loopus2014_ex2_start(V_m,B): nat(V_m)*7 0.06/0.30 Asymptotic class: n 0.06/0.30 * Total analysis performed in 206 ms. 0.06/0.30 0.06/0.40 EOF