0.05/0.25 MAYBE 0.05/0.25 0.05/0.25 Preprocessing Cost Relations 0.05/0.25 ===================================== 0.05/0.25 0.05/0.25 #### Computed strongly connected components 0.05/0.25 0. recursive : [eval_real2_2/6,eval_real2_3/7,eval_real2_4/8,eval_real2_5/8,eval_real2_6/8,eval_real2_bb2_in/6,eval_real2_bb3_in/6,eval_real2_bb4_in/8,eval_real2_bb5_in/9] 0.05/0.25 1. recursive : [eval_real2_bb1_in/3,eval_real2_bb2_in_loop_cont/4] 0.05/0.25 2. non_recursive : [eval_real2_stop/1] 0.05/0.25 3. non_recursive : [eval_real2_bb6_in/1] 0.05/0.25 4. non_recursive : [eval_real2_bb1_in_loop_cont/2] 0.05/0.25 5. non_recursive : [eval_real2_bb0_in/2] 0.05/0.25 6. non_recursive : [eval_real2_start/2] 0.05/0.25 0.05/0.25 #### Obtained direct recursion through partial evaluation 0.05/0.25 0. SCC is partially evaluated into eval_real2_bb2_in/6 0.05/0.25 1. SCC is partially evaluated into eval_real2_bb1_in/3 0.05/0.25 2. SCC is completely evaluated into other SCCs 0.05/0.25 3. SCC is completely evaluated into other SCCs 0.05/0.25 4. SCC is completely evaluated into other SCCs 0.05/0.25 5. SCC is partially evaluated into eval_real2_bb0_in/2 0.05/0.25 6. SCC is partially evaluated into eval_real2_start/2 0.05/0.25 0.05/0.25 Control-Flow Refinement of Cost Relations 0.05/0.25 ===================================== 0.05/0.25 0.05/0.25 ### Specialization of cost equations eval_real2_bb2_in/6 0.05/0.25 * CE 8 is refined into CE [9] 0.05/0.25 * CE 6 is refined into CE [10] 0.05/0.25 * CE 7 is refined into CE [11] 0.05/0.25 0.05/0.25 0.05/0.25 ### Cost equations --> "Loop" of eval_real2_bb2_in/6 0.05/0.25 * CEs [10] --> Loop 9 0.05/0.25 * CEs [11] --> Loop 10 0.05/0.25 * CEs [9] --> Loop 11 0.05/0.25 0.05/0.25 ### Ranking functions of CR eval_real2_bb2_in(V_len,V_again_0,V_i_0,V_again_1,B,C) 0.05/0.25 * RF of phase [9,10]: [V_len-V_i_0-1] 0.05/0.25 0.05/0.25 #### Partial ranking functions of CR eval_real2_bb2_in(V_len,V_again_0,V_i_0,V_again_1,B,C) 0.05/0.25 * Partial RF of phase [9,10]: 0.05/0.25 - RF of loop [9:1,10:1]: 0.05/0.25 V_len-V_i_0-1 0.05/0.25 0.05/0.25 0.05/0.25 ### Specialization of cost equations eval_real2_bb1_in/3 0.05/0.25 * CE 5 is refined into CE [12] 0.05/0.25 * CE 3 is refined into CE [13,14] 0.05/0.25 * CE 4 is refined into CE [15,16] 0.05/0.25 0.05/0.25 0.05/0.25 ### Cost equations --> "Loop" of eval_real2_bb1_in/3 0.05/0.25 * CEs [14] --> Loop 12 0.05/0.25 * CEs [16] --> Loop 13 0.05/0.25 * CEs [13] --> Loop 14 0.05/0.25 * CEs [15] --> Loop 15 0.05/0.25 * CEs [12] --> Loop 16 0.05/0.25 0.05/0.25 ### Ranking functions of CR eval_real2_bb1_in(V_len,V_again_0,B) 0.05/0.25 0.05/0.25 #### Partial ranking functions of CR eval_real2_bb1_in(V_len,V_again_0,B) 0.05/0.25 0.05/0.25 0.05/0.25 ### Specialization of cost equations eval_real2_bb0_in/2 0.05/0.25 * CE 2 is refined into CE [17,18,19] 0.05/0.25 0.05/0.25 0.05/0.25 ### Cost equations --> "Loop" of eval_real2_bb0_in/2 0.05/0.25 * CEs [19] --> Loop 17 0.05/0.25 * CEs [18] --> Loop 18 0.05/0.25 * CEs [17] --> Loop 19 0.05/0.25 0.05/0.25 ### Ranking functions of CR eval_real2_bb0_in(V_len,B) 0.05/0.25 0.05/0.25 #### Partial ranking functions of CR eval_real2_bb0_in(V_len,B) 0.05/0.25 0.05/0.25 0.05/0.25 ### Specialization of cost equations eval_real2_start/2 0.05/0.25 * CE 1 is refined into CE [20,21,22] 0.05/0.25 0.05/0.25 0.05/0.25 ### Cost equations --> "Loop" of eval_real2_start/2 0.05/0.25 * CEs [22] --> Loop 20 0.05/0.25 * CEs [21] --> Loop 21 0.05/0.25 * CEs [20] --> Loop 22 0.05/0.25 0.05/0.25 ### Ranking functions of CR eval_real2_start(V_len,B) 0.05/0.25 0.05/0.25 #### Partial ranking functions of CR eval_real2_start(V_len,B) 0.05/0.25 0.05/0.25 0.05/0.25 Computing Bounds 0.05/0.25 ===================================== 0.05/0.25 0.05/0.25 #### Cost of chains of eval_real2_bb2_in(V_len,V_again_0,V_i_0,V_again_1,B,C): 0.05/0.25 * Chain [[9,10],11]: 2*it(9)+0 0.05/0.25 Such that:aux(3) =< V_len-V_i_0 0.05/0.25 it(9) =< aux(3) 0.05/0.25 0.05/0.25 with precondition: [B=2,V_again_1>=0,C>=0,V_len>=V_i_0+2,V_i_0>=V_again_1,V_again_1+V_len>=V_i_0+C+1] 0.05/0.25 0.05/0.25 * Chain [11]: 0 0.05/0.25 with precondition: [B=2,V_again_1=C,V_again_1>=0,V_i_0+1>=V_len,V_i_0>=V_again_1] 0.05/0.25 0.05/0.25 0.05/0.25 #### Cost of chains of eval_real2_bb1_in(V_len,V_again_0,B): 0.05/0.25 * Chain [[12]]...: 3*it(12)+0 0.05/0.25 with precondition: [V_len>=2,V_again_0>=1,B=3] 0.05/0.25 0.05/0.25 * Chain [[12],16]: 3*it(12)+0 0.05/0.25 with precondition: [B=3,V_len>=2,V_again_0>=1] 0.05/0.25 0.05/0.25 * Chain [14,16]: 1 0.05/0.25 with precondition: [V_again_0=1,B=3,1>=V_len] 0.05/0.25 0.05/0.25 0.05/0.25 #### Cost of chains of eval_real2_bb0_in(V_len,B): 0.05/0.25 * Chain [19]: 1 0.05/0.25 with precondition: [1>=V_len] 0.05/0.25 0.05/0.25 * Chain [18]: 3*s(7)+0 0.05/0.25 with precondition: [V_len>=2] 0.05/0.25 0.05/0.25 * Chain [17]...: 3*s(8)+0 0.05/0.25 with precondition: [V_len>=2] 0.05/0.25 0.05/0.25 0.05/0.25 #### Cost of chains of eval_real2_start(V_len,B): 0.05/0.25 * Chain [22]: 1 0.05/0.25 with precondition: [1>=V_len] 0.05/0.25 0.05/0.25 * Chain [21]: 3*s(9)+0 0.05/0.25 with precondition: [V_len>=2] 0.05/0.25 0.05/0.25 * Chain [20]...: 3*s(10)+0 0.05/0.25 with precondition: [V_len>=2] 0.05/0.25 0.05/0.25 0.05/0.25 Closed-form bounds of eval_real2_start(V_len,B): 0.05/0.25 ------------------------------------- 0.05/0.25 * Chain [22] with precondition: [1>=V_len] 0.05/0.25 - Upper bound: 1 0.05/0.25 - Complexity: constant 0.05/0.25 * Chain [21] with precondition: [V_len>=2] 0.05/0.25 - Upper bound: inf 0.05/0.25 - Complexity: infinity 0.05/0.25 * Chain [20]... with precondition: [V_len>=2] 0.05/0.25 - Upper bound: inf 0.05/0.25 - Complexity: infinity 0.05/0.25 0.05/0.25 ### Maximum cost of eval_real2_start(V_len,B): inf 0.05/0.25 Asymptotic class: infinity 0.05/0.25 * Total analysis performed in 172 ms. 0.05/0.25 0.05/0.36 EOF