Start: f0
Program_Vars: Arg_0, Arg_1, Arg_2, Arg_3, Arg_4
Temp_Vars: F
Locations: f0, f3, f6
Transitions:
0:f0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f3(0,0,Arg_2,Arg_3,Arg_4)
1:f3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f3(Arg_0,Arg_1,Arg_2-1,F,Arg_4):|:1<=Arg_2 && 1<=F
2:f3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f3(Arg_0,Arg_1,Arg_2-2,F,Arg_4):|:1<=Arg_2 && F<=0
3:f3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f6(Arg_0,Arg_1,Arg_2,Arg_3,F):|:Arg_2<=0
4:f6(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f6(1,Arg_1,Arg_2,Arg_3,F):|:1<=Arg_4
5:f6(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f6(0,Arg_1,Arg_2,Arg_3,F):|:Arg_4<=0
Eliminate variables {Arg_0,Arg_1,Arg_3} that do not contribute to the problem
Found invariant Arg_2<=0 for location f6
Start: f0
Program_Vars: Arg_2, Arg_4
Temp_Vars: F
Locations: f0, f3, f6
Transitions:
14:f0(Arg_2,Arg_4) -> f3(Arg_2,Arg_4)
15:f3(Arg_2,Arg_4) -> f3(Arg_2-1,Arg_4):|:1<=Arg_2 && 1<=F
16:f3(Arg_2,Arg_4) -> f3(Arg_2-2,Arg_4):|:1<=Arg_2 && F<=0
17:f3(Arg_2,Arg_4) -> f6(Arg_2,F):|:Arg_2<=0
18:f6(Arg_2,Arg_4) -> f6(Arg_2,F):|:Arg_2<=0 && 1<=Arg_4
19:f6(Arg_2,Arg_4) -> f6(Arg_2,F):|:Arg_2<=0 && Arg_4<=0
new bound:
Arg_2 {O(n)}
MPRF:
f3 [Arg_2 ]
new bound:
Arg_2 {O(n)}
MPRF:
f3 [Arg_2 ]
Overall timebound:inf {Infinity}
14: f0->f3: 1 {O(1)}
15: f3->f3: Arg_2 {O(n)}
16: f3->f3: Arg_2 {O(n)}
17: f3->f6: 1 {O(1)}
18: f6->f6: inf {Infinity}
19: f6->f6: inf {Infinity}
Overall costbound: inf {Infinity}
14: f0->f3: 1 {O(1)}
15: f3->f3: Arg_2 {O(n)}
16: f3->f3: Arg_2 {O(n)}
17: f3->f6: 1 {O(1)}
18: f6->f6: inf {Infinity}
19: f6->f6: inf {Infinity}
14: f0->f3, Arg_2: Arg_2 {O(n)}
14: f0->f3, Arg_4: Arg_4 {O(n)}
15: f3->f3, Arg_2: 2*Arg_2 {O(n)}
15: f3->f3, Arg_4: 2*Arg_4 {O(n)}
16: f3->f3, Arg_2: 2*Arg_2 {O(n)}
16: f3->f3, Arg_4: 2*Arg_4 {O(n)}
17: f3->f6, Arg_2: 5*Arg_2 {O(n)}
18: f6->f6, Arg_2: 10*Arg_2 {O(n)}
19: f6->f6, Arg_2: 10*Arg_2 {O(n)}