0.05/0.21 MAYBE 0.05/0.21 0.05/0.21 Preprocessing Cost Relations 0.05/0.21 ===================================== 0.05/0.21 0.05/0.21 #### Computed strongly connected components 0.05/0.21 0. recursive : [eval_foo_bb1_in/2,eval_foo_bb2_in/2] 0.05/0.21 1. non_recursive : [eval_foo_stop/1] 0.05/0.21 2. non_recursive : [eval_foo_bb3_in/1] 0.05/0.21 3. non_recursive : [eval_foo_bb1_in_loop_cont/2] 0.05/0.21 4. non_recursive : [eval_foo_bb0_in/2] 0.05/0.21 5. non_recursive : [eval_foo_start/2] 0.05/0.21 0.05/0.21 #### Obtained direct recursion through partial evaluation 0.05/0.21 0. SCC is partially evaluated into eval_foo_bb1_in/2 0.05/0.21 1. SCC is completely evaluated into other SCCs 0.05/0.21 2. SCC is completely evaluated into other SCCs 0.05/0.21 3. SCC is completely evaluated into other SCCs 0.05/0.21 4. SCC is partially evaluated into eval_foo_bb0_in/2 0.05/0.21 5. SCC is partially evaluated into eval_foo_start/2 0.05/0.21 0.05/0.21 Control-Flow Refinement of Cost Relations 0.05/0.21 ===================================== 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_foo_bb1_in/2 0.05/0.21 * CE 9 is refined into CE [10] 0.05/0.21 * CE 8 is refined into CE [11] 0.05/0.21 * CE 6 is refined into CE [12] 0.05/0.21 * CE 7 is refined into CE [13] 0.05/0.21 * CE 5 is refined into CE [14] 0.05/0.21 * CE 4 is refined into CE [15] 0.05/0.21 * CE 3 is refined into CE [16] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_foo_bb1_in/2 0.05/0.21 * CEs [12] --> Loop 10 0.05/0.21 * CEs [13] --> Loop 11 0.05/0.21 * CEs [14] --> Loop 12 0.05/0.21 * CEs [15] --> Loop 13 0.05/0.21 * CEs [16] --> Loop 14 0.05/0.21 * CEs [10] --> Loop 15 0.05/0.21 * CEs [11] --> Loop 16 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_foo_bb1_in(V__0,B) 0.05/0.21 * RF of phase [10]: [V__0] 0.05/0.21 * RF of phase [13]: [-V__0+29] 0.05/0.21 * RF of phase [14]: [-V__0+50] 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_foo_bb1_in(V__0,B) 0.05/0.21 * Partial RF of phase [10]: 0.05/0.21 - RF of loop [10:1]: 0.05/0.21 V__0 0.05/0.21 * Partial RF of phase [13]: 0.05/0.21 - RF of loop [13:1]: 0.05/0.21 -V__0+29 0.05/0.21 * Partial RF of phase [14]: 0.05/0.21 - RF of loop [14:1]: 0.05/0.21 -V__0+50 0.05/0.21 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_foo_bb0_in/2 0.05/0.21 * CE 2 is refined into CE [17,18,19,20,21,22,23] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_foo_bb0_in/2 0.05/0.21 * CEs [22] --> Loop 17 0.05/0.21 * CEs [21] --> Loop 18 0.05/0.21 * CEs [23] --> Loop 19 0.05/0.21 * CEs [20] --> Loop 20 0.05/0.21 * CEs [19] --> Loop 21 0.05/0.21 * CEs [18] --> Loop 22 0.05/0.21 * CEs [17] --> Loop 23 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_foo_bb0_in(V_i,B) 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_foo_bb0_in(V_i,B) 0.05/0.21 0.05/0.21 0.05/0.21 ### Specialization of cost equations eval_foo_start/2 0.05/0.21 * CE 1 is refined into CE [24,25,26,27,28,29,30] 0.05/0.21 0.05/0.21 0.05/0.21 ### Cost equations --> "Loop" of eval_foo_start/2 0.05/0.21 * CEs [30] --> Loop 24 0.05/0.21 * CEs [29] --> Loop 25 0.05/0.21 * CEs [28] --> Loop 26 0.05/0.21 * CEs [27] --> Loop 27 0.05/0.21 * CEs [26] --> Loop 28 0.05/0.21 * CEs [25] --> Loop 29 0.05/0.21 * CEs [24] --> Loop 30 0.05/0.21 0.05/0.21 ### Ranking functions of CR eval_foo_start(V_i,B) 0.05/0.21 0.05/0.21 #### Partial ranking functions of CR eval_foo_start(V_i,B) 0.05/0.21 0.05/0.21 0.05/0.21 Computing Bounds 0.05/0.21 ===================================== 0.05/0.21 0.05/0.21 #### Cost of chains of eval_foo_bb1_in(V__0,B): 0.05/0.21 * Chain [[14],15]: 1*it(14)+0 0.05/0.21 Such that:it(14) =< -V__0+50 0.05/0.21 0.05/0.21 with precondition: [B=2,49>=V__0,V__0>=40] 0.05/0.21 0.05/0.21 * Chain [[13],[12]]...: 1*it(12)+1*it(13)+0 0.05/0.21 Such that:it(13) =< -V__0+29 0.05/0.21 0.05/0.21 with precondition: [B=2,28>=V__0,V__0>=20] 0.05/0.21 0.05/0.21 * Chain [[12]]...: 1*it(12)+0 0.05/0.21 with precondition: [V__0>=29,39>=V__0,B=2] 0.05/0.21 0.05/0.21 * Chain [[11]]...: 1*it(11)+0 0.05/0.21 with precondition: [V__0>=12,19>=V__0,B=2] 0.05/0.21 0.05/0.21 * Chain [[10],16]: 1*it(10)+0 0.05/0.21 Such that:it(10) =< V__0 0.05/0.21 0.05/0.21 with precondition: [B=2,11>=V__0,V__0>=1] 0.05/0.21 0.05/0.21 * Chain [16]: 0 0.05/0.21 with precondition: [B=2,0>=V__0] 0.05/0.21 0.05/0.21 * Chain [15]: 0 0.05/0.21 with precondition: [B=2,V__0>=50] 0.05/0.21 0.05/0.21 0.05/0.21 #### Cost of chains of eval_foo_bb0_in(V_i,B): 0.05/0.21 * Chain [23]: 1*s(1)+0 0.05/0.21 Such that:s(1) =< -V_i+50 0.05/0.21 0.05/0.21 with precondition: [49>=V_i,V_i>=40] 0.05/0.21 0.05/0.21 * Chain [22]: 1*s(2)+0 0.05/0.21 Such that:s(2) =< V_i 0.05/0.21 0.05/0.21 with precondition: [11>=V_i,V_i>=1] 0.05/0.21 0.05/0.21 * Chain [21]: 0 0.05/0.21 with precondition: [0>=V_i] 0.05/0.21 0.05/0.21 * Chain [20]: 0 0.05/0.21 with precondition: [V_i>=50] 0.05/0.21 0.05/0.21 * Chain [19]...: 1*s(3)+0 0.05/0.21 with precondition: [39>=V_i,V_i>=29] 0.05/0.21 0.05/0.21 * Chain [18]...: 1*s(4)+1*s(5)+0 0.05/0.21 Such that:s(4) =< -V_i+29 0.05/0.21 0.05/0.21 with precondition: [28>=V_i,V_i>=20] 0.05/0.21 0.05/0.21 * Chain [17]...: 1*s(6)+0 0.05/0.21 with precondition: [19>=V_i,V_i>=12] 0.05/0.21 0.05/0.21 0.05/0.21 #### Cost of chains of eval_foo_start(V_i,B): 0.05/0.21 * Chain [30]: 1*s(7)+0 0.05/0.21 Such that:s(7) =< -V_i+50 0.05/0.21 0.05/0.21 with precondition: [49>=V_i,V_i>=40] 0.05/0.21 0.05/0.21 * Chain [29]: 1*s(8)+0 0.05/0.21 Such that:s(8) =< V_i 0.05/0.21 0.05/0.21 with precondition: [11>=V_i,V_i>=1] 0.05/0.21 0.05/0.21 * Chain [28]: 0 0.05/0.21 with precondition: [0>=V_i] 0.05/0.21 0.05/0.21 * Chain [27]: 0 0.05/0.21 with precondition: [V_i>=50] 0.05/0.21 0.05/0.21 * Chain [26]...: 1*s(9)+0 0.05/0.21 with precondition: [39>=V_i,V_i>=29] 0.05/0.21 0.05/0.21 * Chain [25]...: 1*s(10)+1*s(11)+0 0.05/0.21 Such that:s(10) =< -V_i+29 0.05/0.21 0.05/0.21 with precondition: [28>=V_i,V_i>=20] 0.05/0.21 0.05/0.21 * Chain [24]...: 1*s(12)+0 0.05/0.21 with precondition: [19>=V_i,V_i>=12] 0.05/0.21 0.05/0.21 0.05/0.21 Closed-form bounds of eval_foo_start(V_i,B): 0.05/0.21 ------------------------------------- 0.05/0.21 * Chain [30] with precondition: [49>=V_i,V_i>=40] 0.05/0.21 - Upper bound: -V_i+50 0.05/0.21 - Complexity: n 0.05/0.21 * Chain [29] with precondition: [11>=V_i,V_i>=1] 0.05/0.21 - Upper bound: V_i 0.05/0.21 - Complexity: n 0.05/0.21 * Chain [28] with precondition: [0>=V_i] 0.05/0.21 - Upper bound: 0 0.05/0.21 - Complexity: constant 0.05/0.21 * Chain [27] with precondition: [V_i>=50] 0.05/0.21 - Upper bound: 0 0.05/0.21 - Complexity: constant 0.05/0.21 * Chain [26]... with precondition: [39>=V_i,V_i>=29] 0.05/0.21 - Upper bound: inf 0.05/0.21 - Complexity: infinity 0.05/0.21 * Chain [25]... with precondition: [28>=V_i,V_i>=20] 0.05/0.21 - Upper bound: inf 0.05/0.21 - Complexity: infinity 0.05/0.21 * Chain [24]... with precondition: [19>=V_i,V_i>=12] 0.05/0.21 - Upper bound: inf 0.05/0.21 - Complexity: infinity 0.05/0.21 0.05/0.21 ### Maximum cost of eval_foo_start(V_i,B): inf 0.05/0.21 Asymptotic class: infinity 0.05/0.21 * Total analysis performed in 133 ms. 0.05/0.21 0.05/0.31 EOF