Start: f3
Program_Vars: Arg_0, Arg_1, Arg_2
Temp_Vars: D
Locations: f2, f3, f300
Transitions:
1:f2(Arg_0,Arg_1,Arg_2) -> f2(Arg_0-1,D,Arg_2):|:1<=D && 0<=Arg_0
2:f2(Arg_0,Arg_1,Arg_2) -> f2(Arg_0-1,D,Arg_2):|:D+1<=0 && 0<=Arg_0
3:f2(Arg_0,Arg_1,Arg_2) -> f2(Arg_0,0,Arg_2):|:0<=Arg_0
4:f2(Arg_0,Arg_1,Arg_2) -> f300(Arg_0,Arg_1,D):|:Arg_0+1<=0
0:f3(Arg_0,Arg_1,Arg_2) -> f2(Arg_0,Arg_1,Arg_2)
Eliminate variables {Arg_1,Arg_2} that do not contribute to the problem
Found invariant 1+Arg_0<=0 for location f300
Start: f3
Program_Vars: Arg_0
Temp_Vars: D
Locations: f2, f3, f300
Transitions:
10:f2(Arg_0) -> f2(Arg_0-1):|:1<=D && 0<=Arg_0
11:f2(Arg_0) -> f2(Arg_0-1):|:D+1<=0 && 0<=Arg_0
12:f2(Arg_0) -> f2(Arg_0):|:0<=Arg_0
13:f2(Arg_0) -> f300(Arg_0):|:Arg_0+1<=0
14:f3(Arg_0) -> f2(Arg_0)
new bound:
Arg_0+1 {O(n)}
MPRF:
f2 [Arg_0+1 ]
new bound:
Arg_0+1 {O(n)}
MPRF:
f2 [Arg_0+1 ]
Overall timebound:inf {Infinity}
10: f2->f2: Arg_0+1 {O(n)}
11: f2->f2: Arg_0+1 {O(n)}
12: f2->f2: inf {Infinity}
13: f2->f300: 1 {O(1)}
14: f3->f2: 1 {O(1)}
Overall costbound: inf {Infinity}
10: f2->f2: Arg_0+1 {O(n)}
11: f2->f2: Arg_0+1 {O(n)}
12: f2->f2: inf {Infinity}
13: f2->f300: 1 {O(1)}
14: f3->f2: 1 {O(1)}
10: f2->f2, Arg_0: 3*Arg_0+1 {O(n)}
11: f2->f2, Arg_0: 3*Arg_0+1 {O(n)}
12: f2->f2, Arg_0: 3*Arg_0+1 {O(n)}
13: f2->f300, Arg_0: 7*Arg_0+2 {O(n)}
14: f3->f2, Arg_0: Arg_0 {O(n)}