Initial Problem
Start: n_f1
Program_Vars: Arg_0, Arg_1
Temp_Vars:
Locations: n_f1, n_f2___1
Transitions:
0:n_f1(Arg_0,Arg_1) -> n_f2___1(Arg_0,Arg_1):|:1<=Arg_0 && 1<=Arg_1
1:n_f2___1(Arg_0,Arg_1) -> n_f2___1(Arg_0-1,Arg_1):|:1<=Arg_1 && 1<=Arg_0 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 2<=Arg_0 && 1<=Arg_1
2:n_f2___1(Arg_0,Arg_1) -> n_f2___1(Arg_0,Arg_1-1):|:1<=Arg_1 && 1<=Arg_0 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 2<=Arg_1
Preprocessing
Found invariant 1<=Arg_1 && 2<=Arg_0+Arg_1 && 1<=Arg_0 for location n_f2___1
Problem after Preprocessing
Start: n_f1
Program_Vars: Arg_0, Arg_1
Temp_Vars:
Locations: n_f1, n_f2___1
Transitions:
0:n_f1(Arg_0,Arg_1) -> n_f2___1(Arg_0,Arg_1):|:1<=Arg_0 && 1<=Arg_1
1:n_f2___1(Arg_0,Arg_1) -> n_f2___1(Arg_0-1,Arg_1):|:1<=Arg_1 && 2<=Arg_0+Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 2<=Arg_0 && 1<=Arg_1
2:n_f2___1(Arg_0,Arg_1) -> n_f2___1(Arg_0,Arg_1-1):|:1<=Arg_1 && 2<=Arg_0+Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 2<=Arg_1
MPRF for transition 1:n_f2___1(Arg_0,Arg_1) -> n_f2___1(Arg_0-1,Arg_1):|:1<=Arg_1 && 2<=Arg_0+Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 2<=Arg_0 && 1<=Arg_1 of depth 1:
new bound:
Arg_0 {O(n)}
MPRF:
n_f2___1 [Arg_0 ]
MPRF for transition 2:n_f2___1(Arg_0,Arg_1) -> n_f2___1(Arg_0,Arg_1-1):|:1<=Arg_1 && 2<=Arg_0+Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 1<=Arg_1 && 1<=Arg_0 && 2<=Arg_1 of depth 1:
new bound:
Arg_1 {O(n)}
MPRF:
n_f2___1 [Arg_1 ]
All Bounds
Timebounds
Overall timebound:Arg_0+Arg_1+1 {O(n)}
0: n_f1->n_f2___1: 1 {O(1)}
1: n_f2___1->n_f2___1: Arg_0 {O(n)}
2: n_f2___1->n_f2___1: Arg_1 {O(n)}
Costbounds
Overall costbound: Arg_0+Arg_1+1 {O(n)}
0: n_f1->n_f2___1: 1 {O(1)}
1: n_f2___1->n_f2___1: Arg_0 {O(n)}
2: n_f2___1->n_f2___1: Arg_1 {O(n)}
Sizebounds
0: n_f1->n_f2___1, Arg_0: Arg_0 {O(n)}
0: n_f1->n_f2___1, Arg_1: Arg_1 {O(n)}
1: n_f2___1->n_f2___1, Arg_0: 2*Arg_0 {O(n)}
1: n_f2___1->n_f2___1, Arg_1: 2*Arg_1 {O(n)}
2: n_f2___1->n_f2___1, Arg_0: 2*Arg_0 {O(n)}
2: n_f2___1->n_f2___1, Arg_1: 2*Arg_1 {O(n)}