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

#### Computed strongly connected components 
0. recursive  : [evalloopsbb3in/4,evalloopsbb4in/4]
1. recursive  : [evalloopsbb1in/5,evalloopsbb4in_loop_cont/6,evalloopsbb5in/5,evalloopsbb6in/5]
2. non_recursive  : [evalloopsstop/3]
3. non_recursive  : [evalloopsreturnin/3]
4. non_recursive  : [exit_location/1]
5. non_recursive  : [evalloopsbb6in_loop_cont/4]
6. non_recursive  : [evalloopsentryin/3]
7. non_recursive  : [evalloopsstart/3]

#### Obtained direct recursion through partial evaluation 
0. SCC is partially evaluated into evalloopsbb4in/4
1. SCC is partially evaluated into evalloopsbb6in/5
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 evalloopsbb6in_loop_cont/4
6. SCC is partially evaluated into evalloopsentryin/3
7. SCC is partially evaluated into evalloopsstart/3

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

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


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

### Ranking functions of CR evalloopsbb4in(A,B,D,E) 
* RF of phase [14]: [2*A-2*B-1]

#### Partial ranking functions of CR evalloopsbb4in(A,B,D,E) 
* Partial RF of phase [14]:
  - RF of loop [14:1]:
    2*A-2*B-1


### Specialization of cost equations evalloopsbb6in/5 
* CE 7 is refined into CE [17] 
* CE 6 is refined into CE [18,19] 
* CE 8 is refined into CE [20] 
* CE 5 is refined into CE [21] 
* CE 4 is refined into CE [22] 


### Cost equations --> "Loop" of evalloopsbb6in/5 
* CEs [21] --> Loop 17 
* CEs [22] --> Loop 18 
* CEs [18,19] --> Loop 19 
* CEs [20] --> Loop 20 
* CEs [17] --> Loop 21 

### Ranking functions of CR evalloopsbb6in(A,B,D,E,F) 
* RF of phase [17]: [A-1]
* RF of phase [18]: [A+1]

#### Partial ranking functions of CR evalloopsbb6in(A,B,D,E,F) 
* Partial RF of phase [17]:
  - RF of loop [17:1]:
    A-1
* Partial RF of phase [18]:
  - RF of loop [18:1]:
    A+1


### Specialization of cost equations evalloopsbb6in_loop_cont/4 
* CE 9 is refined into CE [23] 
* CE 10 is refined into CE [24] 


### Cost equations --> "Loop" of evalloopsbb6in_loop_cont/4 
* CEs [23] --> Loop 22 
* CEs [24] --> Loop 23 

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

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


### Specialization of cost equations evalloopsentryin/3 
* CE 3 is refined into CE [25,26,27,28,29,30] 
* CE 2 is refined into CE [31] 


### Cost equations --> "Loop" of evalloopsentryin/3 
* CEs [28] --> Loop 24 
* CEs [27,30] --> Loop 25 
* CEs [26] --> Loop 26 
* CEs [31] --> Loop 27 
* CEs [25,29] --> Loop 28 

### Ranking functions of CR evalloopsentryin(A,B,D) 

#### Partial ranking functions of CR evalloopsentryin(A,B,D) 


### Specialization of cost equations evalloopsstart/3 
* CE 1 is refined into CE [32,33,34,35,36] 


### Cost equations --> "Loop" of evalloopsstart/3 
* CEs [36] --> Loop 29 
* CEs [35] --> Loop 30 
* CEs [34] --> Loop 31 
* CEs [33] --> Loop 32 
* CEs [32] --> Loop 33 

### Ranking functions of CR evalloopsstart(A,B,D) 

#### Partial ranking functions of CR evalloopsstart(A,B,D) 


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

#### Cost of chains of evalloopsbb4in(A,B,D,E):
* Chain [[14],16]: 1*it(14)+0
  Such that:it(14) =< 2*A-2*B

  with precondition: [D=2,B>=1,E>=2*B,E>=A,2*A>=E+2] 

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

  with precondition: [D=3,B>=1,A>=B+1] 

* Chain [15]: 0
  with precondition: [D=3,A>=2,B>=1] 


#### Cost of chains of evalloopsbb6in(A,B,D,E,F):
* Chain [[18],21]: 1*it(18)+0
  Such that:it(18) =< A+1

  with precondition: [D=4,E+1=0,1>=A,A>=0] 

