0.04/0.15 WORST_CASE(?,O(n^1)) 0.04/0.15 0.04/0.15 Preprocessing Cost Relations 0.04/0.15 ===================================== 0.04/0.15 0.04/0.15 #### Computed strongly connected components 0.04/0.15 0. recursive : [eval_foo_bb1_in/4,eval_foo_bb2_in/4] 0.04/0.15 1. non_recursive : [eval_foo_stop/1] 0.04/0.15 2. non_recursive : [eval_foo_bb3_in/1] 0.04/0.15 3. non_recursive : [eval_foo_bb1_in_loop_cont/2] 0.04/0.15 4. non_recursive : [eval_foo_bb0_in/4] 0.04/0.15 5. non_recursive : [eval_foo_start/5] 0.04/0.15 0.04/0.15 #### Obtained direct recursion through partial evaluation 0.04/0.15 0. SCC is partially evaluated into eval_foo_bb1_in/4 0.04/0.15 1. SCC is completely evaluated into other SCCs 0.04/0.15 2. SCC is completely evaluated into other SCCs 0.04/0.15 3. SCC is completely evaluated into other SCCs 0.04/0.15 4. SCC is partially evaluated into eval_foo_bb0_in/4 0.04/0.15 5. SCC is partially evaluated into eval_foo_start/5 0.04/0.15 0.04/0.15 Control-Flow Refinement of Cost Relations 0.04/0.15 ===================================== 0.04/0.15 0.04/0.15 ### Specialization of cost equations eval_foo_bb1_in/4 0.04/0.15 * CE 5 is refined into CE [6] 0.04/0.15 * CE 4 is refined into CE [7] 0.04/0.15 * CE 3 is refined into CE [8] 0.04/0.15 0.04/0.15 0.04/0.15 ### Cost equations --> "Loop" of eval_foo_bb1_in/4 0.04/0.15 * CEs [8] --> Loop 6 0.04/0.15 * CEs [6] --> Loop 7 0.04/0.15 * CEs [7] --> Loop 8 0.04/0.15 0.04/0.15 ### Ranking functions of CR eval_foo_bb1_in(V__02,V__01,V__0,B) 0.04/0.15 * RF of phase [6]: [-V__02/2-V__01/2+V__0/2+101/2] 0.04/0.15 0.04/0.15 #### Partial ranking functions of CR eval_foo_bb1_in(V__02,V__01,V__0,B) 0.04/0.15 * Partial RF of phase [6]: 0.04/0.15 - RF of loop [6:1]: 0.04/0.15 -V__02/2-V__01/2+V__0/2+101/2 0.04/0.15 0.04/0.15 0.04/0.15 ### Specialization of cost equations eval_foo_bb0_in/4 0.04/0.15 * CE 2 is refined into CE [9,10,11,12] 0.04/0.15 0.04/0.15 0.04/0.15 ### Cost equations --> "Loop" of eval_foo_bb0_in/4 0.04/0.15 * CEs [12] --> Loop 9 0.04/0.15 * CEs [11] --> Loop 10 0.04/0.15 * CEs [10] --> Loop 11 0.04/0.15 * CEs [9] --> Loop 12 0.04/0.15 0.04/0.15 ### Ranking functions of CR eval_foo_bb0_in(V_k,V_i,V_j,B) 0.04/0.15 0.04/0.15 #### Partial ranking functions of CR eval_foo_bb0_in(V_k,V_i,V_j,B) 0.04/0.15 0.04/0.15 0.04/0.15 ### Specialization of cost equations eval_foo_start/5 0.04/0.15 * CE 1 is refined into CE [13,14,15,16] 0.04/0.15 0.04/0.15 0.04/0.15 ### Cost equations --> "Loop" of eval_foo_start/5 0.04/0.15 * CEs [16] --> Loop 13 0.04/0.15 * CEs [15] --> Loop 14 0.04/0.15 * CEs [14] --> Loop 15 0.04/0.15 * CEs [13] --> Loop 16 0.04/0.15 0.04/0.15 ### Ranking functions of CR eval_foo_start(V_k,V_i,V_j,V_tmp,B) 0.04/0.15 0.04/0.15 #### Partial ranking functions of CR eval_foo_start(V_k,V_i,V_j,V_tmp,B) 0.04/0.15 0.04/0.15 0.04/0.15 Computing Bounds 0.04/0.15 ===================================== 0.04/0.15 0.04/0.15 #### Cost of chains of eval_foo_bb1_in(V__02,V__01,V__0,B): 0.04/0.15 * Chain [[6],8]: 1*it(6)+0 0.04/0.15 Such that:it(6) =< -V__02/2-V__01/2+V__0/2+101/2 0.04/0.15 it(6) =< V__0 0.04/0.15 0.04/0.15 with precondition: [B=2,100>=V__01,V__0>=101,V__0>=V__02] 0.04/0.15 0.04/0.15 * Chain [[6],7]: 1*it(6)+0 0.04/0.15 Such that:it(6) =< -V__02/2-V__01/2+V__0/2+101/2 0.04/0.15 0.04/0.15 with precondition: [B=2,100>=V__01,V__0>=V__02] 0.04/0.15 0.04/0.15 * Chain [8]: 0 0.04/0.15 with precondition: [B=2,V__01>=101] 0.04/0.15 0.04/0.15 * Chain [7]: 0 0.04/0.15 with precondition: [B=2,V__02>=V__0+1] 0.04/0.15 0.04/0.15 0.04/0.15 #### Cost of chains of eval_foo_bb0_in(V_k,V_i,V_j,B): 0.04/0.15 * Chain [12]: 1*s(1)+0 0.04/0.15 Such that:s(1) =< V_k 0.04/0.15 s(1) =< V_k/2-V_i/2-V_j/2+101/2 0.04/0.15 0.04/0.15 with precondition: [100>=V_i,V_k>=101,V_k>=V_j] 0.04/0.15 0.04/0.15 * Chain [11]: 1*s(2)+0 0.04/0.15 Such that:s(2) =< V_k/2-V_i/2-V_j/2+101/2 0.04/0.15 0.04/0.15 with precondition: [100>=V_i,V_k>=V_j] 0.04/0.15 0.04/0.15 * Chain [10]: 0 0.04/0.15 with precondition: [V_i>=101] 0.04/0.15 0.04/0.15 * Chain [9]: 0 0.04/0.15 with precondition: [V_j>=V_k+1] 0.04/0.15 0.04/0.15 0.04/0.15 #### Cost of chains of eval_foo_start(V_k,V_i,V_j,V_tmp,B): 0.04/0.15 * Chain [16]: 1*s(3)+0 0.04/0.15 Such that:s(3) =< V_k 0.04/0.15 s(3) =< V_k/2-V_i/2-V_j/2+101/2 0.04/0.15 0.04/0.15 with precondition: [100>=V_i,V_k>=101,V_k>=V_j] 0.04/0.15 0.04/0.15 * Chain [15]: 1*s(4)+0 0.04/0.15 Such that:s(4) =< V_k/2-V_i/2-V_j/2+101/2 0.04/0.15 0.04/0.15 with precondition: [100>=V_i,V_k>=V_j] 0.04/0.15 0.04/0.15 * Chain [14]: 0 0.04/0.15 with precondition: [V_i>=101] 0.04/0.15 0.04/0.15 * Chain [13]: 0 0.04/0.15 with precondition: [V_j>=V_k+1] 0.04/0.15 0.04/0.15 0.04/0.15 Closed-form bounds of eval_foo_start(V_k,V_i,V_j,V_tmp,B): 0.04/0.15 ------------------------------------- 0.04/0.15 * Chain [16] with precondition: [100>=V_i,V_k>=101,V_k>=V_j] 0.04/0.15 - Upper bound: V_k 0.04/0.15 - Complexity: n 0.04/0.15 * Chain [15] with precondition: [100>=V_i,V_k>=V_j] 0.04/0.15 - Upper bound: V_k/2-V_i/2-V_j/2+101/2 0.04/0.15 - Complexity: n 0.04/0.15 * Chain [14] with precondition: [V_i>=101] 0.04/0.15 - Upper bound: 0 0.04/0.15 - Complexity: constant 0.04/0.15 * Chain [13] with precondition: [V_j>=V_k+1] 0.04/0.15 - Upper bound: 0 0.04/0.15 - Complexity: constant 0.04/0.15 0.04/0.15 ### Maximum cost of eval_foo_start(V_k,V_i,V_j,V_tmp,B): max([nat(V_k),nat(V_k/2-V_i/2-V_j/2+101/2)]) 0.04/0.15 Asymptotic class: n 0.04/0.15 * Total analysis performed in 79 ms. 0.04/0.15 0.04/0.25 EOF