Start: f2
Program_Vars: Arg_0, Arg_1, Arg_2
Temp_Vars: D
Locations: f1, f2, f300
Transitions:
4:f2(Arg_0,Arg_1,Arg_2) -> f300(Arg_0,Arg_1,Arg_2)
3:f300(Arg_0,Arg_1,Arg_2) -> f1(Arg_0,Arg_1,D):|:0<=Arg_0
0:f300(Arg_0,Arg_1,Arg_2) -> f300(Arg_0-99,0,Arg_2):|:Arg_0+1<=0 && Arg_1+1<=0 && 0<=1+Arg_1
1:f300(Arg_0,Arg_1,Arg_2) -> f300(1+Arg_0,1+Arg_1,Arg_2):|:Arg_0+1<=0 && 0<=Arg_1
2:f300(Arg_0,Arg_1,Arg_2) -> f300(1+Arg_0,1+Arg_1,Arg_2):|:Arg_0+1<=0 && 2+Arg_1<=0
Eliminate variables {D,Arg_2} that do not contribute to the problem
Found invariant 0<=Arg_0 for location f1
Start: f2
Program_Vars: Arg_0, Arg_1
Temp_Vars:
Locations: f1, f2, f300
Transitions:
15:f2(Arg_0,Arg_1) -> f300(Arg_0,Arg_1)
19:f300(Arg_0,Arg_1) -> f1(Arg_0,Arg_1):|:0<=Arg_0
16:f300(Arg_0,Arg_1) -> f300(Arg_0-99,0):|:Arg_0+1<=0 && Arg_1+1<=0 && 0<=1+Arg_1
17:f300(Arg_0,Arg_1) -> f300(1+Arg_0,1+Arg_1):|:Arg_0+1<=0 && 0<=Arg_1
18:f300(Arg_0,Arg_1) -> f300(1+Arg_0,1+Arg_1):|:Arg_0+1<=0 && 2+Arg_1<=0
new bound:
Arg_1 {O(n)}
MPRF:
f300 [-Arg_1 ]
new bound:
Arg_1 {O(n)}
MPRF:
f300 [-Arg_1 ]
new bound:
2*Arg_0*Arg_1+198*Arg_1+Arg_0 {O(n^2)}
MPRF:
f300 [-Arg_0 ]
Overall timebound:2*Arg_0*Arg_1+200*Arg_1+Arg_0+2 {O(n^2)}
15: f2->f300: 1 {O(1)}
16: f300->f300: Arg_1 {O(n)}
17: f300->f300: 2*Arg_0*Arg_1+198*Arg_1+Arg_0 {O(n^2)}
18: f300->f300: Arg_1 {O(n)}
19: f300->f1: 1 {O(1)}
Overall costbound: 2*Arg_0*Arg_1+200*Arg_1+Arg_0+2 {O(n^2)}
15: f2->f300: 1 {O(1)}
16: f300->f300: Arg_1 {O(n)}
17: f300->f300: 2*Arg_0*Arg_1+198*Arg_1+Arg_0 {O(n^2)}
18: f300->f300: Arg_1 {O(n)}
19: f300->f1: 1 {O(1)}
15: f2->f300, Arg_0: Arg_0 {O(n)}
15: f2->f300, Arg_1: Arg_1 {O(n)}
16: f300->f300, Arg_0: 2*Arg_0+198 {O(n)}
16: f300->f300, Arg_1: 0 {O(1)}
17: f300->f300, Arg_0: 3*Arg_0+198 {O(n)}
17: f300->f300, Arg_1: 2*Arg_0*Arg_1+199*Arg_1+Arg_0 {O(n^2)}
18: f300->f300, Arg_0: Arg_0 {O(n)}
18: f300->f300, Arg_1: Arg_1 {O(n)}
19: f300->f1, Arg_0: 5*Arg_0+198 {O(n)}
19: f300->f1, Arg_1: 2*Arg_0*Arg_1+201*Arg_1+Arg_0 {O(n^2)}