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