(0) Obligation:

JBC Problem based on JBC Program:
No human-readable program information known.

Manifest-Version: 1.0 Created-By: 1.6.0_20 (Sun Microsystems Inc.) Main-Class: FlattenRTA

(1) JBC2FIG (SOUND transformation)

Constructed FIGraph.

(2) Obligation:

FIGraph based on JBC Program:
Graph of 871 nodes with 2 SCCs.

(3) FIGtoITRSProof (SOUND transformation)

Transformed FIGraph to ITRS rules

(4) Complex Obligation (AND)

(5) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load4995(o6162, o6162, java.lang.Object(TreeList(o6296, java.lang.Object(Tree(o7227, o7228, i2993))))) → JMP5452(o6162, o6162, java.lang.Object(TreeList(java.lang.Object(TreeList(o6296, o7228)), o7227)))
Load4995(java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994))))) → JMP5452(java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(java.lang.Object(TreeList(o6300, o7234)), o7233)))
Load4995(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL))) → JMP5452(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL)), o6300)
JMP5452(o6162, o6162, o6296) → Load4995(o6162, o6162, o6296)
Load4995(o6162, o6162, java.lang.Object(TreeList(o6296, NULL))) → Load4995(o6162, o6162, o6296)
The set Q consists of the following terms:
Load4995(x0, x0, java.lang.Object(TreeList(x1, java.lang.Object(Tree(x2, x3, x4)))))
JMP5452(x0, x0, x1)
Load4995(x0, x0, java.lang.Object(TreeList(x1, NULL)))

(6) DuplicateArgsRemoverProof (EQUIVALENT transformation)

Some arguments are removed because they only appear as duplicates.
We removed arguments according to the following replacements:

Load4995(x1, x2, x3) → Load4995(x2, x3)
JMP5452(x1, x2, x3) → JMP5452(x2, x3)

(7) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load4995(o6162, java.lang.Object(TreeList(o6296, java.lang.Object(Tree(o7227, o7228, i2993))))) → JMP5452(o6162, java.lang.Object(TreeList(java.lang.Object(TreeList(o6296, o7228)), o7227)))
Load4995(java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994))))) → JMP5452(java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(java.lang.Object(TreeList(o6300, o7234)), o7233)))
Load4995(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL))) → JMP5452(java.lang.Object(TreeList(o6300, NULL)), o6300)
JMP5452(o6162, o6296) → Load4995(o6162, o6296)
Load4995(o6162, java.lang.Object(TreeList(o6296, NULL))) → Load4995(o6162, o6296)
The set Q consists of the following terms:
Load4995(x0, java.lang.Object(TreeList(x1, java.lang.Object(Tree(x2, x3, x4)))))
JMP5452(x0, x1)
Load4995(x0, java.lang.Object(TreeList(x1, NULL)))

(8) ITRStoQTRSProof (EQUIVALENT transformation)

Represented integers and predefined function symbols by Terms

(9) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

Load4995(o6162, java.lang.Object(TreeList(o6296, java.lang.Object(Tree(o7227, o7228, i2993))))) → JMP5452(o6162, java.lang.Object(TreeList(java.lang.Object(TreeList(o6296, o7228)), o7227)))
Load4995(java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994))))) → JMP5452(java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(java.lang.Object(TreeList(o6300, o7234)), o7233)))
Load4995(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL))) → JMP5452(java.lang.Object(TreeList(o6300, NULL)), o6300)
JMP5452(o6162, o6296) → Load4995(o6162, o6296)
Load4995(o6162, java.lang.Object(TreeList(o6296, NULL))) → Load4995(o6162, o6296)

The set Q consists of the following terms:

Load4995(x0, java.lang.Object(TreeList(x1, java.lang.Object(Tree(x2, x3, x4)))))
JMP5452(x0, x1)
Load4995(x0, java.lang.Object(TreeList(x1, NULL)))

(10) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Polynomial interpretation [POLO]:

POL(JMP5452(x1, x2)) = 1 + x1 + x2   
POL(Load4995(x1, x2)) = x1 + x2   
POL(NULL) = 2   
POL(Tree(x1, x2, x3)) = 2 + x1 + x2 + x3   
POL(TreeList(x1, x2)) = x1 + x2   
POL(java.lang.Object(x1)) = x1   
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

Load4995(o6162, java.lang.Object(TreeList(o6296, java.lang.Object(Tree(o7227, o7228, i2993))))) → JMP5452(o6162, java.lang.Object(TreeList(java.lang.Object(TreeList(o6296, o7228)), o7227)))
Load4995(java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994))))) → JMP5452(java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(java.lang.Object(TreeList(o6300, o7234)), o7233)))
Load4995(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL))) → JMP5452(java.lang.Object(TreeList(o6300, NULL)), o6300)
JMP5452(o6162, o6296) → Load4995(o6162, o6296)
Load4995(o6162, java.lang.Object(TreeList(o6296, NULL))) → Load4995(o6162, o6296)


(11) Obligation:

Q restricted rewrite system:
R is empty.
The set Q consists of the following terms:

Load4995(x0, java.lang.Object(TreeList(x1, java.lang.Object(Tree(x2, x3, x4)))))
JMP5452(x0, x1)
Load4995(x0, java.lang.Object(TreeList(x1, NULL)))

(12) RisEmptyProof (EQUIVALENT transformation)

The TRS R is empty. Hence, termination is trivially proven.

(13) TRUE

