0.63/0.68 WORST_CASE(?,O(n^2)) 0.63/0.68 0.63/0.68 Preprocessing Cost Relations 0.63/0.68 ===================================== 0.63/0.68 0.63/0.68 #### Computed strongly connected components 0.63/0.68 0. recursive : [lbl72/13] 0.63/0.68 1. recursive : [lbl52/13,lbl72_loop_cont/14] 0.63/0.68 2. non_recursive : [exit_location/1] 0.63/0.68 3. non_recursive : [stop/7] 0.63/0.68 4. non_recursive : [lbl52_loop_cont/8] 0.63/0.68 5. non_recursive : [start/7] 0.63/0.68 6. non_recursive : [start0/7] 0.63/0.68 0.63/0.68 #### Obtained direct recursion through partial evaluation 0.63/0.68 0. SCC is partially evaluated into lbl72/13 0.63/0.68 1. SCC is partially evaluated into lbl52/13 0.63/0.68 2. SCC is completely evaluated into other SCCs 0.63/0.68 3. SCC is completely evaluated into other SCCs 0.63/0.68 4. SCC is partially evaluated into lbl52_loop_cont/8 0.63/0.68 5. SCC is partially evaluated into start/7 0.63/0.68 6. SCC is partially evaluated into start0/7 0.63/0.68 0.63/0.68 Control-Flow Refinement of Cost Relations 0.63/0.68 ===================================== 0.63/0.68 0.63/0.68 ### Specialization of cost equations lbl72/13 0.63/0.68 * CE 9 is refined into CE [17] 0.63/0.68 * CE 8 is refined into CE [18] 0.63/0.68 * CE 7 is refined into CE [19] 0.63/0.68 0.63/0.68 0.63/0.68 ### Cost equations --> "Loop" of lbl72/13 0.63/0.68 * CEs [17] --> Loop 15 0.63/0.68 * CEs [18] --> Loop 16 0.63/0.68 * CEs [19] --> Loop 17 0.63/0.68 0.63/0.68 ### Ranking functions of CR lbl72(A,B,C,D,E,F,G,H,I,J,K,L,M) 0.63/0.68 0.63/0.68 #### Partial ranking functions of CR lbl72(A,B,C,D,E,F,G,H,I,J,K,L,M) 0.63/0.68 0.63/0.68 0.63/0.68 ### Specialization of cost equations lbl52/13 0.63/0.68 * CE 16 is refined into CE [20] 0.63/0.68 * CE 12 is refined into CE [21] 0.63/0.68 * CE 14 is refined into CE [22] 0.63/0.68 * CE 15 is refined into CE [23] 0.63/0.68 * CE 13 is refined into CE [24] 0.63/0.68 0.63/0.68 0.63/0.68 ### Cost equations --> "Loop" of lbl52/13 0.63/0.68 * CEs [23] --> Loop 18 0.63/0.68 * CEs [24] --> Loop 19 0.63/0.68 * CEs [20] --> Loop 20 0.63/0.68 * CEs [21] --> Loop 21 0.63/0.68 * CEs [22] --> Loop 22 0.63/0.68 0.63/0.68 ### Ranking functions of CR lbl52(A,B,C,D,E,F,G,H,I,J,K,L,M) 0.63/0.68 0.63/0.68 #### Partial ranking functions of CR lbl52(A,B,C,D,E,F,G,H,I,J,K,L,M) 0.63/0.68 * Partial RF of phase [18,19]: 0.63/0.68 - RF of loop [18:1]: 0.63/0.68 B depends on loops [19:1] 0.63/0.68 - RF of loop [19:1]: 0.63/0.68 -B+1 depends on loops [18:1] 0.63/0.68 D-1 0.63/0.68 0.63/0.68 0.63/0.68 ### Specialization of cost equations lbl52_loop_cont/8 0.63/0.68 * CE 10 is refined into CE [25] 0.63/0.68 * CE 11 is refined into CE [26] 0.63/0.68 0.63/0.68 0.63/0.68 ### Cost equations --> "Loop" of lbl52_loop_cont/8 0.63/0.68 * CEs [25] --> Loop 23 0.63/0.68 * CEs [26] --> Loop 24 0.63/0.68 0.63/0.68 ### Ranking functions of CR lbl52_loop_cont(A,B,C,D,E,F,G,H) 0.63/0.68 0.63/0.68 #### Partial ranking functions of CR lbl52_loop_cont(A,B,C,D,E,F,G,H) 0.63/0.68 0.63/0.68 0.63/0.68 ### Specialization of cost equations start/7 0.63/0.68 * CE 6 is refined into CE [27,28,29,30,31] 0.63/0.68 * CE 2 is refined into CE [32] 0.63/0.68 * CE 3 is refined into CE [33,34,35] 0.63/0.68 * CE 4 is refined into CE [36] 0.63/0.68 * CE 5 is refined into CE [37] 0.63/0.68 0.63/0.68 0.63/0.68 ### Cost equations --> "Loop" of start/7 0.63/0.68 * CEs [29,31] --> Loop 25 0.63/0.68 * CEs [30] --> Loop 26 0.63/0.68 * CEs [33,34,35] --> Loop 27 0.63/0.68 * CEs [32] --> Loop 28 0.63/0.68 * CEs [37] --> Loop 29 0.63/0.68 * CEs [28] --> Loop 30 0.63/0.68 * CEs [36] --> Loop 31 0.63/0.68 * CEs [27] --> Loop 32 0.63/0.68 0.63/0.68 ### Ranking functions of CR start(A,B,C,D,E,F,G) 0.63/0.68 0.63/0.68 #### Partial ranking functions of CR start(A,B,C,D,E,F,G) 0.63/0.68 0.63/0.68 0.63/0.68 ### Specialization of cost equations start0/7 0.63/0.68 * CE 1 is refined into CE [38,39,40,41,42,43,44,45] 0.63/0.68 0.63/0.68 0.63/0.68 ### Cost equations --> "Loop" of start0/7 0.63/0.68 * CEs [45] --> Loop 33 0.63/0.68 * CEs [44] --> Loop 34 0.63/0.68 * CEs [42] --> Loop 35 0.63/0.68 * CEs [41] --> Loop 36 0.63/0.68 * CEs [43] --> Loop 37 0.63/0.68 * CEs [40] --> Loop 38 0.63/0.68 * CEs [39] --> Loop 39 0.63/0.68 * CEs [38] --> Loop 40 0.63/0.68 0.63/0.68 ### Ranking functions of CR start0(A,B,C,D,E,F,G) 0.63/0.68 0.63/0.68 #### Partial ranking functions of CR start0(A,B,C,D,E,F,G) 0.63/0.68 0.63/0.68 0.63/0.68 Computing Bounds 0.63/0.68 ===================================== 0.63/0.68 0.63/0.68 #### Cost of chains of lbl72(A,B,C,D,E,F,G,H,I,J,K,L,M): 0.63/0.68 * Chain [17]: 0 0.63/0.68 with precondition: [D=0,G=2,K=0,B=A,J=C,L=E,B=F,B=H,B=I,B=M,B>=1] 0.63/0.68 0.63/0.68 * Chain [16]: 0 0.63/0.68 with precondition: [G=3,B=A,J=C,L=E,B=F,B=H,B=I+1,D=K,B=M,D>=1,B>=D+1] 0.63/0.68 0.63/0.68 * Chain [15]: 0 0.63/0.68 with precondition: [G=4,B=A,B=F,D>=0,B>=D+1] 0.63/0.68 0.63/0.68 0.63/0.68 #### Cost of chains of lbl52(A,B,C,D,E,F,G,H,I,J,K,L,M): 0.63/0.68 * Chain [[18,19],22]: 1*it(18)+1*it(19)+0 0.63/0.68 Such that:it(19) =< D 0.63/0.68 aux(23) =< B 0.63/0.68 aux(24) =< I 0.63/0.68 aux(17) =< aux(24) 0.63/0.68 aux(17) =< aux(24) 0.63/0.68 aux(18) =< it(19)*aux(17) 0.63/0.68 aux(1) =< it(19)*aux(17) 0.63/0.68 aux(12) =< it(19)*aux(24) 0.63/0.68 aux(1) =< it(19)*aux(24) 0.63/0.68 aux(3) =< aux(18) 0.63/0.68 aux(3) =< aux(12) 0.63/0.68 it(18) =< aux(1)+aux(23) 0.63/0.68 it(18) =< aux(3)+aux(23) 0.63/0.68 0.63/0.68 with precondition: [G=2,K=0,A=F,A=H,A=I,C=J,E=L,A=M,B>=0,D>=1,A>=D,B+D>=2] 0.63/0.68 0.63/0.68 * Chain [[18,19],21]: 1*it(18)+1*it(19)+0 0.63/0.68 Such that:it(19) =< D 0.63/0.68 aux(25) =< B 0.63/0.68 aux(26) =< F 0.63/0.68 aux(17) =< aux(26) 0.63/0.68 aux(17) =< aux(26) 0.63/0.68 aux(18) =< it(19)*aux(17) 0.63/0.68 aux(1) =< it(19)*aux(17) 0.63/0.68 aux(12) =< it(19)*aux(26) 0.63/0.68 aux(1) =< it(19)*aux(26) 0.63/0.68 aux(3) =< aux(18) 0.63/0.68 aux(3) =< aux(12) 0.63/0.68 it(18) =< aux(1)+aux(25) 0.63/0.68 it(18) =< aux(3)+aux(25) 0.63/0.68 0.63/0.68 with precondition: [G=4,A=F,B>=0,D>=1,A>=D,B+D>=2] 0.63/0.68 0.63/0.68 * Chain [[18,19],20]: 1*it(18)+1*it(19)+0 0.63/0.68 Such that:it(19) =< D 0.63/0.68 aux(27) =< B 0.63/0.68 aux(28) =< F 0.63/0.68 aux(17) =< aux(28) 0.63/0.68 aux(17) =< aux(28) 0.63/0.68 aux(18) =< it(19)*aux(17) 0.63/0.68 aux(1) =< it(19)*aux(17) 0.63/0.68 aux(12) =< it(19)*aux(28) 0.63/0.68 aux(1) =< it(19)*aux(28) 0.63/0.68 aux(3) =< aux(18) 0.63/0.68 aux(3) =< aux(12) 0.63/0.68 it(18) =< aux(1)+aux(27) 0.63/0.68 it(18) =< aux(3)+aux(27) 0.63/0.68 0.63/0.68 with precondition: [G=4,A=F,B>=0,D>=1,A>=D,B+D>=2] 0.63/0.68 0.63/0.68 * Chain [22]: 0 0.63/0.68 with precondition: [B=0,D=1,G=2,K=0,J=C,L=E,A=F,A=H,A=I,A=M,A>=1] 0.63/0.68 0.63/0.68 * Chain [21]: 0 0.63/0.68 with precondition: [B=0,G=4,A=F,D>=1,A>=D] 0.63/0.68 0.63/0.68 * Chain [20]: 0 0.63/0.68 with precondition: [G=4] 0.63/0.68 0.63/0.68 0.63/0.68 #### Cost of chains of lbl52_loop_cont(A,B,C,D,E,F,G,H): 0.63/0.68 * Chain [24]: 0 0.63/0.68 with precondition: [A=2] 0.63/0.68 0.63/0.68 * Chain [23]: 0 0.63/0.68 with precondition: [A=4] 0.63/0.68 0.63/0.68 0.63/0.68 #### Cost of chains of start(A,B,C,D,E,F,G): 0.63/0.68 * Chain [32]: 0 0.63/0.68 with precondition: [A=1,B=1,C=1,F=1,E=D] 0.63/0.68 0.63/0.68 * Chain [31]: 0 0.63/0.68 with precondition: [A=1,F=1,C=B,E=D,0>=C] 0.63/0.68 0.63/0.68 * Chain [30]: 0 0.63/0.68 with precondition: [B=1,C=1,F=A,E=D,F>=1] 0.63/0.68 0.63/0.68 * Chain [29]: 0 0.63/0.68 with precondition: [F=A,C=B,E=D,0>=F] 0.63/0.68 0.63/0.68 * Chain [28]: 0 0.63/0.68 with precondition: [F=A,C=B,E=D,0>=C,F>=1] 0.63/0.68 0.63/0.68 * Chain [27]: 3*s(19)+3*s(27)+1 0.63/0.68 Such that:aux(34) =< F 0.63/0.68 s(19) =< aux(34) 0.63/0.68 s(22) =< aux(34) 0.63/0.68 s(22) =< aux(34) 0.63/0.68 s(23) =< s(19)*s(22) 0.63/0.68 s(24) =< s(19)*s(22) 0.63/0.68 s(25) =< s(19)*aux(34) 0.63/0.68 s(24) =< s(19)*aux(34) 0.63/0.68 s(26) =< s(23) 0.63/0.68 s(26) =< s(25) 0.63/0.68 s(27) =< s(24)+aux(34) 0.63/0.68 s(27) =< s(26)+aux(34) 0.63/0.68 0.63/0.68 with precondition: [F=A,C=B,E=D,0>=C,F>=2] 0.63/0.68 0.63/0.68 * Chain [26]: 0 0.63/0.68 with precondition: [F=A,C=B,E=D,C>=1,F>=1] 0.63/0.68 0.63/0.68 * Chain [25]: 3*s(38)+1*s(46)+2*s(56)+0 0.63/0.68 Such that:s(47) =< B 0.63/0.68 s(39) =< C 0.63/0.68 aux(37) =< F 0.63/0.68 s(38) =< aux(37) 0.63/0.68 s(41) =< aux(37) 0.63/0.68 s(41) =< aux(37) 0.63/0.68 s(42) =< s(38)*s(41) 0.63/0.68 s(43) =< s(38)*s(41) 0.63/0.68 s(44) =< s(38)*aux(37) 0.63/0.68 s(43) =< s(38)*aux(37) 0.63/0.68 s(45) =< s(42) 0.63/0.68 s(45) =< s(44) 0.63/0.68 s(56) =< s(43)+s(47) 0.63/0.68 s(56) =< s(45)+s(47) 0.63/0.68 s(46) =< s(43)+s(39) 0.63/0.68 s(46) =< s(45)+s(39) 0.63/0.68 0.63/0.68 with precondition: [F=A,C=B,E=D,C>=1,F>=1,C+F>=3] 0.63/0.68 0.63/0.68 0.63/0.68 #### Cost of chains of start0(A,B,C,D,E,F,G): 0.63/0.68 * Chain [40]: 0 0.63/0.68 with precondition: [A=1,C=1] 0.63/0.68 0.63/0.68 * Chain [39]: 0 0.63/0.68 with precondition: [A=1,0>=C] 0.63/0.68 0.63/0.68 * Chain [38]: 0 0.63/0.68 with precondition: [C=1,A>=1] 0.63/0.68 0.63/0.68 * Chain [37]: 0 0.63/0.68 with precondition: [0>=A] 0.63/0.68 0.63/0.68 * Chain [36]: 0 0.63/0.68 with precondition: [0>=C,A>=1] 0.63/0.68 0.63/0.68 * Chain [35]: 3*s(58)+3*s(64)+1 0.63/0.68 Such that:s(57) =< A 0.63/0.68 s(58) =< s(57) 0.63/0.68 s(59) =< s(57) 0.63/0.68 s(59) =< s(57) 0.63/0.68 s(60) =< s(58)*s(59) 0.63/0.68 s(61) =< s(58)*s(59) 0.63/0.68 s(62) =< s(58)*s(57) 0.63/0.68 s(61) =< s(58)*s(57) 0.63/0.68 s(63) =< s(60) 0.63/0.68 s(63) =< s(62) 0.63/0.68 s(64) =< s(61)+s(57) 0.63/0.68 s(64) =< s(63)+s(57) 0.63/0.68 0.63/0.68 with precondition: [0>=C,A>=2] 0.63/0.68 0.63/0.68 * Chain [34]: 0 0.63/0.68 with precondition: [A>=1,C>=1] 0.63/0.68 0.63/0.68 * Chain [33]: 3*s(68)+3*s(74)+0 0.63/0.68 Such that:s(67) =< A 0.63/0.68 aux(38) =< C 0.63/0.68 s(68) =< s(67) 0.63/0.68 s(69) =< s(67) 0.63/0.68 s(69) =< s(67) 0.63/0.68 s(70) =< s(68)*s(69) 0.63/0.68 s(71) =< s(68)*s(69) 0.63/0.68 s(72) =< s(68)*s(67) 0.63/0.68 s(71) =< s(68)*s(67) 0.63/0.68 s(73) =< s(70) 0.63/0.68 s(73) =< s(72) 0.63/0.68 s(74) =< s(71)+aux(38) 0.63/0.68 s(74) =< s(73)+aux(38) 0.63/0.68 0.63/0.68 with precondition: [A>=1,C>=1,A+C>=3] 0.63/0.68 0.63/0.68 0.63/0.68 Closed-form bounds of start0(A,B,C,D,E,F,G): 0.63/0.68 ------------------------------------- 0.63/0.68 * Chain [40] with precondition: [A=1,C=1] 0.63/0.68 - Upper bound: 0 0.63/0.68 - Complexity: constant 0.63/0.68 * Chain [39] with precondition: [A=1,0>=C] 0.63/0.68 - Upper bound: 0 0.63/0.68 - Complexity: constant 0.63/0.68 * Chain [38] with precondition: [C=1,A>=1] 0.63/0.68 - Upper bound: 0 0.63/0.68 - Complexity: constant 0.63/0.68 * Chain [37] with precondition: [0>=A] 0.63/0.68 - Upper bound: 0 0.63/0.68 - Complexity: constant 0.63/0.68 * Chain [36] with precondition: [0>=C,A>=1] 0.63/0.68 - Upper bound: 0 0.63/0.68 - Complexity: constant 0.63/0.68 * Chain [35] with precondition: [0>=C,A>=2] 0.63/0.68 - Upper bound: 6*A+1+3*A*A 0.63/0.68 - Complexity: n^2 0.63/0.68 * Chain [34] with precondition: [A>=1,C>=1] 0.63/0.68 - Upper bound: 0 0.63/0.68 - Complexity: constant 0.63/0.68 * Chain [33] with precondition: [A>=1,C>=1,A+C>=3] 0.63/0.68 - Upper bound: 3*A*A+3*A+3*C 0.63/0.68 - Complexity: n^2 0.63/0.68 0.63/0.68 ### Maximum cost of start0(A,B,C,D,E,F,G): nat(A)*3*nat(A)+nat(A)*3+max([nat(C)*3,nat(A)*3+1]) 0.63/0.68 Asymptotic class: n^2 0.63/0.68 * Total analysis performed in 581 ms. 0.63/0.68 0.68/0.78 EOF