Initial Problem

Start: evalgcdstart
Program_Vars: Arg_0, Arg_1
Temp_Vars:
Locations: evalgcdbb4in, evalgcdbb5in, evalgcdbb6in, evalgcdbb7in, evalgcdentryin, evalgcdreturnin, evalgcdstart, evalgcdstop
Transitions:
7:evalgcdbb4in(Arg_0,Arg_1) -> evalgcdbb5in(Arg_0,Arg_1):|:Arg_1+1<=Arg_0
8:evalgcdbb4in(Arg_0,Arg_1) -> evalgcdbb6in(Arg_0,Arg_1):|:Arg_0<=Arg_1
9:evalgcdbb5in(Arg_0,Arg_1) -> evalgcdbb7in(Arg_0-Arg_1,Arg_1)
10:evalgcdbb6in(Arg_0,Arg_1) -> evalgcdbb7in(Arg_0,Arg_1-Arg_0)
4:evalgcdbb7in(Arg_0,Arg_1) -> evalgcdbb4in(Arg_0,Arg_1):|:Arg_1+1<=Arg_0
5:evalgcdbb7in(Arg_0,Arg_1) -> evalgcdbb4in(Arg_0,Arg_1):|:Arg_0+1<=Arg_1
6:evalgcdbb7in(Arg_0,Arg_1) -> evalgcdreturnin(Arg_0,Arg_1):|:Arg_1<=Arg_0 && Arg_0<=Arg_1
3:evalgcdentryin(Arg_0,Arg_1) -> evalgcdbb7in(Arg_1,Arg_0):|:1<=Arg_0 && 1<=Arg_1
1:evalgcdentryin(Arg_0,Arg_1) -> evalgcdreturnin(Arg_0,Arg_1):|:Arg_0<=0
2:evalgcdentryin(Arg_0,Arg_1) -> evalgcdreturnin(Arg_0,Arg_1):|:Arg_1<=0
11:evalgcdreturnin(Arg_0,Arg_1) -> evalgcdstop(Arg_0,Arg_1)
0:evalgcdstart(Arg_0,Arg_1) -> evalgcdentryin(Arg_0,Arg_1)

Preprocessing

Found invariant 1<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=Arg_1 for location evalgcdbb6in

Found invariant 1<=Arg_0+Arg_1 for location evalgcdbb4in

Found invariant 1<=Arg_0+Arg_1 for location evalgcdbb7in

Found invariant 1+Arg_1<=Arg_0 && 1<=Arg_0+Arg_1 && 1<=Arg_0 for location evalgcdbb5in

Problem after Preprocessing

Start: evalgcdstart
Program_Vars: Arg_0, Arg_1
Temp_Vars:
Locations: evalgcdbb4in, evalgcdbb5in, evalgcdbb6in, evalgcdbb7in, evalgcdentryin, evalgcdreturnin, evalgcdstart, evalgcdstop
Transitions:
7:evalgcdbb4in(Arg_0,Arg_1) -> evalgcdbb5in(Arg_0,Arg_1):|:1<=Arg_0+Arg_1 && Arg_1+1<=Arg_0
8:evalgcdbb4in(Arg_0,Arg_1) -> evalgcdbb6in(Arg_0,Arg_1):|:1<=Arg_0+Arg_1 && Arg_0<=Arg_1
9:evalgcdbb5in(Arg_0,Arg_1) -> evalgcdbb7in(Arg_0-Arg_1,Arg_1):|:1+Arg_1<=Arg_0 && 1<=Arg_0+Arg_1 && 1<=Arg_0
10:evalgcdbb6in(Arg_0,Arg_1) -> evalgcdbb7in(Arg_0,Arg_1-Arg_0):|:1<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=Arg_1
4:evalgcdbb7in(Arg_0,Arg_1) -> evalgcdbb4in(Arg_0,Arg_1):|:1<=Arg_0+Arg_1 && Arg_1+1<=Arg_0
5:evalgcdbb7in(Arg_0,Arg_1) -> evalgcdbb4in(Arg_0,Arg_1):|:1<=Arg_0+Arg_1 && Arg_0+1<=Arg_1
6:evalgcdbb7in(Arg_0,Arg_1) -> evalgcdreturnin(Arg_0,Arg_1):|:1<=Arg_0+Arg_1 && Arg_1<=Arg_0 && Arg_0<=Arg_1
3:evalgcdentryin(Arg_0,Arg_1) -> evalgcdbb7in(Arg_1,Arg_0):|:1<=Arg_0 && 1<=Arg_1
1:evalgcdentryin(Arg_0,Arg_1) -> evalgcdreturnin(Arg_0,Arg_1):|:Arg_0<=0
2:evalgcdentryin(Arg_0,Arg_1) -> evalgcdreturnin(Arg_0,Arg_1):|:Arg_1<=0
11:evalgcdreturnin(Arg_0,Arg_1) -> evalgcdstop(Arg_0,Arg_1)
0:evalgcdstart(Arg_0,Arg_1) -> evalgcdentryin(Arg_0,Arg_1)

