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