(14) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823)))
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823))) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823)))
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823))) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18021Field0, o18021Field1, o18021Field2))) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109, java.lang.Object(Tree(NULL, NULL, i290)), java.lang.Object(Tree(NULL, NULL, i290)))
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141))) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)))
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, NULL, i8141))) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, NULL, i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290))) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)))
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142))) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)))
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(NULL, o18896, i8142))) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(NULL, o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(Tree(o18019, NULL, i290))) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290))) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(Tree(NULL, o18020, i290))) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)))
The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0, x4, x5, x6)))
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0, x4, x5, x6)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, 0, java.lang.Object(Tree(x4, x5, x6)), java.lang.Object(Tree(x7, x8, x9)))
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)), java.lang.Object(java.lang.String(x8, x9, x10, x11)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)), java.lang.Object(java.lang.String(x8, x9, x10, x11)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, x9, x10)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)))
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)), java.lang.Object(java.lang.String(0, x13, x14, x15)))
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)), java.lang.Object(java.lang.String(0, x13, x14, x15)))
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x5, x6, x7)))
JMP18797(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x5, x6, x7)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, NULL, x9)))
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(NULL, NULL, x9)), x10)), java.lang.Object(java.lang.String(x9, x11, x12, x13)), java.lang.Object(java.lang.String(0, x14, x15, x16)))
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(NULL, NULL, x9)), x10)), java.lang.Object(java.lang.String(x9, x11, x12, x13)), java.lang.Object(java.lang.String(0, x14, x15, x16)))
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(java.lang.String(0, x10, x11, x12)))
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(java.lang.String(0, x10, x11, x12)))
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, x9, x10)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)))
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)), java.lang.Object(java.lang.String(x13, x14, x15, x16)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)), java.lang.Object(java.lang.String(x13, x14, x15, x16)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x5, x6, x7)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(NULL, x8, x9)))
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x8)), x9, x10)), java.lang.Object(java.lang.String(x8, x11, x12, x13)), java.lang.Object(java.lang.String(x14, x15, x16, x17)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x8)), x9, x10)), java.lang.Object(java.lang.String(x8, x11, x12, x13)), java.lang.Object(java.lang.String(x14, x15, x16, x17)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(java.lang.String(x6, x8, x9, x10)), java.lang.Object(java.lang.String(0, x11, x12, x13)))
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(java.lang.String(x6, x8, x9, x10)), java.lang.Object(java.lang.String(0, x11, x12, x13)))
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(java.lang.String(x10, x11, x12, x13)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(java.lang.String(x10, x11, x12, x13)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(java.lang.String(x5, x8, x9, x10)), java.lang.Object(java.lang.String(x11, x12, x13, x14)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(java.lang.String(x5, x8, x9, x10)), java.lang.Object(java.lang.String(x11, x12, x13, x14)))

(15) DuplicateArgsRemoverProof (EQUIVALENT transformation)

Some arguments are removed because they only appear as duplicates.
We removed arguments according to the following replacements:

JMP18886(x1, x2, x3, x4, x5, x6) → JMP18886(x1, x2, x3, x4, x6)
Cond_Load13603ARR10(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load13603ARR10(x1, x2, x3, x4, x5, x7, x8, x9)
Load13603ARR10(x1, x2, x3, x4, x5, x6, x7, x8) → Load13603ARR10(x1, x2, x3, x4, x6, x7, x8)
Cond_Load13603ARR9(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR9(x1, x2, x3, x4, x5, x7, x8)
Load13603ARR9(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR9(x1, x2, x3, x4, x6, x7)
JMP18797(x1, x2, x3, x4, x5, x6) → JMP18797(x1, x2, x3, x4, x6)
Cond_Load13603ARR8(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load13603ARR8(x1, x2, x3, x4, x5, x7, x8, x9)
Load13603ARR8(x1, x2, x3, x4, x5, x6, x7, x8) → Load13603ARR8(x1, x2, x3, x4, x6, x7, x8)
Inc18978(x1, x2, x3, x4, x5, x6) → Inc18978(x1, x2, x3, x4, x6)
Cond_Load13603ARR5(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR5(x1, x2, x3, x4, x5, x7, x8)
Load13603ARR5(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR5(x1, x2, x3, x4, x6, x7)

(16) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823)))
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823))) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823)))
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823))) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18021Field0, o18021Field1, o18021Field2))) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109, java.lang.Object(Tree(NULL, NULL, i290)), java.lang.Object(Tree(NULL, NULL, i290)))
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141))) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)))
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, NULL, i8141))) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, NULL, i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290))) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)))
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142))) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)))
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(NULL, o18896, i8142))) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(NULL, o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(Tree(o18019, NULL, i290))) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290))) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(Tree(NULL, o18020, i290))) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)))
The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0, x4, x5, x6)))
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0, x4, x5, x6)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, 0, java.lang.Object(Tree(x4, x5, x6)), java.lang.Object(Tree(x7, x8, x9)))
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)), java.lang.Object(java.lang.String(x8, x9, x10, x11)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)), java.lang.Object(java.lang.String(x8, x9, x10, x11)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, x9, x10)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)))
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)), java.lang.Object(java.lang.String(0, x13, x14, x15)))
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)), java.lang.Object(java.lang.String(0, x13, x14, x15)))
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)))
JMP18797(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, NULL, x9)))
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(NULL, NULL, x9)), x10)), java.lang.Object(java.lang.String(x9, x11, x12, x13)), java.lang.Object(java.lang.String(0, x14, x15, x16)))
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(NULL, NULL, x9)), x10)), java.lang.Object(java.lang.String(x9, x11, x12, x13)), java.lang.Object(java.lang.String(0, x14, x15, x16)))
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(java.lang.String(0, x10, x11, x12)))
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(java.lang.String(0, x10, x11, x12)))
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, x9, x10)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)))
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)), java.lang.Object(java.lang.String(x13, x14, x15, x16)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)), java.lang.Object(java.lang.String(x13, x14, x15, x16)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(NULL, x8, x9)))
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x8)), x9, x10)), java.lang.Object(java.lang.String(x8, x11, x12, x13)), java.lang.Object(java.lang.String(x14, x15, x16, x17)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x8)), x9, x10)), java.lang.Object(java.lang.String(x8, x11, x12, x13)), java.lang.Object(java.lang.String(x14, x15, x16, x17)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(java.lang.String(x6, x8, x9, x10)), java.lang.Object(java.lang.String(0, x11, x12, x13)))
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(java.lang.String(x6, x8, x9, x10)), java.lang.Object(java.lang.String(0, x11, x12, x13)))
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(java.lang.String(x10, x11, x12, x13)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(java.lang.String(x10, x11, x12, x13)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(java.lang.String(x5, x8, x9, x10)), java.lang.Object(java.lang.String(x11, x12, x13, x14)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(java.lang.String(x5, x8, x9, x10)), java.lang.Object(java.lang.String(x11, x12, x13, x14)))

(17) ITRSFilterProcessorProof (SOUND transformation)

We filter according the heuristic IdpCand1ShapeHeuristic
We removed arguments according to the following replacements:

Load715ARR1(x1, x2, x3, x4) → Load715ARR1(x1, x2, x3)
Cond_Load715ARR1(x1, x2, x3, x4, x5) → Cond_Load715ARR1(x1, x2, x3, x4)
Load13603(x1, x2, x3, x4, x5, x6) → Load13603(x1, x2, x3, x4)
Tree(x1, x2, x3) → Tree
Load715ARR2(x1, x2, x3, x4, x5) → Load715ARR2(x1, x2, x3, x5)
Cond_Load715ARR2(x1, x2, x3, x4, x5, x6) → Cond_Load715ARR2(x1, x2, x3, x4, x6)
Inc15077(x1, x2, x3, x4, x5, x6) → Inc15077(x1, x2, x3, x4)
Load13603ARR3(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR3(x1, x2, x3, x4)
Cond_Load13603ARR3(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR3(x1, x2, x3, x4, x5)
Inc18978(x1, x2, x3, x4, x5) → Inc18978(x1, x2, x3, x4)
JMP18797(x1, x2, x3, x4, x5) → JMP18797(x1, x2, x3, x4)
Load13603ARR4(x1, x2, x3, x4, x5, x6, x7, x8) → Load13603ARR4(x1, x2, x3, x4)
Cond_Load13603ARR4(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load13603ARR4(x1, x2, x3, x4, x5)
Load13603ARR5(x1, x2, x3, x4, x5, x6) → Load13603ARR5(x1, x2, x3, x4)
Cond_Load13603ARR5(x1, x2, x3, x4, x5, x6, x7) → Cond_Load13603ARR5(x1, x2, x3, x4, x5)
JMP15126(x1, x2, x3, x4, x5, x6) → JMP15126(x1, x2, x3, x4)
Load13603ARR6(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR6(x1, x2, x3, x4, x7)
Cond_Load13603ARR6(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR6(x1, x2, x3, x4, x5, x8)
JMP18886(x1, x2, x3, x4, x5) → JMP18886(x1, x2, x3, x4)
Load13603ARR7(x1, x2, x3, x4, x5, x6, x7, x8) → Load13603ARR7(x1, x2, x3, x4, x8)
Cond_Load13603ARR7(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load13603ARR7(x1, x2, x3, x4, x5, x9)
Load13603ARR8(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR8(x1, x2, x3, x4)
Cond_Load13603ARR8(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR8(x1, x2, x3, x4, x5)
Load13603ARR9(x1, x2, x3, x4, x5, x6) → Load13603ARR9(x1, x2, x3, x4, x6)
Cond_Load13603ARR9(x1, x2, x3, x4, x5, x6, x7) → Cond_Load13603ARR9(x1, x2, x3, x4, x5, x7)
Load13603ARR10(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR10(x1, x2, x3, x4, x7)
Cond_Load13603ARR10(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR10(x1, x2, x3, x4, x5, x8)

(18) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109)
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1)
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1)
JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP18797(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(19) ITRSFSMergerProof (SOUND transformation)

The following function symbols have been merged:

Inc18978, JMP18797
> Inc18978_4

(20) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109)
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1)
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(21) ITRStoIDPProof (EQUIVALENT transformation)

Added dependency pairs

(22) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Boolean, Integer


The ITRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109)
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1)
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)

The integer pair graph contains the following rules and edges:
(0): LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
(1): LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0, java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
(2): COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2] + 1, i58[2] + -1)
(3): LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3] + -1)
(4): LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))
(5): LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))
(6): COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6] + 1 + 1, i58[6], i109[6])
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])

(0) -> (1), if ((i58[0]* i58[1])∧(i56[0]* i56[1])∧(java.lang.Object(ARRAY(i2[0], a694data[0])) →* java.lang.Object(ARRAY(i2[1], a694data[1]))))


(1) -> (2), if ((i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i2[1], a694data[1])) →* java.lang.Object(ARRAY(i2[2], a694data[2])))∧(i58[1]* i58[2])∧(i56[1]* i56[2]))


(2) -> (0), if ((i56[2] + 1* i56[0])∧(i58[2] + -1* i58[0])∧(java.lang.Object(ARRAY(i2[2], a694data[2])) →* java.lang.Object(ARRAY(i2[0], a694data[0]))))


(2) -> (4), if ((i58[2] + -1* i58[4])∧(java.lang.Object(ARRAY(i2[2], a694data[2])) →* java.lang.Object(ARRAY(i2[4], a694data[4])))∧(i56[2] + 1* i56[4]))


(3) -> (0), if ((java.lang.Object(ARRAY(i2[3], a19203data[3])) →* java.lang.Object(ARRAY(i2[0], a694data[0])))∧(i7628[3]* i56[0])∧(i58[3] + -1* i58[0]))


(3) -> (4), if ((i58[3] + -1* i58[4])∧(java.lang.Object(ARRAY(i2[3], a19203data[3])) →* java.lang.Object(ARRAY(i2[4], a694data[4])))∧(i7628[3]* i56[4]))


(4) -> (5), if ((java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])) →* java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))∧(i56[4]* i56[5])∧(java.lang.Object(ARRAY(i2[4], a694data[4])) →* java.lang.Object(ARRAY(i2[5], a694data[5])))∧(i58[4]* i58[5]))


