Initial Problem

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
Temp_Vars: M, N, O, P
Locations: f0, f3, f4, f8
Transitions:
0: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) -> f3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11)
5: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) -> f3(Arg_5,Arg_3,Arg_3,Arg_3,Arg_5,Arg_5,Arg_0,Arg_1,Arg_8,Arg_9,Arg_10,Arg_11)
6: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) -> f3(Arg_5,Arg_3,Arg_3,Arg_3,Arg_5,Arg_5,M,N,M,N,Arg_10,Arg_11)
9: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) -> f3(Arg_0+1,Arg_1,Arg_3,Arg_3,Arg_5,Arg_5,Arg_0,Arg_1,Arg_8,Arg_9,Arg_10,Arg_11)
11: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) -> f3(Arg_0,Arg_1+1,Arg_3,Arg_3,Arg_5,Arg_5,Arg_0,Arg_1,Arg_8,Arg_9,Arg_10,Arg_11)
1: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) -> f4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11)
2: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) -> f8(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11)
7: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) -> f8(O,P,Arg_3,M,Arg_5,N,Arg_0,Arg_1,M,N,O,P)
3:f3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11) -> f4(Arg_0,Arg_1,Arg_3,Arg_3,Arg_5,Arg_5,Arg_0,Arg_1,Arg_8,Arg_9,Arg_10,Arg_11):|:Arg_1+1<=Arg_0
4:f3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11) -> f4(Arg_0,Arg_1,Arg_3,Arg_3,Arg_5,Arg_5,Arg_0,Arg_1,Arg_8,Arg_9,Arg_10,Arg_11):|:Arg_0+1<=Arg_1
8:f3(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11) -> f8(O,P,Arg_3,M,Arg_5,N,Arg_0,Arg_0,M,N,O,P):|:Arg_0<=Arg_1 && Arg_1<=Arg_0
10:f4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11) -> f3(Arg_0+1,Arg_1,Arg_3,Arg_3,Arg_5,Arg_5,Arg_0,Arg_1,Arg_8,Arg_9,Arg_10,Arg_11):|:Arg_0+1<=Arg_1
12:f4(Arg_0,Arg_1,Arg_2,Arg_3,Arg_4,Arg_5,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11) -> f3(Arg_0,Arg_1+1,Arg_3,Arg_3,Arg_5,Arg_5,Arg_0,Arg_1,Arg_8,Arg_9,Arg_10,Arg_11):|:Arg_1<=Arg_0

Preprocessing

Eliminate variables {Arg_2,Arg_4,Arg_6,Arg_7,Arg_8,Arg_9,Arg_10,Arg_11} that do not contribute to the problem

Problem after Preprocessing

Start: f0
Program_Vars: Arg_0, Arg_1, Arg_3, Arg_5
Temp_Vars: M, N, O, P
Locations: f0, f3, f4, f8
Transitions:
20:f0(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_0,Arg_1,Arg_3,Arg_5)
23:f0(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_5,Arg_3,Arg_3,Arg_5)
24:f0(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_5,Arg_3,Arg_3,Arg_5)
26:f0(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_0+1,Arg_1,Arg_3,Arg_5)
27:f0(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_0,Arg_1+1,Arg_3,Arg_5)
21:f0(Arg_0,Arg_1,Arg_3,Arg_5) -> f4(Arg_0,Arg_1,Arg_3,Arg_5)
22:f0(Arg_0,Arg_1,Arg_3,Arg_5) -> f8(Arg_0,Arg_1,Arg_3,Arg_5)
25:f0(Arg_0,Arg_1,Arg_3,Arg_5) -> f8(O,P,M,N)
28:f3(Arg_0,Arg_1,Arg_3,Arg_5) -> f4(Arg_0,Arg_1,Arg_3,Arg_5):|:Arg_1+1<=Arg_0
29:f3(Arg_0,Arg_1,Arg_3,Arg_5) -> f4(Arg_0,Arg_1,Arg_3,Arg_5):|:Arg_0+1<=Arg_1
30:f3(Arg_0,Arg_1,Arg_3,Arg_5) -> f8(O,P,M,N):|:Arg_0<=Arg_1 && Arg_1<=Arg_0
31:f4(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_0+1,Arg_1,Arg_3,Arg_5):|:Arg_0+1<=Arg_1
32:f4(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_0,Arg_1+1,Arg_3,Arg_5):|:Arg_1<=Arg_0

MPRF for transition 28:f3(Arg_0,Arg_1,Arg_3,Arg_5) -> f4(Arg_0,Arg_1,Arg_3,Arg_5):|:Arg_1+1<=Arg_0 of depth 1:

new bound:

2*Arg_3+2*Arg_5+4*Arg_0+4*Arg_1+13 {O(n)}

MPRF:

f4 [Arg_0+1-Arg_1 ]
f3 [Arg_0+2-Arg_1 ]

MPRF for transition 32:f4(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_0,Arg_1+1,Arg_3,Arg_5):|:Arg_1<=Arg_0 of depth 1:

new bound:

2*Arg_3+2*Arg_5+4*Arg_0+4*Arg_1+8 {O(n)}

MPRF:

f4 [Arg_0+1-Arg_1 ]
f3 [Arg_0+1-Arg_1 ]

MPRF for transition 29:f3(Arg_0,Arg_1,Arg_3,Arg_5) -> f4(Arg_0,Arg_1,Arg_3,Arg_5):|:Arg_0+1<=Arg_1 of depth 1:

new bound:

16*Arg_3*Arg_5+32*Arg_0*Arg_0+32*Arg_0*Arg_3+32*Arg_0*Arg_5+32*Arg_1*Arg_1+32*Arg_1*Arg_3+32*Arg_1*Arg_5+64*Arg_0*Arg_1+8*Arg_3*Arg_3+8*Arg_5*Arg_5+116*Arg_0+116*Arg_1+58*Arg_3+58*Arg_5+109 {O(n^2)}

MPRF:

f4 [Arg_1+1-Arg_0 ]
f3 [Arg_1+2-Arg_0 ]

MPRF for transition 31:f4(Arg_0,Arg_1,Arg_3,Arg_5) -> f3(Arg_0+1,Arg_1,Arg_3,Arg_5):|:Arg_0+1<=Arg_1 of depth 1:

new bound:

16*Arg_3*Arg_5+32*Arg_0*Arg_0+32*Arg_0*Arg_3+32*Arg_0*Arg_5+32*Arg_1*Arg_1+32*Arg_1*Arg_3+32*Arg_1*Arg_5+64*Arg_0*Arg_1+8*Arg_3*Arg_3+8*Arg_5*Arg_5+112*Arg_0+112*Arg_1+56*Arg_3+56*Arg_5+96 {O(n^2)}

MPRF:

f4 [Arg_1+1-Arg_0 ]
f3 [Arg_1+1-Arg_0 ]

All Bounds

Timebounds

Overall timebound:128*Arg_0*Arg_1+16*Arg_3*Arg_3+16*Arg_5*Arg_5+32*Arg_3*Arg_5+64*Arg_0*Arg_0+64*Arg_0*Arg_3+64*Arg_0*Arg_5+64*Arg_1*Arg_1+64*Arg_1*Arg_3+64*Arg_1*Arg_5+118*Arg_3+118*Arg_5+236*Arg_0+236*Arg_1+235 {O(n^2)}
20: f0->f3: 1 {O(1)}
21: f0->f4: 1 {O(1)}
22: f0->f8: 1 {O(1)}
23: f0->f3: 1 {O(1)}
24: f0->f3: 1 {O(1)}
25: f0->f8: 1 {O(1)}
26: f0->f3: 1 {O(1)}
27: f0->f3: 1 {O(1)}
28: f3->f4: 2*Arg_3+2*Arg_5+4*Arg_0+4*Arg_1+13 {O(n)}
29: f3->f4: 16*Arg_3*Arg_5+32*Arg_0*Arg_0+32*Arg_0*Arg_3+32*Arg_0*Arg_5+32*Arg_1*Arg_1+32*Arg_1*Arg_3+32*Arg_1*Arg_5+64*Arg_0*Arg_1+8*Arg_3*Arg_3+8*Arg_5*Arg_5+116*Arg_0+116*Arg_1+58*Arg_3+58*Arg_5+109 {O(n^2)}
30: f3->f8: 1 {O(1)}
31: f4->f3: 16*Arg_3*Arg_5+32*Arg_0*Arg_0+32*Arg_0*Arg_3+32*Arg_0*Arg_5+32*Arg_1*Arg_1+32*Arg_1*Arg_3+32*Arg_1*Arg_5+64*Arg_0*Arg_1+8*Arg_3*Arg_3+8*Arg_5*Arg_5+112*Arg_0+112*Arg_1+56*Arg_3+56*Arg_5+96 {O(n^2)}
32: f4->f3: 2*Arg_3+2*Arg_5+4*Arg_0+4*Arg_1+8 {O(n)}

Costbounds

Overall costbound: 128*Arg_0*Arg_1+16*Arg_3*Arg_3+16*Arg_5*Arg_5+32*Arg_3*Arg_5+64*Arg_0*Arg_0+64*Arg_0*Arg_3+64*Arg_0*Arg_5+64*Arg_1*Arg_1+64*Arg_1*Arg_3+64*Arg_1*Arg_5+118*Arg_3+118*Arg_5+236*Arg_0+236*Arg_1+235 {O(n^2)}
20: f0->f3: 1 {O(1)}
21: f0->f4: 1 {O(1)}
22: f0->f8: 1 {O(1)}
23: f0->f3: 1 {O(1)}
24: f0->f3: 1 {O(1)}
25: f0->f8: 1 {O(1)}
26: f0->f3: 1 {O(1)}
27: f0->f3: 1 {O(1)}
28: f3->f4: 2*Arg_3+2*Arg_5+4*Arg_0+4*Arg_1+13 {O(n)}
29: f3->f4: 16*Arg_3*Arg_5+32*Arg_0*Arg_0+32*Arg_0*Arg_3+32*Arg_0*Arg_5+32*Arg_1*Arg_1+32*Arg_1*Arg_3+32*Arg_1*Arg_5+64*Arg_0*Arg_1+8*Arg_3*Arg_3+8*Arg_5*Arg_5+116*Arg_0+116*Arg_1+58*Arg_3+58*Arg_5+109 {O(n^2)}
30: f3->f8: 1 {O(1)}
31: f4->f3: 16*Arg_3*Arg_5+32*Arg_0*Arg_0+32*Arg_0*Arg_3+32*Arg_0*Arg_5+32*Arg_1*Arg_1+32*Arg_1*Arg_3+32*Arg_1*Arg_5+64*Arg_0*Arg_1+8*Arg_3*Arg_3+8*Arg_5*Arg_5+112*Arg_0+112*Arg_1+56*Arg_3+56*Arg_5+96 {O(n^2)}
32: f4->f3: 2*Arg_3+2*Arg_5+4*Arg_0+4*Arg_1+8 {O(n)}

