Initial Problem
Start: f0
Program_Vars: Arg_0, Arg_1, Arg_2, Arg_3, Arg_4
Temp_Vars: F, G
Locations: f0, f15, f16, f23, f7
Transitions:
4:f0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f15(F,0,F,G,Arg_4):|:F<=100 && 1<=F
2:f0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f7(F,Arg_1,F,Arg_3,Arg_4):|:F<=0
3:f0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f7(F,Arg_1,F,Arg_3,Arg_4):|:101<=F
0:f15(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f16(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:Arg_1+1<=Arg_0
1:f15(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f16(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:1+Arg_0<=Arg_1
8:f15(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f23(Arg_0,Arg_0-1,Arg_2,Arg_3,0):|:Arg_0<=Arg_1 && Arg_1<=Arg_0
5:f16(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f15(Arg_0,Arg_1+1,Arg_2,Arg_3,Arg_4)
9:f16(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f23(Arg_0,Arg_1-1,Arg_2,Arg_3,0)
6:f23(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f23(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4+1):|:Arg_4+1<=Arg_1
7:f23(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4) -> f7(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4):|:Arg_1<=Arg_4
Preprocessing
Eliminate variables {G,Arg_2,Arg_3} that do not contribute to the problem
Found invariant Arg_1<=100 && Arg_1<=Arg_0 && Arg_0+Arg_1<=200 && 0<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=100+Arg_1 && Arg_0<=100 && 1<=Arg_0 for location f15
Found invariant Arg_4<=99 && Arg_4<=1+Arg_1 && Arg_1+Arg_4<=198 && 1+Arg_4<=Arg_0 && Arg_0+Arg_4<=199 && 0<=Arg_4 && 0<=1+Arg_1+Arg_4 && Arg_1<=99+Arg_4 && 1<=Arg_0+Arg_4 && Arg_0<=100+Arg_4 && Arg_1<=99 && 1+Arg_1<=Arg_0 && Arg_0+Arg_1<=199 && 0<=1+Arg_1 && 0<=Arg_0+Arg_1 && Arg_0<=101+Arg_1 && Arg_0<=100 && 1<=Arg_0 for location f23
Found invariant Arg_1<=99 && 1+Arg_1<=Arg_0 && Arg_0+Arg_1<=199 && 0<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=100+Arg_1 && Arg_0<=100 && 1<=Arg_0 for location f16
Cut unsatisfiable transition 23: f15->f16
Problem after Preprocessing
Start: f0
Program_Vars: Arg_0, Arg_1, Arg_4
Temp_Vars: F
Locations: f0, f15, f16, f23, f7
Transitions:
21:f0(Arg_0,Arg_1,Arg_4) -> f15(F,0,Arg_4):|:F<=100 && 1<=F
19:f0(Arg_0,Arg_1,Arg_4) -> f7(F,Arg_1,Arg_4):|:F<=0
20:f0(Arg_0,Arg_1,Arg_4) -> f7(F,Arg_1,Arg_4):|:101<=F
22:f15(Arg_0,Arg_1,Arg_4) -> f16(Arg_0,Arg_1,Arg_4):|:Arg_1<=100 && Arg_1<=Arg_0 && Arg_0+Arg_1<=200 && 0<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=100+Arg_1 && Arg_0<=100 && 1<=Arg_0 && Arg_1+1<=Arg_0
24:f15(Arg_0,Arg_1,Arg_4) -> f23(Arg_0,Arg_0-1,0):|:Arg_1<=100 && Arg_1<=Arg_0 && Arg_0+Arg_1<=200 && 0<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=100+Arg_1 && Arg_0<=100 && 1<=Arg_0 && Arg_0<=Arg_1 && Arg_1<=Arg_0
25:f16(Arg_0,Arg_1,Arg_4) -> f15(Arg_0,Arg_1+1,Arg_4):|:Arg_1<=99 && 1+Arg_1<=Arg_0 && Arg_0+Arg_1<=199 && 0<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=100+Arg_1 && Arg_0<=100 && 1<=Arg_0
26:f16(Arg_0,Arg_1,Arg_4) -> f23(Arg_0,Arg_1-1,0):|:Arg_1<=99 && 1+Arg_1<=Arg_0 && Arg_0+Arg_1<=199 && 0<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=100+Arg_1 && Arg_0<=100 && 1<=Arg_0
27:f23(Arg_0,Arg_1,Arg_4) -> f23(Arg_0,Arg_1,Arg_4+1):|:Arg_4<=99 && Arg_4<=1+Arg_1 && Arg_1+Arg_4<=198 && 1+Arg_4<=Arg_0 && Arg_0+Arg_4<=199 && 0<=Arg_4 && 0<=1+Arg_1+Arg_4 && Arg_1<=99+Arg_4 && 1<=Arg_0+Arg_4 && Arg_0<=100+Arg_4 && Arg_1<=99 && 1+Arg_1<=Arg_0 && Arg_0+Arg_1<=199 && 0<=1+Arg_1 && 0<=Arg_0+Arg_1 && Arg_0<=101+Arg_1 && Arg_0<=100 && 1<=Arg_0 && Arg_4+1<=Arg_1
28:f23(Arg_0,Arg_1,Arg_4) -> f7(Arg_0,Arg_1,Arg_4):|:Arg_4<=99 && Arg_4<=1+Arg_1 && Arg_1+Arg_4<=198 && 1+Arg_4<=Arg_0 && Arg_0+Arg_4<=199 && 0<=Arg_4 && 0<=1+Arg_1+Arg_4 && Arg_1<=99+Arg_4 && 1<=Arg_0+Arg_4 && Arg_0<=100+Arg_4 && Arg_1<=99 && 1+Arg_1<=Arg_0 && Arg_0+Arg_1<=199 && 0<=1+Arg_1 && 0<=Arg_0+Arg_1 && Arg_0<=101+Arg_1 && Arg_0<=100 && 1<=Arg_0 && Arg_1<=Arg_4
MPRF for transition 22:f15(Arg_0,Arg_1,Arg_4) -> f16(Arg_0,Arg_1,Arg_4):|:Arg_1<=100 && Arg_1<=Arg_0 && Arg_0+Arg_1<=200 && 0<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=100+Arg_1 && Arg_0<=100 && 1<=Arg_0 && Arg_1+1<=Arg_0 of depth 1:
new bound:
101 {O(1)}
MPRF:
f16 [100-Arg_1 ]
f15 [101-Arg_1 ]
MPRF for transition 25:f16(Arg_0,Arg_1,Arg_4) -> f15(Arg_0,Arg_1+1,Arg_4):|:Arg_1<=99 && 1+Arg_1<=Arg_0 && Arg_0+Arg_1<=199 && 0<=Arg_1 && 1<=Arg_0+Arg_1 && Arg_0<=100+Arg_1 && Arg_0<=100 && 1<=Arg_0 of depth 1:
new bound:
100 {O(1)}
MPRF:
f16 [100-Arg_1 ]
f15 [100-Arg_1 ]
MPRF for transition 27:f23(Arg_0,Arg_1,Arg_4) -> f23(Arg_0,Arg_1,Arg_4+1):|:Arg_4<=99 && Arg_4<=1+Arg_1 && Arg_1+Arg_4<=198 && 1+Arg_4<=Arg_0 && Arg_0+Arg_4<=199 && 0<=Arg_4 && 0<=1+Arg_1+Arg_4 && Arg_1<=99+Arg_4 && 1<=Arg_0+Arg_4 && Arg_0<=100+Arg_4 && Arg_1<=99 && 1+Arg_1<=Arg_0 && Arg_0+Arg_1<=199 && 0<=1+Arg_1 && 0<=Arg_0+Arg_1 && Arg_0<=101+Arg_1 && Arg_0<=100 && 1<=Arg_0 && Arg_4+1<=Arg_1 of depth 1:
new bound:
200 {O(1)}
MPRF:
f23 [100-Arg_4 ]
All Bounds
Timebounds
Overall timebound:407 {O(1)}
19: f0->f7: 1 {O(1)}
20: f0->f7: 1 {O(1)}
21: f0->f15: 1 {O(1)}
22: f15->f16: 101 {O(1)}
24: f15->f23: 1 {O(1)}
25: f16->f15: 100 {O(1)}
26: f16->f23: 1 {O(1)}
27: f23->f23: 200 {O(1)}
28: f23->f7: 1 {O(1)}
Costbounds
Overall costbound: 407 {O(1)}
19: f0->f7: 1 {O(1)}
20: f0->f7: 1 {O(1)}
21: f0->f15: 1 {O(1)}
22: f15->f16: 101 {O(1)}
24: f15->f23: 1 {O(1)}
25: f16->f15: 100 {O(1)}
26: f16->f23: 1 {O(1)}
27: f23->f23: 200 {O(1)}
28: f23->f7: 1 {O(1)}
Sizebounds
19: f0->f7, Arg_1: Arg_1 {O(n)}
19: f0->f7, Arg_4: Arg_4 {O(n)}
20: f0->f7, Arg_1: Arg_1 {O(n)}
20: f0->f7, Arg_4: Arg_4 {O(n)}
21: f0->f15, Arg_0: 100 {O(1)}
21: f0->f15, Arg_1: 0 {O(1)}
21: f0->f15, Arg_4: Arg_4 {O(n)}
22: f15->f16, Arg_0: 100 {O(1)}
22: f15->f16, Arg_1: 99 {O(1)}
22: f15->f16, Arg_4: Arg_4 {O(n)}
24: f15->f23, Arg_0: 100 {O(1)}
24: f15->f23, Arg_1: 99 {O(1)}
24: f15->f23, Arg_4: 0 {O(1)}
25: f16->f15, Arg_0: 100 {O(1)}
25: f16->f15, Arg_1: 100 {O(1)}
25: f16->f15, Arg_4: Arg_4 {O(n)}
26: f16->f23, Arg_0: 100 {O(1)}
26: f16->f23, Arg_1: 98 {O(1)}
26: f16->f23, Arg_4: 0 {O(1)}
27: f23->f23, Arg_0: 100 {O(1)}
27: f23->f23, Arg_1: 99 {O(1)}
27: f23->f23, Arg_4: 99 {O(1)}
28: f23->f7, Arg_0: 100 {O(1)}
28: f23->f7, Arg_1: 99 {O(1)}
28: f23->f7, Arg_4: 99 {O(1)}