(5) -> (6), if ((i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0* TRUE)∧(i58[5]* i58[6])∧(java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])) →* java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6])))∧(i56[5]* i56[6])∧(java.lang.Object(ARRAY(i2[5], a694data[5])) →* java.lang.Object(ARRAY(i2[6], a694data[6]))))


(6) -> (3), if ((i58[6]* i58[3])∧(i109[6]* 0)∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i56[6] + 1 + 1* i7628[3]))


(6) -> (8), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[6]* i58[8])∧(i109[6]* i7630[8])∧(i56[6] + 1 + 1* i7628[8]))


(6) -> (12), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i58[6]* i58[12])∧(i56[6] + 1 + 1* i7628[12])∧(i109[6]* i7630[12]))


(6) -> (15), if ((i109[6]* i7630[15])∧(i58[6]* i58[15])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i56[6] + 1 + 1* i7628[15]))


(6) -> (19), if ((i109[6]* i7630[19])∧(i58[6]* i58[19])∧(i56[6] + 1 + 1* i7628[19])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[19], a19203data[19]))))


(6) -> (23), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i109[6]* i7630[23])∧(i56[6] + 1 + 1* i7628[23])∧(i58[6]* i58[23]))


(6) -> (26), if ((i56[6] + 1 + 1* i7628[26])∧(i58[6]* i58[26])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i109[6]* i7630[26]))


(6) -> (29), if ((i56[6] + 1 + 1* i7628[29])∧(i109[6]* i7630[29])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i58[6]* i58[29]))


(6) -> (32), if ((i58[6]* i58[32])∧(i109[6]* i7630[32])∧(i56[6] + 1 + 1* i7628[32])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[32], a19203data[32]))))


(7) -> (3), if ((i58[7]* i58[3])∧(i7710[7]* i7628[3])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7630[7] + -1* 0))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i7710[7]* i7628[8]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7630[7] + -1* i7630[12]))


(7) -> (15), if ((i7710[7]* i7628[15])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[7] + -1* i7630[19]))


(7) -> (23), if ((java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7630[7] + -1* i7630[26]))


(7) -> (29), if ((i58[7]* i58[29])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(7) -> (32), if ((i58[7]* i58[32])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(8) -> (9), if ((java.lang.Object(ARRAY(i2[8], a19203data[8])) →* java.lang.Object(ARRAY(i2[9], a19203data[9])))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(9) -> (10), if ((i58[9]* i58[10])∧(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i2[9], a19203data[9])) →* java.lang.Object(ARRAY(i2[10], a19203data[10])))∧(i7628[9]* i7628[10])∧(i7630[9]* i7630[10]))


(10) -> (3), if ((i58[10]* i58[3])∧(i7628[10] + 1* i7628[3])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7630[10] + -1* 0))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(10) -> (12), if ((i58[10]* i58[12])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(10) -> (15), if ((java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(10) -> (19), if ((i58[10]* i58[19])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7628[10] + 1* i7628[23]))


(10) -> (26), if ((java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7628[10] + 1* i7628[32]))


(11) -> (3), if ((i8902[11]* i7628[3])∧(i7630[11] + -1* 0)∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i58[11]* i58[3]))


(11) -> (8), if ((i8902[11]* i7628[8])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[12], a19203data[12]))))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i58[11]* i58[15]))


(11) -> (19), if ((i8902[11]* i7628[19])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7630[11] + -1* i7630[23]))


(11) -> (26), if ((i58[11]* i58[26])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[29], a19203data[29]))))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7630[11] + -1* i7630[32]))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧(java.lang.Object(ARRAY(i2[12], a19203data[12])) →* java.lang.Object(ARRAY(i2[13], a19203data[13]))))


(13) -> (14), if ((i7628[13]* i7628[14])∧(java.lang.Object(ARRAY(i2[13], a19203data[13])) →* java.lang.Object(ARRAY(i2[14], a19203data[14])))∧(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0* TRUE)∧(i7630[13]* i7630[14])∧(i58[13]* i58[14]))


(14) -> (3), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7628[14] + 1 + 1* i7628[3])∧(i7630[14] + -1* 0)∧(i58[14]* i58[3]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[14]* i58[8]))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[14] + -1* i7630[15]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(14) -> (23), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7630[14] + -1* i7630[26]))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(14) -> (32), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧(java.lang.Object(ARRAY(i2[15], a19203data[15])) →* java.lang.Object(ARRAY(i2[16], a19203data[16])))∧(i7630[15]* i7630[16]))


(16) -> (17), if ((java.lang.Object(ARRAY(i2[16], a19203data[16])) →* java.lang.Object(ARRAY(i2[17], a19203data[17])))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧(java.lang.Object(ARRAY(i2[17], a19203data[17])) →* java.lang.Object(ARRAY(i2[7], a19203data[7]))))


(18) -> (7), if ((i7710[18]* i7710[7])∧(java.lang.Object(ARRAY(i2[18], a19203data[18])) →* java.lang.Object(ARRAY(i2[7], a19203data[7])))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(19) -> (20), if ((i58[19]* i58[20])∧(java.lang.Object(ARRAY(i2[19], a19203data[19])) →* java.lang.Object(ARRAY(i2[20], a19203data[20])))∧(i7630[19]* i7630[20])∧(java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])) →* java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(i7628[19]* i7628[20]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧(java.lang.Object(ARRAY(i2[20], a19203data[20])) →* java.lang.Object(ARRAY(i2[21], a19203data[21])))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])) →* java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))))


(21) -> (7), if ((java.lang.Object(ARRAY(i2[21], a19203data[21])) →* java.lang.Object(ARRAY(i2[7], a19203data[7])))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(22) -> (11), if ((i58[22]* i58[11])∧(java.lang.Object(ARRAY(i2[22], a19203data[22])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(23) -> (24), if ((i7630[23]* i7630[24])∧(java.lang.Object(ARRAY(i2[23], a19203data[23])) →* java.lang.Object(ARRAY(i2[24], a19203data[24])))∧(i58[23]* i58[24])∧(java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])) →* java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))∧(i7628[23]* i7628[24]))


(24) -> (25), if ((i58[24]* i58[25])∧(java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])) →* java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25])))∧(java.lang.Object(ARRAY(i2[24], a19203data[24])) →* java.lang.Object(ARRAY(i2[25], a19203data[25])))∧(i7628[24]* i7628[25])∧(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0* TRUE)∧(i7630[24]* i7630[25]))


(25) -> (11), if ((i7630[25]* i7630[11])∧(java.lang.Object(ARRAY(i2[25], a19203data[25])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(26) -> (27), if ((java.lang.Object(ARRAY(i2[26], a19203data[26])) →* java.lang.Object(ARRAY(i2[27], a19203data[27])))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(27) -> (28), if ((i7628[27]* i7628[28])∧(i7630[27]* i7630[28])∧(i58[27]* i58[28])∧(java.lang.Object(ARRAY(i2[27], a19203data[27])) →* java.lang.Object(ARRAY(i2[28], a19203data[28])))∧(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0* TRUE))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧(java.lang.Object(ARRAY(i2[28], a19203data[28])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i7630[28]* i7630[11]))


(29) -> (30), if ((java.lang.Object(ARRAY(i2[29], a19203data[29])) →* java.lang.Object(ARRAY(i2[30], a19203data[30])))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧(java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])) →* java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧(java.lang.Object(ARRAY(i2[30], a19203data[30])) →* java.lang.Object(ARRAY(i2[31], a19203data[31])))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])) →* java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31])))∧(i7630[30]* i7630[31]))


(31) -> (18), if ((i58[31]* i58[18])∧(java.lang.Object(ARRAY(i2[31], a19203data[31])) →* java.lang.Object(ARRAY(i2[18], a19203data[18])))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(32) -> (33), if ((java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])) →* java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))∧(i58[32]* i58[33])∧(java.lang.Object(ARRAY(i2[32], a19203data[32])) →* java.lang.Object(ARRAY(i2[33], a19203data[33])))∧(i7628[32]* i7628[33])∧(i7630[32]* i7630[33]))


(33) -> (34), if ((i7628[33]* i7628[34])∧(java.lang.Object(ARRAY(i2[33], a19203data[33])) →* java.lang.Object(ARRAY(i2[34], a19203data[34])))∧(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])) →* java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34])))∧(i58[33]* i58[34])∧(i7630[33]* i7630[34]))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧(java.lang.Object(ARRAY(i2[34], a19203data[34])) →* java.lang.Object(ARRAY(i2[22], a19203data[22]))))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(23) UsableRulesProof (EQUIVALENT transformation)

As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

(24) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Boolean, Integer


R is empty.

The integer pair graph contains the following rules and edges:
(0): LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
(1): LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0, java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
(2): COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2] + 1, i58[2] + -1)
(3): LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3] + -1)
(4): LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))
(5): LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))
(6): COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6] + 1 + 1, i58[6], i109[6])
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])

