Start: n_f
Program_Vars: Arg_0, Arg_1
Temp_Vars:
Locations: n_f, n_g___2, n_h___1
Transitions:
0:n_f(Arg_0,Arg_1) -> n_g___2(Arg_0,Arg_1)
1:n_g___2(Arg_0,Arg_1) -> n_g___2(2*Arg_0,Arg_1-1):|:0<Arg_1
2:n_g___2(Arg_0,Arg_1) -> n_h___1(Arg_0,Arg_1):|:Arg_1<=0
3:n_h___1(Arg_0,Arg_1) -> n_h___1(Arg_0-1,Arg_1):|:Arg_1<=0 && 0<Arg_0
Found invariant Arg_1<=0 for location n_h___1
Start: n_f
Program_Vars: Arg_0, Arg_1
Temp_Vars:
Locations: n_f, n_g___2, n_h___1
Transitions:
0:n_f(Arg_0,Arg_1) -> n_g___2(Arg_0,Arg_1)
1:n_g___2(Arg_0,Arg_1) -> n_g___2(2*Arg_0,Arg_1-1):|:0<Arg_1
2:n_g___2(Arg_0,Arg_1) -> n_h___1(Arg_0,Arg_1):|:Arg_1<=0
3:n_h___1(Arg_0,Arg_1) -> n_h___1(Arg_0-1,Arg_1):|:Arg_1<=0 && Arg_1<=0 && 0<Arg_0
new bound:
Arg_1 {O(n)}
MPRF:
n_g___2 [Arg_1 ]
new bound:
2^(Arg_1)*Arg_0+Arg_0 {O(EXP)}
MPRF:
n_h___1 [Arg_0 ]
Overall timebound:2^(Arg_1)*Arg_0+Arg_0+Arg_1+2 {O(EXP)}
0: n_f->n_g___2: 1 {O(1)}
1: n_g___2->n_g___2: Arg_1 {O(n)}
2: n_g___2->n_h___1: 1 {O(1)}
3: n_h___1->n_h___1: 2^(Arg_1)*Arg_0+Arg_0 {O(EXP)}
Overall costbound: 2^(Arg_1)*Arg_0+Arg_0+Arg_1+2 {O(EXP)}
0: n_f->n_g___2: 1 {O(1)}
1: n_g___2->n_g___2: Arg_1 {O(n)}
2: n_g___2->n_h___1: 1 {O(1)}
3: n_h___1->n_h___1: 2^(Arg_1)*Arg_0+Arg_0 {O(EXP)}
0: n_f->n_g___2, Arg_0: Arg_0 {O(n)}
0: n_f->n_g___2, Arg_1: Arg_1 {O(n)}
1: n_g___2->n_g___2, Arg_0: 2^(Arg_1)*Arg_0 {O(EXP)}
1: n_g___2->n_g___2, Arg_1: Arg_1 {O(n)}
2: n_g___2->n_h___1, Arg_0: 2^(Arg_1)*Arg_0+Arg_0 {O(EXP)}
2: n_g___2->n_h___1, Arg_1: 2*Arg_1 {O(n)}
3: n_h___1->n_h___1, Arg_0: 2^(Arg_1)*Arg_0+Arg_0 {O(EXP)}
3: n_h___1->n_h___1, Arg_1: 2*Arg_1 {O(n)}