Initial Problem

Start: eval_insertsort_start
Program_Vars: Arg_0, Arg_1, Arg_2, Arg_3, Arg_4
Temp_Vars: nondef.0, nondef.1
Locations: eval_insertsort_0, eval_insertsort_1, eval_insertsort_3, eval_insertsort_4, eval_insertsort_bb0_in, eval_insertsort_bb1_in, eval_insertsort_bb2_in, eval_insertsort_bb3_in, eval_insertsort_bb4_in, eval_insertsort_bb5_in, eval_insertsort_bb6_in, eval_insertsort_bb7_in, eval_insertsort_start, eval_insertsort_stop
Transitions:
6:eval_insertsort_0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_1(nondef.0,Arg_1,Arg_2,Arg_3,Arg_4)
7:eval_insertsort_1(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_2-1,Arg_4)
12:eval_insertsort_3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_4(Arg_0,nondef.1,Arg_2,Arg_3,Arg_4)
13:eval_insertsort_4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb5_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:Arg_0<Arg_1
14:eval_insertsort_4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:Arg_1<=Arg_0
1:eval_insertsort_bb0_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb1_in(Arg_0,Arg_1,1,Arg_3,Arg_4)
2:eval_insertsort_bb1_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb2_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:Arg_2<Arg_4
3:eval_insertsort_bb1_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb7_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:Arg_4<=Arg_2
4:eval_insertsort_bb2_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4)
8:eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb4_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:0<=Arg_3
9:eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:Arg_3<0
10:eval_insertsort_bb4_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4)
15:eval_insertsort_bb5_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3-1,Arg_4)
16:eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb1_in(Arg_0,Arg_1,Arg_2+1,Arg_3,Arg_4)
17:eval_insertsort_bb7_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_stop(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4)
0:eval_insertsort_start(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb0_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4)

Preprocessing

Found invariant 2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 for location eval_insertsort_0

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 for location eval_insertsort_bb4_in

Found invariant Arg_4<=Arg_2 && 1<=Arg_2 for location eval_insertsort_bb7_in

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 for location eval_insertsort_4

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && 1+Arg_0<=Arg_1 for location eval_insertsort_bb5_in

Found invariant 2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 for location eval_insertsort_1

Found invariant 2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 for location eval_insertsort_bb3_in

Found invariant 2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 for location eval_insertsort_bb2_in

Found invariant 2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 for location eval_insertsort_bb6_in

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 for location eval_insertsort_3

Found invariant Arg_4<=Arg_2 && 1<=Arg_2 for location eval_insertsort_stop

Found invariant 1<=Arg_2 for location eval_insertsort_bb1_in

Problem after Preprocessing

