
Preprocessing Cost Relations
=====================================

#### Computed strongly connected components 
0. recursive  : [evalfbb1in/4,evalfbb2in/4,evalfbb3in/4]
1. recursive  : [evalfbb2in_loop_cont/10,evalfbb4in/9,evalfbb5in/9,evalfbbin/9]
2. non_recursive  : [evalfstop/5]
3. non_recursive  : [evalfreturnin/5]
4. non_recursive  : [exit_location/1]
5. non_recursive  : [evalfbb5in_loop_cont/6]
6. non_recursive  : [evalfentryin/5]
7. non_recursive  : [evalfstart/5]

#### Obtained direct recursion through partial evaluation 
0. SCC is partially evaluated into evalfbb2in/4
1. SCC is partially evaluated into evalfbb5in/9
2. SCC is completely evaluated into other SCCs
3. SCC is completely evaluated into other SCCs
4. SCC is completely evaluated into other SCCs
5. SCC is partially evaluated into evalfbb5in_loop_cont/6
6. SCC is partially evaluated into evalfentryin/5
7. SCC is partially evaluated into evalfstart/5

Control-Flow Refinement of Cost Relations
=====================================

### Specialization of cost equations evalfbb2in/4 
* CE 12 is refined into CE [13] 
* CE 11 is refined into CE [14] 
* CE 9 is refined into CE [15] 
* CE 10 is refined into CE [16] 


### Cost equations --> "Loop" of evalfbb2in/4 
* CEs [16] --> Loop 13 
* CEs [13] --> Loop 14 
* CEs [14] --> Loop 15 
* CEs [15] --> Loop 16 

### Ranking functions of CR evalfbb2in(C,D,F,G) 
* RF of phase [13]: [-C+D+1,D]

#### Partial ranking functions of CR evalfbb2in(C,D,F,G) 
* Partial RF of phase [13]:
  - RF of loop [13:1]:
    -C+D+1
    D


### Specialization of cost equations evalfbb5in/9 
* CE 5 is refined into CE [17] 
* CE 3 is refined into CE [18,19] 
* CE 6 is refined into CE [20] 
* CE 4 is refined into CE [21,22,23,24] 


### Cost equations --> "Loop" of evalfbb5in/9 
* CEs [24] --> Loop 17 
* CEs [23] --> Loop 18 
* CEs [22] --> Loop 19 
* CEs [21] --> Loop 20 
* CEs [17] --> Loop 21 
* CEs [18] --> Loop 22 
* CEs [19] --> Loop 23 
* CEs [20] --> Loop 24 

### Ranking functions of CR evalfbb5in(A,B,C,D,F,G,H,I,J) 
* RF of phase [17,19,20]: [B/2-1/2]

#### Partial ranking functions of CR evalfbb5in(A,B,C,D,F,G,H,I,J) 
* Partial RF of phase [17,19,20]:
  - RF of loop [17:1,19:1,20:1]:
    B/2-1/2


### Specialization of cost equations evalfbb5in_loop_cont/6 
* CE 7 is refined into CE [25] 
* CE 8 is refined into CE [26] 


### Cost equations --> "Loop" of evalfbb5in_loop_cont/6 
* CEs [25] --> Loop 25 
* CEs [26] --> Loop 26 

### Ranking functions of CR evalfbb5in_loop_cont(A,B,C,D,E,F) 

#### Partial ranking functions of CR evalfbb5in_loop_cont(A,B,C,D,E,F) 


### Specialization of cost equations evalfentryin/5 
* CE 2 is refined into CE [27,28,29,30,31,32] 


### Cost equations --> "Loop" of evalfentryin/5 
* CEs [29] --> Loop 27 
* CEs [28,30,32] --> Loop 28 
* CEs [31] --> Loop 29 
* CEs [27] --> Loop 30 

### Ranking functions of CR evalfentryin(A,B,C,D,F) 

#### Partial ranking functions of CR evalfentryin(A,B,C,D,F) 


### Specialization of cost equations evalfstart/5 
* CE 1 is refined into CE [33,34,35,36] 


### Cost equations --> "Loop" of evalfstart/5 
* CEs [36] --> Loop 31 
* CEs [35] --> Loop 32 
* CEs [34] --> Loop 33 
* CEs [33] --> Loop 34 

### Ranking functions of CR evalfstart(A,B,C,D,F) 

#### Partial ranking functions of CR evalfstart(A,B,C,D,F) 


Computing Bounds
=====================================

#### Cost of chains of evalfbb2in(C,D,F,G):
* Chain [[13],16]: 1*it(13)+0
  Such that:it(13) =< D-G

  with precondition: [F=2,C>=1,G>=C,D>=G+1] 

* Chain [[13],15]: 1*it(13)+0
  Such that:it(13) =< D-G

  with precondition: [F=2,C=G+1,C>=1,D>=C] 

* Chain [[13],14]: 1*it(13)+0
  Such that:it(13) =< -C+D+1

  with precondition: [F=3,C>=1,D>=C] 

