0.06/0.44 WORST_CASE(?,O(n^2)) 0.06/0.44 0.06/0.44 Preprocessing Cost Relations 0.06/0.44 ===================================== 0.06/0.44 0.06/0.44 #### Computed strongly connected components 0.06/0.44 0. recursive : [eval_terminatorbubble_5/9,eval_terminatorbubble_6/10,eval_terminatorbubble_bb2_in/9,eval_terminatorbubble_bb3_in/9,eval_terminatorbubble_bb4_in/9,eval_terminatorbubble_bb5_in/9] 0.06/0.44 1. recursive : [eval_terminatorbubble_bb1_in/3,eval_terminatorbubble_bb2_in_loop_cont/6,eval_terminatorbubble_bb6_in/5] 0.06/0.44 2. non_recursive : [eval_terminatorbubble_stop/1] 0.06/0.44 3. non_recursive : [eval_terminatorbubble_bb7_in/1] 0.06/0.44 4. non_recursive : [eval_terminatorbubble_bb1_in_loop_cont/2] 0.06/0.44 5. non_recursive : [eval_terminatorbubble_bb0_in/2] 0.06/0.44 6. non_recursive : [eval_terminatorbubble_start/2] 0.06/0.44 0.06/0.44 #### Obtained direct recursion through partial evaluation 0.06/0.44 0. SCC is partially evaluated into eval_terminatorbubble_bb2_in/9 0.06/0.44 1. SCC is partially evaluated into eval_terminatorbubble_bb1_in/3 0.06/0.44 2. SCC is completely evaluated into other SCCs 0.06/0.44 3. SCC is completely evaluated into other SCCs 0.06/0.44 4. SCC is completely evaluated into other SCCs 0.06/0.44 5. SCC is partially evaluated into eval_terminatorbubble_bb0_in/2 0.06/0.44 6. SCC is partially evaluated into eval_terminatorbubble_start/2 0.06/0.44 0.06/0.44 Control-Flow Refinement of Cost Relations 0.06/0.44 ===================================== 0.06/0.44 0.06/0.44 ### Specialization of cost equations eval_terminatorbubble_bb2_in/9 0.06/0.44 * CE 13 is discarded (unfeasible) 0.06/0.44 * CE 14 is discarded (unfeasible) 0.06/0.44 * CE 10 is refined into CE [16] 0.06/0.44 * CE 15 is refined into CE [17] 0.06/0.44 * CE 12 is refined into CE [18] 0.06/0.44 * CE 11 is refined into CE [19] 0.06/0.44 0.06/0.44 0.06/0.44 ### Cost equations --> "Loop" of eval_terminatorbubble_bb2_in/9 0.06/0.44 * CEs [18] --> Loop 14 0.06/0.44 * CEs [19] --> Loop 15 0.06/0.44 * CEs [16] --> Loop 16 0.06/0.44 * CEs [17] --> Loop 17 0.06/0.44 0.06/0.44 ### Ranking functions of CR eval_terminatorbubble_bb2_in(V_size,V_b_0,V_j_0,V_t_0,B,C,D,E,F) 0.06/0.44 * RF of phase [14,15]: [V_b_0-V_j_0,V_size-V_j_0] 0.06/0.44 0.06/0.44 #### Partial ranking functions of CR eval_terminatorbubble_bb2_in(V_size,V_b_0,V_j_0,V_t_0,B,C,D,E,F) 0.06/0.44 * Partial RF of phase [14,15]: 0.06/0.44 - RF of loop [14:1,15:1]: 0.06/0.44 V_b_0-V_j_0 0.06/0.44 V_size-V_j_0 0.06/0.44 - RF of loop [15:1]: 0.06/0.44 V_b_0-V_t_0-1 0.06/0.44 V_size-V_t_0-1 0.06/0.44 0.06/0.44 0.06/0.44 ### Specialization of cost equations eval_terminatorbubble_bb1_in/3 0.06/0.44 * CE 5 is discarded (unfeasible) 0.06/0.44 * CE 6 is refined into CE [20,21] 0.06/0.44 * CE 7 is refined into CE [22,23] 0.06/0.44 * CE 8 is discarded (unfeasible) 0.06/0.44 * CE 9 is refined into CE [24] 0.06/0.44 * CE 4 is refined into CE [25] 0.06/0.44 0.06/0.44 0.06/0.44 ### Cost equations --> "Loop" of eval_terminatorbubble_bb1_in/3 0.06/0.44 * CEs [25] --> Loop 18 0.06/0.44 * CEs [21] --> Loop 19 0.06/0.44 * CEs [23] --> Loop 20 0.06/0.44 * CEs [24] --> Loop 21 0.06/0.44 * CEs [20] --> Loop 22 0.06/0.44 * CEs [22] --> Loop 23 0.06/0.44 0.06/0.44 ### Ranking functions of CR eval_terminatorbubble_bb1_in(V_size,V_b_0,B) 0.06/0.44 * RF of phase [18]: [V_b_0-1] 0.06/0.44 0.06/0.44 #### Partial ranking functions of CR eval_terminatorbubble_bb1_in(V_size,V_b_0,B) 0.06/0.44 * Partial RF of phase [18]: 0.06/0.44 - RF of loop [18:1]: 0.06/0.44 V_b_0-1 0.06/0.44 0.06/0.44 0.06/0.44 ### Specialization of cost equations eval_terminatorbubble_bb0_in/2 0.06/0.44 * CE 3 is refined into CE [26,27,28] 0.06/0.44 * CE 2 is refined into CE [29] 0.06/0.44 0.06/0.44 0.06/0.44 ### Cost equations --> "Loop" of eval_terminatorbubble_bb0_in/2 0.06/0.44 * CEs [28] --> Loop 24 0.06/0.44 * CEs [27] --> Loop 25 0.06/0.44 * CEs [29] --> Loop 26 0.06/0.44 * CEs [26] --> Loop 27 0.06/0.44 0.06/0.44 ### Ranking functions of CR eval_terminatorbubble_bb0_in(V_size,B) 0.06/0.44 0.06/0.44 #### Partial ranking functions of CR eval_terminatorbubble_bb0_in(V_size,B) 0.06/0.44 0.06/0.44 0.06/0.44 ### Specialization of cost equations eval_terminatorbubble_start/2 0.06/0.44 * CE 1 is refined into CE [30,31,32,33] 0.06/0.44 0.06/0.44 0.06/0.44 ### Cost equations --> "Loop" of eval_terminatorbubble_start/2 0.06/0.44 * CEs [33] --> Loop 28 0.06/0.44 * CEs [32] --> Loop 29 0.06/0.44 * CEs [31] --> Loop 30 0.06/0.44 * CEs [30] --> Loop 31 0.06/0.44 0.06/0.44 ### Ranking functions of CR eval_terminatorbubble_start(V_size,B) 0.06/0.44 0.06/0.44 #### Partial ranking functions of CR eval_terminatorbubble_start(V_size,B) 0.06/0.44 0.06/0.44 0.06/0.44 Computing Bounds 0.06/0.44 ===================================== 0.06/0.44 0.06/0.44 #### Cost of chains of eval_terminatorbubble_bb2_in(V_size,V_b_0,V_j_0,V_t_0,B,C,D,E,F): 0.06/0.44 * Chain [[14,15],17]: 1*it(14)+1*it(15)+0 0.06/0.44 Such that:aux(1) =< -V_j_0+C 0.06/0.44 it(15) =< -V_t_0+F 0.06/0.44 aux(5) =< -V_j_0+E 0.06/0.44 it(14) =< aux(1) 0.06/0.44 it(15) =< aux(1) 0.06/0.44 it(14) =< aux(5) 0.06/0.44 it(15) =< aux(5) 0.06/0.44 0.06/0.44 with precondition: [B=2,V_size=C,V_b_0=D,V_b_0=E,V_t_0>=0,V_size>=V_b_0,V_b_0>=V_j_0+1,V_j_0>=V_t_0+1,F>=V_t_0,V_b_0>=F+1] 0.06/0.44 0.06/0.44 * Chain [[14,15],16]: 1*it(14)+1*it(15)+0 0.06/0.44 Such that:it(15) =< V_size-V_t_0 0.06/0.44 aux(3) =< V_b_0-V_j_0 0.06/0.44 aux(6) =< V_size-V_j_0 0.06/0.44 it(14) =< aux(6) 0.06/0.44 it(15) =< aux(6) 0.06/0.44 it(14) =< aux(3) 0.06/0.44 it(15) =< aux(3) 0.06/0.44 0.06/0.44 with precondition: [B=3,V_t_0>=0,V_b_0>=V_size+1,V_size>=V_j_0+1,V_j_0>=V_t_0+1] 0.06/0.44 0.06/0.44 * Chain [17]: 0 0.06/0.44 with precondition: [B=2,V_j_0=V_b_0,V_size=C,V_j_0=D,V_j_0=E,V_t_0=F,V_t_0>=0,V_size>=V_j_0,V_j_0>=V_t_0+1] 0.06/0.44 0.06/0.44 * Chain [16]: 0 0.06/0.44 with precondition: [B=3,V_j_0=V_size,V_t_0>=0,V_b_0>=V_j_0+1,V_j_0>=V_t_0+1] 0.06/0.44 0.06/0.44 0.06/0.44 #### Cost of chains of eval_terminatorbubble_bb1_in(V_size,V_b_0,B): 0.06/0.44 * Chain [[18],22]: 1*it(18)+1*s(9)+1*s(10)+0 0.06/0.44 Such that:aux(10) =< V_size 0.06/0.44 aux(12) =< V_b_0 0.06/0.44 it(18) =< aux(12) 0.06/0.44 aux(7) =< aux(10) 0.06/0.44 aux(7) =< aux(12) 0.06/0.44 aux(9) =< aux(7)-1 0.06/0.44 aux(9) =< aux(10)-1 0.06/0.44 s(12) =< it(18)*aux(10) 0.06/0.44 s(11) =< it(18)*aux(7) 0.06/0.44 s(9) =< it(18)*aux(9) 0.06/0.44 s(10) =< s(12) 0.06/0.44 s(9) =< s(12) 0.06/0.44 s(10) =< s(11) 0.06/0.44 s(9) =< s(11) 0.06/0.44 0.06/0.44 with precondition: [B=3,V_b_0>=2,V_size>=V_b_0] 0.06/0.44 0.06/0.44 * Chain [[18],19]: 1*it(18)+1*s(9)+1*s(10)+1*s(16)+0 0.06/0.44 Such that:aux(13) =< V_size 0.06/0.44 aux(14) =< V_b_0 0.06/0.44 it(18) =< aux(14) 0.06/0.44 s(16) =< aux(13) 0.06/0.44 s(16) =< aux(14) 0.06/0.44 aux(7) =< aux(13) 0.06/0.44 aux(7) =< aux(14) 0.06/0.44 aux(9) =< aux(7)-1 0.06/0.44 aux(9) =< aux(13)-1 0.06/0.44 s(12) =< it(18)*aux(13) 0.06/0.44 s(11) =< it(18)*aux(7) 0.06/0.44 s(9) =< it(18)*aux(9) 0.06/0.44 s(10) =< s(12) 0.06/0.44 s(9) =< s(12) 0.06/0.44 s(10) =< s(11) 0.06/0.44 s(9) =< s(11) 0.06/0.44 0.06/0.44 with precondition: [B=3,V_b_0>=3,V_size>=V_b_0] 0.06/0.44 0.06/0.44 * Chain [22]: 0 0.06/0.44 with precondition: [V_b_0=1,B=3,V_size>=1] 0.06/0.44 0.06/0.44 * Chain [19]: 1*s(16)+0 0.06/0.44 Such that:s(13) =< V_size 0.06/0.44 s(15) =< V_b_0 0.06/0.44 s(16) =< s(13) 0.06/0.44 s(16) =< s(15) 0.06/0.44 0.06/0.44 with precondition: [B=3,V_b_0>=2,V_size>=V_b_0] 0.06/0.44 0.06/0.44 0.06/0.44 #### Cost of chains of eval_terminatorbubble_bb0_in(V_size,B): 0.06/0.44 * Chain [27]: 0 0.06/0.44 with precondition: [V_size=1] 0.06/0.44 0.06/0.44 * Chain [26]: 0 0.06/0.44 with precondition: [0>=V_size] 0.06/0.44 0.06/0.44 * Chain [25]: 2*s(31)+1*s(37)+1*s(38)+0 0.06/0.44 Such that:aux(17) =< V_size 0.06/0.44 s(31) =< aux(17) 0.06/0.44 s(34) =< aux(17)-1 0.06/0.44 s(35) =< s(31)*aux(17) 0.06/0.44 s(37) =< s(31)*s(34) 0.06/0.44 s(38) =< s(35) 0.06/0.44 s(37) =< s(35) 0.06/0.44 0.06/0.44 with precondition: [V_size>=2] 0.06/0.44 0.06/0.44 * Chain [24]: 2*s(41)+1*s(47)+1*s(48)+0 0.06/0.44 Such that:aux(18) =< V_size 0.06/0.44 s(41) =< aux(18) 0.06/0.44 s(44) =< aux(18)-1 0.06/0.44 s(45) =< s(41)*aux(18) 0.06/0.44 s(47) =< s(41)*s(44) 0.06/0.44 s(48) =< s(45) 0.06/0.44 s(47) =< s(45) 0.06/0.44 0.06/0.44 with precondition: [V_size>=3] 0.06/0.44 0.06/0.44 0.06/0.44 #### Cost of chains of eval_terminatorbubble_start(V_size,B): 0.06/0.44 * Chain [31]: 0 0.06/0.44 with precondition: [V_size=1] 0.06/0.44 0.06/0.44 * Chain [30]: 0 0.06/0.44 with precondition: [0>=V_size] 0.06/0.44 0.06/0.44 * Chain [29]: 2*s(50)+1*s(53)+1*s(54)+0 0.06/0.44 Such that:s(49) =< V_size 0.06/0.44 s(50) =< s(49) 0.06/0.44 s(51) =< s(49)-1 0.06/0.44 s(52) =< s(50)*s(49) 0.06/0.44 s(53) =< s(50)*s(51) 0.06/0.44 s(54) =< s(52) 0.06/0.44 s(53) =< s(52) 0.06/0.44 0.06/0.44 with precondition: [V_size>=2] 0.06/0.44 0.06/0.44 * Chain [28]: 2*s(56)+1*s(59)+1*s(60)+0 0.06/0.44 Such that:s(55) =< V_size 0.06/0.44 s(56) =< s(55) 0.06/0.44 s(57) =< s(55)-1 0.06/0.44 s(58) =< s(56)*s(55) 0.06/0.44 s(59) =< s(56)*s(57) 0.06/0.44 s(60) =< s(58) 0.06/0.44 s(59) =< s(58) 0.06/0.44 0.06/0.44 with precondition: [V_size>=3] 0.06/0.44 0.06/0.44 0.06/0.44 Closed-form bounds of eval_terminatorbubble_start(V_size,B): 0.06/0.44 ------------------------------------- 0.06/0.44 * Chain [31] with precondition: [V_size=1] 0.06/0.44 - Upper bound: 0 0.06/0.44 - Complexity: constant 0.06/0.44 * Chain [30] with precondition: [0>=V_size] 0.06/0.44 - Upper bound: 0 0.06/0.44 - Complexity: constant 0.06/0.44 * Chain [29] with precondition: [V_size>=2] 0.06/0.44 - Upper bound: 2*V_size+V_size*V_size+(V_size-1)*V_size 0.06/0.44 - Complexity: n^2 0.06/0.44 * Chain [28] with precondition: [V_size>=3] 0.06/0.44 - Upper bound: 2*V_size+V_size*V_size+(V_size-1)*V_size 0.06/0.44 - Complexity: n^2 0.06/0.44 0.06/0.44 ### Maximum cost of eval_terminatorbubble_start(V_size,B): nat(V_size)*nat(V_size)+nat(V_size)*2+nat(nat(V_size)+ -1)*nat(V_size) 0.06/0.44 Asymptotic class: n^2 0.06/0.44 * Total analysis performed in 341 ms. 0.06/0.44 0.06/0.55 EOF