Sizebounds

20: f0->f3, Arg_0: Arg_0 {O(n)}
20: f0->f3, Arg_1: Arg_1 {O(n)}
20: f0->f3, Arg_3: Arg_3 {O(n)}
20: f0->f3, Arg_5: Arg_5 {O(n)}
21: f0->f4, Arg_0: Arg_0 {O(n)}
21: f0->f4, Arg_1: Arg_1 {O(n)}
21: f0->f4, Arg_3: Arg_3 {O(n)}
21: f0->f4, Arg_5: Arg_5 {O(n)}
22: f0->f8, Arg_0: Arg_0 {O(n)}
22: f0->f8, Arg_1: Arg_1 {O(n)}
22: f0->f8, Arg_3: Arg_3 {O(n)}
22: f0->f8, Arg_5: Arg_5 {O(n)}
23: f0->f3, Arg_0: Arg_5 {O(n)}
23: f0->f3, Arg_1: Arg_3 {O(n)}
23: f0->f3, Arg_3: Arg_3 {O(n)}
23: f0->f3, Arg_5: Arg_5 {O(n)}
24: f0->f3, Arg_0: Arg_5 {O(n)}
24: f0->f3, Arg_1: Arg_3 {O(n)}
24: f0->f3, Arg_3: Arg_3 {O(n)}
24: f0->f3, Arg_5: Arg_5 {O(n)}
26: f0->f3, Arg_0: Arg_0+1 {O(n)}
26: f0->f3, Arg_1: Arg_1 {O(n)}
26: f0->f3, Arg_3: Arg_3 {O(n)}
26: f0->f3, Arg_5: Arg_5 {O(n)}
27: f0->f3, Arg_0: Arg_0 {O(n)}
27: f0->f3, Arg_1: Arg_1+1 {O(n)}
27: f0->f3, Arg_3: Arg_3 {O(n)}
27: f0->f3, Arg_5: Arg_5 {O(n)}
28: f3->f4, Arg_0: 2*Arg_5+4*Arg_0+1 {O(n)}
28: f3->f4, Arg_1: 2*Arg_5+4*Arg_0+4*Arg_3+8*Arg_1+9 {O(n)}
28: f3->f4, Arg_3: 6*Arg_3 {O(n)}
28: f3->f4, Arg_5: 6*Arg_5 {O(n)}
29: f3->f4, Arg_0: 16*Arg_3*Arg_5+32*Arg_0*Arg_0+32*Arg_0*Arg_3+32*Arg_0*Arg_5+32*Arg_1*Arg_1+32*Arg_1*Arg_3+32*Arg_1*Arg_5+64*Arg_0*Arg_1+8*Arg_3*Arg_3+8*Arg_5*Arg_5+112*Arg_1+120*Arg_0+56*Arg_3+60*Arg_5+98 {O(n^2)}
29: f3->f4, Arg_1: 12*Arg_1+2*Arg_5+4*Arg_0+6*Arg_3+10 {O(n)}
29: f3->f4, Arg_3: 12*Arg_3 {O(n)}
29: f3->f4, Arg_5: 12*Arg_5 {O(n)}
31: f4->f3, Arg_0: 16*Arg_3*Arg_5+32*Arg_0*Arg_0+32*Arg_0*Arg_3+32*Arg_0*Arg_5+32*Arg_1*Arg_1+32*Arg_1*Arg_3+32*Arg_1*Arg_5+64*Arg_0*Arg_1+8*Arg_3*Arg_3+8*Arg_5*Arg_5+112*Arg_1+120*Arg_0+56*Arg_3+60*Arg_5+98 {O(n^2)}
31: f4->f3, Arg_1: 12*Arg_1+2*Arg_5+4*Arg_0+6*Arg_3+10 {O(n)}
31: f4->f3, Arg_3: 12*Arg_3 {O(n)}
31: f4->f3, Arg_5: 12*Arg_5 {O(n)}
32: f4->f3, Arg_0: 2*Arg_5+4*Arg_0+1 {O(n)}
32: f4->f3, Arg_1: 2*Arg_5+4*Arg_0+4*Arg_3+8*Arg_1+9 {O(n)}
32: f4->f3, Arg_3: 6*Arg_3 {O(n)}
32: f4->f3, Arg_5: 6*Arg_5 {O(n)}