Start: eval_insertsort_start
Program_Vars: Arg_0, Arg_1, Arg_2, Arg_3, Arg_4
Temp_Vars: nondef.0, nondef.1
Locations: eval_insertsort_0, eval_insertsort_1, eval_insertsort_3, eval_insertsort_4, eval_insertsort_bb0_in, eval_insertsort_bb1_in, eval_insertsort_bb2_in, eval_insertsort_bb3_in, eval_insertsort_bb4_in, eval_insertsort_bb5_in, eval_insertsort_bb6_in, eval_insertsort_bb7_in, eval_insertsort_start, eval_insertsort_stop
Transitions:
6:eval_insertsort_0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_1(nondef.0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2
7:eval_insertsort_1(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_2-1,Arg_4):|:2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2
12:eval_insertsort_3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_4(Arg_0,nondef.1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2
13:eval_insertsort_4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb5_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_0<Arg_1
14:eval_insertsort_4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_1<=Arg_0
1:eval_insertsort_bb0_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb1_in(Arg_0,Arg_1,1,Arg_3,Arg_4)
2:eval_insertsort_bb1_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb2_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:1<=Arg_2 && Arg_2<Arg_4
3:eval_insertsort_bb1_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb7_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:1<=Arg_2 && Arg_4<=Arg_2
4:eval_insertsort_bb2_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2
8:eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb4_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 && 0<=Arg_3
9:eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_3<0
10:eval_insertsort_bb4_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2
15:eval_insertsort_bb5_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3-1,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && 1+Arg_0<=Arg_1
16:eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb1_in(Arg_0,Arg_1,Arg_2+1,Arg_3,Arg_4):|:2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2
17:eval_insertsort_bb7_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_stop(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:Arg_4<=Arg_2 && 1<=Arg_2
0:eval_insertsort_start(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb0_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4)

MPRF for transition 6:eval_insertsort_0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_1(nondef.0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 of depth 1:

new bound:

Arg_4+2 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2 ]
eval_insertsort_4 [Arg_4-Arg_2 ]
eval_insertsort_bb2_in [Arg_4+1-Arg_2 ]
eval_insertsort_0 [Arg_4+1-Arg_2 ]
eval_insertsort_bb4_in [Arg_4-Arg_2 ]
eval_insertsort_3 [Arg_4-Arg_2 ]
eval_insertsort_bb5_in [Arg_4-Arg_2 ]
eval_insertsort_bb3_in [Arg_4-Arg_2 ]
eval_insertsort_bb6_in [Arg_4-Arg_2 ]
eval_insertsort_bb1_in [Arg_4+1-Arg_2 ]

MPRF for transition 7:eval_insertsort_1(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_2-1,Arg_4):|:2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 of depth 1:

new bound:

Arg_4+1 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2 ]
eval_insertsort_4 [Arg_4-Arg_2-1 ]
eval_insertsort_bb2_in [Arg_4-Arg_2 ]
eval_insertsort_0 [Arg_4-Arg_2 ]
eval_insertsort_bb4_in [Arg_4-Arg_2-1 ]
eval_insertsort_3 [Arg_4-Arg_2-1 ]
eval_insertsort_bb5_in [Arg_4-Arg_2-1 ]
eval_insertsort_bb3_in [Arg_4-Arg_2-1 ]
eval_insertsort_bb6_in [Arg_4-Arg_2-1 ]
eval_insertsort_bb1_in [Arg_4-Arg_2 ]

MPRF for transition 14:eval_insertsort_4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_1<=Arg_0 of depth 1:

new bound:

Arg_4+1 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2 ]
eval_insertsort_4 [Arg_4-Arg_2 ]
eval_insertsort_bb2_in [Arg_4-Arg_2 ]
eval_insertsort_0 [Arg_4-Arg_2 ]
eval_insertsort_bb4_in [Arg_4-Arg_2 ]
eval_insertsort_3 [Arg_4-Arg_2 ]
eval_insertsort_bb5_in [Arg_4-Arg_2 ]
eval_insertsort_bb3_in [Arg_4-Arg_2 ]
eval_insertsort_bb6_in [Arg_4-Arg_2-1 ]
eval_insertsort_bb1_in [Arg_4-Arg_2 ]

MPRF for transition 2:eval_insertsort_bb1_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb2_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:1<=Arg_2 && Arg_2<Arg_4 of depth 1:

new bound:

Arg_4+1 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2-1 ]
eval_insertsort_4 [Arg_4-Arg_2-1 ]
eval_insertsort_bb2_in [Arg_4-Arg_2-1 ]
eval_insertsort_0 [Arg_4-Arg_2-1 ]
eval_insertsort_bb4_in [Arg_4-Arg_2-1 ]
eval_insertsort_3 [Arg_4-Arg_2-1 ]
eval_insertsort_bb5_in [Arg_4-Arg_2-1 ]
eval_insertsort_bb3_in [Arg_4-Arg_2-1 ]
eval_insertsort_bb6_in [Arg_4-Arg_2-1 ]
eval_insertsort_bb1_in [Arg_4-Arg_2 ]

MPRF for transition 4:eval_insertsort_bb2_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 of depth 1:

new bound:

Arg_4+2 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2 ]
eval_insertsort_4 [Arg_4-Arg_2 ]
eval_insertsort_bb2_in [Arg_4+1-Arg_2 ]
eval_insertsort_0 [Arg_4-Arg_2 ]
eval_insertsort_bb4_in [Arg_4-Arg_2 ]
eval_insertsort_3 [Arg_4-Arg_2 ]
eval_insertsort_bb5_in [Arg_4-Arg_2 ]
eval_insertsort_bb3_in [Arg_4-Arg_2 ]
eval_insertsort_bb6_in [Arg_4-Arg_2 ]
eval_insertsort_bb1_in [Arg_4+1-Arg_2 ]

MPRF for transition 9:eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_3<0 of depth 1:

new bound:

Arg_4+1 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2 ]
eval_insertsort_4 [Arg_4-Arg_2 ]
eval_insertsort_bb2_in [Arg_4-Arg_2 ]
eval_insertsort_0 [Arg_4-Arg_2 ]
eval_insertsort_bb4_in [Arg_4-Arg_2 ]
eval_insertsort_3 [Arg_4-Arg_2 ]
eval_insertsort_bb5_in [Arg_4-Arg_2 ]
eval_insertsort_bb3_in [Arg_4-Arg_2 ]
eval_insertsort_bb6_in [Arg_4-Arg_2-1 ]
eval_insertsort_bb1_in [Arg_4-Arg_2 ]

MPRF for transition 16:eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb1_in(Arg_0,Arg_1,Arg_2+1,Arg_3,Arg_4):|:2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 of depth 1:

new bound:

Arg_4+1 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2 ]
eval_insertsort_4 [Arg_4-Arg_2 ]
eval_insertsort_bb2_in [Arg_4-Arg_2 ]
eval_insertsort_0 [Arg_4-Arg_2 ]
eval_insertsort_bb4_in [Arg_4-Arg_2 ]
eval_insertsort_3 [Arg_4-Arg_2 ]
eval_insertsort_bb5_in [Arg_4-Arg_2 ]
eval_insertsort_bb3_in [Arg_4-Arg_2 ]
eval_insertsort_bb6_in [Arg_4-Arg_2 ]
eval_insertsort_bb1_in [Arg_4-Arg_2 ]

MPRF for transition 12:eval_insertsort_3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_4(Arg_0,nondef.1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 of depth 1:

new bound:

Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}

MPRF:

eval_insertsort_1 [Arg_2 ]
eval_insertsort_4 [Arg_3 ]
eval_insertsort_bb1_in [Arg_2 ]
eval_insertsort_bb2_in [Arg_2 ]
eval_insertsort_0 [Arg_2 ]
eval_insertsort_bb6_in [Arg_3 ]
eval_insertsort_bb4_in [Arg_3+1 ]
eval_insertsort_3 [Arg_3+1 ]
eval_insertsort_bb5_in [Arg_3 ]
eval_insertsort_bb3_in [Arg_3+1 ]

MPRF for transition 13:eval_insertsort_4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb5_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_0<Arg_1 of depth 1:

new bound:

Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}

MPRF:

eval_insertsort_1 [Arg_2 ]
eval_insertsort_4 [Arg_3+1 ]
eval_insertsort_bb1_in [Arg_2 ]
eval_insertsort_bb2_in [Arg_2 ]
eval_insertsort_0 [Arg_2 ]
eval_insertsort_bb6_in [Arg_3 ]
eval_insertsort_bb4_in [Arg_3+1 ]
eval_insertsort_3 [Arg_3+1 ]
eval_insertsort_bb5_in [Arg_3 ]
eval_insertsort_bb3_in [Arg_3+1 ]

MPRF for transition 8:eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb4_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 && 0<=Arg_3 of depth 1:

new bound:

Arg_4*Arg_4+2*Arg_4 {O(n^2)}

MPRF:

eval_insertsort_1 [Arg_4 ]
eval_insertsort_4 [Arg_3+Arg_4-Arg_2 ]
eval_insertsort_bb1_in [Arg_4 ]
eval_insertsort_bb2_in [Arg_4 ]
eval_insertsort_0 [Arg_4 ]
eval_insertsort_bb6_in [Arg_4-Arg_2 ]
eval_insertsort_bb4_in [Arg_3+Arg_4-Arg_2 ]
eval_insertsort_3 [Arg_3+Arg_4-Arg_2 ]
eval_insertsort_bb5_in [Arg_3+Arg_4-Arg_2 ]
eval_insertsort_bb3_in [Arg_3+Arg_4+1-Arg_2 ]

MPRF for transition 10:eval_insertsort_bb4_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 of depth 1:

new bound:

Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}

MPRF:

eval_insertsort_1 [Arg_2 ]
eval_insertsort_4 [Arg_3 ]
eval_insertsort_bb1_in [Arg_2 ]
eval_insertsort_bb2_in [Arg_2 ]
eval_insertsort_0 [Arg_2 ]
eval_insertsort_bb6_in [Arg_3 ]
eval_insertsort_bb4_in [Arg_3+1 ]
eval_insertsort_3 [Arg_3 ]
eval_insertsort_bb5_in [Arg_3 ]
eval_insertsort_bb3_in [Arg_3+1 ]

MPRF for transition 15:eval_insertsort_bb5_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3-1,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && 1+Arg_0<=Arg_1 of depth 1:

new bound:

2*Arg_4*Arg_4+6*Arg_4+6 {O(n^2)}

MPRF:

eval_insertsort_1 [2*Arg_2 ]
eval_insertsort_4 [Arg_2+Arg_3+1 ]
eval_insertsort_bb1_in [2*Arg_2 ]
eval_insertsort_bb2_in [2*Arg_2 ]
eval_insertsort_0 [2*Arg_2 ]
eval_insertsort_bb6_in [Arg_2+Arg_3 ]
eval_insertsort_bb4_in [Arg_2+Arg_3+1 ]
eval_insertsort_3 [Arg_2+Arg_3+1 ]
eval_insertsort_bb5_in [Arg_2+Arg_3+1 ]
eval_insertsort_bb3_in [Arg_2+Arg_3+1 ]

Analysing control-flow refined program

Cut unsatisfiable transition 9: eval_insertsort_bb3_in->eval_insertsort_bb6_in

Found invariant 2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 for location eval_insertsort_0

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 for location n_eval_insertsort_4___7