(0) -> (1), if ((i58[0]* i58[1])∧(i56[0]* i56[1])∧(java.lang.Object(ARRAY(i2[0], a694data[0])) →* java.lang.Object(ARRAY(i2[1], a694data[1]))))


(1) -> (2), if ((i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i2[1], a694data[1])) →* java.lang.Object(ARRAY(i2[2], a694data[2])))∧(i58[1]* i58[2])∧(i56[1]* i56[2]))


(2) -> (0), if ((i56[2] + 1* i56[0])∧(i58[2] + -1* i58[0])∧(java.lang.Object(ARRAY(i2[2], a694data[2])) →* java.lang.Object(ARRAY(i2[0], a694data[0]))))


(2) -> (4), if ((i58[2] + -1* i58[4])∧(java.lang.Object(ARRAY(i2[2], a694data[2])) →* java.lang.Object(ARRAY(i2[4], a694data[4])))∧(i56[2] + 1* i56[4]))


(3) -> (0), if ((java.lang.Object(ARRAY(i2[3], a19203data[3])) →* java.lang.Object(ARRAY(i2[0], a694data[0])))∧(i7628[3]* i56[0])∧(i58[3] + -1* i58[0]))


(3) -> (4), if ((i58[3] + -1* i58[4])∧(java.lang.Object(ARRAY(i2[3], a19203data[3])) →* java.lang.Object(ARRAY(i2[4], a694data[4])))∧(i7628[3]* i56[4]))


(4) -> (5), if ((java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])) →* java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))∧(i56[4]* i56[5])∧(java.lang.Object(ARRAY(i2[4], a694data[4])) →* java.lang.Object(ARRAY(i2[5], a694data[5])))∧(i58[4]* i58[5]))


(5) -> (6), if ((i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0* TRUE)∧(i58[5]* i58[6])∧(java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])) →* java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6])))∧(i56[5]* i56[6])∧(java.lang.Object(ARRAY(i2[5], a694data[5])) →* java.lang.Object(ARRAY(i2[6], a694data[6]))))


(6) -> (3), if ((i58[6]* i58[3])∧(i109[6]* 0)∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i56[6] + 1 + 1* i7628[3]))


(6) -> (8), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[6]* i58[8])∧(i109[6]* i7630[8])∧(i56[6] + 1 + 1* i7628[8]))


(6) -> (12), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i58[6]* i58[12])∧(i56[6] + 1 + 1* i7628[12])∧(i109[6]* i7630[12]))


(6) -> (15), if ((i109[6]* i7630[15])∧(i58[6]* i58[15])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i56[6] + 1 + 1* i7628[15]))


(6) -> (19), if ((i109[6]* i7630[19])∧(i58[6]* i58[19])∧(i56[6] + 1 + 1* i7628[19])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[19], a19203data[19]))))


(6) -> (23), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i109[6]* i7630[23])∧(i56[6] + 1 + 1* i7628[23])∧(i58[6]* i58[23]))


(6) -> (26), if ((i56[6] + 1 + 1* i7628[26])∧(i58[6]* i58[26])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i109[6]* i7630[26]))


(6) -> (29), if ((i56[6] + 1 + 1* i7628[29])∧(i109[6]* i7630[29])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i58[6]* i58[29]))


(6) -> (32), if ((i58[6]* i58[32])∧(i109[6]* i7630[32])∧(i56[6] + 1 + 1* i7628[32])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[32], a19203data[32]))))


(7) -> (3), if ((i58[7]* i58[3])∧(i7710[7]* i7628[3])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7630[7] + -1* 0))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i7710[7]* i7628[8]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7630[7] + -1* i7630[12]))


(7) -> (15), if ((i7710[7]* i7628[15])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[7] + -1* i7630[19]))


(7) -> (23), if ((java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7630[7] + -1* i7630[26]))


(7) -> (29), if ((i58[7]* i58[29])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(7) -> (32), if ((i58[7]* i58[32])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(8) -> (9), if ((java.lang.Object(ARRAY(i2[8], a19203data[8])) →* java.lang.Object(ARRAY(i2[9], a19203data[9])))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(9) -> (10), if ((i58[9]* i58[10])∧(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i2[9], a19203data[9])) →* java.lang.Object(ARRAY(i2[10], a19203data[10])))∧(i7628[9]* i7628[10])∧(i7630[9]* i7630[10]))


(10) -> (3), if ((i58[10]* i58[3])∧(i7628[10] + 1* i7628[3])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7630[10] + -1* 0))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(10) -> (12), if ((i58[10]* i58[12])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(10) -> (15), if ((java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(10) -> (19), if ((i58[10]* i58[19])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7628[10] + 1* i7628[23]))


(10) -> (26), if ((java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7628[10] + 1* i7628[32]))


(11) -> (3), if ((i8902[11]* i7628[3])∧(i7630[11] + -1* 0)∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i58[11]* i58[3]))


(11) -> (8), if ((i8902[11]* i7628[8])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[12], a19203data[12]))))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i58[11]* i58[15]))


(11) -> (19), if ((i8902[11]* i7628[19])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7630[11] + -1* i7630[23]))


(11) -> (26), if ((i58[11]* i58[26])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[29], a19203data[29]))))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7630[11] + -1* i7630[32]))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧(java.lang.Object(ARRAY(i2[12], a19203data[12])) →* java.lang.Object(ARRAY(i2[13], a19203data[13]))))


(13) -> (14), if ((i7628[13]* i7628[14])∧(java.lang.Object(ARRAY(i2[13], a19203data[13])) →* java.lang.Object(ARRAY(i2[14], a19203data[14])))∧(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0* TRUE)∧(i7630[13]* i7630[14])∧(i58[13]* i58[14]))


(14) -> (3), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7628[14] + 1 + 1* i7628[3])∧(i7630[14] + -1* 0)∧(i58[14]* i58[3]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[14]* i58[8]))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[14] + -1* i7630[15]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(14) -> (23), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7630[14] + -1* i7630[26]))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(14) -> (32), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧(java.lang.Object(ARRAY(i2[15], a19203data[15])) →* java.lang.Object(ARRAY(i2[16], a19203data[16])))∧(i7630[15]* i7630[16]))


(16) -> (17), if ((java.lang.Object(ARRAY(i2[16], a19203data[16])) →* java.lang.Object(ARRAY(i2[17], a19203data[17])))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧(java.lang.Object(ARRAY(i2[17], a19203data[17])) →* java.lang.Object(ARRAY(i2[7], a19203data[7]))))


(18) -> (7), if ((i7710[18]* i7710[7])∧(java.lang.Object(ARRAY(i2[18], a19203data[18])) →* java.lang.Object(ARRAY(i2[7], a19203data[7])))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(19) -> (20), if ((i58[19]* i58[20])∧(java.lang.Object(ARRAY(i2[19], a19203data[19])) →* java.lang.Object(ARRAY(i2[20], a19203data[20])))∧(i7630[19]* i7630[20])∧(java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])) →* java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(i7628[19]* i7628[20]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧(java.lang.Object(ARRAY(i2[20], a19203data[20])) →* java.lang.Object(ARRAY(i2[21], a19203data[21])))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])) →* java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))))


(21) -> (7), if ((java.lang.Object(ARRAY(i2[21], a19203data[21])) →* java.lang.Object(ARRAY(i2[7], a19203data[7])))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(22) -> (11), if ((i58[22]* i58[11])∧(java.lang.Object(ARRAY(i2[22], a19203data[22])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(23) -> (24), if ((i7630[23]* i7630[24])∧(java.lang.Object(ARRAY(i2[23], a19203data[23])) →* java.lang.Object(ARRAY(i2[24], a19203data[24])))∧(i58[23]* i58[24])∧(java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])) →* java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))∧(i7628[23]* i7628[24]))


(24) -> (25), if ((i58[24]* i58[25])∧(java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])) →* java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25])))∧(java.lang.Object(ARRAY(i2[24], a19203data[24])) →* java.lang.Object(ARRAY(i2[25], a19203data[25])))∧(i7628[24]* i7628[25])∧(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0* TRUE)∧(i7630[24]* i7630[25]))


(25) -> (11), if ((i7630[25]* i7630[11])∧(java.lang.Object(ARRAY(i2[25], a19203data[25])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(26) -> (27), if ((java.lang.Object(ARRAY(i2[26], a19203data[26])) →* java.lang.Object(ARRAY(i2[27], a19203data[27])))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(27) -> (28), if ((i7628[27]* i7628[28])∧(i7630[27]* i7630[28])∧(i58[27]* i58[28])∧(java.lang.Object(ARRAY(i2[27], a19203data[27])) →* java.lang.Object(ARRAY(i2[28], a19203data[28])))∧(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0* TRUE))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧(java.lang.Object(ARRAY(i2[28], a19203data[28])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i7630[28]* i7630[11]))


(29) -> (30), if ((java.lang.Object(ARRAY(i2[29], a19203data[29])) →* java.lang.Object(ARRAY(i2[30], a19203data[30])))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧(java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])) →* java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧(java.lang.Object(ARRAY(i2[30], a19203data[30])) →* java.lang.Object(ARRAY(i2[31], a19203data[31])))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])) →* java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31])))∧(i7630[30]* i7630[31]))