* Chain [[18],20]: 1*it(18)+0
  Such that:it(18) =< A+1

  with precondition: [D=3,1>=A,A>=0] 

* Chain [[17],[18],21]: 1*it(17)+1*it(18)+1*s(3)+0
  Such that:it(18) =< 2
it(17) =< A
aux(1) =< 2*A
s(3) =< it(17)*aux(1)

  with precondition: [D=4,E+1=0,A>=2] 

* Chain [[17],[18],20]: 1*it(17)+1*it(18)+1*s(3)+0
  Such that:it(18) =< 2
it(17) =< A
aux(1) =< 2*A
s(3) =< it(17)*aux(1)

  with precondition: [D=3,A>=2] 

* Chain [[17],20]: 1*it(17)+1*s(3)+0
  Such that:it(17) =< A
aux(1) =< 2*A
s(3) =< it(17)*aux(1)

  with precondition: [D=3,A>=2] 

* Chain [[17],19]: 1*it(17)+1*s(3)+1*s(4)+0
  Such that:it(17) =< A
aux(2) =< 2*A
it(17) =< aux(2)
s(4) =< aux(2)
s(3) =< it(17)*aux(2)

  with precondition: [D=3,A>=3] 

* Chain [20]: 0
  with precondition: [D=3,A+1>=0] 

* Chain [19]: 1*s(4)+0
  Such that:s(4) =< 2*A

  with precondition: [D=3,A>=2] 


#### Cost of chains of evalloopsbb6in_loop_cont(A,B,C,D):
* Chain [23]: 0
  with precondition: [A=3] 

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


#### Cost of chains of evalloopsentryin(A,B,D):
* Chain [28]: 2*s(13)+0
  Such that:aux(5) =< A+1
s(13) =< aux(5)

  with precondition: [1>=A,A>=0] 

* Chain [27]: 0
  with precondition: [0>=A+1] 

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

* Chain [25]: 2*s(15)+3*s(18)+1*s(19)+3*s(20)+0
  Such that:aux(6) =< 2
aux(7) =< A
aux(8) =< 2*A
s(15) =< aux(6)
s(18) =< aux(7)
s(19) =< aux(8)
s(20) =< s(18)*aux(8)

  with precondition: [A>=2] 

* Chain [24]: 1*s(25)+1*s(27)+1*s(28)+0
  Such that:s(25) =< A
s(26) =< 2*A
s(25) =< s(26)
s(27) =< s(26)
s(28) =< s(25)*s(26)

  with precondition: [A>=3] 


#### Cost of chains of evalloopsstart(A,B,D):
* Chain [33]: 2*s(30)+0
  Such that:s(29) =< A+1
s(30) =< s(29)

  with precondition: [1>=A,A>=0] 

* Chain [32]: 0
  with precondition: [0>=A+1] 

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

* Chain [30]: 2*s(34)+3*s(35)+1*s(36)+3*s(37)+0
  Such that:s(31) =< 2
s(32) =< A
s(33) =< 2*A
s(34) =< s(31)
s(35) =< s(32)
s(36) =< s(33)
s(37) =< s(35)*s(33)

  with precondition: [A>=2] 

* Chain [29]: 1*s(38)+1*s(40)+1*s(41)+0
  Such that:s(38) =< A
s(39) =< 2*A
s(38) =< s(39)
s(40) =< s(39)
s(41) =< s(38)*s(39)

  with precondition: [A>=3] 


Closed-form bounds of evalloopsstart(A,B,D): 
-------------------------------------
* Chain [33] with precondition: [1>=A,A>=0] 
    - Upper bound: 2*A+2 
    - Complexity: n 
* Chain [32] with precondition: [0>=A+1] 
    - Upper bound: 0 
    - Complexity: constant 
* Chain [31] with precondition: [A>=0] 
    - Upper bound: 0 
    - Complexity: constant 
* Chain [30] with precondition: [A>=2] 
    - Upper bound: 3*A+4+3*A*(2*A)+2*A 
    - Complexity: n^2 
* Chain [29] with precondition: [A>=3] 
    - Upper bound: 2*A*A+A+2*A 
    - Complexity: n^2 

### Maximum cost of evalloopsstart(A,B,D): max([nat(A+1)*2,nat(2*A)*nat(A)+nat(A)+nat(2*A)+(nat(A)*2+4+nat(A)*2*nat(2*A))]) 
Asymptotic class: n^2 
* Total analysis performed in 95 ms.

