Initial Problem

Start: f3
Program_Vars: Arg_0, Arg_1, Arg_2
Temp_Vars: D, E
Locations: f2, f3, f300
Transitions:
1:f2(Arg_0,Arg_1,Arg_2) -> f2(E-1,Arg_1,Arg_2):|:Arg_0+1<=0 && D<=0 && 1<=Arg_1
2:f2(Arg_0,Arg_1,Arg_2) -> f2(E-1,Arg_1,Arg_2):|:Arg_0+1<=0 && D<=0 && Arg_1<=0
3:f2(Arg_0,Arg_1,Arg_2) -> f2(1+E,Arg_1,Arg_2):|:2<=D && Arg_0+1<=0
4:f2(Arg_0,Arg_1,Arg_2) -> f2(E-1,Arg_1,Arg_2):|:1<=Arg_0 && 2+D<=0 && 1<=Arg_1
5:f2(Arg_0,Arg_1,Arg_2) -> f2(E-1,Arg_1,Arg_2):|:1<=Arg_0 && 2+D<=0 && Arg_1<=0
6:f2(Arg_0,Arg_1,Arg_2) -> f2(1+E,Arg_1,Arg_2):|:0<=D && 1<=Arg_0
7:f2(Arg_0,Arg_1,Arg_2) -> f300(0,Arg_1,E):|:Arg_0+1<=0
8:f2(Arg_0,Arg_1,Arg_2) -> f300(0,Arg_1,E):|:1<=Arg_0
9:f2(Arg_0,Arg_1,Arg_2) -> f300(Arg_0,Arg_1,E):|:Arg_0<=0 && 0<=Arg_0
0:f3(Arg_0,Arg_1,Arg_2) -> f2(Arg_0,Arg_1,Arg_2)

Preprocessing

Eliminate variables {Arg_2} that do not contribute to the problem

Found invariant Arg_0<=0 && 0<=Arg_0 for location f300

Problem after Preprocessing

Start: f3
Program_Vars: Arg_0, Arg_1
Temp_Vars: D, E
Locations: f2, f3, f300
Transitions:
20:f2(Arg_0,Arg_1) -> f2(E-1,Arg_1):|:Arg_0+1<=0 && D<=0 && 1<=Arg_1
21:f2(Arg_0,Arg_1) -> f2(E-1,Arg_1):|:Arg_0+1<=0 && D<=0 && Arg_1<=0
22:f2(Arg_0,Arg_1) -> f2(1+E,Arg_1):|:2<=D && Arg_0+1<=0
23:f2(Arg_0,Arg_1) -> f2(E-1,Arg_1):|:1<=Arg_0 && 2+D<=0 && 1<=Arg_1
24:f2(Arg_0,Arg_1) -> f2(E-1,Arg_1):|:1<=Arg_0 && 2+D<=0 && Arg_1<=0
25:f2(Arg_0,Arg_1) -> f2(1+E,Arg_1):|:0<=D && 1<=Arg_0
26:f2(Arg_0,Arg_1) -> f300(0,Arg_1):|:Arg_0+1<=0
27:f2(Arg_0,Arg_1) -> f300(0,Arg_1):|:1<=Arg_0
28:f2(Arg_0,Arg_1) -> f300(Arg_0,Arg_1):|:Arg_0<=0 && 0<=Arg_0
29:f3(Arg_0,Arg_1) -> f2(Arg_0,Arg_1)

All Bounds

Timebounds

Overall timebound:inf {Infinity}
20: f2->f2: inf {Infinity}
21: f2->f2: inf {Infinity}
22: f2->f2: inf {Infinity}
23: f2->f2: inf {Infinity}
24: f2->f2: inf {Infinity}
25: f2->f2: inf {Infinity}
26: f2->f300: 1 {O(1)}
27: f2->f300: 1 {O(1)}
28: f2->f300: 1 {O(1)}
29: f3->f2: 1 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
20: f2->f2: inf {Infinity}
21: f2->f2: inf {Infinity}
22: f2->f2: inf {Infinity}
23: f2->f2: inf {Infinity}
24: f2->f2: inf {Infinity}
25: f2->f2: inf {Infinity}
26: f2->f300: 1 {O(1)}
27: f2->f300: 1 {O(1)}
28: f2->f300: 1 {O(1)}
29: f3->f2: 1 {O(1)}

Sizebounds

20: f2->f2, Arg_1: 6*Arg_1 {O(n)}
21: f2->f2, Arg_1: 6*Arg_1 {O(n)}
22: f2->f2, Arg_1: 6*Arg_1 {O(n)}
23: f2->f2, Arg_1: 6*Arg_1 {O(n)}
24: f2->f2, Arg_1: 6*Arg_1 {O(n)}
25: f2->f2, Arg_1: 6*Arg_1 {O(n)}
26: f2->f300, Arg_0: 0 {O(1)}
26: f2->f300, Arg_1: 37*Arg_1 {O(n)}
27: f2->f300, Arg_0: 0 {O(1)}
27: f2->f300, Arg_1: 37*Arg_1 {O(n)}
28: f2->f300, Arg_0: 0 {O(1)}
28: f2->f300, Arg_1: 37*Arg_1 {O(n)}
29: f3->f2, Arg_0: Arg_0 {O(n)}
29: f3->f2, Arg_1: Arg_1 {O(n)}