(31) -> (18), if ((i58[31]* i58[18])∧(java.lang.Object(ARRAY(i2[31], a19203data[31])) →* java.lang.Object(ARRAY(i2[18], a19203data[18])))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(32) -> (33), if ((java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])) →* java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))∧(i58[32]* i58[33])∧(java.lang.Object(ARRAY(i2[32], a19203data[32])) →* java.lang.Object(ARRAY(i2[33], a19203data[33])))∧(i7628[32]* i7628[33])∧(i7630[32]* i7630[33]))


(33) -> (34), if ((i7628[33]* i7628[34])∧(java.lang.Object(ARRAY(i2[33], a19203data[33])) →* java.lang.Object(ARRAY(i2[34], a19203data[34])))∧(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])) →* java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34])))∧(i58[33]* i58[34])∧(i7630[33]* i7630[34]))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧(java.lang.Object(ARRAY(i2[34], a19203data[34])) →* java.lang.Object(ARRAY(i2[22], a19203data[22]))))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(25) ItpfGraphProof (EQUIVALENT transformation)

Applied rule ItpfICap [ICap]

(26) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Boolean, Integer


R is empty.

The integer pair graph contains the following rules and edges:
(0): LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
(1): LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0, java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
(2): COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2] + 1, i58[2] + -1)
(3): LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3] + -1)
(4): LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))
(5): LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))
(6): COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6] + 1 + 1, i58[6], i109[6])
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])

(0) -> (1), if ((i58[0]* i58[1])∧(i56[0]* i56[1])∧((i2[0]* i2[1])∧(a694data[0]* a694data[1])))


(1) -> (2), if ((i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0* TRUE)∧((i2[1]* i2[2])∧(a694data[1]* a694data[2]))∧(i58[1]* i58[2])∧(i56[1]* i56[2]))


(2) -> (0), if ((i56[2] + 1* i56[0])∧(i58[2] + -1* i58[0])∧((i2[2]* i2[0])∧(a694data[2]* a694data[0])))


(2) -> (4), if ((i58[2] + -1* i58[4])∧((i2[2]* i2[4])∧(a694data[2]* a694data[4]))∧(i56[2] + 1* i56[4]))


(3) -> (0), if (((i2[3]* i2[0])∧(a19203data[3]* a694data[0]))∧(i7628[3]* i56[0])∧(i58[3] + -1* i58[0]))


(3) -> (4), if ((i58[3] + -1* i58[4])∧((i2[3]* i2[4])∧(a19203data[3]* a694data[4]))∧(i7628[3]* i56[4]))


(4) -> (5), if (((i109[4]* i109[5])∧(i86[4]* i86[5])∧(i88[4]* i88[5])∧(a823[4]* a823[5]))∧(i56[4]* i56[5])∧((i2[4]* i2[5])∧(a694data[4]* a694data[5]))∧(i58[4]* i58[5]))


(5) -> (6), if ((i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0* TRUE)∧(i58[5]* i58[6])∧((i109[5]* i109[6])∧(i86[5]* i86[6])∧(i88[5]* i88[6])∧(a823[5]* a823[6]))∧(i56[5]* i56[6])∧((i2[5]* i2[6])∧(a694data[5]* a694data[6])))


(6) -> (3), if ((i58[6]* i58[3])∧(i109[6]* 0)∧((i2[6]* i2[3])∧(a694data[6]* a19203data[3]))∧(i56[6] + 1 + 1* i7628[3]))


(6) -> (8), if (((i2[6]* i2[8])∧(a694data[6]* a19203data[8]))∧(i58[6]* i58[8])∧(i109[6]* i7630[8])∧(i56[6] + 1 + 1* i7628[8]))


(6) -> (12), if (((i2[6]* i2[12])∧(a694data[6]* a19203data[12]))∧(i58[6]* i58[12])∧(i56[6] + 1 + 1* i7628[12])∧(i109[6]* i7630[12]))


(6) -> (15), if ((i109[6]* i7630[15])∧(i58[6]* i58[15])∧((i2[6]* i2[15])∧(a694data[6]* a19203data[15]))∧(i56[6] + 1 + 1* i7628[15]))


(6) -> (19), if ((i109[6]* i7630[19])∧(i58[6]* i58[19])∧(i56[6] + 1 + 1* i7628[19])∧((i2[6]* i2[19])∧(a694data[6]* a19203data[19])))


(6) -> (23), if (((i2[6]* i2[23])∧(a694data[6]* a19203data[23]))∧(i109[6]* i7630[23])∧(i56[6] + 1 + 1* i7628[23])∧(i58[6]* i58[23]))


(6) -> (26), if ((i56[6] + 1 + 1* i7628[26])∧(i58[6]* i58[26])∧((i2[6]* i2[26])∧(a694data[6]* a19203data[26]))∧(i109[6]* i7630[26]))


(6) -> (29), if ((i56[6] + 1 + 1* i7628[29])∧(i109[6]* i7630[29])∧((i2[6]* i2[29])∧(a694data[6]* a19203data[29]))∧(i58[6]* i58[29]))


(6) -> (32), if ((i58[6]* i58[32])∧(i109[6]* i7630[32])∧(i56[6] + 1 + 1* i7628[32])∧((i2[6]* i2[32])∧(a694data[6]* a19203data[32])))


(7) -> (3), if ((i58[7]* i58[3])∧(i7710[7]* i7628[3])∧((i2[7]* i2[3])∧(a19203data[7]* a19203data[3]))∧(i7630[7] + -1* 0))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧((i2[7]* i2[8])∧(a19203data[7]* a19203data[8]))∧(i7710[7]* i7628[8]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧((i2[7]* i2[12])∧(a19203data[7]* a19203data[12]))∧(i7630[7] + -1* i7630[12]))


(7) -> (15), if ((i7710[7]* i7628[15])∧((i2[7]* i2[15])∧(a19203data[7]* a19203data[15]))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧((i2[7]* i2[19])∧(a19203data[7]* a19203data[19]))∧(i7630[7] + -1* i7630[19]))


(7) -> (23), if (((i2[7]* i2[23])∧(a19203data[7]* a19203data[23]))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧((i2[7]* i2[26])∧(a19203data[7]* a19203data[26]))∧(i7630[7] + -1* i7630[26]))


