0.05/0.24 MAYBE 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/3,eval_foo_bb2_in/3,eval_foo_bb3_in/3,eval_foo_bb4_in/3] 0.05/0.24 1. non_recursive : [eval_foo_stop/1] 0.05/0.24 2. non_recursive : [eval_foo_bb5_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/2] 0.05/0.24 5. non_recursive : [eval_foo_start/3] 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/3 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/2 0.05/0.24 5. SCC is partially evaluated into eval_foo_start/3 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/3 0.05/0.24 * CE 9 is refined into CE [10] 0.05/0.24 * CE 8 is refined into CE [11] 0.05/0.24 * CE 6 is refined into CE [12] 0.05/0.24 * CE 7 is refined into CE [13] 0.05/0.24 * CE 3 is refined into CE [14] 0.05/0.24 * CE 4 is refined into CE [15] 0.05/0.24 * CE 5 is refined into CE [16] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_foo_bb1_in/3 0.05/0.24 * CEs [14] --> Loop 10 0.05/0.24 * CEs [15] --> Loop 11 0.05/0.24 * CEs [16] --> Loop 12 0.05/0.24 * CEs [13] --> Loop 13 0.05/0.24 * CEs [12] --> Loop 14 0.05/0.24 * CEs [10] --> Loop 15 0.05/0.24 * CEs [11] --> Loop 16 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_foo_bb1_in(V__01,V__0,B) 0.05/0.24 * RF of phase [10]: [V__0-1] 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_foo_bb1_in(V__01,V__0,B) 0.05/0.24 * Partial RF of phase [10]: 0.05/0.24 - RF of loop [10:1]: 0.05/0.24 V__0-1 0.05/0.24 * Partial RF of phase [13,14]: 0.05/0.24 - RF of loop [13:1]: 0.05/0.24 -V__0/8-15/8 depends on loops [14:1] 0.05/0.24 - RF of loop [14:1]: 0.05/0.24 V__0/8-15/8 depends on loops [13:1] 0.05/0.24 0.05/0.24 0.05/0.24 ### Specialization of cost equations eval_foo_bb0_in/2 0.05/0.24 * CE 2 is refined into CE [17,18,19,20,21,22] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_foo_bb0_in/2 0.05/0.24 * CEs [22] --> Loop 17 0.05/0.24 * CEs [21] --> Loop 18 0.05/0.24 * CEs [19] --> Loop 19 0.05/0.24 * CEs [18] --> Loop 20 0.05/0.24 * CEs [20] --> Loop 21 0.05/0.24 * CEs [17] --> Loop 22 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_foo_bb0_in(V_i,B) 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_foo_bb0_in(V_i,B) 0.05/0.24 0.05/0.24 0.05/0.24 ### Specialization of cost equations eval_foo_start/3 0.05/0.24 * CE 1 is refined into CE [23,24,25,26,27,28] 0.05/0.24 0.05/0.24 0.05/0.24 ### Cost equations --> "Loop" of eval_foo_start/3 0.05/0.24 * CEs [28] --> Loop 23 0.05/0.24 * CEs [27] --> Loop 24 0.05/0.24 * CEs [26] --> Loop 25 0.05/0.24 * CEs [25] --> Loop 26 0.05/0.24 * CEs [24] --> Loop 27 0.05/0.24 * CEs [23] --> Loop 28 0.05/0.24 0.05/0.24 ### Ranking functions of CR eval_foo_start(V_i,V_range,B) 0.05/0.24 0.05/0.24 #### Partial ranking functions of CR eval_foo_start(V_i,V_range,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__01,V__0,B): 0.05/0.24 * Chain [[13,14]]...: 2*it(13)+0 0.05/0.24 with precondition: [V__01=20,20>=V__0,V__0+20>=0,B=2] 0.05/0.24 0.05/0.24 * Chain [[11]]...: 1*it(11)+0 0.05/0.24 with precondition: [0>=V__0,V__01>=20,V__0+V__01>=5,B=2] 0.05/0.24 0.05/0.24 * Chain [[10],12,16]: 1*it(10)+1 0.05/0.24 Such that:it(10) =< V__0 0.05/0.24 0.05/0.24 with precondition: [B=2,V__01>=20,V__0>=2,V__01>=V__0+5] 0.05/0.24 0.05/0.24 * Chain [[10],12,15]: 1*it(10)+1 0.05/0.24 Such that:it(10) =< V__0 0.05/0.24 0.05/0.24 with precondition: [B=2,V__01>=20,V__0>=2,V__01>=V__0+5] 0.05/0.24 0.05/0.24 * Chain [16]: 0 0.05/0.24 with precondition: [B=2,20>=V__01,V__01+1>=0,0>=V__0+V__01+1] 0.05/0.24 0.05/0.24 * Chain [15]: 0 0.05/0.24 with precondition: [B=2,20>=V__01,V__01+1>=0,V__0>=V__01+1] 0.05/0.24 0.05/0.25 * Chain [12,16]: 1 0.05/0.25 with precondition: [V__0=1,B=2,V__01>=20] 0.05/0.25 0.05/0.25 * Chain [12,15]: 1 0.05/0.25 with precondition: [V__0=1,B=2,V__01>=20] 0.05/0.25 0.05/0.25 0.05/0.25 #### Cost of chains of eval_foo_bb0_in(V_i,B): 0.05/0.25 * Chain [22]: 1 0.05/0.25 with precondition: [V_i=1] 0.05/0.25 0.05/0.25 * Chain [21]: 2*s(4)+1 0.05/0.25 Such that:s(3) =< V_i 0.05/0.25 s(4) =< s(3) 0.05/0.25 0.05/0.25 with precondition: [15>=V_i,V_i>=2] 0.05/0.25 0.05/0.25 * Chain [20]: 0 0.05/0.25 with precondition: [0>=V_i+21] 0.05/0.25 0.05/0.25 * Chain [19]: 0 0.05/0.25 with precondition: [V_i>=21] 0.05/0.25 0.05/0.25 * Chain [18]...: 2*s(5)+0 0.05/0.25 with precondition: [20>=V_i,V_i+20>=0] 0.05/0.25 0.05/0.25 * Chain [17]...: 1*s(6)+0 0.05/0.25 with precondition: [0>=V_i,V_i+15>=0] 0.05/0.25 0.05/0.25 0.05/0.25 #### Cost of chains of eval_foo_start(V_i,V_range,B): 0.05/0.25 * Chain [28]: 1 0.05/0.25 with precondition: [V_i=1] 0.05/0.25 0.05/0.25 * Chain [27]: 2*s(8)+1 0.05/0.25 Such that:s(7) =< V_i 0.05/0.25 s(8) =< s(7) 0.05/0.25 0.05/0.25 with precondition: [15>=V_i,V_i>=2] 0.05/0.25 0.05/0.25 * Chain [26]: 0 0.05/0.25 with precondition: [0>=V_i+21] 0.05/0.25 0.05/0.25 * Chain [25]: 0 0.05/0.25 with precondition: [V_i>=21] 0.05/0.25 0.05/0.25 * Chain [24]...: 2*s(9)+0 0.05/0.25 with precondition: [20>=V_i,V_i+20>=0] 0.05/0.25 0.05/0.25 * Chain [23]...: 1*s(10)+0 0.05/0.25 with precondition: [0>=V_i,V_i+15>=0] 0.05/0.25 0.05/0.25 0.05/0.25 Closed-form bounds of eval_foo_start(V_i,V_range,B): 0.05/0.25 ------------------------------------- 0.05/0.25 * Chain [28] with precondition: [V_i=1] 0.05/0.25 - Upper bound: 1 0.05/0.25 - Complexity: constant 0.05/0.25 * Chain [27] with precondition: [15>=V_i,V_i>=2] 0.05/0.25 - Upper bound: 2*V_i+1 0.05/0.25 - Complexity: n 0.05/0.25 * Chain [26] with precondition: [0>=V_i+21] 0.05/0.25 - Upper bound: 0 0.05/0.25 - Complexity: constant 0.05/0.25 * Chain [25] with precondition: [V_i>=21] 0.05/0.25 - Upper bound: 0 0.05/0.25 - Complexity: constant 0.05/0.25 * Chain [24]... with precondition: [20>=V_i,V_i+20>=0] 0.05/0.25 - Upper bound: inf 0.05/0.25 - Complexity: infinity 0.05/0.25 * Chain [23]... with precondition: [0>=V_i,V_i+15>=0] 0.05/0.25 - Upper bound: inf 0.05/0.25 - Complexity: infinity 0.05/0.25 0.05/0.25 ### Maximum cost of eval_foo_start(V_i,V_range,B): inf 0.05/0.25 Asymptotic class: infinity 0.05/0.25 * Total analysis performed in 171 ms. 0.05/0.25 0.05/0.35 EOF