0.05/0.18 WORST_CASE(?,O(n^1)) 0.05/0.18 0.05/0.18 Preprocessing Cost Relations 0.05/0.18 ===================================== 0.05/0.18 0.05/0.18 #### Computed strongly connected components 0.05/0.18 0. recursive : [eval_cryptRandWriteFile_bb3_in/4,eval_cryptRandWriteFile_bb4_in/4] 0.05/0.18 1. recursive : [eval_cryptRandWriteFile_bb1_in/2,eval_cryptRandWriteFile_bb2_in/2,eval_cryptRandWriteFile_bb3_in_loop_cont/5,eval_cryptRandWriteFile_bb5_in/4] 0.05/0.18 2. non_recursive : [eval_cryptRandWriteFile_stop/1] 0.05/0.18 3. non_recursive : [eval_cryptRandWriteFile_bb6_in/1] 0.05/0.18 4. non_recursive : [eval_cryptRandWriteFile_bb1_in_loop_cont/2] 0.05/0.18 5. non_recursive : [eval_cryptRandWriteFile_bb0_in/2] 0.05/0.18 6. non_recursive : [eval_cryptRandWriteFile_start/2] 0.05/0.18 0.05/0.18 #### Obtained direct recursion through partial evaluation 0.05/0.18 0. SCC is partially evaluated into eval_cryptRandWriteFile_bb3_in/4 0.05/0.18 1. SCC is partially evaluated into eval_cryptRandWriteFile_bb1_in/2 0.05/0.18 2. SCC is completely evaluated into other SCCs 0.05/0.18 3. SCC is completely evaluated into other SCCs 0.05/0.18 4. SCC is completely evaluated into other SCCs 0.05/0.18 5. SCC is partially evaluated into eval_cryptRandWriteFile_bb0_in/2 0.05/0.18 6. SCC is partially evaluated into eval_cryptRandWriteFile_start/2 0.05/0.18 0.05/0.18 Control-Flow Refinement of Cost Relations 0.05/0.18 ===================================== 0.05/0.18 0.05/0.19 ### Specialization of cost equations eval_cryptRandWriteFile_bb3_in/4 0.05/0.19 * CE 7 is refined into CE [8] 0.05/0.19 * CE 6 is refined into CE [9] 0.05/0.19 0.05/0.19 0.05/0.19 ### Cost equations --> "Loop" of eval_cryptRandWriteFile_bb3_in/4 0.05/0.19 * CEs [9] --> Loop 8 0.05/0.19 * CEs [8] --> Loop 9 0.05/0.19 0.05/0.19 ### Ranking functions of CR eval_cryptRandWriteFile_bb3_in(V__0_,V_i_0,B,C) 0.05/0.19 * RF of phase [8]: [V__0_-V_i_0,-V_i_0+256] 0.05/0.19 0.05/0.19 #### Partial ranking functions of CR eval_cryptRandWriteFile_bb3_in(V__0_,V_i_0,B,C) 0.05/0.19 * Partial RF of phase [8]: 0.05/0.19 - RF of loop [8:1]: 0.05/0.19 V__0_-V_i_0 0.05/0.19 -V_i_0+256 0.05/0.19 0.05/0.19 0.05/0.19 ### Specialization of cost equations eval_cryptRandWriteFile_bb1_in/2 0.05/0.19 * CE 5 is refined into CE [10] 0.05/0.19 * CE 4 is refined into CE [11] 0.05/0.19 * CE 3 is refined into CE [12] 0.05/0.19 0.05/0.19 0.05/0.19 ### Cost equations --> "Loop" of eval_cryptRandWriteFile_bb1_in/2 0.05/0.19 * CEs [11] --> Loop 10 0.05/0.19 * CEs [12] --> Loop 11 0.05/0.19 * CEs [10] --> Loop 12 0.05/0.19 0.05/0.19 ### Ranking functions of CR eval_cryptRandWriteFile_bb1_in(V__0,B) 0.05/0.19 * RF of phase [10]: [V__0-255] 0.05/0.19 0.05/0.19 #### Partial ranking functions of CR eval_cryptRandWriteFile_bb1_in(V__0,B) 0.05/0.19 * Partial RF of phase [10]: 0.05/0.19 - RF of loop [10:1]: 0.05/0.19 V__0-255 0.05/0.19 0.05/0.19 0.05/0.19 ### Specialization of cost equations eval_cryptRandWriteFile_bb0_in/2 0.05/0.19 * CE 2 is refined into CE [13,14,15,16] 0.05/0.19 0.05/0.19 0.05/0.19 ### Cost equations --> "Loop" of eval_cryptRandWriteFile_bb0_in/2 0.05/0.19 * CEs [16] --> Loop 13 0.05/0.19 * CEs [15] --> Loop 14 0.05/0.19 * CEs [14] --> Loop 15 0.05/0.19 * CEs [13] --> Loop 16 0.05/0.19 0.05/0.19 ### Ranking functions of CR eval_cryptRandWriteFile_bb0_in(V_bytes,B) 0.05/0.19 0.05/0.19 #### Partial ranking functions of CR eval_cryptRandWriteFile_bb0_in(V_bytes,B) 0.05/0.19 0.05/0.19 0.05/0.19 ### Specialization of cost equations eval_cryptRandWriteFile_start/2 0.05/0.19 * CE 1 is refined into CE [17,18,19,20] 0.05/0.19 0.05/0.19 0.05/0.19 ### Cost equations --> "Loop" of eval_cryptRandWriteFile_start/2 0.05/0.19 * CEs [20] --> Loop 17 0.05/0.19 * CEs [19] --> Loop 18 0.05/0.19 * CEs [18] --> Loop 19 0.05/0.19 * CEs [17] --> Loop 20 0.05/0.19 0.05/0.19 ### Ranking functions of CR eval_cryptRandWriteFile_start(V_bytes,B) 0.05/0.19 0.05/0.19 #### Partial ranking functions of CR eval_cryptRandWriteFile_start(V_bytes,B) 0.05/0.19 0.05/0.19 0.05/0.19 Computing Bounds 0.05/0.19 ===================================== 0.05/0.19 0.05/0.19 #### Cost of chains of eval_cryptRandWriteFile_bb3_in(V__0_,V_i_0,B,C): 0.05/0.19 * Chain [[8],9]: 1*it(8)+0 0.05/0.19 Such that:it(8) =< -V_i_0+C 0.05/0.19 0.05/0.19 with precondition: [B=2,V__0_=C,256>=V__0_,V_i_0>=0,V__0_>=V_i_0+1] 0.05/0.19 0.05/0.19 0.05/0.19 #### Cost of chains of eval_cryptRandWriteFile_bb1_in(V__0,B): 0.05/0.19 * Chain [[10],12]: 1*it(10)+1*s(3)+0 0.05/0.19 Such that:aux(4) =< V__0 0.05/0.19 it(10) =< aux(4) 0.05/0.19 s(3) =< aux(4)*256 0.05/0.19 0.05/0.19 with precondition: [B=3,V__0>=256] 0.05/0.19 0.05/0.19 * Chain [[10],11,12]: 1*it(10)+1*s(3)+1*s(4)+1 0.05/0.19 Such that:s(4) =< 255 0.05/0.19 aux(5) =< V__0 0.05/0.19 s(4) =< aux(5) 0.05/0.19 it(10) =< aux(5) 0.05/0.19 s(3) =< aux(5)*256 0.05/0.19 0.05/0.19 with precondition: [B=3,V__0>=257] 0.05/0.19 0.05/0.19 * Chain [12]: 0 0.05/0.19 with precondition: [B=3,0>=V__0] 0.05/0.19 0.05/0.19 * Chain [11,12]: 1*s(4)+1 0.05/0.19 Such that:s(4) =< V__0 0.05/0.19 0.05/0.19 with precondition: [B=3,255>=V__0,V__0>=1] 0.05/0.19 0.05/0.19 0.05/0.19 #### Cost of chains of eval_cryptRandWriteFile_bb0_in(V_bytes,B): 0.05/0.19 * Chain [16]: 1*s(5)+1 0.05/0.19 Such that:s(5) =< V_bytes 0.05/0.19 0.05/0.19 with precondition: [255>=V_bytes,V_bytes>=1] 0.05/0.19 0.05/0.19 * Chain [15]: 0 0.05/0.19 with precondition: [0>=V_bytes] 0.05/0.19 0.05/0.19 * Chain [14]: 1*s(7)+1*s(8)+0 0.05/0.19 Such that:s(6) =< V_bytes 0.05/0.19 s(7) =< s(6) 0.05/0.19 s(8) =< s(6)*256 0.05/0.19 0.05/0.19 with precondition: [V_bytes>=256] 0.05/0.19 0.05/0.19 * Chain [13]: 1*s(9)+1*s(11)+1*s(12)+1 0.05/0.19 Such that:s(9) =< 255 0.05/0.19 s(10) =< V_bytes 0.05/0.19 s(9) =< s(10) 0.05/0.19 s(11) =< s(10) 0.05/0.19 s(12) =< s(10)*256 0.05/0.19 0.05/0.19 with precondition: [V_bytes>=257] 0.05/0.19 0.05/0.19 0.05/0.19 #### Cost of chains of eval_cryptRandWriteFile_start(V_bytes,B): 0.05/0.19 * Chain [20]: 1*s(13)+1 0.05/0.19 Such that:s(13) =< V_bytes 0.05/0.19 0.05/0.19 with precondition: [255>=V_bytes,V_bytes>=1] 0.05/0.19 0.05/0.19 * Chain [19]: 0 0.05/0.19 with precondition: [0>=V_bytes] 0.05/0.19 0.05/0.19 * Chain [18]: 1*s(15)+1*s(16)+0 0.05/0.19 Such that:s(14) =< V_bytes 0.05/0.19 s(15) =< s(14) 0.05/0.19 s(16) =< s(14)*256 0.05/0.19 0.05/0.19 with precondition: [V_bytes>=256] 0.05/0.19 0.05/0.19 * Chain [17]: 1*s(17)+1*s(19)+1*s(20)+1 0.05/0.19 Such that:s(17) =< 255 0.05/0.19 s(18) =< V_bytes 0.05/0.19 s(17) =< s(18) 0.05/0.19 s(19) =< s(18) 0.05/0.19 s(20) =< s(18)*256 0.05/0.19 0.05/0.19 with precondition: [V_bytes>=257] 0.05/0.19 0.05/0.19 0.05/0.19 Closed-form bounds of eval_cryptRandWriteFile_start(V_bytes,B): 0.05/0.19 ------------------------------------- 0.05/0.19 * Chain [20] with precondition: [255>=V_bytes,V_bytes>=1] 0.05/0.19 - Upper bound: V_bytes+1 0.05/0.19 - Complexity: n 0.05/0.19 * Chain [19] with precondition: [0>=V_bytes] 0.05/0.19 - Upper bound: 0 0.05/0.19 - Complexity: constant 0.05/0.19 * Chain [18] with precondition: [V_bytes>=256] 0.05/0.19 - Upper bound: 257*V_bytes 0.05/0.19 - Complexity: n 0.05/0.19 * Chain [17] with precondition: [V_bytes>=257] 0.05/0.19 - Upper bound: 257*V_bytes+256 0.05/0.19 - Complexity: n 0.05/0.19 0.05/0.19 ### Maximum cost of eval_cryptRandWriteFile_start(V_bytes,B): nat(V_bytes)*256+255+(nat(V_bytes)+1) 0.05/0.19 Asymptotic class: n 0.05/0.19 * Total analysis performed in 113 ms. 0.05/0.19 0.05/0.29 EOF