(7) -> (29), if ((i58[7]* i58[29])∧((i2[7]* i2[29])∧(a19203data[7]* a19203data[29]))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(7) -> (32), if ((i58[7]* i58[32])∧((i2[7]* i2[32])∧(a19203data[7]* a19203data[32]))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(8) -> (9), if (((i2[8]* i2[9])∧(a19203data[8]* a19203data[9]))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(9) -> (10), if ((i58[9]* i58[10])∧(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0* TRUE)∧((i2[9]* i2[10])∧(a19203data[9]* a19203data[10]))∧(i7628[9]* i7628[10])∧(i7630[9]* i7630[10]))


(10) -> (3), if ((i58[10]* i58[3])∧(i7628[10] + 1* i7628[3])∧((i2[10]* i2[3])∧(a19203data[10]* a19203data[3]))∧(i7630[10] + -1* 0))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧((i2[10]* i2[8])∧(a19203data[10]* a19203data[8]))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(10) -> (12), if ((i58[10]* i58[12])∧((i2[10]* i2[12])∧(a19203data[10]* a19203data[12]))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(10) -> (15), if (((i2[10]* i2[15])∧(a19203data[10]* a19203data[15]))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(10) -> (19), if ((i58[10]* i58[19])∧((i2[10]* i2[19])∧(a19203data[10]* a19203data[19]))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧((i2[10]* i2[23])∧(a19203data[10]* a19203data[23]))∧(i7628[10] + 1* i7628[23]))


(10) -> (26), if (((i2[10]* i2[26])∧(a19203data[10]* a19203data[26]))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧((i2[10]* i2[29])∧(a19203data[10]* a19203data[29]))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧((i2[10]* i2[32])∧(a19203data[10]* a19203data[32]))∧(i7628[10] + 1* i7628[32]))


(11) -> (3), if ((i8902[11]* i7628[3])∧(i7630[11] + -1* 0)∧((i2[11]* i2[3])∧(a19203data[11]* a19203data[3]))∧(i58[11]* i58[3]))


(11) -> (8), if ((i8902[11]* i7628[8])∧((i2[11]* i2[8])∧(a19203data[11]* a19203data[8]))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧((i2[11]* i2[12])∧(a19203data[11]* a19203data[12])))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧((i2[11]* i2[15])∧(a19203data[11]* a19203data[15]))∧(i58[11]* i58[15]))


(11) -> (19), if ((i8902[11]* i7628[19])∧((i2[11]* i2[19])∧(a19203data[11]* a19203data[19]))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧((i2[11]* i2[23])∧(a19203data[11]* a19203data[23]))∧(i7630[11] + -1* i7630[23]))


(11) -> (26), if ((i58[11]* i58[26])∧((i2[11]* i2[26])∧(a19203data[11]* a19203data[26]))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧((i2[11]* i2[29])∧(a19203data[11]* a19203data[29])))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧((i2[11]* i2[32])∧(a19203data[11]* a19203data[32]))∧(i7630[11] + -1* i7630[32]))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧((i2[12]* i2[13])∧(a19203data[12]* a19203data[13])))


(13) -> (14), if ((i7628[13]* i7628[14])∧((i2[13]* i2[14])∧(a19203data[13]* a19203data[14]))∧(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0* TRUE)∧(i7630[13]* i7630[14])∧(i58[13]* i58[14]))


(14) -> (3), if (((i2[14]* i2[3])∧(a19203data[14]* a19203data[3]))∧(i7628[14] + 1 + 1* i7628[3])∧(i7630[14] + -1* 0)∧(i58[14]* i58[3]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧((i2[14]* i2[8])∧(a19203data[14]* a19203data[8]))∧(i58[14]* i58[8]))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧((i2[14]* i2[12])∧(a19203data[14]* a19203data[12]))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧((i2[14]* i2[15])∧(a19203data[14]* a19203data[15]))∧(i7630[14] + -1* i7630[15]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧((i2[14]* i2[19])∧(a19203data[14]* a19203data[19]))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(14) -> (23), if (((i2[14]* i2[23])∧(a19203data[14]* a19203data[23]))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧((i2[14]* i2[26])∧(a19203data[14]* a19203data[26]))∧(i7630[14] + -1* i7630[26]))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧((i2[14]* i2[29])∧(a19203data[14]* a19203data[29]))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(14) -> (32), if (((i2[14]* i2[32])∧(a19203data[14]* a19203data[32]))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧((i2[15]* i2[16])∧(a19203data[15]* a19203data[16]))∧(i7630[15]* i7630[16]))


(16) -> (17), if (((i2[16]* i2[17])∧(a19203data[16]* a19203data[17]))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧((i2[17]* i2[7])∧(a19203data[17]* a19203data[7])))


(18) -> (7), if ((i7710[18]* i7710[7])∧((i2[18]* i2[7])∧(a19203data[18]* a19203data[7]))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(19) -> (20), if ((i58[19]* i58[20])∧((i2[19]* i2[20])∧(a19203data[19]* a19203data[20]))∧(i7630[19]* i7630[20])∧((i7996[19]* i7996[20])∧(i7860[19]* i7860[20])∧(i7862[19]* i7862[20])∧(a19737[19]* a19737[20]))∧(i7628[19]* i7628[20]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧((i2[20]* i2[21])∧(a19203data[20]* a19203data[21]))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧((i7996[20]* i7996[21])∧(i7860[20]* i7860[21])∧(i7862[20]* i7862[21])∧(a19737[20]* a19737[21])))


(21) -> (7), if (((i2[21]* i2[7])∧(a19203data[21]* a19203data[7]))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(22) -> (11), if ((i58[22]* i58[11])∧((i2[22]* i2[11])∧(a19203data[22]* a19203data[11]))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(23) -> (24), if ((i7630[23]* i7630[24])∧((i2[23]* i2[24])∧(a19203data[23]* a19203data[24]))∧(i58[23]* i58[24])∧((i7996[23]* i7996[24])∧(i7860[23]* i7860[24])∧(i7862[23]* i7862[24])∧(a19737[23]* a19737[24]))∧(i7628[23]* i7628[24]))


(24) -> (25), if ((i58[24]* i58[25])∧((i7996[24]* i7996[25])∧(i7860[24]* i7860[25])∧(i7862[24]* i7862[25])∧(a19737[24]* a19737[25]))∧((i2[24]* i2[25])∧(a19203data[24]* a19203data[25]))∧(i7628[24]* i7628[25])∧(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0* TRUE)∧(i7630[24]* i7630[25]))


(25) -> (11), if ((i7630[25]* i7630[11])∧((i2[25]* i2[11])∧(a19203data[25]* a19203data[11]))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(26) -> (27), if (((i2[26]* i2[27])∧(a19203data[26]* a19203data[27]))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(27) -> (28), if ((i7628[27]* i7628[28])∧(i7630[27]* i7630[28])∧(i58[27]* i58[28])∧((i2[27]* i2[28])∧(a19203data[27]* a19203data[28]))∧(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0* TRUE))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧((i2[28]* i2[11])∧(a19203data[28]* a19203data[11]))∧(i7630[28]* i7630[11]))


(29) -> (30), if (((i2[29]* i2[30])∧(a19203data[29]* a19203data[30]))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧((i7996[29]* i7996[30])∧(i7860[29]* i7860[30])∧(i7862[29]* i7862[30])∧(a19737[29]* a19737[30])))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧((i2[30]* i2[31])∧(a19203data[30]* a19203data[31]))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧((i7996[30]* i7996[31])∧(i7860[30]* i7860[31])∧(i7862[30]* i7862[31])∧(a19737[30]* a19737[31]))∧(i7630[30]* i7630[31]))


(31) -> (18), if ((i58[31]* i58[18])∧((i2[31]* i2[18])∧(a19203data[31]* a19203data[18]))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(32) -> (33), if (((i7996[32]* i7996[33])∧(i7860[32]* i7860[33])∧(i7862[32]* i7862[33])∧(a19737[32]* a19737[33]))∧(i58[32]* i58[33])∧((i2[32]* i2[33])∧(a19203data[32]* a19203data[33]))∧(i7628[32]* i7628[33])∧(i7630[32]* i7630[33]))


(33) -> (34), if ((i7628[33]* i7628[34])∧((i2[33]* i2[34])∧(a19203data[33]* a19203data[34]))∧(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0* TRUE)∧((i7996[33]* i7996[34])∧(i7860[33]* i7860[34])∧(i7862[33]* i7862[34])∧(a19737[33]* a19737[34]))∧(i58[33]* i58[34])∧(i7630[33]* i7630[34]))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧((i2[34]* i2[22])∧(a19203data[34]* a19203data[22])))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(27) IDPNonInfProof (SOUND transformation)

The constraints were generated the following way:
The DP Problem is simplified using the Induction Calculus [NONINF] with the following steps:
Note that final constraints are written in bold face.


For Pair LOAD715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) the following chains were created:
  • We consider the chain LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]), LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) which results in the following constraint:

    (1)    (i58[0]=i58[1]i56[0]=i56[1]i2[0]=i2[1]a694data[0]=a694data[1]LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])≥NonInfC∧LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])≥LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])∧(UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥))



    We simplified constraint (1) using rule (IV) which results in the following new constraint:

    (2)    (LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])≥NonInfC∧LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])≥LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])∧(UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥))



    We simplified constraint (2) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (3)    ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧[(-1)bso_51] ≥ 0)



    We simplified constraint (3) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (4)    ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧[(-1)bso_51] ≥ 0)



    We simplified constraint (4) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (5)    ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧[(-1)bso_51] ≥ 0)



    We simplified constraint (5) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (6)    ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_51] ≥ 0)







For Pair LOAD715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → COND_LOAD715ARR1(&&(&&(&&(>(i56, 0), <(i56, i2)), >(i58, 0)), >(+(i56, 1), 0)), java.lang.Object(ARRAY(i2, a694data)), i56, i58) the following chains were created:
  • We consider the chain LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]), COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1)) which results in the following constraint:

    (7)    (&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0))=TRUEi2[1]=i2[2]a694data[1]=a694data[2]i58[1]=i58[2]i56[1]=i56[2]LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])≥NonInfC∧LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])≥COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])∧(UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥))



    We simplified constraint (7) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (8)    (>(+(i56[1], 1), 0)=TRUE>(i58[1], 0)=TRUE>(i56[1], 0)=TRUE<(i56[1], i2[1])=TRUELOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])≥NonInfC∧LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])≥COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])∧(UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥))



    We simplified constraint (8) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (9)    (i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (9) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (10)    (i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (10) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (11)    (i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (11) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (12)    (i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (12) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (13)    ([1] + i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] ≥ 0∧i2[1] + [-2] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52 + (-1)bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (13) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (14)    ([1] + i56[1] ≥ 0∧i58[1] ≥ 0∧i56[1] ≥ 0∧i2[1] + [-2] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (14) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (15)    ([1] + i56[1] ≥ 0∧i58[1] ≥ 0∧i56[1] ≥ 0∧i2[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52 + (2)bni_52] + [bni_52]i58[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)







For Pair COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715(java.lang.Object(ARRAY(i2, a694data)), +(i56, 1), +(i58, -1)) the following chains were created:
  • We consider the chain COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1)) which results in the following constraint:

    (16)    (COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2])≥NonInfC∧COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2])≥LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))∧(UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥))



    We simplified constraint (16) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (17)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧[2 + (-1)bso_55] ≥ 0)



    We simplified constraint (17) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (18)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧[2 + (-1)bso_55] ≥ 0)



    We simplified constraint (18) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (19)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧[2 + (-1)bso_55] ≥ 0)



    We simplified constraint (19) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (20)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_55] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → LOAD715(java.lang.Object(ARRAY(i2, a19203data)), i7628, +(i58, -1)) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1)) which results in the following constraint:

    (21)    (LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0)≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0)≥LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))∧(UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥))



    We simplified constraint (21) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (22)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧[1 + (-1)bso_57] ≥ 0)



    We simplified constraint (22) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (23)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧[1 + (-1)bso_57] ≥ 0)



    We simplified constraint (23) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (24)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧[1 + (-1)bso_57] ≥ 0)



    We simplified constraint (24) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (25)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_57] ≥ 0)







