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