All Bounds

Timebounds

Overall timebound:inf {Infinity}
7: evalgcdbb4in->evalgcdbb5in: inf {Infinity}
8: evalgcdbb4in->evalgcdbb6in: inf {Infinity}
9: evalgcdbb5in->evalgcdbb7in: inf {Infinity}
10: evalgcdbb6in->evalgcdbb7in: inf {Infinity}
4: evalgcdbb7in->evalgcdbb4in: inf {Infinity}
5: evalgcdbb7in->evalgcdbb4in: inf {Infinity}
6: evalgcdbb7in->evalgcdreturnin: 1 {O(1)}
1: evalgcdentryin->evalgcdreturnin: 1 {O(1)}
2: evalgcdentryin->evalgcdreturnin: 1 {O(1)}
3: evalgcdentryin->evalgcdbb7in: 1 {O(1)}
11: evalgcdreturnin->evalgcdstop: 1 {O(1)}
0: evalgcdstart->evalgcdentryin: 1 {O(1)}

Costbounds

Overall costbound: inf {Infinity}
7: evalgcdbb4in->evalgcdbb5in: inf {Infinity}
8: evalgcdbb4in->evalgcdbb6in: inf {Infinity}
9: evalgcdbb5in->evalgcdbb7in: inf {Infinity}
10: evalgcdbb6in->evalgcdbb7in: inf {Infinity}
4: evalgcdbb7in->evalgcdbb4in: inf {Infinity}
5: evalgcdbb7in->evalgcdbb4in: inf {Infinity}
6: evalgcdbb7in->evalgcdreturnin: 1 {O(1)}
1: evalgcdentryin->evalgcdreturnin: 1 {O(1)}
2: evalgcdentryin->evalgcdreturnin: 1 {O(1)}
3: evalgcdentryin->evalgcdbb7in: 1 {O(1)}
11: evalgcdreturnin->evalgcdstop: 1 {O(1)}
0: evalgcdstart->evalgcdentryin: 1 {O(1)}

Sizebounds

1: evalgcdentryin->evalgcdreturnin, Arg_0: Arg_0 {O(n)}
1: evalgcdentryin->evalgcdreturnin, Arg_1: Arg_1 {O(n)}
2: evalgcdentryin->evalgcdreturnin, Arg_0: Arg_0 {O(n)}
2: evalgcdentryin->evalgcdreturnin, Arg_1: Arg_1 {O(n)}
3: evalgcdentryin->evalgcdbb7in, Arg_0: Arg_1 {O(n)}
3: evalgcdentryin->evalgcdbb7in, Arg_1: Arg_0 {O(n)}
0: evalgcdstart->evalgcdentryin, Arg_0: Arg_0 {O(n)}
0: evalgcdstart->evalgcdentryin, Arg_1: Arg_1 {O(n)}