Initial Problem

Start: f0
Program_Vars: Arg_0, Arg_1, Arg_2
Temp_Vars: D, E
Locations: f0, f14, f23, f28, f38, f8
Transitions:
0:f0(Arg_0,Arg_1,Arg_2) -> f8(0,Arg_1,Arg_2)
10:f14(Arg_0,Arg_1,Arg_2) -> f8(Arg_0+1,Arg_1,Arg_2)
11:f14(Arg_0,Arg_1,Arg_2) -> f8(Arg_0+1,Arg_1,Arg_2):|:D<=98
5:f23(Arg_0,Arg_1,Arg_2) -> f23(Arg_0+1,Arg_1,Arg_2):|:Arg_0<=99
3:f23(Arg_0,Arg_1,Arg_2) -> f28(Arg_0,Arg_1,D):|:Arg_0<=99 && E+1<=0
4:f23(Arg_0,Arg_1,Arg_2) -> f28(Arg_0,Arg_1,D):|:Arg_0<=99
8:f23(Arg_0,Arg_1,Arg_2) -> f38(Arg_0,Arg_1,Arg_2):|:100<=Arg_0
6:f28(Arg_0,Arg_1,Arg_2) -> f23(Arg_0+1,Arg_1,Arg_2)
7:f28(Arg_0,Arg_1,Arg_2) -> f23(Arg_0+1,Arg_1,Arg_2):|:D<=98
1:f8(Arg_0,Arg_1,Arg_2) -> f14(Arg_0,Arg_0,Arg_2):|:Arg_0<=99 && D<=99
2:f8(Arg_0,Arg_1,Arg_2) -> f14(Arg_0,Arg_0,Arg_2):|:Arg_0<=99
12:f8(Arg_0,Arg_1,Arg_2) -> f23(0,Arg_1,Arg_2):|:100<=Arg_0
9:f8(Arg_0,Arg_1,Arg_2) -> f8(Arg_0+1,Arg_0,Arg_2):|:Arg_0<=99

Preprocessing

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

Found invariant 100<=Arg_0 for location f38

Found invariant Arg_0<=99 && 0<=Arg_0 for location f14

Found invariant 0<=Arg_0 for location f23

Found invariant Arg_0<=99 && 0<=Arg_0 for location f28

Found invariant 0<=Arg_0 for location f8

Problem after Preprocessing

Start: f0
Program_Vars: Arg_0
Temp_Vars: D, E
Locations: f0, f14, f23, f28, f38, f8
Transitions:
28:f0(Arg_0) -> f8(0)
29:f14(Arg_0) -> f8(Arg_0+1):|:Arg_0<=99 && 0<=Arg_0
30:f14(Arg_0) -> f8(Arg_0+1):|:Arg_0<=99 && 0<=Arg_0 && D<=98
33:f23(Arg_0) -> f23(Arg_0+1):|:0<=Arg_0 && Arg_0<=99
31:f23(Arg_0) -> f28(Arg_0):|:0<=Arg_0 && Arg_0<=99 && E+1<=0
32:f23(Arg_0) -> f28(Arg_0):|:0<=Arg_0 && Arg_0<=99
34:f23(Arg_0) -> f38(Arg_0):|:0<=Arg_0 && 100<=Arg_0
35:f28(Arg_0) -> f23(Arg_0+1):|:Arg_0<=99 && 0<=Arg_0
36:f28(Arg_0) -> f23(Arg_0+1):|:Arg_0<=99 && 0<=Arg_0 && D<=98
37:f8(Arg_0) -> f14(Arg_0):|:0<=Arg_0 && Arg_0<=99 && D<=99
38:f8(Arg_0) -> f14(Arg_0):|:0<=Arg_0 && Arg_0<=99
40:f8(Arg_0) -> f23(0):|:0<=Arg_0 && 100<=Arg_0
39:f8(Arg_0) -> f8(Arg_0+1):|:0<=Arg_0 && Arg_0<=99

MPRF for transition 29:f14(Arg_0) -> f8(Arg_0+1):|:Arg_0<=99 && 0<=Arg_0 of depth 1:

new bound:

100 {O(1)}

MPRF:

f14 [100-Arg_0 ]
f8 [100-Arg_0 ]

MPRF for transition 30:f14(Arg_0) -> f8(Arg_0+1):|:Arg_0<=99 && 0<=Arg_0 && D<=98 of depth 1:

new bound:

100 {O(1)}

MPRF:

f14 [100-Arg_0 ]
f8 [100-Arg_0 ]

MPRF for transition 37:f8(Arg_0) -> f14(Arg_0):|:0<=Arg_0 && Arg_0<=99 && D<=99 of depth 1:

new bound:

100 {O(1)}

MPRF:

f14 [99-Arg_0 ]
f8 [100-Arg_0 ]

MPRF for transition 38:f8(Arg_0) -> f14(Arg_0):|:0<=Arg_0 && Arg_0<=99 of depth 1:

new bound:

100 {O(1)}

MPRF:

f14 [99-Arg_0 ]
f8 [100-Arg_0 ]

MPRF for transition 39:f8(Arg_0) -> f8(Arg_0+1):|:0<=Arg_0 && Arg_0<=99 of depth 1:

new bound:

100 {O(1)}

MPRF:

f14 [99-Arg_0 ]
f8 [100-Arg_0 ]

MPRF for transition 31:f23(Arg_0) -> f28(Arg_0):|:0<=Arg_0 && Arg_0<=99 && E+1<=0 of depth 1:

new bound:

100 {O(1)}

MPRF:

f28 [99-Arg_0 ]
f23 [100-Arg_0 ]

MPRF for transition 32:f23(Arg_0) -> f28(Arg_0):|:0<=Arg_0 && Arg_0<=99 of depth 1:

new bound:

100 {O(1)}

MPRF:

f28 [99-Arg_0 ]
f23 [100-Arg_0 ]

MPRF for transition 33:f23(Arg_0) -> f23(Arg_0+1):|:0<=Arg_0 && Arg_0<=99 of depth 1:

new bound:

100 {O(1)}

MPRF:

f28 [99-Arg_0 ]
f23 [100-Arg_0 ]

MPRF for transition 35:f28(Arg_0) -> f23(Arg_0+1):|:Arg_0<=99 && 0<=Arg_0 of depth 1:

new bound:

100 {O(1)}

MPRF:

f28 [100-Arg_0 ]
f23 [100-Arg_0 ]

MPRF for transition 36:f28(Arg_0) -> f23(Arg_0+1):|:Arg_0<=99 && 0<=Arg_0 && D<=98 of depth 1:

new bound:

100 {O(1)}

MPRF:

f28 [100-Arg_0 ]
f23 [100-Arg_0 ]

All Bounds

Timebounds

Overall timebound:1003 {O(1)}
28: f0->f8: 1 {O(1)}
29: f14->f8: 100 {O(1)}
30: f14->f8: 100 {O(1)}
31: f23->f28: 100 {O(1)}
32: f23->f28: 100 {O(1)}
33: f23->f23: 100 {O(1)}
34: f23->f38: 1 {O(1)}
35: f28->f23: 100 {O(1)}
36: f28->f23: 100 {O(1)}
37: f8->f14: 100 {O(1)}
38: f8->f14: 100 {O(1)}
39: f8->f8: 100 {O(1)}
40: f8->f23: 1 {O(1)}

Costbounds

Overall costbound: 1003 {O(1)}
28: f0->f8: 1 {O(1)}
29: f14->f8: 100 {O(1)}
30: f14->f8: 100 {O(1)}
31: f23->f28: 100 {O(1)}
32: f23->f28: 100 {O(1)}
33: f23->f23: 100 {O(1)}
34: f23->f38: 1 {O(1)}
35: f28->f23: 100 {O(1)}
36: f28->f23: 100 {O(1)}
37: f8->f14: 100 {O(1)}
38: f8->f14: 100 {O(1)}
39: f8->f8: 100 {O(1)}
40: f8->f23: 1 {O(1)}

Sizebounds

28: f0->f8, Arg_0: 0 {O(1)}
29: f14->f8, Arg_0: 100 {O(1)}
30: f14->f8, Arg_0: 100 {O(1)}
31: f23->f28, Arg_0: 99 {O(1)}
32: f23->f28, Arg_0: 99 {O(1)}
33: f23->f23, Arg_0: 100 {O(1)}
34: f23->f38, Arg_0: 300 {O(1)}
35: f28->f23, Arg_0: 100 {O(1)}
36: f28->f23, Arg_0: 100 {O(1)}
37: f8->f14, Arg_0: 99 {O(1)}
38: f8->f14, Arg_0: 99 {O(1)}
39: f8->f8, Arg_0: 100 {O(1)}
40: f8->f23, Arg_0: 0 {O(1)}