For Pair LOAD715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) the following chains were created:
  • We consider the chain LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4]))) which results in the following constraint:

    (26)    (LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4])≥NonInfC∧LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4])≥LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))∧(UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥))



    We simplified constraint (26) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (27)    ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧[1 + (-1)bso_59] ≥ 0)



    We simplified constraint (27) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (28)    ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧[1 + (-1)bso_59] ≥ 0)



    We simplified constraint (28) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (29)    ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧[1 + (-1)bso_59] ≥ 0)



    We simplified constraint (29) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (30)    ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_59] ≥ 0)







For Pair LOAD715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56, 1), 0), <(+(i56, 1), i2)), >(i109, 0)), >(i56, 0)), <(i56, i2)), >(i58, 0)), >(+(+(i56, 1), 1), 0)), java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) the following chains were created:
  • We consider the chain LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))), COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6]) which results in the following constraint:

    (31)    (&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0))=TRUEi58[5]=i58[6]i109[5]=i109[6]i86[5]=i86[6]i88[5]=i88[6]a823[5]=a823[6]i56[5]=i56[6]i2[5]=i2[6]a694data[5]=a694data[6]LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))≥NonInfC∧LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))≥COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))∧(UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥))



    We simplified constraint (31) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (32)    (>(+(+(i56[5], 1), 1), 0)=TRUE>(i58[5], 0)=TRUE<(i56[5], i2[5])=TRUE>(i56[5], 0)=TRUE>(i109[5], 0)=TRUE>(+(i56[5], 1), 0)=TRUE<(+(i56[5], 1), i2[5])=TRUELOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))≥NonInfC∧LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))≥COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))∧(UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥))



    We simplified constraint (32) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (33)    (i56[5] + [1] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i56[5] ≥ 0∧i56[5] + [-1] ≥ 0∧i109[5] + [-1] ≥ 0∧i56[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧[(-1)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (33) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (34)    (i56[5] + [1] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i56[5] ≥ 0∧i56[5] + [-1] ≥ 0∧i109[5] + [-1] ≥ 0∧i56[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧[(-1)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (34) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (35)    (i56[5] + [1] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i56[5] ≥ 0∧i56[5] + [-1] ≥ 0∧i109[5] + [-1] ≥ 0∧i56[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧[(-1)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (35) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (36)    (i56[5] + [1] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i56[5] ≥ 0∧i56[5] + [-1] ≥ 0∧i109[5] + [-1] ≥ 0∧i56[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (36) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (37)    ([2] + i56[5] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0∧i56[5] ≥ 0∧i109[5] + [-1] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] + [-3] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-2)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (37) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (38)    ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0∧i56[5] ≥ 0∧i109[5] + [-1] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] + [-3] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + (-1)bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (38) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (39)    ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧i2[5] ≥ 0∧i56[5] ≥ 0∧i109[5] + [-1] ≥ 0∧[1] + i56[5] ≥ 0∧[-1] + i2[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + bni_60] + [bni_60]i58[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (39) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (40)    ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧[1] + i2[5] ≥ 0∧i56[5] ≥ 0∧i109[5] + [-1] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + (2)bni_60] + [bni_60]i58[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (40) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (41)    ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧[1] + i2[5] ≥ 0∧i56[5] ≥ 0∧i109[5] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + (2)bni_60] + [bni_60]i58[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)







For Pair COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → LOAD13603(java.lang.Object(ARRAY(i2, a694data)), +(+(i56, 1), 1), i58, i109) the following chains were created:
  • We consider the chain COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6]) which results in the following constraint:

    (42)    (COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6])))≥NonInfC∧COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6])))≥LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥))



    We simplified constraint (42) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (43)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧[1 + (-1)bso_63] ≥ 0)



    We simplified constraint (43) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (44)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧[1 + (-1)bso_63] ≥ 0)



    We simplified constraint (44) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (45)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧[1 + (-1)bso_63] ≥ 0)



    We simplified constraint (45) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (46)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_63] ≥ 0)







For Pair INC15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, +(i7630, -1)) the following chains were created:
  • We consider the chain INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1)) which results in the following constraint:

    (47)    (INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7])≥NonInfC∧INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7])≥LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥))



    We simplified constraint (47) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (48)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_65] ≥ 0)



    We simplified constraint (48) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (49)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_65] ≥ 0)



    We simplified constraint (49) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (50)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_65] ≥ 0)



    We simplified constraint (50) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (51)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_65] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]), LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) which results in the following constraint:

    (52)    (i2[8]=i2[9]a19203data[8]=a19203data[9]i58[8]=i58[9]i7630[8]=i7630[9]i7628[8]=i7628[9]LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])∧(UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥))



    We simplified constraint (52) using rule (IV) which results in the following new constraint:

    (53)    (LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])∧(UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥))



    We simplified constraint (53) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (54)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[(-1)bso_67] ≥ 0)



    We simplified constraint (54) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (55)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[(-1)bso_67] ≥ 0)



    We simplified constraint (55) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (56)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[(-1)bso_67] ≥ 0)



    We simplified constraint (56) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (57)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_67] ≥ 0)







For Pair LOAD13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628, 0), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]), COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1)) which results in the following constraint:

    (58)    (i58[9]=i58[10]&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0))=TRUEi2[9]=i2[10]a19203data[9]=a19203data[10]i7628[9]=i7628[10]i7630[9]=i7630[10]LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥NonInfC∧LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])∧(UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥))



    We simplified constraint (58) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (59)    (>(+(i7628[9], 1), 0)=TRUE>(i7630[9], 0)=TRUE>(i7628[9], 0)=TRUE<(i7628[9], i2[9])=TRUELOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥NonInfC∧LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])∧(UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥))



    We simplified constraint (59) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (60)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)Bound*bni_68] + [bni_68]i58[9] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (60) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (61)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)Bound*bni_68] + [bni_68]i58[9] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (61) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (62)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)Bound*bni_68] + [bni_68]i58[9] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (62) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (63)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (63) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (64)    ([1] + i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] ≥ 0∧i2[9] + [-2] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68 + (-1)bni_68] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (64) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (65)    ([1] + i7628[9] ≥ 0∧i7630[9] ≥ 0∧i7628[9] ≥ 0∧i2[9] + [-2] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68 + (-1)bni_68] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (65) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (66)    ([1] + i7628[9] ≥ 0∧i7630[9] ≥ 0∧i7628[9] ≥ 0∧i2[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68 + bni_68] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)







For Pair COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, +(i7630, -1)) the following chains were created:
  • We consider the chain COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1)) which results in the following constraint:

    (67)    (COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10])≥NonInfC∧COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10])≥LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥))



    We simplified constraint (67) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (68)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[1 + (-1)bso_71] ≥ 0)



    We simplified constraint (68) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (69)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[1 + (-1)bso_71] ≥ 0)



    We simplified constraint (69) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (70)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[1 + (-1)bso_71] ≥ 0)



    We simplified constraint (70) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (71)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_71] ≥ 0)







For Pair INC18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, +(i7630, -1)) the following chains were created:
  • We consider the chain INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1)) which results in the following constraint:

    (72)    (INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11])≥NonInfC∧INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11])≥LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥))



    We simplified constraint (72) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (73)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_73] ≥ 0)



    We simplified constraint (73) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (74)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_73] ≥ 0)



    We simplified constraint (74) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (75)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_73] ≥ 0)



    We simplified constraint (75) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (76)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_73] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]), LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) which results in the following constraint:

    (77)    (i7630[12]=i7630[13]i58[12]=i58[13]i7628[12]=i7628[13]i2[12]=i2[13]a19203data[12]=a19203data[13]LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])∧(UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥))



    We simplified constraint (77) using rule (IV) which results in the following new constraint:

    (78)    (LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])∧(UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥))



    We simplified constraint (78) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (79)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[(-1)bso_75] ≥ 0)



    We simplified constraint (79) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (80)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[(-1)bso_75] ≥ 0)



    We simplified constraint (80) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (81)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[(-1)bso_75] ≥ 0)



    We simplified constraint (81) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (82)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_75] ≥ 0)