Found invariant 3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 && 1+Arg_0<=Arg_1 for location n_eval_insertsort_bb4_in___4

Found invariant Arg_4<=Arg_2 && 1<=Arg_2 for location eval_insertsort_bb7_in

Found invariant 3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 && 1+Arg_0<=Arg_1 for location n_eval_insertsort_3___3

Found invariant 2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 for location eval_insertsort_1

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 for location eval_insertsort_bb3_in

Found invariant 2<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1<=Arg_2 for location eval_insertsort_bb2_in

Found invariant 2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 for location eval_insertsort_bb6_in

Found invariant 2<=Arg_4 && 1<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 && 1+Arg_0<=Arg_1 for location n_eval_insertsort_bb3_in___5

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 for location n_eval_insertsort_3___8

Found invariant Arg_4<=Arg_2 && 1<=Arg_2 for location eval_insertsort_stop

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 && 1+Arg_0<=Arg_1 for location n_eval_insertsort_bb5_in___6

Found invariant 3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 for location n_eval_insertsort_4___2

Found invariant 1<=Arg_2 for location eval_insertsort_bb1_in

Found invariant 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 for location n_eval_insertsort_bb4_in___9

Found invariant 3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 && 1+Arg_0<=Arg_1 for location n_eval_insertsort_bb5_in___1

