0.05/0.21 WORST_CASE(?,O(n^2)) 0.05/0.21 0.05/0.21 Preprocessing Cost Relations 0.05/0.21 ===================================== 0.05/0.21 0.05/0.21 #### Computed strongly connected components 0.05/0.21 0. recursive : [eval_foo_bb1_in/4,eval_foo_bb2_in/4,eval_foo_bb3_in/4,eval_foo_bb4_in/4] 0.05/0.21 1. non_recursive : [eval_foo_stop/1] 0.05/0.21 2. non_recursive : [eval_foo_bb5_in/1] 0.05/0.21 3. non_recursive : [eval_foo_bb1_in_loop_cont/2] 0.05/0.21 4. non_recursive : [eval_foo_bb0_in/4] 0.05/0.21 5. non_recursive : [eval_foo_start/8] 0.05/0.21 0.05/0.21 #### Obtained direct recursion through partial evaluation 0.05/0.21 0. SCC is partially evaluated into eval_foo_bb1_in/4 0.05/0.21 1. SCC is completely evaluated into other SCCs 0.05/0.21 2. SCC is completely evaluated into other SCCs 0.05/0.21 3. SCC is completely evaluated into other SCCs 0.05/0.21 4. SCC is partially evaluated into eval_foo_bb0_in/4 0.05/0.21 5. SCC is partially evaluated into eval_foo_start/8 0.05/0.21 0.05/0.21 Control-Flow Refinement of Cost Relations 0.05/0.21 ===================================== 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_foo_bb1_in/4 0.05/0.21 * CE 5 is refined into CE [6] 0.05/0.21 * CE 3 is refined into CE [7] 0.05/0.21 * CE 4 is refined into CE [8] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_foo_bb1_in/4 0.05/0.21 * CEs [7] --> Loop 6 0.05/0.21 * CEs [8] --> Loop 7 0.05/0.21 * CEs [6] --> Loop 8 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_foo_bb1_in(V__04,V__02,V__01,B) 0.05/0.21 * RF of phase [6]: [V__01-1] 0.05/0.21 * RF of phase [7]: [V__04-V__02+1] 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_foo_bb1_in(V__04,V__02,V__01,B) 0.05/0.21 * Partial RF of phase [6]: 0.05/0.21 - RF of loop [6:1]: 0.05/0.21 V__01-1 0.05/0.21 * Partial RF of phase [7]: 0.05/0.21 - RF of loop [7:1]: 0.05/0.21 V__04-V__02+1 0.05/0.21 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_foo_bb0_in/4 0.05/0.21 * CE 2 is refined into CE [9,10,11] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_foo_bb0_in/4 0.05/0.21 * CEs [11] --> Loop 9 0.05/0.21 * CEs [10] --> Loop 10 0.05/0.21 * CEs [9] --> Loop 11 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_foo_bb0_in(V_x,V_y,V_z,B) 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_foo_bb0_in(V_x,V_y,V_z,B) 0.05/0.21 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_foo_start/8 0.05/0.21 * CE 1 is refined into CE [12,13,14] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_foo_start/8 0.05/0.21 * CEs [14] --> Loop 12 0.05/0.21 * CEs [13] --> Loop 13 0.05/0.21 * CEs [12] --> Loop 14 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_foo_start(V_c,V_u,V_v,V_w,V_x,V_y,V_z,B) 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_foo_start(V_c,V_u,V_v,V_w,V_x,V_y,V_z,B) 0.05/0.21 0.05/0.21 0.05/0.21 Computing Bounds 0.05/0.21 ===================================== 0.05/0.21 0.05/0.21 #### Cost of chains of eval_foo_bb1_in(V__04,V__02,V__01,B): 0.05/0.21 * Chain [[7],8]: 1*it(7)+0 0.05/0.21 Such that:it(7) =< V__04-V__02+1 0.05/0.21 0.05/0.21 with precondition: [B=2,1>=V__01,V__04>=V__02] 0.05/0.21 0.05/0.21 * Chain [[6],[7],8]: 1*it(6)+1*s(1)+0 0.05/0.21 Such that:it([[7],8]) =< 1 0.05/0.21 aux(14) =< V__04-V__02+1 0.05/0.21 aux(15) =< V__01 0.05/0.21 it(6) =< aux(15) 0.05/0.21 aux(10) =< aux(15) 0.05/0.21 aux(9) =< it(6)*aux(15) 0.05/0.21 aux(1) =< it(6)*aux(15) 0.05/0.21 aux(11) =< it(6)*aux(10) 0.05/0.21 aux(3) =< aux(9) 0.05/0.21 aux(1) =< it(6)*aux(10) 0.05/0.21 aux(3) =< aux(11) 0.05/0.21 s(1) =< aux(1)+aux(14) 0.05/0.21 aux(5) =< aux(14)+aux(3) 0.05/0.21 s(1) =< aux(3)+aux(14) 0.05/0.21 s(1) =< it([[7],8])*aux(5) 0.05/0.21 0.05/0.21 with precondition: [B=2,V__01>=2,V__04>=V__02] 0.05/0.21 0.05/0.21 * Chain [8]: 0 0.05/0.21 with precondition: [B=2,V__02>=V__04+1] 0.05/0.21 0.05/0.21 0.05/0.21 #### Cost of chains of eval_foo_bb0_in(V_x,V_y,V_z,B): 0.05/0.21 * Chain [11]: 1*s(2)+0 0.05/0.21 Such that:s(2) =< V_x-V_y+1 0.05/0.21 0.05/0.21 with precondition: [1>=V_z,V_x>=V_y] 0.05/0.21 0.05/0.21 * Chain [10]: 1*s(6)+1*s(12)+0 0.05/0.21 Such that:s(3) =< 1 0.05/0.21 s(4) =< V_x-V_y+1 0.05/0.21 s(5) =< V_z 0.05/0.21 s(6) =< s(5) 0.05/0.21 s(7) =< s(5) 0.05/0.21 s(8) =< s(6)*s(5) 0.05/0.21 s(9) =< s(6)*s(5) 0.05/0.21 s(10) =< s(6)*s(7) 0.05/0.21 s(11) =< s(8) 0.05/0.21 s(9) =< s(6)*s(7) 0.05/0.21 s(11) =< s(10) 0.05/0.21 s(12) =< s(9)+s(4) 0.05/0.21 s(13) =< s(4)+s(11) 0.05/0.21 s(12) =< s(11)+s(4) 0.05/0.21 s(12) =< s(3)*s(13) 0.05/0.21 0.05/0.21 with precondition: [V_z>=2,V_x>=V_y] 0.05/0.21 0.05/0.21 * Chain [9]: 0 0.05/0.21 with precondition: [V_y>=V_x+1] 0.05/0.21 0.05/0.21 0.05/0.21 #### Cost of chains of eval_foo_start(V_c,V_u,V_v,V_w,V_x,V_y,V_z,B): 0.05/0.21 * Chain [14]: 1*s(14)+0 0.05/0.21 Such that:s(14) =< V_x-V_y+1 0.05/0.21 0.05/0.21 with precondition: [1>=V_z,V_x>=V_y] 0.05/0.21 0.05/0.21 * Chain [13]: 1*s(18)+1*s(24)+0 0.05/0.21 Such that:s(15) =< 1 0.05/0.21 s(16) =< V_x-V_y+1 0.05/0.21 s(17) =< V_z 0.05/0.21 s(18) =< s(17) 0.05/0.21 s(19) =< s(17) 0.05/0.21 s(20) =< s(18)*s(17) 0.05/0.21 s(21) =< s(18)*s(17) 0.05/0.21 s(22) =< s(18)*s(19) 0.05/0.21 s(23) =< s(20) 0.05/0.21 s(21) =< s(18)*s(19) 0.05/0.21 s(23) =< s(22) 0.05/0.21 s(24) =< s(21)+s(16) 0.05/0.21 s(25) =< s(16)+s(23) 0.05/0.21 s(24) =< s(23)+s(16) 0.05/0.21 s(24) =< s(15)*s(25) 0.05/0.21 0.05/0.21 with precondition: [V_z>=2,V_x>=V_y] 0.05/0.21 0.05/0.21 * Chain [12]: 0 0.05/0.21 with precondition: [V_y>=V_x+1] 0.05/0.21 0.05/0.21 0.05/0.21 Closed-form bounds of eval_foo_start(V_c,V_u,V_v,V_w,V_x,V_y,V_z,B): 0.05/0.21 ------------------------------------- 0.05/0.21 * Chain [14] with precondition: [1>=V_z,V_x>=V_y] 0.05/0.21 - Upper bound: V_x-V_y+1 0.05/0.21 - Complexity: n 0.05/0.21 * Chain [13] with precondition: [V_z>=2,V_x>=V_y] 0.05/0.21 - Upper bound: V_x-V_y+1+(V_z*V_z+V_z) 0.05/0.21 - Complexity: n^2 0.05/0.21 * Chain [12] with precondition: [V_y>=V_x+1] 0.05/0.21 - Upper bound: 0 0.05/0.21 - Complexity: constant 0.05/0.21 0.05/0.21 ### Maximum cost of eval_foo_start(V_c,V_u,V_v,V_w,V_x,V_y,V_z,B): nat(V_z)*nat(V_z)+nat(V_z)+nat(V_x-V_y+1) 0.05/0.21 Asymptotic class: n^2 0.05/0.21 * Total analysis performed in 129 ms. 0.05/0.21 0.05/0.31 EOF