For Pair LOAD13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]), COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1)) which results in the following constraint:

    (83)    (i7628[13]=i7628[14]i2[13]=i2[14]a19203data[13]=a19203data[14]&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0))=TRUEi7630[13]=i7630[14]i58[13]=i58[14]LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥NonInfC∧LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])∧(UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥))



    We simplified constraint (83) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (84)    (>(+(+(i7628[13], 1), 1), 0)=TRUE>(i7630[13], 0)=TRUE<(i7628[13], i2[13])=TRUE>(i7628[13], 0)=TRUE>(+(i7628[13], 1), 0)=TRUE<(+(i7628[13], 1), i2[13])=TRUELOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥NonInfC∧LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])∧(UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥))



    We simplified constraint (84) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (85)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-1)Bound*bni_76] + [bni_76]i58[13] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (85) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (86)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-1)Bound*bni_76] + [bni_76]i58[13] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (86) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (87)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-1)Bound*bni_76] + [bni_76]i58[13] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (87) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (88)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (88) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (89)    ([2] + i7628[13] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] + [-3] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + (-1)bni_76] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (89) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (90)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] + [-3] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + (-1)bni_76] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (90) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (91)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧i2[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧[-1] + i2[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + bni_76] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (91) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (92)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧[1] + i2[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + (2)bni_76] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)







For Pair COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, +(i7630, -1)) the following chains were created:
  • We consider the chain COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1)) which results in the following constraint:

    (93)    (COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14])≥NonInfC∧COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14])≥LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥))



    We simplified constraint (93) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (94)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[2 + (-1)bso_79] ≥ 0)



    We simplified constraint (94) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (95)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[2 + (-1)bso_79] ≥ 0)



    We simplified constraint (95) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (96)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[2 + (-1)bso_79] ≥ 0)



    We simplified constraint (96) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (97)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_79] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]), LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) which results in the following constraint:

    (98)    (i58[15]=i58[16]i7628[15]=i7628[16]i2[15]=i2[16]a19203data[15]=a19203data[16]i7630[15]=i7630[16]LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])∧(UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥))



    We simplified constraint (98) using rule (IV) which results in the following new constraint:

    (99)    (LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])∧(UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥))



    We simplified constraint (99) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (100)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[(-1)bso_81] ≥ 0)



    We simplified constraint (100) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (101)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[(-1)bso_81] ≥ 0)



    We simplified constraint (101) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (102)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[(-1)bso_81] ≥ 0)



    We simplified constraint (102) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (103)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_81] ≥ 0)







For Pair LOAD13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628, 0), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]), COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17]) which results in the following constraint:

    (104)    (i2[16]=i2[17]a19203data[16]=a19203data[17]i7628[16]=i7628[17]i7630[16]=i7630[17]i58[16]=i58[17]&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0))=TRUELOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥NonInfC∧LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])∧(UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥))



    We simplified constraint (104) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (105)    (>(+(i7628[16], 1), 0)=TRUE>(i7630[16], 0)=TRUE>(i7628[16], 0)=TRUE<(i7628[16], i2[16])=TRUELOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥NonInfC∧LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])∧(UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥))



    We simplified constraint (105) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (106)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-1)Bound*bni_82] + [bni_82]i58[16] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (106) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (107)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-1)Bound*bni_82] + [bni_82]i58[16] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (107) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (108)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-1)Bound*bni_82] + [bni_82]i58[16] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (108) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (109)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (109) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (110)    ([1] + i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] ≥ 0∧i2[16] + [-2] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82 + (-1)bni_82] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (110) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (111)    ([1] + i7628[16] ≥ 0∧i7630[16] ≥ 0∧i7628[16] ≥ 0∧i2[16] + [-2] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82 + (-1)bni_82] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (111) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (112)    ([1] + i7628[16] ≥ 0∧i7630[16] ≥ 0∧i7628[16] ≥ 0∧i2[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82 + bni_82] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)







For Pair COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, i7630) the following chains were created:
  • We consider the chain COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17]) which results in the following constraint:

    (113)    (COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17])≥NonInfC∧COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17])≥INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥))



    We simplified constraint (113) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (114)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[1 + (-1)bso_85] ≥ 0)



    We simplified constraint (114) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (115)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[1 + (-1)bso_85] ≥ 0)



    We simplified constraint (115) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (116)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[1 + (-1)bso_85] ≥ 0)



    We simplified constraint (116) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (117)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_85] ≥ 0)







For Pair JMP15126'(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) the following chains were created:
  • We consider the chain JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]), INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1)) which results in the following constraint:

    (118)    (i7710[18]=i7710[7]i2[18]=i2[7]a19203data[18]=a19203data[7]i58[18]=i58[7]i7630[18]=i7630[7]JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥NonInfC∧JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥))



    We simplified constraint (118) using rule (IV) which results in the following new constraint:

    (119)    (JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥NonInfC∧JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥))



    We simplified constraint (119) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (120)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[(-1)bso_87] ≥ 0)



    We simplified constraint (120) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (121)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[(-1)bso_87] ≥ 0)



    We simplified constraint (121) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (122)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[(-1)bso_87] ≥ 0)



    We simplified constraint (122) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (123)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_87] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19]))) which results in the following constraint:

    (124)    (LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19])≥LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))∧(UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥))



    We simplified constraint (124) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (125)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_89] ≥ 0)



    We simplified constraint (125) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (126)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_89] ≥ 0)



    We simplified constraint (126) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (127)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_89] ≥ 0)



    We simplified constraint (127) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (128)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_89] ≥ 0)







For Pair LOAD13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996, 0), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))), COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21]) which results in the following constraint:

    (129)    (i7630[20]=i7630[21]i7628[20]=i7628[21]i2[20]=i2[21]a19203data[20]=a19203data[21]i58[20]=i58[21]&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0))=TRUEi7996[20]=i7996[21]i7860[20]=i7860[21]i7862[20]=i7862[21]a19737[20]=a19737[21]LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥NonInfC∧LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥))



    We simplified constraint (129) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (130)    (>(+(i7628[20], 1), 0)=TRUE>(i7630[20], 0)=TRUE<(i7628[20], i2[20])=TRUE>(i7996[20], 0)=TRUE>(i7628[20], 0)=TRUELOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥NonInfC∧LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥))



    We simplified constraint (130) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (131)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_90 + (-1)Bound*bni_90] + [bni_90]i58[20] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (131) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (132)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_90 + (-1)Bound*bni_90] + [bni_90]i58[20] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (132) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (133)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_90 + (-1)Bound*bni_90] + [bni_90]i58[20] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (133) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (134)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-1)bni_90 + (-1)Bound*bni_90] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (134) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (135)    ([1] + i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-2] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-2)bni_90 + (-1)Bound*bni_90] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (135) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (136)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] + [-2] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-2)bni_90 + (-1)Bound*bni_90] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (136) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (137)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-1)Bound*bni_90] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (137) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (138)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] ≥ 0∧i7996[20] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-1)Bound*bni_90] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)







For Pair COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, i7630) the following chains were created:
  • We consider the chain COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21]) which results in the following constraint:

    (139)    (COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21])))≥NonInfC∧COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21])))≥INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥))



    We simplified constraint (139) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (140)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_93] ≥ 0)



    We simplified constraint (140) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (141)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_93] ≥ 0)



    We simplified constraint (141) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (142)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_93] ≥ 0)



    We simplified constraint (142) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (143)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_93] ≥ 0)







For Pair JMP18886'(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → INC18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) the following chains were created:
  • We consider the chain JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]), INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1)) which results in the following constraint:

    (144)    (i58[22]=i58[11]i2[22]=i2[11]a19203data[22]=a19203data[11]i8946[22]=i8902[11]i7630[22]=i7630[11]JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥NonInfC∧JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥))



    We simplified constraint (144) using rule (IV) which results in the following new constraint:

    (145)    (JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥NonInfC∧JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥))



    We simplified constraint (145) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (146)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_95] ≥ 0)



    We simplified constraint (146) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (147)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_95] ≥ 0)



    We simplified constraint (147) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (148)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_95] ≥ 0)



    We simplified constraint (148) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (149)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_95] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23]))) which results in the following constraint:

    (150)    (LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23])≥LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))∧(UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥))



    We simplified constraint (150) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (151)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[1 + (-1)bso_97] ≥ 0)



    We simplified constraint (151) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (152)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[1 + (-1)bso_97] ≥ 0)



    We simplified constraint (152) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (153)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[1 + (-1)bso_97] ≥ 0)



    We simplified constraint (153) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (154)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_97] ≥ 0)







For Pair LOAD13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.