Start: f0
Program_Vars: Arg_0, Arg_1, Arg_2, Arg_3, Arg_4, Arg_5, Arg_6, Arg_7, Arg_8, Arg_9, Arg_10, Arg_11, Arg_12, Arg_13, Arg_14, Arg_15, Arg_16, Arg_17, Arg_18, Arg_19, Arg_20, Arg_21
Temp_Vars: A1, W, X, Y, Z
Locations: f0, f11, f37, f51, f53, f56
Transitions:
10:f0(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f11(Arg_0,Arg_1,0,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,0)
9:f11(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f11(Arg_0+1,Arg_1,Arg_2,Arg_3,1,Arg_5,W,X,Y,Z,Arg_3,W,W,W,W,Arg_16,Arg_16,1,1,1,0,Arg_21):|:W<=0 && Arg_0+1<=Arg_1
7:f11(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f37(Arg_0,Arg_1,Arg_2,Arg_3,A1,Arg_5,W,X,Y,Z,Arg_3,W,W,W,W,Arg_16,0,A1,A1,A1,0,Arg_21):|:Arg_0+1<=Arg_1 && W<=0 && 2<=A1
8:f11(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f37(Arg_0,Arg_1,Arg_2,Arg_3,A1,Arg_5,W,X,Y,Z,Arg_3,W,W,W,W,Arg_16,0,A1,A1,A1,0,Arg_21):|:Arg_0+1<=Arg_1 && W<=0 && A1<=0
2:f11(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f51(Arg_0,Arg_1,0,0,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21):|:Arg_1<=Arg_0
6:f11(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f51(Arg_0,Arg_1,0,0,Arg_4,Arg_5,W,X,Y,Z,Arg_3,W,W,W,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21):|:1<=W && Arg_0+1<=Arg_1
3:f37(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f51(Arg_0,Arg_1,0,0,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21):|:3<=Arg_4
4:f37(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f51(Arg_0,Arg_1,0,0,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21):|:Arg_4<=1
5:f37(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f51(Arg_0,Arg_1,0,0,2,Arg_6,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21):|:Arg_4<=2 && 2<=Arg_4
0:f51(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f51(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21)
1:f53(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21) -> f56(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21)
Cut unreachable locations [f53; f56] from the program graph
Eliminate variables {X,Y,Z,Arg_2,Arg_3,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11,Arg_12,Arg_13,Arg_14,Arg_15,Arg_16,Arg_17,Arg_18,Arg_19,Arg_20,Arg_21} that do not contribute to the problem
Found invariant 1+Arg_0<=Arg_1 for location f37
Start: f0
Program_Vars: Arg_0, Arg_1, Arg_4
Temp_Vars: A1, W
Locations: f0, f11, f37, f51
Transitions:
25:f0(Arg_0,Arg_1,Arg_4) -> f11(Arg_0,Arg_1,Arg_4)
30:f11(Arg_0,Arg_1,Arg_4) -> f11(Arg_0+1,Arg_1,1):|:W<=0 && Arg_0+1<=Arg_1
28:f11(Arg_0,Arg_1,Arg_4) -> f37(Arg_0,Arg_1,A1):|:Arg_0+1<=Arg_1 && W<=0 && 2<=A1
29:f11(Arg_0,Arg_1,Arg_4) -> f37(Arg_0,Arg_1,A1):|:Arg_0+1<=Arg_1 && W<=0 && A1<=0
26:f11(Arg_0,Arg_1,Arg_4) -> f51(Arg_0,Arg_1,Arg_4):|:Arg_1<=Arg_0
27:f11(Arg_0,Arg_1,Arg_4) -> f51(Arg_0,Arg_1,Arg_4):|:1<=W && Arg_0+1<=Arg_1
31:f37(Arg_0,Arg_1,Arg_4) -> f51(Arg_0,Arg_1,Arg_4):|:1+Arg_0<=Arg_1 && 3<=Arg_4
32:f37(Arg_0,Arg_1,Arg_4) -> f51(Arg_0,Arg_1,Arg_4):|:1+Arg_0<=Arg_1 && Arg_4<=1
33:f37(Arg_0,Arg_1,Arg_4) -> f51(Arg_0,Arg_1,2):|:1+Arg_0<=Arg_1 && Arg_4<=2 && 2<=Arg_4
34:f51(Arg_0,Arg_1,Arg_4) -> f51(Arg_0,Arg_1,Arg_4)
new bound:
Arg_0+Arg_1 {O(n)}
MPRF:
f11 [Arg_1-Arg_0 ]
Overall timebound:inf {Infinity}
25: f0->f11: 1 {O(1)}
26: f11->f51: 1 {O(1)}
27: f11->f51: 1 {O(1)}
28: f11->f37: 1 {O(1)}
29: f11->f37: 1 {O(1)}
30: f11->f11: Arg_0+Arg_1 {O(n)}
31: f37->f51: 1 {O(1)}
32: f37->f51: 1 {O(1)}
33: f37->f51: 1 {O(1)}
34: f51->f51: inf {Infinity}
Overall costbound: inf {Infinity}
25: f0->f11: 1 {O(1)}
26: f11->f51: 1 {O(1)}
27: f11->f51: 1 {O(1)}
28: f11->f37: 1 {O(1)}
29: f11->f37: 1 {O(1)}
30: f11->f11: Arg_0+Arg_1 {O(n)}
31: f37->f51: 1 {O(1)}
32: f37->f51: 1 {O(1)}
33: f37->f51: 1 {O(1)}
34: f51->f51: inf {Infinity}
25: f0->f11, Arg_0: Arg_0 {O(n)}
25: f0->f11, Arg_1: Arg_1 {O(n)}
25: f0->f11, Arg_4: Arg_4 {O(n)}
26: f11->f51, Arg_0: 3*Arg_0+Arg_1 {O(n)}
26: f11->f51, Arg_1: 2*Arg_1 {O(n)}
26: f11->f51, Arg_4: Arg_4+1 {O(n)}
27: f11->f51, Arg_0: 3*Arg_0+Arg_1 {O(n)}
27: f11->f51, Arg_1: 2*Arg_1 {O(n)}
27: f11->f51, Arg_4: Arg_4+1 {O(n)}
28: f11->f37, Arg_0: 3*Arg_0+Arg_1 {O(n)}
28: f11->f37, Arg_1: 2*Arg_1 {O(n)}
29: f11->f37, Arg_0: 3*Arg_0+Arg_1 {O(n)}
29: f11->f37, Arg_1: 2*Arg_1 {O(n)}
30: f11->f11, Arg_0: 2*Arg_0+Arg_1 {O(n)}
30: f11->f11, Arg_1: Arg_1 {O(n)}
30: f11->f11, Arg_4: 1 {O(1)}
31: f37->f51, Arg_0: 3*Arg_0+Arg_1 {O(n)}
31: f37->f51, Arg_1: 2*Arg_1 {O(n)}
32: f37->f51, Arg_0: 3*Arg_0+Arg_1 {O(n)}
32: f37->f51, Arg_1: 2*Arg_1 {O(n)}
33: f37->f51, Arg_0: 3*Arg_0+Arg_1 {O(n)}
33: f37->f51, Arg_1: 2*Arg_1 {O(n)}
33: f37->f51, Arg_4: 2 {O(1)}
34: f51->f51, Arg_0: 15*Arg_0+5*Arg_1 {O(n)}
34: f51->f51, Arg_1: 10*Arg_1 {O(n)}