Initial Problem

Start: n_evalDis1start
Program_Vars: Arg_0, Arg_1, Arg_2, Arg_3
Temp_Vars:
Locations: n_evalDis1bb1in___8, n_evalDis1bb2in___7, n_evalDis1bb3in___11, n_evalDis1bb3in___5, n_evalDis1bb3in___6, n_evalDis1bbin___10, n_evalDis1bbin___4, n_evalDis1entryin___12, n_evalDis1returnin___3, n_evalDis1returnin___9, n_evalDis1start, n_evalDis1stop___1, n_evalDis1stop___2
Transitions:
0:n_evalDis1bb1in___8(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb3in___6(Arg_0,Arg_1,Arg_2,Arg_3+1):|:1+Arg_3<=Arg_2 && 1+Arg_1<=Arg_0
1:n_evalDis1bb2in___7(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb3in___5(Arg_0,Arg_1+1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && 1+Arg_1<=Arg_0
2:n_evalDis1bb3in___11(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3):|:1+Arg_1<=Arg_0
3:n_evalDis1bb3in___11(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1returnin___9(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_0<=Arg_1
4:n_evalDis1bb3in___5(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bbin___4(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && 1+Arg_1<=Arg_0
5:n_evalDis1bb3in___5(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1returnin___3(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && Arg_0<=Arg_1
6:n_evalDis1bb3in___6(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3):|:1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0
7:n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb1in___8(Arg_0,Arg_1,Arg_2,Arg_3):|:1+Arg_1<=Arg_0 && 1+Arg_3<=Arg_2
8:n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb2in___7(Arg_0,Arg_1,Arg_2,Arg_3):|:1+Arg_1<=Arg_0 && Arg_2<=Arg_3
9:n_evalDis1bbin___4(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb2in___7(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 && Arg_2<=Arg_3
10:n_evalDis1entryin___12(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb3in___11(Arg_1,Arg_0,Arg_3,Arg_2)
11:n_evalDis1returnin___3(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1stop___2(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_0<=Arg_1 && Arg_2<=Arg_3
12:n_evalDis1returnin___9(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1stop___1(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_0<=Arg_1
13:n_evalDis1start(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1entryin___12(Arg_0,Arg_1,Arg_2,Arg_3)

Preprocessing

Found invariant Arg_3<=Arg_2 && 1+Arg_1<=Arg_0 for location n_evalDis1bb3in___6

Found invariant 1+Arg_1<=Arg_0 for location n_evalDis1bbin___10

Found invariant Arg_0<=Arg_1 for location n_evalDis1stop___1

Found invariant Arg_2<=Arg_3 && Arg_1<=Arg_0 for location n_evalDis1bb3in___5

Found invariant Arg_0<=Arg_1 for location n_evalDis1returnin___9

Found invariant Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 for location n_evalDis1bbin___4

Found invariant Arg_2<=Arg_3 && Arg_1<=Arg_0 && Arg_0<=Arg_1 for location n_evalDis1returnin___3

Found invariant Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 for location n_evalDis1bb2in___7

Found invariant 1+Arg_3<=Arg_2 && 1+Arg_1<=Arg_0 for location n_evalDis1bb1in___8

Found invariant Arg_2<=Arg_3 && Arg_1<=Arg_0 && Arg_0<=Arg_1 for location n_evalDis1stop___2

Problem after Preprocessing

Start: n_evalDis1start
Program_Vars: Arg_0, Arg_1, Arg_2, Arg_3
Temp_Vars:
Locations: n_evalDis1bb1in___8, n_evalDis1bb2in___7, n_evalDis1bb3in___11, n_evalDis1bb3in___5, n_evalDis1bb3in___6, n_evalDis1bbin___10, n_evalDis1bbin___4, n_evalDis1entryin___12, n_evalDis1returnin___3, n_evalDis1returnin___9, n_evalDis1start, n_evalDis1stop___1, n_evalDis1stop___2
Transitions:
0:n_evalDis1bb1in___8(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb3in___6(Arg_0,Arg_1,Arg_2,Arg_3+1):|:1+Arg_3<=Arg_2 && 1+Arg_1<=Arg_0 && 1+Arg_3<=Arg_2 && 1+Arg_1<=Arg_0
1:n_evalDis1bb2in___7(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb3in___5(Arg_0,Arg_1+1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 && Arg_2<=Arg_3 && 1+Arg_1<=Arg_0
2:n_evalDis1bb3in___11(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3):|:1+Arg_1<=Arg_0
3:n_evalDis1bb3in___11(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1returnin___9(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_0<=Arg_1
4:n_evalDis1bb3in___5(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bbin___4(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && Arg_1<=Arg_0 && Arg_2<=Arg_3 && 1+Arg_1<=Arg_0
5:n_evalDis1bb3in___5(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1returnin___3(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && Arg_1<=Arg_0 && Arg_2<=Arg_3 && Arg_0<=Arg_1
6:n_evalDis1bb3in___6(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_3<=Arg_2 && 1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0
7:n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb1in___8(Arg_0,Arg_1,Arg_2,Arg_3):|:1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 && 1+Arg_3<=Arg_2
8:n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb2in___7(Arg_0,Arg_1,Arg_2,Arg_3):|:1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 && Arg_2<=Arg_3
9:n_evalDis1bbin___4(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb2in___7(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 && Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 && Arg_2<=Arg_3
10:n_evalDis1entryin___12(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb3in___11(Arg_1,Arg_0,Arg_3,Arg_2)
11:n_evalDis1returnin___3(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1stop___2(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && Arg_1<=Arg_0 && Arg_0<=Arg_1 && Arg_0<=Arg_1 && Arg_2<=Arg_3
12:n_evalDis1returnin___9(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1stop___1(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_0<=Arg_1 && Arg_0<=Arg_1
13:n_evalDis1start(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1entryin___12(Arg_0,Arg_1,Arg_2,Arg_3)

MPRF for transition 0:n_evalDis1bb1in___8(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb3in___6(Arg_0,Arg_1,Arg_2,Arg_3+1):|:1+Arg_3<=Arg_2 && 1+Arg_1<=Arg_0 && 1+Arg_3<=Arg_2 && 1+Arg_1<=Arg_0 of depth 1:

new bound:

Arg_2+Arg_3 {O(n)}

MPRF:

n_evalDis1bb3in___6 [Arg_2-Arg_3 ]
n_evalDis1bbin___10 [Arg_2-Arg_3 ]
n_evalDis1bb1in___8 [Arg_2-Arg_3 ]

MPRF for transition 6:n_evalDis1bb3in___6(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_3<=Arg_2 && 1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 of depth 1:

new bound:

Arg_2+Arg_3 {O(n)}

MPRF:

n_evalDis1bb3in___6 [Arg_2+1-Arg_3 ]
n_evalDis1bbin___10 [Arg_2-Arg_3 ]
n_evalDis1bb1in___8 [Arg_2-Arg_3 ]

MPRF for transition 7:n_evalDis1bbin___10(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb1in___8(Arg_0,Arg_1,Arg_2,Arg_3):|:1+Arg_1<=Arg_0 && 1+Arg_1<=Arg_0 && 1+Arg_3<=Arg_2 of depth 1:

new bound:

Arg_2+Arg_3 {O(n)}

MPRF:

n_evalDis1bb3in___6 [Arg_2-Arg_3 ]
n_evalDis1bbin___10 [Arg_2-Arg_3 ]
n_evalDis1bb1in___8 [Arg_2-Arg_3-1 ]

MPRF for transition 1:n_evalDis1bb2in___7(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb3in___5(Arg_0,Arg_1+1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 && Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 of depth 1:

new bound:

2*Arg_0+2*Arg_1 {O(n)}

MPRF:

n_evalDis1bb3in___5 [Arg_0-Arg_1 ]
n_evalDis1bbin___4 [Arg_0-Arg_1 ]
n_evalDis1bb2in___7 [Arg_0-Arg_1 ]

MPRF for transition 4:n_evalDis1bb3in___5(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bbin___4(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && Arg_1<=Arg_0 && Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 of depth 1:

new bound:

2*Arg_0+2*Arg_1 {O(n)}

MPRF:

n_evalDis1bb3in___5 [Arg_0+1-Arg_1 ]
n_evalDis1bbin___4 [Arg_0-Arg_1 ]
n_evalDis1bb2in___7 [Arg_0-Arg_1 ]

MPRF for transition 9:n_evalDis1bbin___4(Arg_0,Arg_1,Arg_2,Arg_3) -> n_evalDis1bb2in___7(Arg_0,Arg_1,Arg_2,Arg_3):|:Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 && Arg_2<=Arg_3 && 1+Arg_1<=Arg_0 && Arg_2<=Arg_3 of depth 1:

new bound:

2*Arg_0+2*Arg_1+1 {O(n)}

MPRF:

n_evalDis1bb3in___5 [Arg_0-Arg_1 ]
n_evalDis1bbin___4 [Arg_0-Arg_1 ]
n_evalDis1bb2in___7 [Arg_0-Arg_1-1 ]

All Bounds

Timebounds

Overall timebound:3*Arg_2+3*Arg_3+6*Arg_0+6*Arg_1+9 {O(n)}
0: n_evalDis1bb1in___8->n_evalDis1bb3in___6: Arg_2+Arg_3 {O(n)}
1: n_evalDis1bb2in___7->n_evalDis1bb3in___5: 2*Arg_0+2*Arg_1 {O(n)}
2: n_evalDis1bb3in___11->n_evalDis1bbin___10: 1 {O(1)}
3: n_evalDis1bb3in___11->n_evalDis1returnin___9: 1 {O(1)}
4: n_evalDis1bb3in___5->n_evalDis1bbin___4: 2*Arg_0+2*Arg_1 {O(n)}
5: n_evalDis1bb3in___5->n_evalDis1returnin___3: 1 {O(1)}
6: n_evalDis1bb3in___6->n_evalDis1bbin___10: Arg_2+Arg_3 {O(n)}
7: n_evalDis1bbin___10->n_evalDis1bb1in___8: Arg_2+Arg_3 {O(n)}
8: n_evalDis1bbin___10->n_evalDis1bb2in___7: 1 {O(1)}
9: n_evalDis1bbin___4->n_evalDis1bb2in___7: 2*Arg_0+2*Arg_1+1 {O(n)}
10: n_evalDis1entryin___12->n_evalDis1bb3in___11: 1 {O(1)}
11: n_evalDis1returnin___3->n_evalDis1stop___2: 1 {O(1)}
12: n_evalDis1returnin___9->n_evalDis1stop___1: 1 {O(1)}
13: n_evalDis1start->n_evalDis1entryin___12: 1 {O(1)}

Costbounds

Overall costbound: 3*Arg_2+3*Arg_3+6*Arg_0+6*Arg_1+9 {O(n)}
0: n_evalDis1bb1in___8->n_evalDis1bb3in___6: Arg_2+Arg_3 {O(n)}
1: n_evalDis1bb2in___7->n_evalDis1bb3in___5: 2*Arg_0+2*Arg_1 {O(n)}
2: n_evalDis1bb3in___11->n_evalDis1bbin___10: 1 {O(1)}
3: n_evalDis1bb3in___11->n_evalDis1returnin___9: 1 {O(1)}
4: n_evalDis1bb3in___5->n_evalDis1bbin___4: 2*Arg_0+2*Arg_1 {O(n)}
5: n_evalDis1bb3in___5->n_evalDis1returnin___3: 1 {O(1)}
6: n_evalDis1bb3in___6->n_evalDis1bbin___10: Arg_2+Arg_3 {O(n)}
7: n_evalDis1bbin___10->n_evalDis1bb1in___8: Arg_2+Arg_3 {O(n)}
8: n_evalDis1bbin___10->n_evalDis1bb2in___7: 1 {O(1)}
9: n_evalDis1bbin___4->n_evalDis1bb2in___7: 2*Arg_0+2*Arg_1+1 {O(n)}
10: n_evalDis1entryin___12->n_evalDis1bb3in___11: 1 {O(1)}
11: n_evalDis1returnin___3->n_evalDis1stop___2: 1 {O(1)}
12: n_evalDis1returnin___9->n_evalDis1stop___1: 1 {O(1)}
13: n_evalDis1start->n_evalDis1entryin___12: 1 {O(1)}

Sizebounds

0: n_evalDis1bb1in___8->n_evalDis1bb3in___6, Arg_0: Arg_1 {O(n)}
0: n_evalDis1bb1in___8->n_evalDis1bb3in___6, Arg_1: Arg_0 {O(n)}
0: n_evalDis1bb1in___8->n_evalDis1bb3in___6, Arg_2: Arg_3 {O(n)}
0: n_evalDis1bb1in___8->n_evalDis1bb3in___6, Arg_3: 2*Arg_2+Arg_3 {O(n)}
1: n_evalDis1bb2in___7->n_evalDis1bb3in___5, Arg_0: 2*Arg_1 {O(n)}
1: n_evalDis1bb2in___7->n_evalDis1bb3in___5, Arg_1: 2*Arg_1+4*Arg_0 {O(n)}
1: n_evalDis1bb2in___7->n_evalDis1bb3in___5, Arg_2: 2*Arg_3 {O(n)}
1: n_evalDis1bb2in___7->n_evalDis1bb3in___5, Arg_3: 3*Arg_2+Arg_3 {O(n)}
2: n_evalDis1bb3in___11->n_evalDis1bbin___10, Arg_0: Arg_1 {O(n)}
2: n_evalDis1bb3in___11->n_evalDis1bbin___10, Arg_1: Arg_0 {O(n)}
2: n_evalDis1bb3in___11->n_evalDis1bbin___10, Arg_2: Arg_3 {O(n)}
2: n_evalDis1bb3in___11->n_evalDis1bbin___10, Arg_3: Arg_2 {O(n)}
3: n_evalDis1bb3in___11->n_evalDis1returnin___9, Arg_0: Arg_1 {O(n)}
3: n_evalDis1bb3in___11->n_evalDis1returnin___9, Arg_1: Arg_0 {O(n)}
3: n_evalDis1bb3in___11->n_evalDis1returnin___9, Arg_2: Arg_3 {O(n)}
3: n_evalDis1bb3in___11->n_evalDis1returnin___9, Arg_3: Arg_2 {O(n)}
4: n_evalDis1bb3in___5->n_evalDis1bbin___4, Arg_0: 2*Arg_1 {O(n)}
4: n_evalDis1bb3in___5->n_evalDis1bbin___4, Arg_1: 2*Arg_1+4*Arg_0 {O(n)}
4: n_evalDis1bb3in___5->n_evalDis1bbin___4, Arg_2: 2*Arg_3 {O(n)}
4: n_evalDis1bb3in___5->n_evalDis1bbin___4, Arg_3: 3*Arg_2+Arg_3 {O(n)}
5: n_evalDis1bb3in___5->n_evalDis1returnin___3, Arg_0: 2*Arg_1 {O(n)}
5: n_evalDis1bb3in___5->n_evalDis1returnin___3, Arg_1: 2*Arg_1+4*Arg_0 {O(n)}
5: n_evalDis1bb3in___5->n_evalDis1returnin___3, Arg_2: 2*Arg_3 {O(n)}
5: n_evalDis1bb3in___5->n_evalDis1returnin___3, Arg_3: 3*Arg_2+Arg_3 {O(n)}
6: n_evalDis1bb3in___6->n_evalDis1bbin___10, Arg_0: Arg_1 {O(n)}
6: n_evalDis1bb3in___6->n_evalDis1bbin___10, Arg_1: Arg_0 {O(n)}
6: n_evalDis1bb3in___6->n_evalDis1bbin___10, Arg_2: Arg_3 {O(n)}
6: n_evalDis1bb3in___6->n_evalDis1bbin___10, Arg_3: 2*Arg_2+Arg_3 {O(n)}
7: n_evalDis1bbin___10->n_evalDis1bb1in___8, Arg_0: Arg_1 {O(n)}
7: n_evalDis1bbin___10->n_evalDis1bb1in___8, Arg_1: Arg_0 {O(n)}
7: n_evalDis1bbin___10->n_evalDis1bb1in___8, Arg_2: Arg_3 {O(n)}
7: n_evalDis1bbin___10->n_evalDis1bb1in___8, Arg_3: 2*Arg_2+Arg_3 {O(n)}
8: n_evalDis1bbin___10->n_evalDis1bb2in___7, Arg_0: 2*Arg_1 {O(n)}
8: n_evalDis1bbin___10->n_evalDis1bb2in___7, Arg_1: 2*Arg_0 {O(n)}
8: n_evalDis1bbin___10->n_evalDis1bb2in___7, Arg_2: 2*Arg_3 {O(n)}
8: n_evalDis1bbin___10->n_evalDis1bb2in___7, Arg_3: 3*Arg_2+Arg_3 {O(n)}
9: n_evalDis1bbin___4->n_evalDis1bb2in___7, Arg_0: 2*Arg_1 {O(n)}
9: n_evalDis1bbin___4->n_evalDis1bb2in___7, Arg_1: 2*Arg_1+4*Arg_0 {O(n)}
9: n_evalDis1bbin___4->n_evalDis1bb2in___7, Arg_2: 2*Arg_3 {O(n)}
9: n_evalDis1bbin___4->n_evalDis1bb2in___7, Arg_3: 3*Arg_2+Arg_3 {O(n)}
10: n_evalDis1entryin___12->n_evalDis1bb3in___11, Arg_0: Arg_1 {O(n)}
10: n_evalDis1entryin___12->n_evalDis1bb3in___11, Arg_1: Arg_0 {O(n)}
10: n_evalDis1entryin___12->n_evalDis1bb3in___11, Arg_2: Arg_3 {O(n)}
10: n_evalDis1entryin___12->n_evalDis1bb3in___11, Arg_3: Arg_2 {O(n)}
11: n_evalDis1returnin___3->n_evalDis1stop___2, Arg_0: 2*Arg_1 {O(n)}
11: n_evalDis1returnin___3->n_evalDis1stop___2, Arg_1: 2*Arg_1+4*Arg_0 {O(n)}
11: n_evalDis1returnin___3->n_evalDis1stop___2, Arg_2: 2*Arg_3 {O(n)}
11: n_evalDis1returnin___3->n_evalDis1stop___2, Arg_3: 3*Arg_2+Arg_3 {O(n)}
12: n_evalDis1returnin___9->n_evalDis1stop___1, Arg_0: Arg_1 {O(n)}
12: n_evalDis1returnin___9->n_evalDis1stop___1, Arg_1: Arg_0 {O(n)}
12: n_evalDis1returnin___9->n_evalDis1stop___1, Arg_2: Arg_3 {O(n)}
12: n_evalDis1returnin___9->n_evalDis1stop___1, Arg_3: Arg_2 {O(n)}
13: n_evalDis1start->n_evalDis1entryin___12, Arg_0: Arg_0 {O(n)}
13: n_evalDis1start->n_evalDis1entryin___12, Arg_1: Arg_1 {O(n)}
13: n_evalDis1start->n_evalDis1entryin___12, Arg_2: Arg_2 {O(n)}
13: n_evalDis1start->n_evalDis1entryin___12, Arg_3: Arg_3 {O(n)}