* Chain [16]: 0
  with precondition: [F=2,D=G,C>=1,D>=C] 

* Chain [15]: 0
  with precondition: [F=2,D=G,C>=1,C>=D+1] 

* Chain [14]: 0
  with precondition: [F=3,C>=1] 


#### Cost of chains of evalfbb5in(A,B,C,D,F,G,H,I,J):
* Chain [[17,19,20],24]: 2*it(17)+1*it(20)+2*s(5)+0
  Such that:aux(5) =< A+B/2
aux(6) =< B/2
s(5) =< aux(5)
it(20) =< aux(5)
it(17) =< aux(6)
it(20) =< aux(6)

  with precondition: [F=3,A>=0,B>=2] 

* Chain [[17,19,20],23]: 2*it(17)+1*it(20)+3*s(5)+0
  Such that:aux(7) =< A+B/2
aux(8) =< B/2
s(5) =< aux(7)
it(20) =< aux(7)
it(17) =< aux(8)
it(20) =< aux(8)

  with precondition: [F=3,A>=0,B>=4] 

* Chain [[17,19,20],22]: 2*it(17)+1*it(20)+2*s(5)+0
  Such that:aux(9) =< A+B/2
aux(10) =< B/2
s(5) =< aux(9)
it(20) =< aux(9)
it(17) =< aux(10)
it(20) =< aux(10)

  with precondition: [F=3,A>=0,B>=4] 

* Chain [[17,19,20],21]: 2*it(17)+1*it(20)+2*s(5)+0
  Such that:aux(1) =< A+B/2
aux(2) =< A+B/2-G/2-J/2
aux(3) =< B/2
aux(4) =< B/2+G/2-J/2
s(5) =< aux(1)
it(20) =< aux(2)
s(5) =< aux(2)
it(17) =< aux(3)
it(20) =< aux(3)
it(17) =< aux(4)
it(20) =< aux(4)

  with precondition: [F=4,H+1=I,G+H=J,1>=H,A>=0,G>=0,H>=0,B>=H+2,B+2*A>=2*G+H] 

* Chain [24]: 0
  with precondition: [F=3] 

* Chain [23]: 1*s(7)+0
  Such that:s(7) =< A+1

  with precondition: [F=3,A>=0,B>=2] 

* Chain [22]: 0
  with precondition: [F=3,B>=2] 

* Chain [21]: 0
  with precondition: [F=4,G=A,I=C,J=D,B=H,1>=B] 


#### Cost of chains of evalfbb5in_loop_cont(A,B,C,D,E,F):
* Chain [26]: 0
  with precondition: [A=3] 

* Chain [25]: 0
  with precondition: [A=4] 


#### Cost of chains of evalfentryin(A,B,C,D,F):
* Chain [30]: 0
  with precondition: [] 

* Chain [29]: 0
  with precondition: [1>=B] 

* Chain [28]: 1*s(24)+4*s(27)+2*s(28)+4*s(29)+0
  Such that:s(24) =< B+1
aux(15) =< B/2
aux(16) =< 3/2*B
s(27) =< aux(16)
s(28) =< aux(16)
s(29) =< aux(15)
s(28) =< aux(15)

  with precondition: [B>=2] 

* Chain [27]: 5*s(39)+2*s(40)+4*s(41)+0
  Such that:s(38) =< B/2
s(37) =< 3/2*B
s(39) =< s(37)
s(40) =< s(37)
s(41) =< s(38)
s(40) =< s(38)

  with precondition: [B>=4] 


#### Cost of chains of evalfstart(A,B,C,D,F):
* Chain [34]: 0
  with precondition: [] 

* Chain [33]: 0
  with precondition: [1>=B] 

* Chain [32]: 1*s(42)+4*s(45)+2*s(46)+4*s(47)+0
  Such that:s(42) =< B+1
s(43) =< B/2
s(44) =< 3/2*B
s(45) =< s(44)
s(46) =< s(44)
s(47) =< s(43)
s(46) =< s(43)

  with precondition: [B>=2] 

* Chain [31]: 5*s(50)+2*s(51)+4*s(52)+0
  Such that:s(48) =< B/2
s(49) =< 3/2*B
s(50) =< s(49)
s(51) =< s(49)
s(52) =< s(48)
s(51) =< s(48)

  with precondition: [B>=4] 


Closed-form bounds of evalfstart(A,B,C,D,F): 
-------------------------------------
* Chain [34] with precondition: [] 
    - Upper bound: 0 
    - Complexity: constant 
* Chain [33] with precondition: [1>=B] 
    - Upper bound: 0 
    - Complexity: constant 
* Chain [32] with precondition: [B>=2] 
    - Upper bound: 12*B+1 
    - Complexity: n 
* Chain [31] with precondition: [B>=4] 
    - Upper bound: 25/2*B 
    - Complexity: n 

### Maximum cost of evalfstart(A,B,C,D,F): nat(B/2)*4+nat(3/2*B)*6+max([nat(3/2*B),nat(B+1)]) 
Asymptotic class: n 
* Total analysis performed in 159 ms.

