0.71/0.76 WORST_CASE(?,O(n^2)) 0.71/0.76 0.71/0.76 Preprocessing Cost Relations 0.71/0.76 ===================================== 0.71/0.76 0.71/0.76 #### Computed strongly connected components 0.71/0.76 0. recursive : [eval_perfectg_bb3_in/4,eval_perfectg_bb5_in/4] 0.71/0.76 1. recursive : [eval_perfectg_10/14,eval_perfectg_9/14,eval_perfectg_bb1_in/14,eval_perfectg_bb3_in_loop_cont/15,eval_perfectg_bb4_in/14] 0.71/0.76 2. non_recursive : [eval_perfectg_stop/9] 0.71/0.76 3. non_recursive : [eval_perfectg_bb2_in/9] 0.71/0.76 4. non_recursive : [exit_location/1] 0.71/0.76 5. non_recursive : [eval_perfectg_bb1_in_loop_cont/10] 0.71/0.76 6. non_recursive : [eval_perfectg_3/9] 0.71/0.76 7. non_recursive : [eval_perfectg_2/9] 0.71/0.76 8. non_recursive : [eval_perfectg_1/9] 0.71/0.76 9. non_recursive : [eval_perfectg_bb0_in/9] 0.71/0.76 10. non_recursive : [eval_perfectg_start/9] 0.71/0.76 0.71/0.76 #### Obtained direct recursion through partial evaluation 0.71/0.76 0. SCC is partially evaluated into eval_perfectg_bb3_in/4 0.71/0.76 1. SCC is partially evaluated into eval_perfectg_bb1_in/14 0.71/0.76 2. SCC is completely evaluated into other SCCs 0.71/0.76 3. SCC is partially evaluated into eval_perfectg_bb2_in/9 0.71/0.76 4. SCC is completely evaluated into other SCCs 0.71/0.76 5. SCC is partially evaluated into eval_perfectg_bb1_in_loop_cont/10 0.71/0.76 6. SCC is partially evaluated into eval_perfectg_3/9 0.71/0.76 7. SCC is completely evaluated into other SCCs 0.71/0.76 8. SCC is completely evaluated into other SCCs 0.71/0.76 9. SCC is completely evaluated into other SCCs 0.71/0.76 10. SCC is partially evaluated into eval_perfectg_start/9 0.71/0.76 0.71/0.76 Control-Flow Refinement of Cost Relations 0.71/0.76 ===================================== 0.71/0.76 0.71/0.76 ### Specialization of cost equations eval_perfectg_bb3_in/4 0.71/0.76 * CE 21 is refined into CE [22] 0.71/0.76 * CE 20 is refined into CE [23] 0.71/0.76 * CE 19 is refined into CE [24] 0.71/0.76 0.71/0.76 0.71/0.76 ### Cost equations --> "Loop" of eval_perfectg_bb3_in/4 0.71/0.76 * CEs [24] --> Loop 22 0.71/0.76 * CEs [22] --> Loop 23 0.71/0.76 * CEs [23] --> Loop 24 0.71/0.76 0.71/0.76 ### Ranking functions of CR eval_perfectg_bb3_in(V_2,V_y2_1,B,C) 0.71/0.76 * RF of phase [22]: [-V_2+V_y2_1+1,V_y2_1] 0.71/0.76 0.71/0.76 #### Partial ranking functions of CR eval_perfectg_bb3_in(V_2,V_y2_1,B,C) 0.71/0.76 * Partial RF of phase [22]: 0.71/0.76 - RF of loop [22:1]: 0.71/0.76 -V_2+V_y2_1+1 0.71/0.76 V_y2_1 0.71/0.76 0.71/0.76 0.71/0.76 ### Specialization of cost equations eval_perfectg_bb1_in/14 0.71/0.76 * CE 13 is refined into CE [25,26] 0.71/0.76 * CE 14 is discarded (unfeasible) 0.71/0.76 * CE 16 is refined into CE [27] 0.71/0.76 * CE 15 is refined into CE [28] 0.71/0.76 * CE 9 is refined into CE [29] 0.71/0.76 * CE 11 is discarded (unfeasible) 0.71/0.76 * CE 10 is discarded (unfeasible) 0.71/0.76 * CE 12 is discarded (unfeasible) 0.71/0.76 * CE 7 is refined into CE [30] 0.71/0.76 * CE 8 is discarded (unfeasible) 0.71/0.76 0.71/0.76 0.71/0.76 ### Cost equations --> "Loop" of eval_perfectg_bb1_in/14 0.71/0.76 * CEs [29] --> Loop 25 0.71/0.76 * CEs [30] --> Loop 26 0.71/0.76 * CEs [25,26] --> Loop 27 0.71/0.76 * CEs [27] --> Loop 28 0.71/0.76 * CEs [28] --> Loop 29 0.71/0.76 0.71/0.76 ### Ranking functions of CR eval_perfectg_bb1_in(V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B,C,D,E,F,G,H) 0.71/0.76 * RF of phase [25,26]: [V_y1_0-1] 0.71/0.76 0.71/0.76 #### Partial ranking functions of CR eval_perfectg_bb1_in(V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B,C,D,E,F,G,H) 0.71/0.76 * Partial RF of phase [25,26]: 0.71/0.76 - RF of loop [25:1]: 0.71/0.76 V_y1_0-2 0.71/0.76 - RF of loop [26:1]: 0.71/0.76 V_y1_0-1 0.71/0.76 0.71/0.76 0.71/0.76 ### Specialization of cost equations eval_perfectg_bb2_in/9 0.71/0.76 * CE 5 is refined into CE [31] 0.71/0.76 * CE 4 is refined into CE [32] 0.71/0.76 * CE 6 is refined into CE [33] 0.71/0.76 0.71/0.76 0.71/0.76 ### Cost equations --> "Loop" of eval_perfectg_bb2_in/9 0.71/0.76 * CEs [31] --> Loop 30 0.71/0.76 * CEs [32] --> Loop 31 0.71/0.76 * CEs [33] --> Loop 32 0.71/0.76 0.71/0.76 ### Ranking functions of CR eval_perfectg_bb2_in(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B) 0.71/0.76 0.71/0.76 #### Partial ranking functions of CR eval_perfectg_bb2_in(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B) 0.71/0.76 0.71/0.76 0.71/0.76 ### Specialization of cost equations eval_perfectg_bb1_in_loop_cont/10 0.71/0.76 * CE 17 is refined into CE [34,35,36] 0.71/0.76 * CE 18 is refined into CE [37] 0.71/0.76 0.71/0.76 0.71/0.76 ### Cost equations --> "Loop" of eval_perfectg_bb1_in_loop_cont/10 0.71/0.76 * CEs [36] --> Loop 33 0.71/0.76 * CEs [35] --> Loop 34 0.71/0.76 * CEs [34] --> Loop 35 0.71/0.76 * CEs [37] --> Loop 36 0.71/0.76 0.71/0.76 ### Ranking functions of CR eval_perfectg_bb1_in_loop_cont(A,B,C,D,E,F,G,H,I,J) 0.71/0.76 0.71/0.76 #### Partial ranking functions of CR eval_perfectg_bb1_in_loop_cont(A,B,C,D,E,F,G,H,I,J) 0.71/0.76 0.71/0.76 0.71/0.76 ### Specialization of cost equations eval_perfectg_3/9 0.71/0.76 * CE 3 is refined into CE [38,39,40,41,42,43] 0.71/0.76 * CE 2 is refined into CE [44,45,46] 0.71/0.76 0.71/0.76 0.71/0.76 ### Cost equations --> "Loop" of eval_perfectg_3/9 0.71/0.76 * CEs [40] --> Loop 37 0.71/0.76 * CEs [38,39,41,42,43] --> Loop 38 0.71/0.76 * CEs [46] --> Loop 39 0.71/0.76 * CEs [45] --> Loop 40 0.71/0.76 * CEs [44] --> Loop 41 0.71/0.76 0.71/0.76 ### Ranking functions of CR eval_perfectg_3(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B) 0.71/0.76 0.71/0.76 #### Partial ranking functions of CR eval_perfectg_3(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B) 0.71/0.76 0.71/0.76 0.71/0.76 ### Specialization of cost equations eval_perfectg_start/9 0.71/0.76 * CE 1 is refined into CE [47,48,49,50,51] 0.71/0.76 0.71/0.76 0.71/0.76 ### Cost equations --> "Loop" of eval_perfectg_start/9 0.71/0.76 * CEs [51] --> Loop 42 0.71/0.76 * CEs [50] --> Loop 43 0.71/0.76 * CEs [47,48,49] --> Loop 44 0.71/0.76 0.71/0.76 ### Ranking functions of CR eval_perfectg_start(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B) 0.71/0.76 0.71/0.76 #### Partial ranking functions of CR eval_perfectg_start(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B) 0.71/0.76 0.71/0.76 0.71/0.76 Computing Bounds 0.71/0.76 ===================================== 0.71/0.76 0.71/0.76 #### Cost of chains of eval_perfectg_bb3_in(V_2,V_y2_1,B,C): 0.71/0.76 * Chain [[22],24]: 1*it(22)+0 0.71/0.76 Such that:it(22) =< -V_2+V_y2_1+1 0.71/0.76 0.71/0.76 with precondition: [B=2,C>=0,V_2>=C+1,V_y2_1>=V_2+C] 0.71/0.76 0.71/0.76 * Chain [[22],23]: 1*it(22)+0 0.71/0.76 Such that:it(22) =< -V_2+V_y2_1+1 0.71/0.76 0.71/0.76 with precondition: [B=3,V_2>=1,V_y2_1>=V_2] 0.71/0.76 0.71/0.76 * Chain [23]: 0 0.71/0.76 with precondition: [B=3,V_2>=1] 0.71/0.76 0.71/0.76 0.71/0.76 #### Cost of chains of eval_perfectg_bb1_in(V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B,C,D,E,F,G,H): 0.71/0.76 * Chain [[25,26],29]: 2*it(25)+1*s(5)+1*s(6)+0 0.71/0.76 Such that:aux(1) =< V_x 0.71/0.76 aux(5) =< V_y1_0 0.71/0.76 it(25) =< aux(5) 0.71/0.76 aux(2) =< aux(1) 0.71/0.76 s(5) =< it(25)*aux(1) 0.71/0.76 s(6) =< it(25)*aux(2) 0.71/0.76 0.71/0.76 with precondition: [B=4,C=1,E=1,F=0,D=G,D=H,V_y1_0>=2,V_x>=V_y1_0,V_x>=V_y3_0,V_y3_0>=D+1] 0.71/0.76 0.71/0.76 * Chain [[25,26],28]: 2*it(25)+1*s(5)+1*s(6)+0 0.71/0.76 Such that:aux(1) =< V_x 0.71/0.76 aux(6) =< V_y1_0 0.71/0.76 it(25) =< aux(6) 0.71/0.76 aux(2) =< aux(1) 0.71/0.76 s(5) =< it(25)*aux(1) 0.71/0.76 s(6) =< it(25)*aux(2) 0.71/0.76 0.71/0.76 with precondition: [B=3,V_y1_0>=2,V_x>=V_y1_0,V_x>=V_y3_0] 0.71/0.76 0.71/0.76 * Chain [[25,26],27]: 2*it(25)+1*s(5)+1*s(6)+1*s(7)+0 0.71/0.76 Such that:aux(7) =< V_x 0.71/0.76 aux(8) =< V_y1_0 0.71/0.76 s(7) =< aux(7) 0.71/0.76 it(25) =< aux(8) 0.71/0.76 aux(2) =< aux(7) 0.71/0.76 s(5) =< it(25)*aux(7) 0.71/0.76 s(6) =< it(25)*aux(2) 0.71/0.76 0.71/0.76 with precondition: [B=3,V_y1_0>=3,V_x>=V_y1_0,V_x>=V_y3_0] 0.71/0.76 0.71/0.76 * Chain [28]: 0 0.71/0.76 with precondition: [B=3,V_x>=2,V_x>=V_y1_0,V_x>=V_y3_0,V_x+V_y1_0>=V_y3_0+2] 0.71/0.76 0.71/0.76 * Chain [27]: 1*s(7)+0 0.71/0.76 Such that:s(7) =< V_x-V_y1_0+2 0.71/0.76 0.71/0.76 with precondition: [B=3,V_y1_0>=2,V_x>=V_y1_0,V_x>=V_y3_0] 0.71/0.76 0.71/0.76 0.71/0.76 #### Cost of chains of eval_perfectg_bb2_in(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B): 0.71/0.76 * Chain [32]: 0 0.71/0.76 with precondition: [V_y3_2=0] 0.71/0.76 0.71/0.76 * Chain [31]: 0 0.71/0.76 with precondition: [0>=V_y3_2+1] 0.71/0.76 0.71/0.76 * Chain [30]: 0 0.71/0.76 with precondition: [V_y3_2>=1] 0.71/0.76 0.71/0.76 0.71/0.76 #### Cost of chains of eval_perfectg_bb1_in_loop_cont(A,B,C,D,E,F,G,H,I,J): 0.71/0.76 * Chain [36]: 0 0.71/0.76 with precondition: [A=3,E>=2] 0.71/0.76 0.71/0.76 * Chain [35]: 0 0.71/0.76 with precondition: [A=4,I=0,E>=2] 0.71/0.76 0.71/0.76 * Chain [34]: 0 0.71/0.76 with precondition: [A=4,0>=I+1,E>=2] 0.71/0.76 0.71/0.76 * Chain [33]: 0 0.71/0.76 with precondition: [A=4,E>=2,I>=1] 0.71/0.76 0.71/0.76 0.71/0.76 #### Cost of chains of eval_perfectg_3(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B): 0.71/0.76 * Chain [41]: 0 0.71/0.76 with precondition: [V_0=0,1>=V_x] 0.71/0.76 0.71/0.76 * Chain [40]: 0 0.71/0.76 with precondition: [0>=V_0+1,1>=V_x] 0.71/0.76 0.71/0.76 * Chain [39]: 0 0.71/0.76 with precondition: [1>=V_x,V_0>=1] 0.71/0.76 0.71/0.76 * Chain [38]: 1*s(16)+8*s(18)+4*s(20)+4*s(21)+0 0.71/0.76 Such that:s(16) =< 2 0.71/0.76 aux(13) =< V_x 0.71/0.76 s(18) =< aux(13) 0.71/0.76 s(19) =< aux(13) 0.71/0.76 s(20) =< s(18)*aux(13) 0.71/0.76 s(21) =< s(18)*s(19) 0.71/0.76 0.71/0.76 with precondition: [V_x>=2] 0.71/0.76 0.71/0.76 * Chain [37]: 3*s(42)+1*s(45)+1*s(46)+0 0.71/0.76 Such that:aux(14) =< V_x 0.71/0.76 s(42) =< aux(14) 0.71/0.76 s(44) =< aux(14) 0.71/0.76 s(45) =< s(42)*aux(14) 0.71/0.76 s(46) =< s(42)*s(44) 0.71/0.76 0.71/0.76 with precondition: [V_x>=3] 0.71/0.76 0.71/0.76 0.71/0.76 #### Cost of chains of eval_perfectg_start(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B): 0.71/0.76 * Chain [44]: 0 0.71/0.76 with precondition: [1>=V_x] 0.71/0.76 0.71/0.76 * Chain [43]: 1*s(47)+8*s(49)+4*s(51)+4*s(52)+0 0.71/0.76 Such that:s(47) =< 2 0.71/0.76 s(48) =< V_x 0.71/0.76 s(49) =< s(48) 0.71/0.76 s(50) =< s(48) 0.71/0.76 s(51) =< s(49)*s(48) 0.71/0.76 s(52) =< s(49)*s(50) 0.71/0.76 0.71/0.76 with precondition: [V_x>=2] 0.71/0.76 0.71/0.76 * Chain [42]: 3*s(54)+1*s(56)+1*s(57)+0 0.71/0.76 Such that:s(53) =< V_x 0.71/0.76 s(54) =< s(53) 0.71/0.76 s(55) =< s(53) 0.71/0.76 s(56) =< s(54)*s(53) 0.71/0.76 s(57) =< s(54)*s(55) 0.71/0.76 0.71/0.76 with precondition: [V_x>=3] 0.71/0.76 0.71/0.76 0.71/0.76 Closed-form bounds of eval_perfectg_start(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B): 0.71/0.76 ------------------------------------- 0.71/0.76 * Chain [44] with precondition: [1>=V_x] 0.71/0.76 - Upper bound: 0 0.71/0.76 - Complexity: constant 0.71/0.76 * Chain [43] with precondition: [V_x>=2] 0.71/0.76 - Upper bound: 8*V_x+2+8*V_x*V_x 0.71/0.76 - Complexity: n^2 0.71/0.76 * Chain [42] with precondition: [V_x>=3] 0.71/0.76 - Upper bound: 2*V_x*V_x+3*V_x 0.71/0.76 - Complexity: n^2 0.71/0.76 0.71/0.76 ### Maximum cost of eval_perfectg_start(V_0,V_2,V_8,V_x,V_y1_0,V_y2_1,V_y3_0,V_y3_2,B): nat(V_x)*5+2+nat(V_x)*6*nat(V_x)+(nat(V_x)*2*nat(V_x)+nat(V_x)*3) 0.71/0.76 Asymptotic class: n^2 0.71/0.76 * Total analysis performed in 644 ms. 0.71/0.76 0.77/0.86 EOF