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