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

#### Computed strongly connected components 
0. recursive  : [evalfbb1in/6,evalfbb2in/6,evalfbb3in/6]
1. recursive  : [evalfbb2in_loop_cont/9,evalfbb4in/8,evalfbb6in/8,evalfbbin/8]
2. non_recursive  : [evalfstop/5]
3. non_recursive  : [evalfreturnin/5]
4. non_recursive  : [exit_location/1]
5. non_recursive  : [evalfbb6in_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/6
1. SCC is partially evaluated into evalfbb6in/8
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 evalfbb6in_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/6 
* CE 13 is refined into CE [14] 
* CE 10 is refined into CE [15] 
* CE 12 is refined into CE [16] 
* CE 11 is refined into CE [17] 


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

### Ranking functions of CR evalfbb2in(B,C,D,F,G,H) 
* RF of phase [14]: [B-D]

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


### Specialization of cost equations evalfbb6in/8 
* CE 6 is refined into CE [18] 
* CE 3 is refined into CE [19,20] 
* CE 7 is refined into CE [21] 
* CE 5 is refined into CE [22,23] 
* CE 4 is refined into CE [24,25] 


### Cost equations --> "Loop" of evalfbb6in/8 
* CEs [25] --> Loop 18 
* CEs [24] --> Loop 19 
* CEs [23] --> Loop 20 
* CEs [22] --> Loop 21 
* CEs [18] --> Loop 22 
* CEs [20] --> Loop 23 
* CEs [19] --> Loop 24 
* CEs [21] --> Loop 25 

### Ranking functions of CR evalfbb6in(A,B,C,D,F,G,H,I) 
* RF of phase [18,20]: [-A+B-1]

#### Partial ranking functions of CR evalfbb6in(A,B,C,D,F,G,H,I) 
* Partial RF of phase [18,20]:
  - RF of loop [18:1]:
    -A+B-2
  - RF of loop [20:1]:
    -A+B-1


### Specialization of cost equations evalfbb6in_loop_cont/6 
* CE 8 is refined into CE [26] 
* CE 9 is refined into CE [27] 


### Cost equations --> "Loop" of evalfbb6in_loop_cont/6 
* CEs [26] --> Loop 26 
* CEs [27] --> Loop 27 

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

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


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


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

### 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 [37,38,39,40,41,42] 


### Cost equations --> "Loop" of evalfstart/5 
* CEs [42] --> Loop 34 
* CEs [41] --> Loop 35 
* CEs [40] --> Loop 36 
* CEs [39] --> Loop 37 
* CEs [38] --> Loop 38 
* CEs [37] --> Loop 39 

### 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(B,C,D,F,G,H):
* Chain [[14],17]: 1*it(14)+0
  Such that:it(14) =< -C+G

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

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

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

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

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

* Chain [17]: 0
  with precondition: [F=2,D=B,C=G,D=H,C>=0] 

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

* Chain [15]: 0
  with precondition: [F=3,C>=0,B>=D] 


#### Cost of chains of evalfbb6in(A,B,C,D,F,G,H,I):
* Chain [[18,20],25]: 3*it(18)+0
  Such that:aux(3) =< -A+B
it(18) =< aux(3)

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

* Chain [[18,20],24]: 3*it(18)+0
  Such that:aux(4) =< -A+B
it(18) =< aux(4)

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

* Chain [[18,20],23]: 4*it(18)+0
  Such that:aux(5) =< -A+B
it(18) =< aux(5)

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

* Chain [[18,20],21,25]: 3*it(18)+1
  Such that:aux(6) =< -A+B
it(18) =< aux(6)

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

* Chain [[18,20],21,22]: 3*it(18)+1
  Such that:aux(7) =< -A+G
it(18) =< aux(7)

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

* Chain [[18,20],19,25]: 4*it(18)+1
  Such that:aux(8) =< -A+B
it(18) =< aux(8)

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

* Chain [[18,20],19,24]: 4*it(18)+1
  Such that:aux(9) =< -A+B
it(18) =< aux(9)

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

* Chain [[18,20],19,21,25]: 4*it(18)+2
  Such that:aux(10) =< -A+B
it(18) =< aux(10)

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

* Chain [[18,20],19,21,22]: 4*it(18)+2
  Such that:aux(11) =< -A+G
it(18) =< aux(11)

  with precondition: [F=4,H=0,B=G,B=I,A>=0,B>=A+3] 

* Chain [25]: 0
  with precondition: [F=3,A>=0] 

* Chain [24]: 0
  with precondition: [F=3,A>=0,B>=A+1] 

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

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

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

* Chain [21,25]: 1
  with precondition: [F=3,B=A+1,B>=1] 

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

* Chain [19,25]: 1*s(5)+1
  Such that:s(5) =< -A+B

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

* Chain [19,24]: 1*s(5)+1
  Such that:s(5) =< -A+B

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

* Chain [19,21,25]: 1*s(5)+2
  Such that:s(5) =< -A+B

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

* Chain [19,21,22]: 1*s(5)+2
  Such that:s(5) =< -A+G

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


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

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


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

* Chain [32]: 1
  with precondition: [B=1] 

* Chain [31]: 0
  with precondition: [0>=B] 

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

* Chain [29]: 17*s(28)+2
  Such that:aux(15) =< B
s(28) =< aux(15)

  with precondition: [B>=2] 

* Chain [28]: 20*s(32)+2
  Such that:aux(16) =< B
s(32) =< aux(16)

  with precondition: [B>=3] 


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

* Chain [38]: 1
  with precondition: [B=1] 

* Chain [37]: 0
  with precondition: [0>=B] 

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

* Chain [35]: 17*s(36)+2
  Such that:s(35) =< B
s(36) =< s(35)

  with precondition: [B>=2] 

* Chain [34]: 20*s(38)+2
  Such that:s(37) =< B
s(38) =< s(37)

  with precondition: [B>=3] 


Closed-form bounds of evalfstart(A,B,C,D,F): 
-------------------------------------
* Chain [39] with precondition: [] 
    - Upper bound: 0 
    - Complexity: constant 
* Chain [38] with precondition: [B=1] 
    - Upper bound: 1 
    - Complexity: constant 
* Chain [37] with precondition: [0>=B] 
    - Upper bound: 0 
    - Complexity: constant 
* Chain [36] with precondition: [B>=1] 
    - Upper bound: 0 
    - Complexity: constant 
* Chain [35] with precondition: [B>=2] 
    - Upper bound: 17*B+2 
    - Complexity: n 
* Chain [34] with precondition: [B>=3] 
    - Upper bound: 20*B+2 
    - Complexity: n 

### Maximum cost of evalfstart(A,B,C,D,F): nat(B)*20+1+1 
Asymptotic class: n 
* Total analysis performed in 201 ms.

