0.06/0.37 WORST_CASE(?,O(n^1)) 0.06/0.37 0.06/0.37 Preprocessing Cost Relations 0.06/0.37 ===================================== 0.06/0.37 0.06/0.37 #### Computed strongly connected components 0.06/0.37 0. recursive : [eval_foo_0/5,eval_foo_1/6,eval_foo__critedge_in/5,eval_foo_bb1_in/5,eval_foo_bb2_in/5,eval_foo_bb3_in/5,eval_foo_bb4_in/5,eval_foo_bb5_in/5,eval_foo_bb6_in/5,eval_foo_bb7_in/5] 0.06/0.37 1. non_recursive : [eval_foo_stop/1] 0.06/0.37 2. non_recursive : [eval_foo_bb8_in/1] 0.06/0.37 3. non_recursive : [eval_foo_bb1_in_loop_cont/2] 0.06/0.37 4. non_recursive : [eval_foo_bb0_in/5] 0.06/0.37 5. non_recursive : [eval_foo_start/5] 0.06/0.37 0.06/0.37 #### Obtained direct recursion through partial evaluation 0.06/0.37 0. SCC is partially evaluated into eval_foo_bb1_in/5 0.06/0.37 1. SCC is completely evaluated into other SCCs 0.06/0.37 2. SCC is completely evaluated into other SCCs 0.06/0.37 3. SCC is completely evaluated into other SCCs 0.06/0.37 4. SCC is partially evaluated into eval_foo_bb0_in/5 0.06/0.37 5. SCC is partially evaluated into eval_foo_start/5 0.06/0.37 0.06/0.37 Control-Flow Refinement of Cost Relations 0.06/0.37 ===================================== 0.06/0.37 0.06/0.37 ### Specialization of cost equations eval_foo_bb1_in/5 0.06/0.37 * CE 5 is refined into CE [8] 0.06/0.37 * CE 7 is refined into CE [9] 0.06/0.37 * CE 6 is refined into CE [10] 0.06/0.37 * CE 4 is refined into CE [11] 0.06/0.37 * CE 3 is refined into CE [12] 0.06/0.37 0.06/0.37 0.06/0.37 ### Cost equations --> "Loop" of eval_foo_bb1_in/5 0.06/0.37 * CEs [12] --> Loop 8 0.06/0.37 * CEs [8] --> Loop 9 0.06/0.37 * CEs [9] --> Loop 10 0.06/0.37 * CEs [10] --> Loop 11 0.06/0.37 * CEs [11] --> Loop 12 0.06/0.37 0.06/0.37 ### Ranking functions of CR eval_foo_bb1_in(V_an,V_bn,V__01,V__0,B) 0.06/0.37 * RF of phase [9,11]: [V_an+V_bn-V__01-V__0+1] 0.06/0.37 * RF of phase [10]: [V_an-V__0+1] 0.06/0.37 * RF of phase [12]: [V_bn-V__01+1] 0.06/0.37 0.06/0.37 #### Partial ranking functions of CR eval_foo_bb1_in(V_an,V_bn,V__01,V__0,B) 0.06/0.37 * Partial RF of phase [9,11]: 0.06/0.37 - RF of loop [9:1]: 0.06/0.37 V_an-V__0+1 0.06/0.37 - RF of loop [11:1]: 0.06/0.37 V_bn-V__01+1 0.06/0.37 * Partial RF of phase [10]: 0.06/0.37 - RF of loop [10:1]: 0.06/0.37 V_an-V__0+1 0.06/0.37 * Partial RF of phase [12]: 0.06/0.37 - RF of loop [12:1]: 0.06/0.37 V_bn-V__01+1 0.06/0.37 0.06/0.37 0.06/0.37 ### Specialization of cost equations eval_foo_bb0_in/5 0.06/0.37 * CE 2 is refined into CE [13,14,15,16] 0.06/0.37 0.06/0.37 0.06/0.37 ### Cost equations --> "Loop" of eval_foo_bb0_in/5 0.06/0.37 * CEs [13] --> Loop 13 0.06/0.37 * CEs [14] --> Loop 14 0.06/0.37 * CEs [15] --> Loop 15 0.06/0.37 * CEs [16] --> Loop 16 0.06/0.37 0.06/0.37 ### Ranking functions of CR eval_foo_bb0_in(V_i,V_j,V_an,V_bn,B) 0.06/0.37 0.06/0.37 #### Partial ranking functions of CR eval_foo_bb0_in(V_i,V_j,V_an,V_bn,B) 0.06/0.37 0.06/0.37 0.06/0.37 ### Specialization of cost equations eval_foo_start/5 0.06/0.37 * CE 1 is refined into CE [17,18,19,20] 0.06/0.37 0.06/0.37 0.06/0.37 ### Cost equations --> "Loop" of eval_foo_start/5 0.06/0.37 * CEs [20] --> Loop 17 0.06/0.37 * CEs [19] --> Loop 18 0.06/0.37 * CEs [18] --> Loop 19 0.06/0.37 * CEs [17] --> Loop 20 0.06/0.37 0.06/0.37 ### Ranking functions of CR eval_foo_start(V_i,V_j,V_an,V_bn,B) 0.06/0.37 0.06/0.37 #### Partial ranking functions of CR eval_foo_start(V_i,V_j,V_an,V_bn,B) 0.06/0.37 0.06/0.37 0.06/0.37 Computing Bounds 0.06/0.37 ===================================== 0.06/0.37 0.06/0.37 #### Cost of chains of eval_foo_bb1_in(V_an,V_bn,V__01,V__0,B): 0.06/0.37 * Chain [[12],8]: 1*it(12)+0 0.06/0.37 Such that:it(12) =< V_bn-V__01+1 0.06/0.37 0.06/0.37 with precondition: [B=2,V__0>=V_an+1,V_bn>=V__01] 0.06/0.37 0.06/0.37 * Chain [[10],8]: 1*it(10)+0 0.06/0.37 Such that:it(10) =< V_an-V__0+1 0.06/0.37 0.06/0.37 with precondition: [B=2,V__01>=V_bn+1,V_an>=V__0] 0.06/0.37 0.06/0.37 * Chain [[9,11],[12],8]: 1*it(9)+1*it(11)+1*it(12)+0 0.06/0.37 Such that:it(9) =< V_an-V__0+1 0.06/0.37 it(11) =< V_bn-V__01 0.06/0.37 aux(3) =< V_an+V_bn-V__01-V__0+1 0.06/0.37 aux(4) =< V_an+V_bn-V__01-V__0+2 0.06/0.37 aux(5) =< V_bn-V__01+1 0.06/0.37 aux(2) =< aux(3) 0.06/0.37 aux(2) =< aux(4) 0.06/0.37 it(12) =< aux(4) 0.06/0.37 it(11) =< aux(5) 0.06/0.37 it(12) =< aux(5) 0.06/0.37 it(9) =< aux(3) 0.06/0.37 it(11) =< aux(3) 0.06/0.37 it(9) =< aux(2) 0.06/0.37 it(11) =< aux(2) 0.06/0.37 0.06/0.37 with precondition: [B=2,V_bn>=V__01,V_an>=V__0] 0.06/0.37 0.06/0.37 * Chain [[9,11],[10],8]: 1*it(9)+1*it(10)+1*it(11)+0 0.06/0.37 Such that:it(9) =< V_an-V__0 0.06/0.37 it(11) =< V_bn-V__01+1 0.06/0.37 aux(6) =< V_an+V_bn-V__01-V__0+1 0.06/0.37 aux(7) =< V_an+V_bn-V__01-V__0+2 0.06/0.37 aux(8) =< V_an-V__0+1 0.06/0.37 aux(2) =< aux(6) 0.06/0.37 aux(2) =< aux(7) 0.06/0.37 it(10) =< aux(7) 0.06/0.37 it(9) =< aux(8) 0.06/0.37 it(10) =< aux(8) 0.06/0.37 it(9) =< aux(6) 0.06/0.37 it(11) =< aux(6) 0.06/0.37 it(9) =< aux(2) 0.06/0.37 it(11) =< aux(2) 0.06/0.37 0.06/0.37 with precondition: [B=2,V_bn>=V__01,V_an>=V__0] 0.06/0.37 0.06/0.37 * Chain [8]: 0 0.06/0.37 with precondition: [B=2,V__0>=V_an+1,V__01>=V_bn+1] 0.06/0.37 0.06/0.37 0.06/0.37 #### Cost of chains of eval_foo_bb0_in(V_i,V_j,V_an,V_bn,B): 0.06/0.37 * Chain [16]: 1*s(15)+1*s(16)+1*s(21)+1*s(22)+1*s(24)+1*s(25)+0 0.06/0.37 Such that:s(17) =< -V_i-V_j+V_an+V_bn+1 0.06/0.37 s(18) =< -V_i-V_j+V_an+V_bn+2 0.06/0.37 s(15) =< -V_i+V_an 0.06/0.37 s(19) =< -V_i+V_an+1 0.06/0.37 s(16) =< -V_j+V_bn 0.06/0.37 s(20) =< -V_j+V_bn+1 0.06/0.37 s(21) =< s(19) 0.06/0.37 s(22) =< s(20) 0.06/0.37 s(23) =< s(17) 0.06/0.37 s(23) =< s(18) 0.06/0.37 s(24) =< s(18) 0.06/0.37 s(15) =< s(19) 0.06/0.37 s(24) =< s(19) 0.06/0.37 s(15) =< s(17) 0.06/0.37 s(22) =< s(17) 0.06/0.37 s(15) =< s(23) 0.06/0.37 s(22) =< s(23) 0.06/0.37 s(25) =< s(18) 0.06/0.37 s(16) =< s(20) 0.06/0.37 s(25) =< s(20) 0.06/0.37 s(21) =< s(17) 0.06/0.37 s(16) =< s(17) 0.06/0.37 s(21) =< s(23) 0.06/0.37 s(16) =< s(23) 0.06/0.37 0.06/0.37 with precondition: [V_an>=V_i,V_bn>=V_j] 0.06/0.37 0.06/0.37 * Chain [15]: 1*s(26)+0 0.06/0.37 Such that:s(26) =< -V_i+V_an+1 0.06/0.37 0.06/0.37 with precondition: [V_an>=V_i,V_j>=V_bn+1] 0.06/0.37 0.06/0.37 * Chain [14]: 1*s(27)+0 0.06/0.37 Such that:s(27) =< -V_j+V_bn+1 0.06/0.37 0.06/0.37 with precondition: [V_bn>=V_j,V_i>=V_an+1] 0.06/0.37 0.06/0.37 * Chain [13]: 0 0.06/0.37 with precondition: [V_i>=V_an+1,V_j>=V_bn+1] 0.06/0.37 0.06/0.37 0.06/0.37 #### Cost of chains of eval_foo_start(V_i,V_j,V_an,V_bn,B): 0.06/0.37 * Chain [20]: 1*s(30)+1*s(32)+1*s(34)+1*s(35)+1*s(37)+1*s(38)+0 0.06/0.37 Such that:s(28) =< -V_i-V_j+V_an+V_bn+1 0.06/0.37 s(29) =< -V_i-V_j+V_an+V_bn+2 0.06/0.37 s(30) =< -V_i+V_an 0.06/0.37 s(31) =< -V_i+V_an+1 0.06/0.37 s(32) =< -V_j+V_bn 0.06/0.37 s(33) =< -V_j+V_bn+1 0.06/0.37 s(34) =< s(31) 0.06/0.37 s(35) =< s(33) 0.06/0.37 s(36) =< s(28) 0.06/0.37 s(36) =< s(29) 0.06/0.37 s(37) =< s(29) 0.06/0.37 s(30) =< s(31) 0.06/0.37 s(37) =< s(31) 0.06/0.37 s(30) =< s(28) 0.06/0.37 s(35) =< s(28) 0.06/0.37 s(30) =< s(36) 0.06/0.37 s(35) =< s(36) 0.06/0.37 s(38) =< s(29) 0.06/0.37 s(32) =< s(33) 0.06/0.37 s(38) =< s(33) 0.06/0.37 s(34) =< s(28) 0.06/0.37 s(32) =< s(28) 0.06/0.37 s(34) =< s(36) 0.06/0.37 s(32) =< s(36) 0.06/0.37 0.06/0.37 with precondition: [V_an>=V_i,V_bn>=V_j] 0.06/0.37 0.06/0.37 * Chain [19]: 1*s(39)+0 0.06/0.37 Such that:s(39) =< -V_i+V_an+1 0.06/0.37 0.06/0.37 with precondition: [V_an>=V_i,V_j>=V_bn+1] 0.06/0.37 0.06/0.37 * Chain [18]: 1*s(40)+0 0.06/0.37 Such that:s(40) =< -V_j+V_bn+1 0.06/0.37 0.06/0.37 with precondition: [V_bn>=V_j,V_i>=V_an+1] 0.06/0.37 0.06/0.37 * Chain [17]: 0 0.06/0.37 with precondition: [V_i>=V_an+1,V_j>=V_bn+1] 0.06/0.37 0.06/0.37 0.06/0.37 Closed-form bounds of eval_foo_start(V_i,V_j,V_an,V_bn,B): 0.06/0.37 ------------------------------------- 0.06/0.37 * Chain [20] with precondition: [V_an>=V_i,V_bn>=V_j] 0.06/0.37 - Upper bound: -4*V_i-4*V_j+4*V_an+4*V_bn+6 0.06/0.37 - Complexity: n 0.06/0.37 * Chain [19] with precondition: [V_an>=V_i,V_j>=V_bn+1] 0.06/0.37 - Upper bound: -V_i+V_an+1 0.06/0.37 - Complexity: n 0.06/0.37 * Chain [18] with precondition: [V_bn>=V_j,V_i>=V_an+1] 0.06/0.37 - Upper bound: -V_j+V_bn+1 0.06/0.37 - Complexity: n 0.06/0.37 * Chain [17] with precondition: [V_i>=V_an+1,V_j>=V_bn+1] 0.06/0.37 - Upper bound: 0 0.06/0.37 - Complexity: constant 0.06/0.37 0.06/0.37 ### Maximum cost of eval_foo_start(V_i,V_j,V_an,V_bn,B): max([nat(-V_j+V_bn+1),nat(-V_j+V_bn)+nat(-V_i+V_an)+nat(-V_j+V_bn+1)+nat(-V_i-V_j+V_an+V_bn+2)*2+nat(-V_i+V_an+1)]) 0.06/0.37 Asymptotic class: n 0.06/0.37 * Total analysis performed in 276 ms. 0.06/0.37 0.06/0.47 EOF