knowledge_propagation leads to new time bound Arg_4+1 {O(n)} for transition 114:eval_insertsort_bb3_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_bb4_in___9(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4 && Arg_2<=1+Arg_3 && 1+Arg_3<=Arg_2 && 1<=Arg_2 && 1+Arg_2<=Arg_4 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4

knowledge_propagation leads to new time bound Arg_4+1 {O(n)} for transition 117:n_eval_insertsort_bb4_in___9(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_3___8(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 && 1+Arg_2<=Arg_4 && 1<=Arg_2 && Arg_2<=Arg_3+1 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4

knowledge_propagation leads to new time bound Arg_4+1 {O(n)} for transition 111:n_eval_insertsort_3___8(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_4___7(Arg_0,NoDet0,Arg2_P,Arg3_P,Arg4_P):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 && 1+Arg_2<=Arg_4 && 1<=Arg_2 && Arg_2<=Arg_3+1 && 1+Arg_3<=Arg_2 && 1+Arg2_P<=Arg4_P && 1+Arg3_P<=Arg2_P && 0<=Arg3_P && Arg_2<=Arg2_P && Arg2_P<=Arg_2 && Arg_4<=Arg4_P && Arg4_P<=Arg_4 && Arg_3<=Arg3_P && Arg3_P<=Arg_3

knowledge_propagation leads to new time bound Arg_4+1 {O(n)} for transition 113:n_eval_insertsort_4___7(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_bb5_in___6(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 && 1+Arg_2<=Arg_4 && 1<=Arg_2 && Arg_2<=Arg_3+1 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4 && Arg_0<Arg_1

knowledge_propagation leads to new time bound Arg_4+1 {O(n)} for transition 130:n_eval_insertsort_4___7(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 && 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_1<=Arg_0

knowledge_propagation leads to new time bound Arg_4+1 {O(n)} for transition 119:n_eval_insertsort_bb5_in___6(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_bb3_in___5(Arg_0,Arg_1,Arg_2,Arg_3-1,Arg_4):|:2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && Arg_2<=1+Arg_3 && 1<=Arg_2 && 1+Arg_0<=Arg_1 && Arg_0<Arg_1 && 2+Arg_3<=Arg_4 && 0<=Arg_3 && Arg_2<=Arg_3+1 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4 && 1+Arg_0<=Arg_1

MPRF for transition 110:n_eval_insertsort_3___3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_4___2(Arg_0,NoDet0,Arg2_P,Arg3_P,Arg4_P):|:3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 && 1+Arg_0<=Arg_1 && 1+Arg_0<=Arg_1 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 1+Arg2_P<=Arg4_P && 1+Arg3_P<=Arg2_P && 0<=Arg3_P && Arg_2<=Arg2_P && Arg2_P<=Arg_2 && Arg_4<=Arg4_P && Arg4_P<=Arg_4 && Arg_3<=Arg3_P && Arg3_P<=Arg_3 of depth 1:

new bound:

2*Arg_4*Arg_4+6*Arg_4+4 {O(n^2)}

MPRF:

eval_insertsort_1 [Arg_4-1 ]
eval_insertsort_bb2_in [Arg_4-1 ]
eval_insertsort_0 [Arg_4-1 ]
eval_insertsort_bb3_in [Arg_4-1 ]
eval_insertsort_bb1_in [Arg_4-1 ]
n_eval_insertsort_4___2 [Arg_3+Arg_4-1 ]
n_eval_insertsort_bb5_in___6 [Arg_3+Arg_4-Arg_2 ]
n_eval_insertsort_4___7 [Arg_4-1 ]
eval_insertsort_bb6_in [Arg_4-1 ]
n_eval_insertsort_bb4_in___4 [Arg_3+Arg_4 ]
n_eval_insertsort_3___3 [Arg_3+Arg_4 ]
n_eval_insertsort_bb4_in___9 [Arg_4-1 ]
n_eval_insertsort_3___8 [Arg_4-1 ]
n_eval_insertsort_bb5_in___1 [Arg_3+Arg_4-1 ]
n_eval_insertsort_bb3_in___5 [Arg_3+Arg_4 ]

MPRF for transition 112:n_eval_insertsort_4___2(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_bb5_in___1(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4 && Arg_0<Arg_1 of depth 1:

new bound:

Arg_4*Arg_4+7*Arg_4+6 {O(n^2)}

MPRF:

eval_insertsort_1 [0 ]
eval_insertsort_bb2_in [0 ]
eval_insertsort_0 [0 ]
eval_insertsort_bb3_in [0 ]
eval_insertsort_bb1_in [0 ]
n_eval_insertsort_4___2 [Arg_3+3 ]
n_eval_insertsort_bb5_in___6 [0 ]
n_eval_insertsort_4___7 [0 ]
eval_insertsort_bb6_in [0 ]
n_eval_insertsort_bb4_in___4 [Arg_3+3 ]
n_eval_insertsort_3___3 [Arg_3+3 ]
n_eval_insertsort_bb4_in___9 [0 ]
n_eval_insertsort_3___8 [0 ]
n_eval_insertsort_bb5_in___1 [Arg_3+2 ]
n_eval_insertsort_bb3_in___5 [Arg_3+3 ]

MPRF for transition 129:n_eval_insertsort_4___2(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 && 2<=Arg_4 && 2<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=Arg_3 && 1<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_1<=Arg_0 of depth 1:

new bound:

Arg_4+1 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2 ]
eval_insertsort_bb2_in [Arg_4-Arg_2 ]
eval_insertsort_0 [Arg_4-Arg_2 ]
eval_insertsort_bb3_in [Arg_4-Arg_2 ]
eval_insertsort_bb1_in [Arg_4-Arg_2 ]
n_eval_insertsort_4___2 [Arg_4-Arg_2 ]
n_eval_insertsort_4___7 [Arg_4-Arg_3-1 ]
eval_insertsort_bb6_in [Arg_4-Arg_2-1 ]
n_eval_insertsort_bb4_in___4 [Arg_4-Arg_2 ]
n_eval_insertsort_3___3 [Arg_4-Arg_2 ]
n_eval_insertsort_bb4_in___9 [Arg_4-Arg_2 ]
n_eval_insertsort_3___8 [Arg_4-Arg_2 ]
n_eval_insertsort_bb5_in___1 [Arg_4-Arg_2 ]
n_eval_insertsort_bb5_in___6 [Arg_4-Arg_2 ]
n_eval_insertsort_bb3_in___5 [Arg_4-Arg_2 ]

MPRF for transition 115:n_eval_insertsort_bb3_in___5(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_bb4_in___4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 1<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 && 1+Arg_0<=Arg_1 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 2+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4 && 1+Arg_0<=Arg_1 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4 of depth 1:

new bound:

Arg_4*Arg_4+5*Arg_4+4 {O(n^2)}

MPRF:

eval_insertsort_1 [0 ]
eval_insertsort_bb2_in [0 ]
eval_insertsort_0 [0 ]
eval_insertsort_bb3_in [0 ]
eval_insertsort_bb1_in [0 ]
n_eval_insertsort_4___2 [Arg_3 ]
n_eval_insertsort_bb5_in___6 [0 ]
n_eval_insertsort_4___7 [0 ]
eval_insertsort_bb6_in [0 ]
n_eval_insertsort_bb4_in___4 [Arg_3 ]
n_eval_insertsort_3___3 [Arg_3 ]
n_eval_insertsort_bb4_in___9 [0 ]
n_eval_insertsort_3___8 [0 ]
n_eval_insertsort_bb5_in___1 [Arg_3 ]
n_eval_insertsort_bb3_in___5 [Arg_3+1 ]

MPRF for transition 128:n_eval_insertsort_bb3_in___5(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> eval_insertsort_bb6_in(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:2<=Arg_4 && 1<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 && 1+Arg_0<=Arg_1 && 2<=Arg_4 && 1<=Arg_3+Arg_4 && 2+Arg_3<=Arg_4 && 3<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 1+Arg_3<=Arg_2 && 0<=1+Arg_3 && 0<=Arg_2+Arg_3 && 1<=Arg_2 && Arg_3<0 of depth 1:

new bound:

Arg_4+1 {O(n)}

MPRF:

eval_insertsort_1 [Arg_4-Arg_2 ]
eval_insertsort_bb2_in [Arg_4-Arg_2 ]
eval_insertsort_0 [Arg_4-Arg_2 ]
eval_insertsort_bb3_in [Arg_4-Arg_2 ]
eval_insertsort_bb1_in [Arg_4-Arg_2 ]
n_eval_insertsort_4___2 [Arg_4-Arg_2 ]
n_eval_insertsort_4___7 [Arg_4-Arg_3-1 ]
eval_insertsort_bb6_in [Arg_4-Arg_2-1 ]
n_eval_insertsort_bb4_in___4 [Arg_4-Arg_2 ]
n_eval_insertsort_3___3 [Arg_4-Arg_2 ]
n_eval_insertsort_bb4_in___9 [Arg_4-Arg_2 ]
n_eval_insertsort_3___8 [Arg_4-Arg_2 ]
n_eval_insertsort_bb5_in___1 [Arg_4-Arg_2 ]
n_eval_insertsort_bb5_in___6 [Arg_4-Arg_2 ]
n_eval_insertsort_bb3_in___5 [Arg_4-Arg_2 ]

MPRF for transition 116:n_eval_insertsort_bb4_in___4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_3___3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 && 1+Arg_0<=Arg_1 && 1+Arg_0<=Arg_1 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4 of depth 1:

new bound:

Arg_4*Arg_4+5*Arg_4+4 {O(n^2)}

MPRF:

eval_insertsort_1 [0 ]
eval_insertsort_bb2_in [0 ]
eval_insertsort_0 [0 ]
eval_insertsort_bb3_in [0 ]
eval_insertsort_bb1_in [0 ]
n_eval_insertsort_4___2 [Arg_3 ]
n_eval_insertsort_bb5_in___6 [0 ]
n_eval_insertsort_4___7 [0 ]
eval_insertsort_bb6_in [0 ]
n_eval_insertsort_bb4_in___4 [Arg_3+1 ]
n_eval_insertsort_3___3 [Arg_3 ]
n_eval_insertsort_bb4_in___9 [0 ]
n_eval_insertsort_3___8 [0 ]
n_eval_insertsort_bb5_in___1 [Arg_3 ]
n_eval_insertsort_bb3_in___5 [Arg_3+1 ]

MPRF for transition 118:n_eval_insertsort_bb5_in___1(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> n_eval_insertsort_bb3_in___5(Arg_0,Arg_1,Arg_2,Arg_3-1,Arg_4):|:3<=Arg_4 && 3<=Arg_3+Arg_4 && 3+Arg_3<=Arg_4 && 5<=Arg_2+Arg_4 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 2<=Arg_2+Arg_3 && 2<=Arg_2 && 1+Arg_0<=Arg_1 && Arg_0<Arg_1 && 1+Arg_2<=Arg_4 && 2+Arg_3<=Arg_2 && 0<=Arg_3 && 0<=Arg_3 && 1+Arg_3<=Arg_2 && 1+Arg_2<=Arg_4 && 1+Arg_0<=Arg_1 of depth 1:

new bound:

2*Arg_4*Arg_4+6*Arg_4+4 {O(n^2)}

MPRF:

eval_insertsort_1 [Arg_4-1 ]
eval_insertsort_bb2_in [Arg_4-1 ]
eval_insertsort_0 [Arg_4-1 ]
eval_insertsort_bb3_in [Arg_4-1 ]
eval_insertsort_bb1_in [Arg_4-1 ]
n_eval_insertsort_4___2 [Arg_3+Arg_4 ]
n_eval_insertsort_bb5_in___6 [Arg_3+Arg_4-Arg_2 ]
n_eval_insertsort_4___7 [Arg_3+Arg_4-Arg_2 ]
eval_insertsort_bb6_in [Arg_4-1 ]
n_eval_insertsort_bb4_in___4 [Arg_3+Arg_4 ]
n_eval_insertsort_3___3 [Arg_3+Arg_4 ]
n_eval_insertsort_bb4_in___9 [Arg_3+Arg_4-Arg_2 ]
n_eval_insertsort_3___8 [Arg_3+Arg_4-Arg_2 ]
n_eval_insertsort_bb5_in___1 [Arg_3+Arg_4 ]
n_eval_insertsort_bb3_in___5 [Arg_3+Arg_4 ]

CFR did not improve the program. Rolling back

All Bounds

Timebounds

Overall timebound:6*Arg_4*Arg_4+24*Arg_4+28 {O(n^2)}
6: eval_insertsort_0->eval_insertsort_1: Arg_4+2 {O(n)}
7: eval_insertsort_1->eval_insertsort_bb3_in: Arg_4+1 {O(n)}
12: eval_insertsort_3->eval_insertsort_4: Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}
13: eval_insertsort_4->eval_insertsort_bb5_in: Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}
14: eval_insertsort_4->eval_insertsort_bb6_in: Arg_4+1 {O(n)}
1: eval_insertsort_bb0_in->eval_insertsort_bb1_in: 1 {O(1)}
2: eval_insertsort_bb1_in->eval_insertsort_bb2_in: Arg_4+1 {O(n)}
3: eval_insertsort_bb1_in->eval_insertsort_bb7_in: 1 {O(1)}
4: eval_insertsort_bb2_in->eval_insertsort_0: Arg_4+2 {O(n)}
8: eval_insertsort_bb3_in->eval_insertsort_bb4_in: Arg_4*Arg_4+2*Arg_4 {O(n^2)}
9: eval_insertsort_bb3_in->eval_insertsort_bb6_in: Arg_4+1 {O(n)}
10: eval_insertsort_bb4_in->eval_insertsort_3: Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}
15: eval_insertsort_bb5_in->eval_insertsort_bb3_in: 2*Arg_4*Arg_4+6*Arg_4+6 {O(n^2)}
16: eval_insertsort_bb6_in->eval_insertsort_bb1_in: Arg_4+1 {O(n)}
17: eval_insertsort_bb7_in->eval_insertsort_stop: 1 {O(1)}
0: eval_insertsort_start->eval_insertsort_bb0_in: 1 {O(1)}

Costbounds

Overall costbound: 6*Arg_4*Arg_4+24*Arg_4+28 {O(n^2)}
6: eval_insertsort_0->eval_insertsort_1: Arg_4+2 {O(n)}
7: eval_insertsort_1->eval_insertsort_bb3_in: Arg_4+1 {O(n)}
12: eval_insertsort_3->eval_insertsort_4: Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}
13: eval_insertsort_4->eval_insertsort_bb5_in: Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}
14: eval_insertsort_4->eval_insertsort_bb6_in: Arg_4+1 {O(n)}
1: eval_insertsort_bb0_in->eval_insertsort_bb1_in: 1 {O(1)}
2: eval_insertsort_bb1_in->eval_insertsort_bb2_in: Arg_4+1 {O(n)}
3: eval_insertsort_bb1_in->eval_insertsort_bb7_in: 1 {O(1)}
4: eval_insertsort_bb2_in->eval_insertsort_0: Arg_4+2 {O(n)}
8: eval_insertsort_bb3_in->eval_insertsort_bb4_in: Arg_4*Arg_4+2*Arg_4 {O(n^2)}
9: eval_insertsort_bb3_in->eval_insertsort_bb6_in: Arg_4+1 {O(n)}
10: eval_insertsort_bb4_in->eval_insertsort_3: Arg_4*Arg_4+3*Arg_4+3 {O(n^2)}
15: eval_insertsort_bb5_in->eval_insertsort_bb3_in: 2*Arg_4*Arg_4+6*Arg_4+6 {O(n^2)}
16: eval_insertsort_bb6_in->eval_insertsort_bb1_in: Arg_4+1 {O(n)}
17: eval_insertsort_bb7_in->eval_insertsort_stop: 1 {O(1)}
0: eval_insertsort_start->eval_insertsort_bb0_in: 1 {O(1)}

Sizebounds

6: eval_insertsort_0->eval_insertsort_1, Arg_2: Arg_4+2 {O(n)}
6: eval_insertsort_0->eval_insertsort_1, Arg_3: Arg_3+Arg_4+4 {O(n)}
6: eval_insertsort_0->eval_insertsort_1, Arg_4: Arg_4 {O(n)}
7: eval_insertsort_1->eval_insertsort_bb3_in, Arg_2: Arg_4+2 {O(n)}
7: eval_insertsort_1->eval_insertsort_bb3_in, Arg_3: Arg_4+2 {O(n)}
7: eval_insertsort_1->eval_insertsort_bb3_in, Arg_4: Arg_4 {O(n)}
12: eval_insertsort_3->eval_insertsort_4, Arg_2: Arg_4+2 {O(n)}
12: eval_insertsort_3->eval_insertsort_4, Arg_3: Arg_4+3 {O(n)}
12: eval_insertsort_3->eval_insertsort_4, Arg_4: Arg_4 {O(n)}
13: eval_insertsort_4->eval_insertsort_bb5_in, Arg_2: Arg_4+2 {O(n)}
13: eval_insertsort_4->eval_insertsort_bb5_in, Arg_3: Arg_4+3 {O(n)}
13: eval_insertsort_4->eval_insertsort_bb5_in, Arg_4: Arg_4 {O(n)}
14: eval_insertsort_4->eval_insertsort_bb6_in, Arg_2: Arg_4+2 {O(n)}
14: eval_insertsort_4->eval_insertsort_bb6_in, Arg_3: Arg_4+3 {O(n)}
14: eval_insertsort_4->eval_insertsort_bb6_in, Arg_4: Arg_4 {O(n)}
1: eval_insertsort_bb0_in->eval_insertsort_bb1_in, Arg_0: Arg_0 {O(n)}
1: eval_insertsort_bb0_in->eval_insertsort_bb1_in, Arg_1: Arg_1 {O(n)}
1: eval_insertsort_bb0_in->eval_insertsort_bb1_in, Arg_2: 1 {O(1)}
1: eval_insertsort_bb0_in->eval_insertsort_bb1_in, Arg_3: Arg_3 {O(n)}
1: eval_insertsort_bb0_in->eval_insertsort_bb1_in, Arg_4: Arg_4 {O(n)}
2: eval_insertsort_bb1_in->eval_insertsort_bb2_in, Arg_2: Arg_4+2 {O(n)}
2: eval_insertsort_bb1_in->eval_insertsort_bb2_in, Arg_3: Arg_3+Arg_4+4 {O(n)}
2: eval_insertsort_bb1_in->eval_insertsort_bb2_in, Arg_4: Arg_4 {O(n)}
3: eval_insertsort_bb1_in->eval_insertsort_bb7_in, Arg_2: Arg_4+3 {O(n)}
3: eval_insertsort_bb1_in->eval_insertsort_bb7_in, Arg_3: Arg_3+Arg_4+4 {O(n)}
3: eval_insertsort_bb1_in->eval_insertsort_bb7_in, Arg_4: 2*Arg_4 {O(n)}
4: eval_insertsort_bb2_in->eval_insertsort_0, Arg_2: Arg_4+2 {O(n)}
4: eval_insertsort_bb2_in->eval_insertsort_0, Arg_3: Arg_3+Arg_4+4 {O(n)}
4: eval_insertsort_bb2_in->eval_insertsort_0, Arg_4: Arg_4 {O(n)}
8: eval_insertsort_bb3_in->eval_insertsort_bb4_in, Arg_2: Arg_4+2 {O(n)}
8: eval_insertsort_bb3_in->eval_insertsort_bb4_in, Arg_3: Arg_4+3 {O(n)}
8: eval_insertsort_bb3_in->eval_insertsort_bb4_in, Arg_4: Arg_4 {O(n)}
9: eval_insertsort_bb3_in->eval_insertsort_bb6_in, Arg_2: Arg_4+2 {O(n)}
9: eval_insertsort_bb3_in->eval_insertsort_bb6_in, Arg_3: 1 {O(1)}
9: eval_insertsort_bb3_in->eval_insertsort_bb6_in, Arg_4: Arg_4 {O(n)}
10: eval_insertsort_bb4_in->eval_insertsort_3, Arg_2: Arg_4+2 {O(n)}
10: eval_insertsort_bb4_in->eval_insertsort_3, Arg_3: Arg_4+3 {O(n)}
10: eval_insertsort_bb4_in->eval_insertsort_3, Arg_4: Arg_4 {O(n)}
15: eval_insertsort_bb5_in->eval_insertsort_bb3_in, Arg_2: Arg_4+2 {O(n)}
15: eval_insertsort_bb5_in->eval_insertsort_bb3_in, Arg_3: Arg_4+3 {O(n)}
15: eval_insertsort_bb5_in->eval_insertsort_bb3_in, Arg_4: Arg_4 {O(n)}
16: eval_insertsort_bb6_in->eval_insertsort_bb1_in, Arg_2: Arg_4+2 {O(n)}
16: eval_insertsort_bb6_in->eval_insertsort_bb1_in, Arg_3: Arg_4+4 {O(n)}
16: eval_insertsort_bb6_in->eval_insertsort_bb1_in, Arg_4: Arg_4 {O(n)}
17: eval_insertsort_bb7_in->eval_insertsort_stop, Arg_2: Arg_4+3 {O(n)}
17: eval_insertsort_bb7_in->eval_insertsort_stop, Arg_3: Arg_3+Arg_4+4 {O(n)}
17: eval_insertsort_bb7_in->eval_insertsort_stop, Arg_4: 2*Arg_4 {O(n)}
0: eval_insertsort_start->eval_insertsort_bb0_in, Arg_0: Arg_0 {O(n)}
0: eval_insertsort_start->eval_insertsort_bb0_in, Arg_1: Arg_1 {O(n)}
0: eval_insertsort_start->eval_insertsort_bb0_in, Arg_2: Arg_2 {O(n)}
0: eval_insertsort_start->eval_insertsort_bb0_in, Arg_3: Arg_3 {O(n)}
0: eval_insertsort_start->eval_insertsort_bb0_in, Arg_4: Arg_4 {O(n)}