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