(0) Obligation:

JBC Problem based on JBC Program:
Manifest-Version: 1.0 Created-By: 1.6.0_14 (Sun Microsystems Inc.) Main-Class: Flatten
public class Flatten {
public static IntList flatten(TreeList list) {
TreeList cur = list;
IntList result = null;
while (cur != null) {
Tree tree = cur.value;
if (tree != null) {
IntList oldIntList = result;
result = new IntList();
result.value = tree.value;
result.next = oldIntList;
TreeList oldCur = cur;
cur = new TreeList();
cur.value = tree.left;
cur.next = oldCur;
oldCur.value = tree.right;
} else cur = cur.next;
}
if (cur != list) {}
return result;
}
public static void main(String[] args) {
Random.args = args;
int listLength = Random.random();
TreeList list = null;
for (int i = listLength; i > 0; i--) {
Tree tree = Tree.createTree();
list = new TreeList(tree, list);
}

flatten(list);
}

}


public class IntList {
int value;
IntList next;

public IntList(int value, IntList next) {
this.value = value;
this.next = next;
}

public IntList() {
}

public static IntList createList() {
IntList result = null;
int length = Random.random();
while (length > 0) {
result = new IntList(Random.random(), result);
length--;
}
return result;
}
}


public class Random {
static String[] args;
static int index = 0;

public static int random() {
String string = args[index];
index++;
return string.length();
}
}


public class Tree {
Tree left;
Tree right;
int value;

public Tree(Tree l, Tree r) {
this.left = l;
this.right = r;
}

public Tree() {
}

public static Tree createNode() {
Tree result = new Tree();
result.value = Random.random();
return result;
}

public static Tree createTree() {
int counter = Random.random();
if (counter == 0) {
return null;
}
Tree result = createNode();
Tree t = result;

while (counter > 0) {
int branch = Random.random();
if (branch > 0) {
if (t.left == null) {
t.left = createNode();
t = result;
} else {
t = t.left;
}
} else {
if (t.right == null) {
t.right = createNode();
t = result;
} else {
t = t.right;
}
}
counter--;
}

return result;
}
public static void main(String[] args) {
Random.args = args;
createTree();
}
}


public class TreeList {
Tree value;
TreeList next;

public TreeList(Tree value, TreeList next) {
this.value = value;
this.next = next;
}

public TreeList() {
}
}


(1) JBC2FIG (SOUND transformation)

Constructed FIGraph.

(2) Obligation:

FIGraph based on JBC Program:
Graph of 882 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:
Load10574(o18579, o18579, java.lang.Object(TreeList(java.lang.Object(Tree(i3261, o22248, o22249)), o19096))) → JMP11347(o18579new, o18579new, java.lang.Object(TreeList(o22248, java.lang.Object(TreeList(o22249, o19096)))))
Load10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117)), java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117)), java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117))) → JMP11347(java.lang.Object(TreeList(o22265, o19117)), java.lang.Object(TreeList(o22265, o19117)), java.lang.Object(TreeList(o22264, java.lang.Object(TreeList(o22265, o19117)))))
Load10574(java.lang.Object(TreeList(NULL, o19117)), java.lang.Object(TreeList(NULL, o19117)), java.lang.Object(TreeList(NULL, o19117))) → JMP11347(java.lang.Object(TreeList(NULL, o19117)), java.lang.Object(TreeList(NULL, o19117)), o19117)
JMP11347(o18579, o18579, o19096) → Load10574(o18579, o18579, o19096)
Load10574(o18579, o18579, java.lang.Object(TreeList(NULL, o19096))) → Load10574(o18579, o18579, o19096)
The set Q consists of the following terms:
Load10574(x0, x0, java.lang.Object(TreeList(java.lang.Object(Tree(x1, x2, x3)), x4)))
JMP11347(x0, x0, x1)
Load10574(x0, x0, java.lang.Object(TreeList(NULL, x1)))

(6) DuplicateArgsRemoverProof (EQUIVALENT transformation)

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

Load10574(x1, x2, x3) → Load10574(x2, x3)
JMP11347(x1, x2, x3) → JMP11347(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:
Load10574(o18579, java.lang.Object(TreeList(java.lang.Object(Tree(i3261, o22248, o22249)), o19096))) → JMP11347(o18579new, java.lang.Object(TreeList(o22248, java.lang.Object(TreeList(o22249, o19096)))))
Load10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117)), java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117))) → JMP11347(java.lang.Object(TreeList(o22265, o19117)), java.lang.Object(TreeList(o22264, java.lang.Object(TreeList(o22265, o19117)))))
Load10574(java.lang.Object(TreeList(NULL, o19117)), java.lang.Object(TreeList(NULL, o19117))) → JMP11347(java.lang.Object(TreeList(NULL, o19117)), o19117)
JMP11347(o18579, o19096) → Load10574(o18579, o19096)
Load10574(o18579, java.lang.Object(TreeList(NULL, o19096))) → Load10574(o18579, o19096)
The set Q consists of the following terms:
Load10574(x0, java.lang.Object(TreeList(java.lang.Object(Tree(x1, x2, x3)), x4)))
JMP11347(x0, x1)
Load10574(x0, java.lang.Object(TreeList(NULL, x1)))

(8) ITRStoIDPProof (EQUIVALENT transformation)

Added dependency pairs

(9) 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:
none


The ITRS R consists of the following rules:
Load10574(o18579, java.lang.Object(TreeList(java.lang.Object(Tree(i3261, o22248, o22249)), o19096))) → JMP11347(o18579new, java.lang.Object(TreeList(o22248, java.lang.Object(TreeList(o22249, o19096)))))
Load10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117)), java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117))) → JMP11347(java.lang.Object(TreeList(o22265, o19117)), java.lang.Object(TreeList(o22264, java.lang.Object(TreeList(o22265, o19117)))))
Load10574(java.lang.Object(TreeList(NULL, o19117)), java.lang.Object(TreeList(NULL, o19117))) → JMP11347(java.lang.Object(TreeList(NULL, o19117)), o19117)
JMP11347(o18579, o19096) → Load10574(o18579, o19096)
Load10574(o18579, java.lang.Object(TreeList(NULL, o19096))) → Load10574(o18579, o19096)

The integer pair graph contains the following rules and edges:
(0): LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))
(1): LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))
(2): LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2]))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])
(3): JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3])
(4): LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4])

(0) -> (3), if ((o18579new[0]* o18579[3])∧(java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))) →* o19096[3]))


(1) -> (3), if ((java.lang.Object(TreeList(o22265[1], o19117[1])) →* o18579[3])∧(java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))) →* o19096[3]))


(2) -> (3), if ((o19117[2]* o19096[3])∧(java.lang.Object(TreeList(NULL, o19117[2])) →* o18579[3]))


(3) -> (0), if ((o18579[3]* o18579[0])∧(o19096[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))))


(3) -> (1), if ((o19096[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))∧(o18579[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))))


(3) -> (2), if ((o18579[3]* java.lang.Object(TreeList(NULL, o19117[2])))∧(o19096[3]* java.lang.Object(TreeList(NULL, o19117[2]))))


(3) -> (4), if ((o19096[3]* java.lang.Object(TreeList(NULL, o19096[4])))∧(o18579[3]* o18579[4]))


(4) -> (0), if ((o18579[4]* o18579[0])∧(o19096[4]* java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))))


(4) -> (1), if ((o19096[4]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))∧(o18579[4]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))))


(4) -> (2), if ((o18579[4]* java.lang.Object(TreeList(NULL, o19117[2])))∧(o19096[4]* java.lang.Object(TreeList(NULL, o19117[2]))))


(4) -> (4), if ((o18579[4]* o18579[4]')∧(o19096[4]* java.lang.Object(TreeList(NULL, o19096[4]'))))



The set Q consists of the following terms:
Load10574(x0, java.lang.Object(TreeList(java.lang.Object(Tree(x1, x2, x3)), x4)))
JMP11347(x0, x1)
Load10574(x0, java.lang.Object(TreeList(NULL, x1)))

(10) 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.

(11) 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:
none


R is empty.

The integer pair graph contains the following rules and edges:
(0): LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))
(1): LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))
(2): LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2]))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])
(3): JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3])
(4): LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4])

(0) -> (3), if ((o18579new[0]* o18579[3])∧(java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))) →* o19096[3]))


(1) -> (3), if ((java.lang.Object(TreeList(o22265[1], o19117[1])) →* o18579[3])∧(java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))) →* o19096[3]))


(2) -> (3), if ((o19117[2]* o19096[3])∧(java.lang.Object(TreeList(NULL, o19117[2])) →* o18579[3]))


(3) -> (0), if ((o18579[3]* o18579[0])∧(o19096[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))))


(3) -> (1), if ((o19096[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))∧(o18579[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))))


(3) -> (2), if ((o18579[3]* java.lang.Object(TreeList(NULL, o19117[2])))∧(o19096[3]* java.lang.Object(TreeList(NULL, o19117[2]))))


(3) -> (4), if ((o19096[3]* java.lang.Object(TreeList(NULL, o19096[4])))∧(o18579[3]* o18579[4]))


(4) -> (0), if ((o18579[4]* o18579[0])∧(o19096[4]* java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))))


(4) -> (1), if ((o19096[4]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))∧(o18579[4]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))))


(4) -> (2), if ((o18579[4]* java.lang.Object(TreeList(NULL, o19117[2])))∧(o19096[4]* java.lang.Object(TreeList(NULL, o19117[2]))))


(4) -> (4), if ((o18579[4]* o18579[4]')∧(o19096[4]* java.lang.Object(TreeList(NULL, o19096[4]'))))



The set Q consists of the following terms:
Load10574(x0, java.lang.Object(TreeList(java.lang.Object(Tree(x1, x2, x3)), x4)))
JMP11347(x0, x1)
Load10574(x0, java.lang.Object(TreeList(NULL, x1)))

(12) 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 LOAD10574(o18579, java.lang.Object(TreeList(java.lang.Object(Tree(i3261, o22248, o22249)), o19096))) → JMP11347'(o18579new, java.lang.Object(TreeList(o22248, java.lang.Object(TreeList(o22249, o19096))))) the following chains were created:
  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))), JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) which results in the following constraint:

    (1)    (o18579[3]=o18579[0]o19096[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))∧o18579new[0]=o18579[3]1java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))=o19096[3]1LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))≥JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))∧(UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥))



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

    (2)    (LOAD10574(o18579[3], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))≥JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))∧(UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥))



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

    (3)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[(-1)bso_17] + o22248[0] ≥ 0)



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

    (4)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[(-1)bso_17] + o22248[0] ≥ 0)



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

    (5)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[(-1)bso_17] + o22248[0] ≥ 0)



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

    (6)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_17] ≥ 0)



  • We consider the chain LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4]), LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))), JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) which results in the following constraint:

    (7)    (o18579[4]=o18579[0]o19096[4]=java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))∧o18579new[0]=o18579[3]java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))=o19096[3]LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))≥JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))∧(UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥))



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

    (8)    (LOAD10574(o18579[4], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))≥JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))∧(UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥))



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

    (9)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[(-1)bso_17] + o22248[0] ≥ 0)



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

    (10)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[(-1)bso_17] + o22248[0] ≥ 0)



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

    (11)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[(-1)bso_17] + o22248[0] ≥ 0)



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

    (12)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_17] ≥ 0)







For Pair LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117)), java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117))) → JMP11347'(java.lang.Object(TreeList(o22265, o19117)), java.lang.Object(TreeList(o22264, java.lang.Object(TreeList(o22265, o19117))))) the following chains were created:
  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))), JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) which results in the following constraint:

    (13)    (o19096[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))∧o18579[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))∧java.lang.Object(TreeList(o22265[1], o19117[1]))=o18579[3]1java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))=o19096[3]1LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))≥JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥))



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

    (14)    (LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))≥JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥))



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

    (15)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[(-1)bso_18] + o22264[1] ≥ 0)



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

    (16)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[(-1)bso_18] + o22264[1] ≥ 0)



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

    (17)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[(-1)bso_18] + o22264[1] ≥ 0)



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

    (18)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0∧[(-1)bso_18] ≥ 0)



  • We consider the chain LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4]), LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))), JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) which results in the following constraint:

    (19)    (o19096[4]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))∧o18579[4]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))∧java.lang.Object(TreeList(o22265[1], o19117[1]))=o18579[3]java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))=o19096[3]LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))≥JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥))



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

    (20)    (LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))≥JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥))



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

    (21)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[(-1)bso_18] + o22264[1] ≥ 0)



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

    (22)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[(-1)bso_18] + o22264[1] ≥ 0)



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

    (23)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[(-1)bso_18] + o22264[1] ≥ 0)



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

    (24)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0∧[(-1)bso_18] ≥ 0)







For Pair LOAD10574(java.lang.Object(TreeList(NULL, o19117)), java.lang.Object(TreeList(NULL, o19117))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117)), o19117) the following chains were created:
  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2]))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2]), JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) which results in the following constraint:

    (25)    (o18579[3]=java.lang.Object(TreeList(NULL, o19117[2]))∧o19096[3]=java.lang.Object(TreeList(NULL, o19117[2]))∧o19117[2]=o19096[3]1java.lang.Object(TreeList(NULL, o19117[2]))=o18579[3]1LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2])))≥JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥))



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

    (26)    (LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2])))≥JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥))



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

    (27)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧[2 + (-1)bso_19] ≥ 0)



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

    (28)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧[2 + (-1)bso_19] ≥ 0)



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

    (29)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧[2 + (-1)bso_19] ≥ 0)



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

    (30)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧0 ≥ 0∧[2 + (-1)bso_19] ≥ 0)



  • We consider the chain LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4]), LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2]))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2]), JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) which results in the following constraint:

    (31)    (o18579[4]=java.lang.Object(TreeList(NULL, o19117[2]))∧o19096[4]=java.lang.Object(TreeList(NULL, o19117[2]))∧o19117[2]=o19096[3]java.lang.Object(TreeList(NULL, o19117[2]))=o18579[3]LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2])))≥JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥))



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

    (32)    (LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2])))≥JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥))



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

    (33)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧[2 + (-1)bso_19] ≥ 0)



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

    (34)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧[2 + (-1)bso_19] ≥ 0)



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

    (35)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧[2 + (-1)bso_19] ≥ 0)



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

    (36)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧0 ≥ 0∧[2 + (-1)bso_19] ≥ 0)







For Pair JMP11347'(o18579, o19096) → LOAD10574(o18579, o19096) the following chains were created:
  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))) which results in the following constraint:

    (37)    (o18579[3]=o18579[0]o19096[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])) ⇒ JMP11347'(o18579[3], o19096[3])≥LOAD10574(o18579[3], o19096[3])∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (38)    (JMP11347'(o18579[3], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))≥LOAD10574(o18579[3], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (39)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (40)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (41)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (42)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_20] ≥ 0)



  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))) which results in the following constraint:

    (43)    (o19096[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))∧o18579[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])) ⇒ JMP11347'(o18579[3], o19096[3])≥LOAD10574(o18579[3], o19096[3])∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (44)    (JMP11347'(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))≥LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (45)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (46)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (47)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (48)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_20] ≥ 0)



  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2]))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2]) which results in the following constraint:

    (49)    (o18579[3]=java.lang.Object(TreeList(NULL, o19117[2]))∧o19096[3]=java.lang.Object(TreeList(NULL, o19117[2])) ⇒ JMP11347'(o18579[3], o19096[3])≥LOAD10574(o18579[3], o19096[3])∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (50)    (JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2])))≥LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2])))∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (51)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (52)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (53)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (54)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧[(-1)bso_20] ≥ 0)



  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4]) which results in the following constraint:

    (55)    (o19096[3]=java.lang.Object(TreeList(NULL, o19096[4]))∧o18579[3]=o18579[4]JMP11347'(o18579[3], o19096[3])≥LOAD10574(o18579[3], o19096[3])∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (56)    (JMP11347'(o18579[3], java.lang.Object(TreeList(NULL, o19096[4])))≥LOAD10574(o18579[3], java.lang.Object(TreeList(NULL, o19096[4])))∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (57)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (58)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (59)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[(-1)bso_20] ≥ 0)



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

    (60)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_20] ≥ 0)







For Pair LOAD10574(o18579, java.lang.Object(TreeList(NULL, o19096))) → LOAD10574(o18579, o19096) the following chains were created:
  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4]) which results in the following constraint:

    (61)    (o19096[3]=java.lang.Object(TreeList(NULL, o19096[4]))∧o18579[3]=o18579[4]LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4])))≥LOAD10574(o18579[4], o19096[4])∧(UIncreasing(LOAD10574(o18579[4], o19096[4])), ≥))



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

    (62)    (LOAD10574(o18579[3], java.lang.Object(TreeList(NULL, o19096[4])))≥LOAD10574(o18579[3], o19096[4])∧(UIncreasing(LOAD10574(o18579[4], o19096[4])), ≥))



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

    (63)    ((UIncreasing(LOAD10574(o18579[4], o19096[4])), ≥)∧[2 + (-1)bso_21] ≥ 0)



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

    (64)    ((UIncreasing(LOAD10574(o18579[4], o19096[4])), ≥)∧[2 + (-1)bso_21] ≥ 0)



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

    (65)    ((UIncreasing(LOAD10574(o18579[4], o19096[4])), ≥)∧[2 + (-1)bso_21] ≥ 0)



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

    (66)    ((UIncreasing(LOAD10574(o18579[4], o19096[4])), ≥)∧0 ≥ 0∧0 ≥ 0∧[2 + (-1)bso_21] ≥ 0)



  • We consider the chain LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4]), LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4]) which results in the following constraint:

    (67)    (o18579[4]=o18579[4]1o19096[4]=java.lang.Object(TreeList(NULL, o19096[4]1)) ⇒ LOAD10574(o18579[4]1, java.lang.Object(TreeList(NULL, o19096[4]1)))≥LOAD10574(o18579[4]1, o19096[4]1)∧(UIncreasing(LOAD10574(o18579[4]1, o19096[4]1)), ≥))



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

    (68)    (LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]1)))≥LOAD10574(o18579[4], o19096[4]1)∧(UIncreasing(LOAD10574(o18579[4]1, o19096[4]1)), ≥))



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

    (69)    ((UIncreasing(LOAD10574(o18579[4]1, o19096[4]1)), ≥)∧[2 + (-1)bso_21] ≥ 0)



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

    (70)    ((UIncreasing(LOAD10574(o18579[4]1, o19096[4]1)), ≥)∧[2 + (-1)bso_21] ≥ 0)



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

    (71)    ((UIncreasing(LOAD10574(o18579[4]1, o19096[4]1)), ≥)∧[2 + (-1)bso_21] ≥ 0)



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

    (72)    ((UIncreasing(LOAD10574(o18579[4]1, o19096[4]1)), ≥)∧0 ≥ 0∧0 ≥ 0∧[2 + (-1)bso_21] ≥ 0)







To summarize, we get the following constraints P for the following pairs.
  • LOAD10574(o18579, java.lang.Object(TreeList(java.lang.Object(Tree(i3261, o22248, o22249)), o19096))) → JMP11347'(o18579new, java.lang.Object(TreeList(o22248, java.lang.Object(TreeList(o22249, o19096)))))
    • ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_17] ≥ 0)
    • ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_17] ≥ 0)

  • LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117)), java.lang.Object(TreeList(java.lang.Object(Tree(i3262, o22264, o22265)), o19117))) → JMP11347'(java.lang.Object(TreeList(o22265, o19117)), java.lang.Object(TreeList(o22264, java.lang.Object(TreeList(o22265, o19117)))))
    • ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0∧[(-1)bso_18] ≥ 0)
    • ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0∧[(-1)bso_18] ≥ 0)

  • LOAD10574(java.lang.Object(TreeList(NULL, o19117)), java.lang.Object(TreeList(NULL, o19117))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117)), o19117)
    • ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧0 ≥ 0∧[2 + (-1)bso_19] ≥ 0)
    • ((UIncreasing(JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])), ≥)∧0 ≥ 0∧[2 + (-1)bso_19] ≥ 0)

  • JMP11347'(o18579, o19096) → LOAD10574(o18579, o19096)
    • ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_20] ≥ 0)
    • ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_20] ≥ 0)
    • ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧[(-1)bso_20] ≥ 0)
    • ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧[(-1)bso_20] ≥ 0)

  • LOAD10574(o18579, java.lang.Object(TreeList(NULL, o19096))) → LOAD10574(o18579, o19096)
    • ((UIncreasing(LOAD10574(o18579[4], o19096[4])), ≥)∧0 ≥ 0∧0 ≥ 0∧[2 + (-1)bso_21] ≥ 0)
    • ((UIncreasing(LOAD10574(o18579[4]1, o19096[4]1)), ≥)∧0 ≥ 0∧0 ≥ 0∧[2 + (-1)bso_21] ≥ 0)




The constraints for P> respective Pbound are constructed from P where we just replace every occurence of "t ≥ s" in P by "t > s" respective "t ≥ c". Here c stands for the fresh constant used for Pbound.
Using the following integer polynomial ordering the resulting constraints can be solved
Polynomial interpretation over integers with natural coefficients for all symbols [NONINF][POLO]:

POL(TRUE) = 0   
POL(FALSE) = 0   
POL(LOAD10574(x1, x2)) = x2   
POL(java.lang.Object(x1)) = x1   
POL(TreeList(x1, x2)) = x2 + x1   
POL(Tree(x1, x2, x3)) = x3 + [2]x2   
POL(JMP11347'(x1, x2)) = x2   
POL(NULL) = [2]   

The following pairs are in P>:

LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2]))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])
LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4])

The following pairs are in Pbound:

LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))
LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))
LOAD10574(java.lang.Object(TreeList(NULL, o19117[2])), java.lang.Object(TreeList(NULL, o19117[2]))) → JMP11347'(java.lang.Object(TreeList(NULL, o19117[2])), o19117[2])
JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3])
LOAD10574(o18579[4], java.lang.Object(TreeList(NULL, o19096[4]))) → LOAD10574(o18579[4], o19096[4])

The following pairs are in P:

LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))
LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))
JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3])

There are no usable rules.

(13) Complex Obligation (AND)

(14) 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:
none


R is empty.

The integer pair graph contains the following rules and edges:
(0): LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))
(1): LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))
(3): JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3])

(3) -> (0), if ((o18579[3]* o18579[0])∧(o19096[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))))


(3) -> (1), if ((o19096[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))∧(o18579[3]* java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))))


(0) -> (3), if ((o18579new[0]* o18579[3])∧(java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))) →* o19096[3]))


(1) -> (3), if ((java.lang.Object(TreeList(o22265[1], o19117[1])) →* o18579[3])∧(java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))) →* o19096[3]))



The set Q consists of the following terms:
Load10574(x0, java.lang.Object(TreeList(java.lang.Object(Tree(x1, x2, x3)), x4)))
JMP11347(x0, x1)
Load10574(x0, java.lang.Object(TreeList(NULL, x1)))

(15) 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 LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))) the following chains were created:
  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))), JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) which results in the following constraint:

    (1)    (o18579[3]=o18579[0]o19096[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))∧o18579new[0]=o18579[3]1java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))=o19096[3]1LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))≥JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))∧(UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥))



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

    (2)    (LOAD10574(o18579[3], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))≥JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))∧(UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥))



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

    (3)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[71 + (-1)bso_16] + [27]o22249[0] ≥ 0)



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

    (4)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[71 + (-1)bso_16] + [27]o22249[0] ≥ 0)



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

    (5)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧[71 + (-1)bso_16] + [27]o22249[0] ≥ 0)



    We simplified constraint (5) using rules (IDP_UNRESTRICTED_VARS), (IDP_POLY_GCD) which results in the following new constraint:

    (6)    ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[71 + (-1)bso_16] ≥ 0∧[1] ≥ 0)







For Pair LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))) the following chains were created:
  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))), JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) which results in the following constraint:

    (7)    (o19096[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))∧o18579[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))∧java.lang.Object(TreeList(o22265[1], o19117[1]))=o18579[3]1java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))=o19096[3]1LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))≥JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥))



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

    (8)    (LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))≥JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))∧(UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥))



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

    (9)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[71 + (-1)bso_17] + [27]o22265[1] ≥ 0)



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

    (10)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[71 + (-1)bso_17] + [27]o22265[1] ≥ 0)



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

    (11)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧[71 + (-1)bso_17] + [27]o22265[1] ≥ 0)



    We simplified constraint (11) using rules (IDP_UNRESTRICTED_VARS), (IDP_POLY_GCD) which results in the following new constraint:

    (12)    ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[71 + (-1)bso_17] ≥ 0∧[1] ≥ 0)







For Pair JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]) the following chains were created:
  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0]))))) which results in the following constraint:

    (13)    (o18579[3]=o18579[0]o19096[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])) ⇒ JMP11347'(o18579[3], o19096[3])≥LOAD10574(o18579[3], o19096[3])∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (14)    (JMP11347'(o18579[3], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))≥LOAD10574(o18579[3], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0])))∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (15)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[172 + (-1)bso_18] + [54]o22249[0] + [54]o22248[0] ≥ 0)



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

    (16)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[172 + (-1)bso_18] + [54]o22249[0] + [54]o22248[0] ≥ 0)



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

    (17)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[172 + (-1)bso_18] + [54]o22249[0] + [54]o22248[0] ≥ 0)



    We simplified constraint (17) using rules (IDP_UNRESTRICTED_VARS), (IDP_POLY_GCD) which results in the following new constraint:

    (18)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[172 + (-1)bso_18] ≥ 0∧[1] ≥ 0∧[1] ≥ 0)



  • We consider the chain JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3]), LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1]))))) which results in the following constraint:

    (19)    (o19096[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))∧o18579[3]=java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])) ⇒ JMP11347'(o18579[3], o19096[3])≥LOAD10574(o18579[3], o19096[3])∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (20)    (JMP11347'(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))≥LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])))∧(UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥))



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

    (21)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[172 + (-1)bso_18] + [54]o22265[1] + [54]o22264[1] ≥ 0)



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

    (22)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[172 + (-1)bso_18] + [54]o22265[1] + [54]o22264[1] ≥ 0)



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

    (23)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧[172 + (-1)bso_18] + [54]o22265[1] + [54]o22264[1] ≥ 0)



    We simplified constraint (23) using rules (IDP_UNRESTRICTED_VARS), (IDP_POLY_GCD) which results in the following new constraint:

    (24)    ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧[172 + (-1)bso_18] ≥ 0∧[1] ≥ 0∧[1] ≥ 0)







To summarize, we get the following constraints P for the following pairs.
  • LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))
    • ((UIncreasing(JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[71 + (-1)bso_16] ≥ 0∧[1] ≥ 0)

  • LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))
    • ((UIncreasing(JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[71 + (-1)bso_17] ≥ 0∧[1] ≥ 0)

  • JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3])
    • ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧0 ≥ 0∧[172 + (-1)bso_18] ≥ 0∧[1] ≥ 0∧[1] ≥ 0)
    • ((UIncreasing(LOAD10574(o18579[3], o19096[3])), ≥)∧0 ≥ 0∧0 ≥ 0∧[172 + (-1)bso_18] ≥ 0∧[1] ≥ 0∧[1] ≥ 0)




The constraints for P> respective Pbound are constructed from P where we just replace every occurence of "t ≥ s" in P by "t > s" respective "t ≥ c". Here c stands for the fresh constant used for Pbound.
Using the following integer polynomial ordering the resulting constraints can be solved
Polynomial interpretation over integers with natural coefficients for all symbols [NONINF][POLO]:

POL(TRUE) = 0   
POL(FALSE) = 0   
POL(LOAD10574(x1, x2)) = [2] + x2   
POL(java.lang.Object(x1)) = [3] + [3]x1   
POL(TreeList(x1, x2)) = [1] + [3]x1   
POL(Tree(x1, x2, x3)) = [2] + x3 + x2   
POL(JMP11347'(x1, x2)) = [3]x2   

The following pairs are in P>:

LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))
LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))
JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3])

The following pairs are in Pbound:

LOAD10574(o18579[0], java.lang.Object(TreeList(java.lang.Object(Tree(i3261[0], o22248[0], o22249[0])), o19096[0]))) → JMP11347'(o18579new[0], java.lang.Object(TreeList(o22248[0], java.lang.Object(TreeList(o22249[0], o19096[0])))))
LOAD10574(java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1])), java.lang.Object(TreeList(java.lang.Object(Tree(i3262[1], o22264[1], o22265[1])), o19117[1]))) → JMP11347'(java.lang.Object(TreeList(o22265[1], o19117[1])), java.lang.Object(TreeList(o22264[1], java.lang.Object(TreeList(o22265[1], o19117[1])))))
JMP11347'(o18579[3], o19096[3]) → LOAD10574(o18579[3], o19096[3])

The following pairs are in P:
none

There are no usable rules.

(16) 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:
none


R is empty.

The integer pair graph is empty.

The set Q consists of the following terms:
Load10574(x0, java.lang.Object(TreeList(java.lang.Object(Tree(x1, x2, x3)), x4)))
JMP11347(x0, x1)
Load10574(x0, java.lang.Object(TreeList(NULL, x1)))

(17) IDependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs.

(18) TRUE

(19) 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:
none


R is empty.

The integer pair graph is empty.

The set Q consists of the following terms:
Load10574(x0, java.lang.Object(TreeList(java.lang.Object(Tree(x1, x2, x3)), x4)))
JMP11347(x0, x1)
Load10574(x0, java.lang.Object(TreeList(NULL, x1)))

(20) IDependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs.

(21) TRUE

(22) 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:
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(0)))
Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(0))) → Cond_Load1633ARR1(i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(0)))
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(0))) → Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1, i70 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1))) → Cond_Load24130(i8338 <= 0 && i70 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1)))
Cond_Load24130(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1))) → Load1633(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70 + -1)
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118)))
Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118))) → Cond_Load1633ARR2(i68 + 1 > 0 && i68 + 1 < i6 && !(i118 = 0) && i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118))) → Load24130(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1 + 1, i70, i118, java.lang.Object(Tree(NULL, NULL)), java.lang.Object(Tree(NULL, NULL)))
Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1))))) → Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713)))
Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR3(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1)))
Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506)))
JMP30574(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(NULL, o56153))) → Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(NULL, o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR4(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337 + -1, o53504new, o53504new)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506))) → Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR5(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712))) → JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(o56292Field0, o56292Field1)))
JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153))) → Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR6(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1))))) → Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713)))
Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR7(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o56389Field0, o56389Field1)))
JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, NULL))) → Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, NULL)), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713)))
Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR8(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, o53504new, o53504new)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(NULL, o53506)), java.lang.Object(Tree(NULL, o53506))) → Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(NULL, o53506)), java.lang.Object(Tree(NULL, o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR9(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712))) → JMP30574(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, NULL)), java.lang.Object(Tree(o53505, NULL))) → Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, NULL)), java.lang.Object(Tree(o53505, NULL)), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713)))
Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR10(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713))) → JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))))
The set Q consists of the following terms:
Load1633(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load1633ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0)))
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0)))
Load24130(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Cond_Load24130(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load1633ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)), java.lang.Object(java.lang.String(x5)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)), java.lang.Object(java.lang.String(x5)))
Inc25882(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load24130ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(x8, x9)))), java.lang.Object(java.lang.String(x10)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(x8, x9)))), java.lang.Object(java.lang.String(x10)))
Inc30743(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x5, x6)))
JMP30574(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x5, x6)))
Load24130ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x7)), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x7)), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Load24130ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(java.lang.String(x8)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(java.lang.String(x8)))
JMP25821(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load24130ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(x7, x8)), x9)), java.lang.Object(java.lang.String(x10)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(x7, x8)), x9)), java.lang.Object(java.lang.String(x10)))
Load24130ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(java.lang.String(x8)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(java.lang.String(x8)))
JMP30655(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x5, x6)))
Load24130ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Load24130ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Load24130ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))

(23) GroundTermsRemoverProof (EQUIVALENT transformation)

Some arguments are removed because they always contain the same ground term.
We removed the following ground terms:
  • java.lang.Object(java.lang.String(0))

We removed arguments according to the following replacements:

Cond_Load1633ARR1(x1, x2, x3, x4, x5) → Cond_Load1633ARR1(x1, x2, x3, x4)
Load1633ARR1(x1, x2, x3, x4) → Load1633ARR1(x1, x2, x3)

(24) 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:
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Cond_Load1633ARR1(i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1, i70 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1))) → Cond_Load24130(i8338 <= 0 && i70 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1)))
Cond_Load24130(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1))) → Load1633(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70 + -1)
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118)))
Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118))) → Cond_Load1633ARR2(i68 + 1 > 0 && i68 + 1 < i6 && !(i118 = 0) && i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118))) → Load24130(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1 + 1, i70, i118, java.lang.Object(Tree(NULL, NULL)), java.lang.Object(Tree(NULL, NULL)))
Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1))))) → Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713)))
Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR3(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1)))
Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506)))
JMP30574(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(NULL, o56153))) → Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(NULL, o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR4(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337 + -1, o53504new, o53504new)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506))) → Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR5(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712))) → JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(o56292Field0, o56292Field1)))
JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153))) → Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR6(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1))))) → Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713)))
Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR7(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o56389Field0, o56389Field1)))
JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, NULL))) → Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, NULL)), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713)))
Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR8(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, o53504new, o53504new)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(NULL, o53506)), java.lang.Object(Tree(NULL, o53506))) → Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(NULL, o53506)), java.lang.Object(Tree(NULL, o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR9(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712))) → JMP30574(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, NULL)), java.lang.Object(Tree(o53505, NULL))) → Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, NULL)), java.lang.Object(Tree(o53505, NULL)), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713)))
Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR10(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713))) → JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))))
The set Q consists of the following terms:
Load1633(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load1633ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load24130(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Cond_Load24130(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load1633ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)), java.lang.Object(java.lang.String(x5)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)), java.lang.Object(java.lang.String(x5)))
Inc25882(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load24130ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(x8, x9)))), java.lang.Object(java.lang.String(x10)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(x8, x9)))), java.lang.Object(java.lang.String(x10)))
Inc30743(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x5, x6)))
JMP30574(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x5, x6)))
Load24130ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x7)), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x7)), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Load24130ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(java.lang.String(x8)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(java.lang.String(x8)))
JMP25821(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load24130ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(x7, x8)), x9)), java.lang.Object(java.lang.String(x10)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(x7, x8)), x9)), java.lang.Object(java.lang.String(x10)))
Load24130ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(java.lang.String(x8)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(java.lang.String(x8)))
JMP30655(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x5, x6)))
Load24130ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Load24130ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Load24130ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))

(25) DuplicateArgsRemoverProof (EQUIVALENT transformation)

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

JMP30655(x1, x2, x3, x4, x5, x6) → JMP30655(x1, x2, x3, x4, x6)
Cond_Load24130ARR10(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load24130ARR10(x1, x2, x3, x4, x5, x7, x8, x9)
Load24130ARR10(x1, x2, x3, x4, x5, x6, x7, x8) → Load24130ARR10(x1, x2, x3, x4, x6, x7, x8)
JMP30574(x1, x2, x3, x4, x5, x6) → JMP30574(x1, x2, x3, x4, x6)
Cond_Load24130ARR9(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load24130ARR9(x1, x2, x3, x4, x5, x7, x8, x9)
Load24130ARR9(x1, x2, x3, x4, x5, x6, x7, x8) → Load24130ARR9(x1, x2, x3, x4, x6, x7, x8)
Inc30743(x1, x2, x3, x4, x5, x6) → Inc30743(x1, x2, x3, x4, x6)
Cond_Load24130ARR7(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load24130ARR7(x1, x2, x3, x4, x5, x7, x8)
Load24130ARR7(x1, x2, x3, x4, x5, x6, x7) → Load24130ARR7(x1, x2, x3, x4, x6, x7)
Cond_Load24130ARR5(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load24130ARR5(x1, x2, x3, x4, x5, x7, x8)
Load24130ARR5(x1, x2, x3, x4, x5, x6, x7) → Load24130ARR5(x1, x2, x3, x4, x6, x7)

(26) 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:
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Cond_Load1633ARR1(i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1, i70 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1))) → Cond_Load24130(i8338 <= 0 && i70 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1)))
Cond_Load24130(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53509Field0, o53509Field1))) → Load1633(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70 + -1)
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118)))
Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118))) → Cond_Load1633ARR2(i68 + 1 > 0 && i68 + 1 < i6 && !(i118 = 0) && i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i299)), java.lang.Object(java.lang.String(i118))) → Load24130(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1 + 1, i70, i118, java.lang.Object(Tree(NULL, NULL)), java.lang.Object(Tree(NULL, NULL)))
Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1))))) → Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713)))
Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR3(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(o56534Field0, o56534Field1)))), java.lang.Object(java.lang.String(i8713))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56534Field0, o56534Field1)))
Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337, java.lang.Object(Tree(o53505, o53506))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506)))
JMP30574(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337, java.lang.Object(Tree(o53505, o53506))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o53505, o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(NULL, o56153))) → Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(NULL, o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR4(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o56153)), java.lang.Object(java.lang.String(i10566)), java.lang.Object(java.lang.String(i8712))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337 + -1, o53504new, o53504new)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506))) → Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR5(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(java.lang.String(i8712))) → JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(o56292Field0, o56292Field1)), o53506)), java.lang.Object(Tree(o56292Field0, o56292Field1)))
JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153))) → Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR6(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(java.lang.Object(Tree(o56491Field0, o56491Field1)), o56153)), java.lang.Object(java.lang.String(i8712))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56491Field0, o56491Field1)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1))))) → Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713)))
Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR7(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(java.lang.String(i8713))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(o56389Field0, o56389Field1)))), java.lang.Object(Tree(o56389Field0, o56389Field1)))
JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337, java.lang.Object(Tree(o53505, o53506))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337, java.lang.Object(Tree(o53505, o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, NULL))) → Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, NULL)), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713)))
Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR8(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, o53506)), java.lang.Object(Tree(o56168, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10671)), java.lang.Object(java.lang.String(i8713))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, o53504new)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(NULL, o53506)), java.lang.Object(Tree(NULL, o53506))) → Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(NULL, o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712)))
Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR9(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)), java.lang.Object(java.lang.String(i10434)), java.lang.Object(java.lang.String(i8712))) → JMP30574(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), o53506)))
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, NULL)), java.lang.Object(Tree(o53505, NULL))) → Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, NULL)), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713)))
Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR10(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(i10517)), java.lang.Object(java.lang.String(i8713))) → JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337, java.lang.Object(Tree(o53505, java.lang.Object(Tree(NULL, NULL)))))
The set Q consists of the following terms:
Load1633(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load1633ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load24130(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Cond_Load24130(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load1633ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)), java.lang.Object(java.lang.String(x5)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)), java.lang.Object(java.lang.String(x5)))
Inc25882(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load24130ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(x8, x9)))), java.lang.Object(java.lang.String(x10)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(x8, x9)))), java.lang.Object(java.lang.String(x10)))
Inc30743(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)))
JMP30574(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)))
Load24130ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x7)), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x7)), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Load24130ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(java.lang.String(x8)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6)), x7)), java.lang.Object(java.lang.String(x8)))
JMP25821(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, x8)))
Load24130ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(x7, x8)), x9)), java.lang.Object(java.lang.String(x10)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(java.lang.Object(Tree(x7, x8)), x9)), java.lang.Object(java.lang.String(x10)))
Load24130ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(java.lang.String(x8)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7)))), java.lang.Object(java.lang.String(x8)))
JMP30655(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)))
Load24130ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6)), java.lang.Object(Tree(x7, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x8)), java.lang.Object(java.lang.String(x9)))
Load24130ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL)), x5)), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Load24130ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL)))), java.lang.Object(java.lang.String(x6)), java.lang.Object(java.lang.String(x7)))

(27) ITRSFilterProcessorProof (SOUND transformation)

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

Load24130(x1, x2, x3, x4, x5, x6) → Load24130(x1, x2, x3, x4)
Tree(x1, x2) → Tree
Cond_Load24130(x1, x2, x3, x4, x5, x6, x7) → Cond_Load24130(x1, x2, x3, x4, x5)
Load1633ARR2(x1, x2, x3, x4, x5) → Load1633ARR2(x1, x2, x3, x5)
Cond_Load1633ARR2(x1, x2, x3, x4, x5, x6) → Cond_Load1633ARR2(x1, x2, x3, x4, x6)
Inc25882(x1, x2, x3, x4, x5, x6) → Inc25882(x1, x2, x3, x4)
Load24130ARR3(x1, x2, x3, x4, x5, x6, x7) → Load24130ARR3(x1, x2, x3, x4, x7)
Cond_Load24130ARR3(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load24130ARR3(x1, x2, x3, x4, x5, x8)
Inc30743(x1, x2, x3, x4, x5) → Inc30743(x1, x2, x3, x4)
JMP30574(x1, x2, x3, x4, x5) → JMP30574(x1, x2, x3, x4)
Load24130ARR4(x1, x2, x3, x4, x5, x6, x7, x8) → Load24130ARR4(x1, x2, x3, x4, x8)
Cond_Load24130ARR4(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load24130ARR4(x1, x2, x3, x4, x5, x9)
Load24130ARR5(x1, x2, x3, x4, x5, x6) → Load24130ARR5(x1, x2, x3, x4, x6)
Cond_Load24130ARR5(x1, x2, x3, x4, x5, x6, x7) → Cond_Load24130ARR5(x1, x2, x3, x4, x5, x7)
JMP25821(x1, x2, x3, x4, x5, x6) → JMP25821(x1, x2, x3, x4)
Load24130ARR6(x1, x2, x3, x4, x5, x6, x7) → Load24130ARR6(x1, x2, x3, x4, x7)
Cond_Load24130ARR6(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load24130ARR6(x1, x2, x3, x4, x5, x8)
Load24130ARR7(x1, x2, x3, x4, x5, x6) → Load24130ARR7(x1, x2, x3, x4, x6)
Cond_Load24130ARR7(x1, x2, x3, x4, x5, x6, x7) → Cond_Load24130ARR7(x1, x2, x3, x4, x5, x7)
JMP30655(x1, x2, x3, x4, x5) → JMP30655(x1, x2, x3, x4)
Load24130ARR8(x1, x2, x3, x4, x5, x6, x7, x8) → Load24130ARR8(x1, x2, x3, x4, x8)
Cond_Load24130ARR8(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load24130ARR8(x1, x2, x3, x4, x5, x9)
Load24130ARR9(x1, x2, x3, x4, x5, x6, x7) → Load24130ARR9(x1, x2, x3, x4, x7)
Cond_Load24130ARR9(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load24130ARR9(x1, x2, x3, x4, x5, x8)
Load24130ARR10(x1, x2, x3, x4, x5, x6, x7) → Load24130ARR10(x1, x2, x3, x4, x7)
Cond_Load24130ARR10(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load24130ARR10(x1, x2, x3, x4, x5, x8)

(28) 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:
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Cond_Load1633ARR1(i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1, i70 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) → Cond_Load24130(i8338 <= 0 && i70 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338)
Cond_Load24130(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) → Load1633(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70 + -1)
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118)))
Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118))) → Cond_Load1633ARR2(i68 + 1 > 0 && i68 + 1 < i6 && !(i118 = 0) && i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118))) → Load24130(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1 + 1, i70, i118)
Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR3(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337 + -1)
Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1)
JMP30574(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR4(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR5(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR6(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR7(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR8(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR9(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → JMP30574(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR10(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)
The set Q consists of the following terms:
Load1633(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load1633ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load24130(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load24130(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load1633ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Inc25882(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Inc30743(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP30574(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP25821(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP30655(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))

(29) ITRSFSMergerProof (SOUND transformation)

The following function symbols have been merged:

Inc30743, JMP30574
> Inc30743_4

(30) 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:
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Cond_Load1633ARR1(i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1, i70 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) → Cond_Load24130(i8338 <= 0 && i70 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338)
Cond_Load24130(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) → Load1633(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70 + -1)
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118)))
Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118))) → Cond_Load1633ARR2(i68 + 1 > 0 && i68 + 1 < i6 && !(i118 = 0) && i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118))) → Load24130(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1 + 1, i70, i118)
Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR3(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337 + -1)
Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR4(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR5(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR6(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR7(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR8(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR9(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR10(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)
The set Q consists of the following terms:
Load1633(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load1633ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load24130(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load24130(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load1633ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Inc25882(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Inc30743(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP25821(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP30655(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))

(31) ITRStoIDPProof (EQUIVALENT transformation)

Added dependency pairs

(32) 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:
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Load1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Cond_Load1633ARR1(i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1, i70 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) → Cond_Load24130(i8338 <= 0 && i70 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338)
Cond_Load24130(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) → Load1633(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70 + -1)
Load1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118)))
Load1633ARR2(java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118))) → Cond_Load1633ARR2(i68 + 1 > 0 && i68 + 1 < i6 && !(i118 = 0) && i68 > 0 && i68 < i6 && i70 > 0 && i68 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70, java.lang.Object(java.lang.String(i118))) → Load24130(java.lang.Object(ARRAY(i6, a2558data)), i68 + 1 + 1, i70, i118)
Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR3(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR3(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337 + -1)
Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i9698, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR4(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR4(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337 + -1)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR5(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR5(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
JMP25821(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8417, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR6(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR6(i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR7(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR7(i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Inc25882(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1, i70, i8337)
JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i9751, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR8(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR8(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Load24130ARR9(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Cond_Load24130ARR9(i8324 + 1 > 0 && i8324 + 1 < i6 && i8712 > 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8712))) → Inc30743(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)
Load24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337) → Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Load24130ARR10(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → Cond_Load24130ARR10(i8324 + 1 > 0 && i8324 + 1 < i6 && i8713 <= 0 && i8324 > 0 && i8324 < i6 && i8337 > 0 && i8324 + 1 + 1 > 0, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8337, java.lang.Object(java.lang.String(i8713))) → JMP30655(java.lang.Object(ARRAY(i6, a77675data)), i8324 + 1 + 1, i70, i8337)

The integer pair graph contains the following rules and edges:
(0): LOAD1633(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0]) → LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])
(1): LOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1]) → COND_LOAD1633ARR1(i68[1] > 0 && i68[1] < i6[1] && i70[1] > 0 && i68[1] + 1 > 0, java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])
(2): COND_LOAD1633ARR1(TRUE, java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2], i70[2]) → LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2] + 1, i70[2] + -1)
(3): LOAD24130(java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3]) → COND_LOAD24130(i8338[3] <= 0 && i70[3] > 0, java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])
(4): COND_LOAD24130(TRUE, java.lang.Object(ARRAY(i6[4], a77675data[4])), i8324[4], i70[4], i8338[4]) → LOAD1633(java.lang.Object(ARRAY(i6[4], a77675data[4])), i8324[4], i70[4] + -1)
(5): LOAD1633(java.lang.Object(ARRAY(i6[5], a2558data[5])), i68[5], i70[5]) → LOAD1633ARR2(java.lang.Object(ARRAY(i6[5], a2558data[5])), i68[5], i70[5], java.lang.Object(java.lang.String(i118[5])))
(6): LOAD1633ARR2(java.lang.Object(ARRAY(i6[6], a2558data[6])), i68[6], i70[6], java.lang.Object(java.lang.String(i118[6]))) → COND_LOAD1633ARR2(i68[6] + 1 > 0 && i68[6] + 1 < i6[6] && !(i118[6] = 0) && i68[6] > 0 && i68[6] < i6[6] && i70[6] > 0 && i68[6] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[6], a2558data[6])), i68[6], i70[6], java.lang.Object(java.lang.String(i118[6])))
(7): COND_LOAD1633ARR2(TRUE, java.lang.Object(ARRAY(i6[7], a2558data[7])), i68[7], i70[7], java.lang.Object(java.lang.String(i118[7]))) → LOAD24130(java.lang.Object(ARRAY(i6[7], a2558data[7])), i68[7] + 1 + 1, i70[7], i118[7])
(8): INC25882(java.lang.Object(ARRAY(i6[8], a77675data[8])), i8417[8], i70[8], i8337[8]) → LOAD24130(java.lang.Object(ARRAY(i6[8], a77675data[8])), i8417[8], i70[8], i8337[8] + -1)
(9): LOAD24130(java.lang.Object(ARRAY(i6[9], a77675data[9])), i8324[9], i70[9], i8337[9]) → LOAD24130ARR3(java.lang.Object(ARRAY(i6[9], a77675data[9])), i8324[9], i70[9], i8337[9], java.lang.Object(java.lang.String(i8713[9])))
(10): LOAD24130ARR3(java.lang.Object(ARRAY(i6[10], a77675data[10])), i8324[10], i70[10], i8337[10], java.lang.Object(java.lang.String(i8713[10]))) → COND_LOAD24130ARR3(i8713[10] <= 0 && i8324[10] > 0 && i8324[10] < i6[10] && i8337[10] > 0 && i8324[10] + 1 > 0, java.lang.Object(ARRAY(i6[10], a77675data[10])), i8324[10], i70[10], i8337[10], java.lang.Object(java.lang.String(i8713[10])))
(11): COND_LOAD24130ARR3(TRUE, java.lang.Object(ARRAY(i6[11], a77675data[11])), i8324[11], i70[11], i8337[11], java.lang.Object(java.lang.String(i8713[11]))) → LOAD24130(java.lang.Object(ARRAY(i6[11], a77675data[11])), i8324[11] + 1, i70[11], i8337[11] + -1)
(12): INC30743(java.lang.Object(ARRAY(i6[12], a77675data[12])), i9698[12], i70[12], i8337[12]) → LOAD24130(java.lang.Object(ARRAY(i6[12], a77675data[12])), i9698[12], i70[12], i8337[12] + -1)
(13): LOAD24130(java.lang.Object(ARRAY(i6[13], a77675data[13])), i8324[13], i70[13], i8337[13]) → LOAD24130ARR4(java.lang.Object(ARRAY(i6[13], a77675data[13])), i8324[13], i70[13], i8337[13], java.lang.Object(java.lang.String(i8712[13])))
(14): LOAD24130ARR4(java.lang.Object(ARRAY(i6[14], a77675data[14])), i8324[14], i70[14], i8337[14], java.lang.Object(java.lang.String(i8712[14]))) → COND_LOAD24130ARR4(i8324[14] + 1 > 0 && i8324[14] + 1 < i6[14] && i8712[14] > 0 && i8324[14] > 0 && i8324[14] < i6[14] && i8337[14] > 0 && i8324[14] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[14], a77675data[14])), i8324[14], i70[14], i8337[14], java.lang.Object(java.lang.String(i8712[14])))
(15): COND_LOAD24130ARR4(TRUE, java.lang.Object(ARRAY(i6[15], a77675data[15])), i8324[15], i70[15], i8337[15], java.lang.Object(java.lang.String(i8712[15]))) → LOAD24130(java.lang.Object(ARRAY(i6[15], a77675data[15])), i8324[15] + 1 + 1, i70[15], i8337[15] + -1)
(16): LOAD24130(java.lang.Object(ARRAY(i6[16], a77675data[16])), i8324[16], i70[16], i8337[16]) → LOAD24130ARR5(java.lang.Object(ARRAY(i6[16], a77675data[16])), i8324[16], i70[16], i8337[16], java.lang.Object(java.lang.String(i8712[16])))
(17): LOAD24130ARR5(java.lang.Object(ARRAY(i6[17], a77675data[17])), i8324[17], i70[17], i8337[17], java.lang.Object(java.lang.String(i8712[17]))) → COND_LOAD24130ARR5(i8712[17] > 0 && i8324[17] > 0 && i8324[17] < i6[17] && i8337[17] > 0 && i8324[17] + 1 > 0, java.lang.Object(ARRAY(i6[17], a77675data[17])), i8324[17], i70[17], i8337[17], java.lang.Object(java.lang.String(i8712[17])))
(18): COND_LOAD24130ARR5(TRUE, java.lang.Object(ARRAY(i6[18], a77675data[18])), i8324[18], i70[18], i8337[18], java.lang.Object(java.lang.String(i8712[18]))) → JMP25821'(java.lang.Object(ARRAY(i6[18], a77675data[18])), i8324[18] + 1, i70[18], i8337[18])
(19): JMP25821'(java.lang.Object(ARRAY(i6[19], a77675data[19])), i8417[19], i70[19], i8337[19]) → INC25882(java.lang.Object(ARRAY(i6[19], a77675data[19])), i8417[19], i70[19], i8337[19])
(20): LOAD24130(java.lang.Object(ARRAY(i6[20], a77675data[20])), i8324[20], i70[20], i8337[20]) → LOAD24130ARR6(java.lang.Object(ARRAY(i6[20], a77675data[20])), i8324[20], i70[20], i8337[20], java.lang.Object(java.lang.String(i8712[20])))
(21): LOAD24130ARR6(java.lang.Object(ARRAY(i6[21], a77675data[21])), i8324[21], i70[21], i8337[21], java.lang.Object(java.lang.String(i8712[21]))) → COND_LOAD24130ARR6(i8712[21] > 0 && i8324[21] > 0 && i8324[21] < i6[21] && i8337[21] > 0 && i8324[21] + 1 > 0, java.lang.Object(ARRAY(i6[21], a77675data[21])), i8324[21], i70[21], i8337[21], java.lang.Object(java.lang.String(i8712[21])))
(22): COND_LOAD24130ARR6(TRUE, java.lang.Object(ARRAY(i6[22], a77675data[22])), i8324[22], i70[22], i8337[22], java.lang.Object(java.lang.String(i8712[22]))) → INC25882(java.lang.Object(ARRAY(i6[22], a77675data[22])), i8324[22] + 1, i70[22], i8337[22])
(23): LOAD24130(java.lang.Object(ARRAY(i6[23], a77675data[23])), i8324[23], i70[23], i8337[23]) → LOAD24130ARR7(java.lang.Object(ARRAY(i6[23], a77675data[23])), i8324[23], i70[23], i8337[23], java.lang.Object(java.lang.String(i8713[23])))
(24): LOAD24130ARR7(java.lang.Object(ARRAY(i6[24], a77675data[24])), i8324[24], i70[24], i8337[24], java.lang.Object(java.lang.String(i8713[24]))) → COND_LOAD24130ARR7(i8713[24] <= 0 && i8324[24] > 0 && i8324[24] < i6[24] && i8337[24] > 0 && i8324[24] + 1 > 0, java.lang.Object(ARRAY(i6[24], a77675data[24])), i8324[24], i70[24], i8337[24], java.lang.Object(java.lang.String(i8713[24])))
(25): COND_LOAD24130ARR7(TRUE, java.lang.Object(ARRAY(i6[25], a77675data[25])), i8324[25], i70[25], i8337[25], java.lang.Object(java.lang.String(i8713[25]))) → INC25882(java.lang.Object(ARRAY(i6[25], a77675data[25])), i8324[25] + 1, i70[25], i8337[25])
(26): JMP30655'(java.lang.Object(ARRAY(i6[26], a77675data[26])), i9751[26], i70[26], i8337[26]) → INC30743(java.lang.Object(ARRAY(i6[26], a77675data[26])), i9751[26], i70[26], i8337[26])
(27): LOAD24130(java.lang.Object(ARRAY(i6[27], a77675data[27])), i8324[27], i70[27], i8337[27]) → LOAD24130ARR8(java.lang.Object(ARRAY(i6[27], a77675data[27])), i8324[27], i70[27], i8337[27], java.lang.Object(java.lang.String(i8713[27])))
(28): LOAD24130ARR8(java.lang.Object(ARRAY(i6[28], a77675data[28])), i8324[28], i70[28], i8337[28], java.lang.Object(java.lang.String(i8713[28]))) → COND_LOAD24130ARR8(i8324[28] + 1 > 0 && i8324[28] + 1 < i6[28] && i8713[28] <= 0 && i8324[28] > 0 && i8324[28] < i6[28] && i8337[28] > 0 && i8324[28] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[28], a77675data[28])), i8324[28], i70[28], i8337[28], java.lang.Object(java.lang.String(i8713[28])))
(29): COND_LOAD24130ARR8(TRUE, java.lang.Object(ARRAY(i6[29], a77675data[29])), i8324[29], i70[29], i8337[29], java.lang.Object(java.lang.String(i8713[29]))) → INC30743(java.lang.Object(ARRAY(i6[29], a77675data[29])), i8324[29] + 1 + 1, i70[29], i8337[29])
(30): LOAD24130(java.lang.Object(ARRAY(i6[30], a77675data[30])), i8324[30], i70[30], i8337[30]) → LOAD24130ARR9(java.lang.Object(ARRAY(i6[30], a77675data[30])), i8324[30], i70[30], i8337[30], java.lang.Object(java.lang.String(i8712[30])))
(31): LOAD24130ARR9(java.lang.Object(ARRAY(i6[31], a77675data[31])), i8324[31], i70[31], i8337[31], java.lang.Object(java.lang.String(i8712[31]))) → COND_LOAD24130ARR9(i8324[31] + 1 > 0 && i8324[31] + 1 < i6[31] && i8712[31] > 0 && i8324[31] > 0 && i8324[31] < i6[31] && i8337[31] > 0 && i8324[31] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[31], a77675data[31])), i8324[31], i70[31], i8337[31], java.lang.Object(java.lang.String(i8712[31])))
(32): COND_LOAD24130ARR9(TRUE, java.lang.Object(ARRAY(i6[32], a77675data[32])), i8324[32], i70[32], i8337[32], java.lang.Object(java.lang.String(i8712[32]))) → INC30743(java.lang.Object(ARRAY(i6[32], a77675data[32])), i8324[32] + 1 + 1, i70[32], i8337[32])
(33): LOAD24130(java.lang.Object(ARRAY(i6[33], a77675data[33])), i8324[33], i70[33], i8337[33]) → LOAD24130ARR10(java.lang.Object(ARRAY(i6[33], a77675data[33])), i8324[33], i70[33], i8337[33], java.lang.Object(java.lang.String(i8713[33])))
(34): LOAD24130ARR10(java.lang.Object(ARRAY(i6[34], a77675data[34])), i8324[34], i70[34], i8337[34], java.lang.Object(java.lang.String(i8713[34]))) → COND_LOAD24130ARR10(i8324[34] + 1 > 0 && i8324[34] + 1 < i6[34] && i8713[34] <= 0 && i8324[34] > 0 && i8324[34] < i6[34] && i8337[34] > 0 && i8324[34] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[34], a77675data[34])), i8324[34], i70[34], i8337[34], java.lang.Object(java.lang.String(i8713[34])))
(35): COND_LOAD24130ARR10(TRUE, java.lang.Object(ARRAY(i6[35], a77675data[35])), i8324[35], i70[35], i8337[35], java.lang.Object(java.lang.String(i8713[35]))) → JMP30655'(java.lang.Object(ARRAY(i6[35], a77675data[35])), i8324[35] + 1 + 1, i70[35], i8337[35])

(0) -> (1), if ((i70[0]* i70[1])∧(i68[0]* i68[1])∧(java.lang.Object(ARRAY(i6[0], a2558data[0])) →* java.lang.Object(ARRAY(i6[1], a2558data[1]))))


(1) -> (2), if ((java.lang.Object(ARRAY(i6[1], a2558data[1])) →* java.lang.Object(ARRAY(i6[2], a2558data[2])))∧(i68[1]* i68[2])∧(i70[1]* i70[2])∧(i68[1] > 0 && i68[1] < i6[1] && i70[1] > 0 && i68[1] + 1 > 0* TRUE))


(2) -> (0), if ((i70[2] + -1* i70[0])∧(i68[2] + 1* i68[0])∧(java.lang.Object(ARRAY(i6[2], a2558data[2])) →* java.lang.Object(ARRAY(i6[0], a2558data[0]))))


(2) -> (5), if ((i68[2] + 1* i68[5])∧(i70[2] + -1* i70[5])∧(java.lang.Object(ARRAY(i6[2], a2558data[2])) →* java.lang.Object(ARRAY(i6[5], a2558data[5]))))


(3) -> (4), if ((i8338[3] <= 0 && i70[3] > 0* TRUE)∧(i8338[3]* i8338[4])∧(java.lang.Object(ARRAY(i6[3], a77675data[3])) →* java.lang.Object(ARRAY(i6[4], a77675data[4])))∧(i70[3]* i70[4])∧(i8324[3]* i8324[4]))


(4) -> (0), if ((java.lang.Object(ARRAY(i6[4], a77675data[4])) →* java.lang.Object(ARRAY(i6[0], a2558data[0])))∧(i8324[4]* i68[0])∧(i70[4] + -1* i70[0]))


(4) -> (5), if ((i70[4] + -1* i70[5])∧(i8324[4]* i68[5])∧(java.lang.Object(ARRAY(i6[4], a77675data[4])) →* java.lang.Object(ARRAY(i6[5], a2558data[5]))))


(5) -> (6), if ((java.lang.Object(ARRAY(i6[5], a2558data[5])) →* java.lang.Object(ARRAY(i6[6], a2558data[6])))∧(i70[5]* i70[6])∧(i68[5]* i68[6])∧(java.lang.Object(java.lang.String(i118[5])) →* java.lang.Object(java.lang.String(i118[6]))))


(6) -> (7), if ((java.lang.Object(java.lang.String(i118[6])) →* java.lang.Object(java.lang.String(i118[7])))∧(i70[6]* i70[7])∧(java.lang.Object(ARRAY(i6[6], a2558data[6])) →* java.lang.Object(ARRAY(i6[7], a2558data[7])))∧(i68[6]* i68[7])∧(i68[6] + 1 > 0 && i68[6] + 1 < i6[6] && !(i118[6] = 0) && i68[6] > 0 && i68[6] < i6[6] && i70[6] > 0 && i68[6] + 1 + 1 > 0* TRUE))


(7) -> (3), if ((i70[7]* i70[3])∧(i68[7] + 1 + 1* i8324[3])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[3], a77675data[3])))∧(i118[7]* i8338[3]))


(7) -> (9), if ((i118[7]* i8337[9])∧(i68[7] + 1 + 1* i8324[9])∧(i70[7]* i70[9])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[9], a77675data[9]))))


(7) -> (13), if ((i118[7]* i8337[13])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i70[7]* i70[13])∧(i68[7] + 1 + 1* i8324[13]))


(7) -> (16), if ((java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[16], a77675data[16])))∧(i68[7] + 1 + 1* i8324[16])∧(i70[7]* i70[16])∧(i118[7]* i8337[16]))


(7) -> (20), if ((java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[20], a77675data[20])))∧(i118[7]* i8337[20])∧(i70[7]* i70[20])∧(i68[7] + 1 + 1* i8324[20]))


(7) -> (23), if ((java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[23], a77675data[23])))∧(i70[7]* i70[23])∧(i68[7] + 1 + 1* i8324[23])∧(i118[7]* i8337[23]))


(7) -> (27), if ((java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[27], a77675data[27])))∧(i68[7] + 1 + 1* i8324[27])∧(i70[7]* i70[27])∧(i118[7]* i8337[27]))


(7) -> (30), if ((i68[7] + 1 + 1* i8324[30])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i70[7]* i70[30])∧(i118[7]* i8337[30]))


(7) -> (33), if ((i118[7]* i8337[33])∧(i70[7]* i70[33])∧(i68[7] + 1 + 1* i8324[33])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[33], a77675data[33]))))


(8) -> (3), if ((java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[3], a77675data[3])))∧(i70[8]* i70[3])∧(i8417[8]* i8324[3])∧(i8337[8] + -1* i8338[3]))


(8) -> (9), if ((i70[8]* i70[9])∧(i8337[8] + -1* i8337[9])∧(i8417[8]* i8324[9])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[9], a77675data[9]))))


(8) -> (13), if ((i70[8]* i70[13])∧(i8337[8] + -1* i8337[13])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i8417[8]* i8324[13]))


(8) -> (16), if ((i70[8]* i70[16])∧(i8417[8]* i8324[16])∧(i8337[8] + -1* i8337[16])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[16], a77675data[16]))))


(8) -> (20), if ((i8417[8]* i8324[20])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[20], a77675data[20])))∧(i8337[8] + -1* i8337[20])∧(i70[8]* i70[20]))


(8) -> (23), if ((i8417[8]* i8324[23])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[23], a77675data[23])))∧(i70[8]* i70[23])∧(i8337[8] + -1* i8337[23]))


(8) -> (27), if ((i8337[8] + -1* i8337[27])∧(i70[8]* i70[27])∧(i8417[8]* i8324[27])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[27], a77675data[27]))))


(8) -> (30), if ((i8337[8] + -1* i8337[30])∧(i70[8]* i70[30])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i8417[8]* i8324[30]))


(8) -> (33), if ((i8337[8] + -1* i8337[33])∧(i8417[8]* i8324[33])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[33], a77675data[33])))∧(i70[8]* i70[33]))


(9) -> (10), if ((i8337[9]* i8337[10])∧(java.lang.Object(java.lang.String(i8713[9])) →* java.lang.Object(java.lang.String(i8713[10])))∧(java.lang.Object(ARRAY(i6[9], a77675data[9])) →* java.lang.Object(ARRAY(i6[10], a77675data[10])))∧(i70[9]* i70[10])∧(i8324[9]* i8324[10]))


(10) -> (11), if ((java.lang.Object(java.lang.String(i8713[10])) →* java.lang.Object(java.lang.String(i8713[11])))∧(i8713[10] <= 0 && i8324[10] > 0 && i8324[10] < i6[10] && i8337[10] > 0 && i8324[10] + 1 > 0* TRUE)∧(i8337[10]* i8337[11])∧(i8324[10]* i8324[11])∧(java.lang.Object(ARRAY(i6[10], a77675data[10])) →* java.lang.Object(ARRAY(i6[11], a77675data[11])))∧(i70[10]* i70[11]))


(11) -> (3), if ((i70[11]* i70[3])∧(i8324[11] + 1* i8324[3])∧(i8337[11] + -1* i8338[3])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[3], a77675data[3]))))


(11) -> (9), if ((i8324[11] + 1* i8324[9])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[9], a77675data[9])))∧(i8337[11] + -1* i8337[9])∧(i70[11]* i70[9]))


(11) -> (13), if ((i70[11]* i70[13])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i8337[11] + -1* i8337[13])∧(i8324[11] + 1* i8324[13]))


(11) -> (16), if ((i70[11]* i70[16])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[16], a77675data[16])))∧(i8337[11] + -1* i8337[16])∧(i8324[11] + 1* i8324[16]))


(11) -> (20), if ((i70[11]* i70[20])∧(i8337[11] + -1* i8337[20])∧(i8324[11] + 1* i8324[20])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[20], a77675data[20]))))


(11) -> (23), if ((i8337[11] + -1* i8337[23])∧(i70[11]* i70[23])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[23], a77675data[23])))∧(i8324[11] + 1* i8324[23]))


(11) -> (27), if ((java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[27], a77675data[27])))∧(i8337[11] + -1* i8337[27])∧(i70[11]* i70[27])∧(i8324[11] + 1* i8324[27]))


(11) -> (30), if ((java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i8337[11] + -1* i8337[30])∧(i70[11]* i70[30])∧(i8324[11] + 1* i8324[30]))


(11) -> (33), if ((i70[11]* i70[33])∧(i8337[11] + -1* i8337[33])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[33], a77675data[33])))∧(i8324[11] + 1* i8324[33]))


(12) -> (3), if ((i70[12]* i70[3])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[3], a77675data[3])))∧(i8337[12] + -1* i8338[3])∧(i9698[12]* i8324[3]))


(12) -> (9), if ((i70[12]* i70[9])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[9], a77675data[9])))∧(i9698[12]* i8324[9])∧(i8337[12] + -1* i8337[9]))


(12) -> (13), if ((java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i70[12]* i70[13])∧(i8337[12] + -1* i8337[13])∧(i9698[12]* i8324[13]))


(12) -> (16), if ((i70[12]* i70[16])∧(i9698[12]* i8324[16])∧(i8337[12] + -1* i8337[16])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[16], a77675data[16]))))


(12) -> (20), if ((i8337[12] + -1* i8337[20])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[20], a77675data[20])))∧(i70[12]* i70[20])∧(i9698[12]* i8324[20]))


(12) -> (23), if ((i8337[12] + -1* i8337[23])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[23], a77675data[23])))∧(i9698[12]* i8324[23])∧(i70[12]* i70[23]))


(12) -> (27), if ((java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[27], a77675data[27])))∧(i8337[12] + -1* i8337[27])∧(i70[12]* i70[27])∧(i9698[12]* i8324[27]))


(12) -> (30), if ((i9698[12]* i8324[30])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i8337[12] + -1* i8337[30])∧(i70[12]* i70[30]))


(12) -> (33), if ((i70[12]* i70[33])∧(i8337[12] + -1* i8337[33])∧(i9698[12]* i8324[33])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[33], a77675data[33]))))


(13) -> (14), if ((java.lang.Object(ARRAY(i6[13], a77675data[13])) →* java.lang.Object(ARRAY(i6[14], a77675data[14])))∧(i70[13]* i70[14])∧(i8324[13]* i8324[14])∧(java.lang.Object(java.lang.String(i8712[13])) →* java.lang.Object(java.lang.String(i8712[14])))∧(i8337[13]* i8337[14]))


(14) -> (15), if ((java.lang.Object(java.lang.String(i8712[14])) →* java.lang.Object(java.lang.String(i8712[15])))∧(i70[14]* i70[15])∧(i8324[14] + 1 > 0 && i8324[14] + 1 < i6[14] && i8712[14] > 0 && i8324[14] > 0 && i8324[14] < i6[14] && i8337[14] > 0 && i8324[14] + 1 + 1 > 0* TRUE)∧(i8337[14]* i8337[15])∧(i8324[14]* i8324[15])∧(java.lang.Object(ARRAY(i6[14], a77675data[14])) →* java.lang.Object(ARRAY(i6[15], a77675data[15]))))


(15) -> (3), if ((i70[15]* i70[3])∧(i8337[15] + -1* i8338[3])∧(i8324[15] + 1 + 1* i8324[3])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[3], a77675data[3]))))


(15) -> (9), if ((i70[15]* i70[9])∧(i8324[15] + 1 + 1* i8324[9])∧(i8337[15] + -1* i8337[9])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[9], a77675data[9]))))


(15) -> (13), if ((java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i70[15]* i70[13])∧(i8337[15] + -1* i8337[13])∧(i8324[15] + 1 + 1* i8324[13]))


(15) -> (16), if ((i70[15]* i70[16])∧(i8324[15] + 1 + 1* i8324[16])∧(i8337[15] + -1* i8337[16])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[16], a77675data[16]))))


(15) -> (20), if ((i8337[15] + -1* i8337[20])∧(i70[15]* i70[20])∧(i8324[15] + 1 + 1* i8324[20])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[20], a77675data[20]))))


(15) -> (23), if ((i8324[15] + 1 + 1* i8324[23])∧(i8337[15] + -1* i8337[23])∧(i70[15]* i70[23])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[23], a77675data[23]))))


(15) -> (27), if ((i8337[15] + -1* i8337[27])∧(i8324[15] + 1 + 1* i8324[27])∧(i70[15]* i70[27])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[27], a77675data[27]))))


(15) -> (30), if ((java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i70[15]* i70[30])∧(i8324[15] + 1 + 1* i8324[30])∧(i8337[15] + -1* i8337[30]))


(15) -> (33), if ((i70[15]* i70[33])∧(i8324[15] + 1 + 1* i8324[33])∧(i8337[15] + -1* i8337[33])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[33], a77675data[33]))))


(16) -> (17), if ((java.lang.Object(ARRAY(i6[16], a77675data[16])) →* java.lang.Object(ARRAY(i6[17], a77675data[17])))∧(i8337[16]* i8337[17])∧(i70[16]* i70[17])∧(java.lang.Object(java.lang.String(i8712[16])) →* java.lang.Object(java.lang.String(i8712[17])))∧(i8324[16]* i8324[17]))


(17) -> (18), if ((i8712[17] > 0 && i8324[17] > 0 && i8324[17] < i6[17] && i8337[17] > 0 && i8324[17] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i6[17], a77675data[17])) →* java.lang.Object(ARRAY(i6[18], a77675data[18])))∧(i8324[17]* i8324[18])∧(java.lang.Object(java.lang.String(i8712[17])) →* java.lang.Object(java.lang.String(i8712[18])))∧(i8337[17]* i8337[18])∧(i70[17]* i70[18]))


(18) -> (19), if ((i8337[18]* i8337[19])∧(i70[18]* i70[19])∧(i8324[18] + 1* i8417[19])∧(java.lang.Object(ARRAY(i6[18], a77675data[18])) →* java.lang.Object(ARRAY(i6[19], a77675data[19]))))


(19) -> (8), if ((i70[19]* i70[8])∧(java.lang.Object(ARRAY(i6[19], a77675data[19])) →* java.lang.Object(ARRAY(i6[8], a77675data[8])))∧(i8337[19]* i8337[8])∧(i8417[19]* i8417[8]))


(20) -> (21), if ((java.lang.Object(java.lang.String(i8712[20])) →* java.lang.Object(java.lang.String(i8712[21])))∧(i70[20]* i70[21])∧(i8337[20]* i8337[21])∧(i8324[20]* i8324[21])∧(java.lang.Object(ARRAY(i6[20], a77675data[20])) →* java.lang.Object(ARRAY(i6[21], a77675data[21]))))


(21) -> (22), if ((i8712[21] > 0 && i8324[21] > 0 && i8324[21] < i6[21] && i8337[21] > 0 && i8324[21] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i8712[21])) →* java.lang.Object(java.lang.String(i8712[22])))∧(i70[21]* i70[22])∧(i8337[21]* i8337[22])∧(i8324[21]* i8324[22])∧(java.lang.Object(ARRAY(i6[21], a77675data[21])) →* java.lang.Object(ARRAY(i6[22], a77675data[22]))))


(22) -> (8), if ((i70[22]* i70[8])∧(i8337[22]* i8337[8])∧(java.lang.Object(ARRAY(i6[22], a77675data[22])) →* java.lang.Object(ARRAY(i6[8], a77675data[8])))∧(i8324[22] + 1* i8417[8]))


(23) -> (24), if ((i8324[23]* i8324[24])∧(java.lang.Object(ARRAY(i6[23], a77675data[23])) →* java.lang.Object(ARRAY(i6[24], a77675data[24])))∧(java.lang.Object(java.lang.String(i8713[23])) →* java.lang.Object(java.lang.String(i8713[24])))∧(i8337[23]* i8337[24])∧(i70[23]* i70[24]))


(24) -> (25), if ((i70[24]* i70[25])∧(i8713[24] <= 0 && i8324[24] > 0 && i8324[24] < i6[24] && i8337[24] > 0 && i8324[24] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i6[24], a77675data[24])) →* java.lang.Object(ARRAY(i6[25], a77675data[25])))∧(java.lang.Object(java.lang.String(i8713[24])) →* java.lang.Object(java.lang.String(i8713[25])))∧(i8337[24]* i8337[25])∧(i8324[24]* i8324[25]))


(25) -> (8), if ((i8337[25]* i8337[8])∧(i8324[25] + 1* i8417[8])∧(i70[25]* i70[8])∧(java.lang.Object(ARRAY(i6[25], a77675data[25])) →* java.lang.Object(ARRAY(i6[8], a77675data[8]))))


(26) -> (12), if ((java.lang.Object(ARRAY(i6[26], a77675data[26])) →* java.lang.Object(ARRAY(i6[12], a77675data[12])))∧(i9751[26]* i9698[12])∧(i8337[26]* i8337[12])∧(i70[26]* i70[12]))


(27) -> (28), if ((i8337[27]* i8337[28])∧(i70[27]* i70[28])∧(i8324[27]* i8324[28])∧(java.lang.Object(java.lang.String(i8713[27])) →* java.lang.Object(java.lang.String(i8713[28])))∧(java.lang.Object(ARRAY(i6[27], a77675data[27])) →* java.lang.Object(ARRAY(i6[28], a77675data[28]))))


(28) -> (29), if ((java.lang.Object(java.lang.String(i8713[28])) →* java.lang.Object(java.lang.String(i8713[29])))∧(i8337[28]* i8337[29])∧(i8324[28]* i8324[29])∧(java.lang.Object(ARRAY(i6[28], a77675data[28])) →* java.lang.Object(ARRAY(i6[29], a77675data[29])))∧(i8324[28] + 1 > 0 && i8324[28] + 1 < i6[28] && i8713[28] <= 0 && i8324[28] > 0 && i8324[28] < i6[28] && i8337[28] > 0 && i8324[28] + 1 + 1 > 0* TRUE)∧(i70[28]* i70[29]))


(29) -> (12), if ((i70[29]* i70[12])∧(i8337[29]* i8337[12])∧(i8324[29] + 1 + 1* i9698[12])∧(java.lang.Object(ARRAY(i6[29], a77675data[29])) →* java.lang.Object(ARRAY(i6[12], a77675data[12]))))


(30) -> (31), if ((i70[30]* i70[31])∧(java.lang.Object(ARRAY(i6[30], a77675data[30])) →* java.lang.Object(ARRAY(i6[31], a77675data[31])))∧(i8324[30]* i8324[31])∧(java.lang.Object(java.lang.String(i8712[30])) →* java.lang.Object(java.lang.String(i8712[31])))∧(i8337[30]* i8337[31]))


(31) -> (32), if ((i8324[31]* i8324[32])∧(java.lang.Object(java.lang.String(i8712[31])) →* java.lang.Object(java.lang.String(i8712[32])))∧(i8337[31]* i8337[32])∧(java.lang.Object(ARRAY(i6[31], a77675data[31])) →* java.lang.Object(ARRAY(i6[32], a77675data[32])))∧(i70[31]* i70[32])∧(i8324[31] + 1 > 0 && i8324[31] + 1 < i6[31] && i8712[31] > 0 && i8324[31] > 0 && i8324[31] < i6[31] && i8337[31] > 0 && i8324[31] + 1 + 1 > 0* TRUE))


(32) -> (12), if ((i8324[32] + 1 + 1* i9698[12])∧(i70[32]* i70[12])∧(i8337[32]* i8337[12])∧(java.lang.Object(ARRAY(i6[32], a77675data[32])) →* java.lang.Object(ARRAY(i6[12], a77675data[12]))))


(33) -> (34), if ((java.lang.Object(java.lang.String(i8713[33])) →* java.lang.Object(java.lang.String(i8713[34])))∧(i8337[33]* i8337[34])∧(i70[33]* i70[34])∧(i8324[33]* i8324[34])∧(java.lang.Object(ARRAY(i6[33], a77675data[33])) →* java.lang.Object(ARRAY(i6[34], a77675data[34]))))


(34) -> (35), if ((i8324[34]* i8324[35])∧(java.lang.Object(ARRAY(i6[34], a77675data[34])) →* java.lang.Object(ARRAY(i6[35], a77675data[35])))∧(i70[34]* i70[35])∧(i8324[34] + 1 > 0 && i8324[34] + 1 < i6[34] && i8713[34] <= 0 && i8324[34] > 0 && i8324[34] < i6[34] && i8337[34] > 0 && i8324[34] + 1 + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i8713[34])) →* java.lang.Object(java.lang.String(i8713[35])))∧(i8337[34]* i8337[35]))


(35) -> (26), if ((i8324[35] + 1 + 1* i9751[26])∧(i8337[35]* i8337[26])∧(java.lang.Object(ARRAY(i6[35], a77675data[35])) →* java.lang.Object(ARRAY(i6[26], a77675data[26])))∧(i70[35]* i70[26]))



The set Q consists of the following terms:
Load1633(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load1633ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load24130(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load24130(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load1633ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Inc25882(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Inc30743(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP25821(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP30655(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))

(33) 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.

(34) 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): LOAD1633(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0]) → LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])
(1): LOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1]) → COND_LOAD1633ARR1(i68[1] > 0 && i68[1] < i6[1] && i70[1] > 0 && i68[1] + 1 > 0, java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])
(2): COND_LOAD1633ARR1(TRUE, java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2], i70[2]) → LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2] + 1, i70[2] + -1)
(3): LOAD24130(java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3]) → COND_LOAD24130(i8338[3] <= 0 && i70[3] > 0, java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])
(4): COND_LOAD24130(TRUE, java.lang.Object(ARRAY(i6[4], a77675data[4])), i8324[4], i70[4], i8338[4]) → LOAD1633(java.lang.Object(ARRAY(i6[4], a77675data[4])), i8324[4], i70[4] + -1)
(5): LOAD1633(java.lang.Object(ARRAY(i6[5], a2558data[5])), i68[5], i70[5]) → LOAD1633ARR2(java.lang.Object(ARRAY(i6[5], a2558data[5])), i68[5], i70[5], java.lang.Object(java.lang.String(i118[5])))
(6): LOAD1633ARR2(java.lang.Object(ARRAY(i6[6], a2558data[6])), i68[6], i70[6], java.lang.Object(java.lang.String(i118[6]))) → COND_LOAD1633ARR2(i68[6] + 1 > 0 && i68[6] + 1 < i6[6] && !(i118[6] = 0) && i68[6] > 0 && i68[6] < i6[6] && i70[6] > 0 && i68[6] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[6], a2558data[6])), i68[6], i70[6], java.lang.Object(java.lang.String(i118[6])))
(7): COND_LOAD1633ARR2(TRUE, java.lang.Object(ARRAY(i6[7], a2558data[7])), i68[7], i70[7], java.lang.Object(java.lang.String(i118[7]))) → LOAD24130(java.lang.Object(ARRAY(i6[7], a2558data[7])), i68[7] + 1 + 1, i70[7], i118[7])
(8): INC25882(java.lang.Object(ARRAY(i6[8], a77675data[8])), i8417[8], i70[8], i8337[8]) → LOAD24130(java.lang.Object(ARRAY(i6[8], a77675data[8])), i8417[8], i70[8], i8337[8] + -1)
(9): LOAD24130(java.lang.Object(ARRAY(i6[9], a77675data[9])), i8324[9], i70[9], i8337[9]) → LOAD24130ARR3(java.lang.Object(ARRAY(i6[9], a77675data[9])), i8324[9], i70[9], i8337[9], java.lang.Object(java.lang.String(i8713[9])))
(10): LOAD24130ARR3(java.lang.Object(ARRAY(i6[10], a77675data[10])), i8324[10], i70[10], i8337[10], java.lang.Object(java.lang.String(i8713[10]))) → COND_LOAD24130ARR3(i8713[10] <= 0 && i8324[10] > 0 && i8324[10] < i6[10] && i8337[10] > 0 && i8324[10] + 1 > 0, java.lang.Object(ARRAY(i6[10], a77675data[10])), i8324[10], i70[10], i8337[10], java.lang.Object(java.lang.String(i8713[10])))
(11): COND_LOAD24130ARR3(TRUE, java.lang.Object(ARRAY(i6[11], a77675data[11])), i8324[11], i70[11], i8337[11], java.lang.Object(java.lang.String(i8713[11]))) → LOAD24130(java.lang.Object(ARRAY(i6[11], a77675data[11])), i8324[11] + 1, i70[11], i8337[11] + -1)
(12): INC30743(java.lang.Object(ARRAY(i6[12], a77675data[12])), i9698[12], i70[12], i8337[12]) → LOAD24130(java.lang.Object(ARRAY(i6[12], a77675data[12])), i9698[12], i70[12], i8337[12] + -1)
(13): LOAD24130(java.lang.Object(ARRAY(i6[13], a77675data[13])), i8324[13], i70[13], i8337[13]) → LOAD24130ARR4(java.lang.Object(ARRAY(i6[13], a77675data[13])), i8324[13], i70[13], i8337[13], java.lang.Object(java.lang.String(i8712[13])))
(14): LOAD24130ARR4(java.lang.Object(ARRAY(i6[14], a77675data[14])), i8324[14], i70[14], i8337[14], java.lang.Object(java.lang.String(i8712[14]))) → COND_LOAD24130ARR4(i8324[14] + 1 > 0 && i8324[14] + 1 < i6[14] && i8712[14] > 0 && i8324[14] > 0 && i8324[14] < i6[14] && i8337[14] > 0 && i8324[14] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[14], a77675data[14])), i8324[14], i70[14], i8337[14], java.lang.Object(java.lang.String(i8712[14])))
(15): COND_LOAD24130ARR4(TRUE, java.lang.Object(ARRAY(i6[15], a77675data[15])), i8324[15], i70[15], i8337[15], java.lang.Object(java.lang.String(i8712[15]))) → LOAD24130(java.lang.Object(ARRAY(i6[15], a77675data[15])), i8324[15] + 1 + 1, i70[15], i8337[15] + -1)
(16): LOAD24130(java.lang.Object(ARRAY(i6[16], a77675data[16])), i8324[16], i70[16], i8337[16]) → LOAD24130ARR5(java.lang.Object(ARRAY(i6[16], a77675data[16])), i8324[16], i70[16], i8337[16], java.lang.Object(java.lang.String(i8712[16])))
(17): LOAD24130ARR5(java.lang.Object(ARRAY(i6[17], a77675data[17])), i8324[17], i70[17], i8337[17], java.lang.Object(java.lang.String(i8712[17]))) → COND_LOAD24130ARR5(i8712[17] > 0 && i8324[17] > 0 && i8324[17] < i6[17] && i8337[17] > 0 && i8324[17] + 1 > 0, java.lang.Object(ARRAY(i6[17], a77675data[17])), i8324[17], i70[17], i8337[17], java.lang.Object(java.lang.String(i8712[17])))
(18): COND_LOAD24130ARR5(TRUE, java.lang.Object(ARRAY(i6[18], a77675data[18])), i8324[18], i70[18], i8337[18], java.lang.Object(java.lang.String(i8712[18]))) → JMP25821'(java.lang.Object(ARRAY(i6[18], a77675data[18])), i8324[18] + 1, i70[18], i8337[18])
(19): JMP25821'(java.lang.Object(ARRAY(i6[19], a77675data[19])), i8417[19], i70[19], i8337[19]) → INC25882(java.lang.Object(ARRAY(i6[19], a77675data[19])), i8417[19], i70[19], i8337[19])
(20): LOAD24130(java.lang.Object(ARRAY(i6[20], a77675data[20])), i8324[20], i70[20], i8337[20]) → LOAD24130ARR6(java.lang.Object(ARRAY(i6[20], a77675data[20])), i8324[20], i70[20], i8337[20], java.lang.Object(java.lang.String(i8712[20])))
(21): LOAD24130ARR6(java.lang.Object(ARRAY(i6[21], a77675data[21])), i8324[21], i70[21], i8337[21], java.lang.Object(java.lang.String(i8712[21]))) → COND_LOAD24130ARR6(i8712[21] > 0 && i8324[21] > 0 && i8324[21] < i6[21] && i8337[21] > 0 && i8324[21] + 1 > 0, java.lang.Object(ARRAY(i6[21], a77675data[21])), i8324[21], i70[21], i8337[21], java.lang.Object(java.lang.String(i8712[21])))
(22): COND_LOAD24130ARR6(TRUE, java.lang.Object(ARRAY(i6[22], a77675data[22])), i8324[22], i70[22], i8337[22], java.lang.Object(java.lang.String(i8712[22]))) → INC25882(java.lang.Object(ARRAY(i6[22], a77675data[22])), i8324[22] + 1, i70[22], i8337[22])
(23): LOAD24130(java.lang.Object(ARRAY(i6[23], a77675data[23])), i8324[23], i70[23], i8337[23]) → LOAD24130ARR7(java.lang.Object(ARRAY(i6[23], a77675data[23])), i8324[23], i70[23], i8337[23], java.lang.Object(java.lang.String(i8713[23])))
(24): LOAD24130ARR7(java.lang.Object(ARRAY(i6[24], a77675data[24])), i8324[24], i70[24], i8337[24], java.lang.Object(java.lang.String(i8713[24]))) → COND_LOAD24130ARR7(i8713[24] <= 0 && i8324[24] > 0 && i8324[24] < i6[24] && i8337[24] > 0 && i8324[24] + 1 > 0, java.lang.Object(ARRAY(i6[24], a77675data[24])), i8324[24], i70[24], i8337[24], java.lang.Object(java.lang.String(i8713[24])))
(25): COND_LOAD24130ARR7(TRUE, java.lang.Object(ARRAY(i6[25], a77675data[25])), i8324[25], i70[25], i8337[25], java.lang.Object(java.lang.String(i8713[25]))) → INC25882(java.lang.Object(ARRAY(i6[25], a77675data[25])), i8324[25] + 1, i70[25], i8337[25])
(26): JMP30655'(java.lang.Object(ARRAY(i6[26], a77675data[26])), i9751[26], i70[26], i8337[26]) → INC30743(java.lang.Object(ARRAY(i6[26], a77675data[26])), i9751[26], i70[26], i8337[26])
(27): LOAD24130(java.lang.Object(ARRAY(i6[27], a77675data[27])), i8324[27], i70[27], i8337[27]) → LOAD24130ARR8(java.lang.Object(ARRAY(i6[27], a77675data[27])), i8324[27], i70[27], i8337[27], java.lang.Object(java.lang.String(i8713[27])))
(28): LOAD24130ARR8(java.lang.Object(ARRAY(i6[28], a77675data[28])), i8324[28], i70[28], i8337[28], java.lang.Object(java.lang.String(i8713[28]))) → COND_LOAD24130ARR8(i8324[28] + 1 > 0 && i8324[28] + 1 < i6[28] && i8713[28] <= 0 && i8324[28] > 0 && i8324[28] < i6[28] && i8337[28] > 0 && i8324[28] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[28], a77675data[28])), i8324[28], i70[28], i8337[28], java.lang.Object(java.lang.String(i8713[28])))
(29): COND_LOAD24130ARR8(TRUE, java.lang.Object(ARRAY(i6[29], a77675data[29])), i8324[29], i70[29], i8337[29], java.lang.Object(java.lang.String(i8713[29]))) → INC30743(java.lang.Object(ARRAY(i6[29], a77675data[29])), i8324[29] + 1 + 1, i70[29], i8337[29])
(30): LOAD24130(java.lang.Object(ARRAY(i6[30], a77675data[30])), i8324[30], i70[30], i8337[30]) → LOAD24130ARR9(java.lang.Object(ARRAY(i6[30], a77675data[30])), i8324[30], i70[30], i8337[30], java.lang.Object(java.lang.String(i8712[30])))
(31): LOAD24130ARR9(java.lang.Object(ARRAY(i6[31], a77675data[31])), i8324[31], i70[31], i8337[31], java.lang.Object(java.lang.String(i8712[31]))) → COND_LOAD24130ARR9(i8324[31] + 1 > 0 && i8324[31] + 1 < i6[31] && i8712[31] > 0 && i8324[31] > 0 && i8324[31] < i6[31] && i8337[31] > 0 && i8324[31] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[31], a77675data[31])), i8324[31], i70[31], i8337[31], java.lang.Object(java.lang.String(i8712[31])))
(32): COND_LOAD24130ARR9(TRUE, java.lang.Object(ARRAY(i6[32], a77675data[32])), i8324[32], i70[32], i8337[32], java.lang.Object(java.lang.String(i8712[32]))) → INC30743(java.lang.Object(ARRAY(i6[32], a77675data[32])), i8324[32] + 1 + 1, i70[32], i8337[32])
(33): LOAD24130(java.lang.Object(ARRAY(i6[33], a77675data[33])), i8324[33], i70[33], i8337[33]) → LOAD24130ARR10(java.lang.Object(ARRAY(i6[33], a77675data[33])), i8324[33], i70[33], i8337[33], java.lang.Object(java.lang.String(i8713[33])))
(34): LOAD24130ARR10(java.lang.Object(ARRAY(i6[34], a77675data[34])), i8324[34], i70[34], i8337[34], java.lang.Object(java.lang.String(i8713[34]))) → COND_LOAD24130ARR10(i8324[34] + 1 > 0 && i8324[34] + 1 < i6[34] && i8713[34] <= 0 && i8324[34] > 0 && i8324[34] < i6[34] && i8337[34] > 0 && i8324[34] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[34], a77675data[34])), i8324[34], i70[34], i8337[34], java.lang.Object(java.lang.String(i8713[34])))
(35): COND_LOAD24130ARR10(TRUE, java.lang.Object(ARRAY(i6[35], a77675data[35])), i8324[35], i70[35], i8337[35], java.lang.Object(java.lang.String(i8713[35]))) → JMP30655'(java.lang.Object(ARRAY(i6[35], a77675data[35])), i8324[35] + 1 + 1, i70[35], i8337[35])

(0) -> (1), if ((i70[0]* i70[1])∧(i68[0]* i68[1])∧(java.lang.Object(ARRAY(i6[0], a2558data[0])) →* java.lang.Object(ARRAY(i6[1], a2558data[1]))))


(1) -> (2), if ((java.lang.Object(ARRAY(i6[1], a2558data[1])) →* java.lang.Object(ARRAY(i6[2], a2558data[2])))∧(i68[1]* i68[2])∧(i70[1]* i70[2])∧(i68[1] > 0 && i68[1] < i6[1] && i70[1] > 0 && i68[1] + 1 > 0* TRUE))


(2) -> (0), if ((i70[2] + -1* i70[0])∧(i68[2] + 1* i68[0])∧(java.lang.Object(ARRAY(i6[2], a2558data[2])) →* java.lang.Object(ARRAY(i6[0], a2558data[0]))))


(2) -> (5), if ((i68[2] + 1* i68[5])∧(i70[2] + -1* i70[5])∧(java.lang.Object(ARRAY(i6[2], a2558data[2])) →* java.lang.Object(ARRAY(i6[5], a2558data[5]))))


(3) -> (4), if ((i8338[3] <= 0 && i70[3] > 0* TRUE)∧(i8338[3]* i8338[4])∧(java.lang.Object(ARRAY(i6[3], a77675data[3])) →* java.lang.Object(ARRAY(i6[4], a77675data[4])))∧(i70[3]* i70[4])∧(i8324[3]* i8324[4]))


(4) -> (0), if ((java.lang.Object(ARRAY(i6[4], a77675data[4])) →* java.lang.Object(ARRAY(i6[0], a2558data[0])))∧(i8324[4]* i68[0])∧(i70[4] + -1* i70[0]))


(4) -> (5), if ((i70[4] + -1* i70[5])∧(i8324[4]* i68[5])∧(java.lang.Object(ARRAY(i6[4], a77675data[4])) →* java.lang.Object(ARRAY(i6[5], a2558data[5]))))


(5) -> (6), if ((java.lang.Object(ARRAY(i6[5], a2558data[5])) →* java.lang.Object(ARRAY(i6[6], a2558data[6])))∧(i70[5]* i70[6])∧(i68[5]* i68[6])∧(java.lang.Object(java.lang.String(i118[5])) →* java.lang.Object(java.lang.String(i118[6]))))


(6) -> (7), if ((java.lang.Object(java.lang.String(i118[6])) →* java.lang.Object(java.lang.String(i118[7])))∧(i70[6]* i70[7])∧(java.lang.Object(ARRAY(i6[6], a2558data[6])) →* java.lang.Object(ARRAY(i6[7], a2558data[7])))∧(i68[6]* i68[7])∧(i68[6] + 1 > 0 && i68[6] + 1 < i6[6] && !(i118[6] = 0) && i68[6] > 0 && i68[6] < i6[6] && i70[6] > 0 && i68[6] + 1 + 1 > 0* TRUE))


(7) -> (3), if ((i70[7]* i70[3])∧(i68[7] + 1 + 1* i8324[3])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[3], a77675data[3])))∧(i118[7]* i8338[3]))


(7) -> (9), if ((i118[7]* i8337[9])∧(i68[7] + 1 + 1* i8324[9])∧(i70[7]* i70[9])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[9], a77675data[9]))))


(7) -> (13), if ((i118[7]* i8337[13])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i70[7]* i70[13])∧(i68[7] + 1 + 1* i8324[13]))


(7) -> (16), if ((java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[16], a77675data[16])))∧(i68[7] + 1 + 1* i8324[16])∧(i70[7]* i70[16])∧(i118[7]* i8337[16]))


(7) -> (20), if ((java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[20], a77675data[20])))∧(i118[7]* i8337[20])∧(i70[7]* i70[20])∧(i68[7] + 1 + 1* i8324[20]))


(7) -> (23), if ((java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[23], a77675data[23])))∧(i70[7]* i70[23])∧(i68[7] + 1 + 1* i8324[23])∧(i118[7]* i8337[23]))


(7) -> (27), if ((java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[27], a77675data[27])))∧(i68[7] + 1 + 1* i8324[27])∧(i70[7]* i70[27])∧(i118[7]* i8337[27]))


(7) -> (30), if ((i68[7] + 1 + 1* i8324[30])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i70[7]* i70[30])∧(i118[7]* i8337[30]))


(7) -> (33), if ((i118[7]* i8337[33])∧(i70[7]* i70[33])∧(i68[7] + 1 + 1* i8324[33])∧(java.lang.Object(ARRAY(i6[7], a2558data[7])) →* java.lang.Object(ARRAY(i6[33], a77675data[33]))))


(8) -> (3), if ((java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[3], a77675data[3])))∧(i70[8]* i70[3])∧(i8417[8]* i8324[3])∧(i8337[8] + -1* i8338[3]))


(8) -> (9), if ((i70[8]* i70[9])∧(i8337[8] + -1* i8337[9])∧(i8417[8]* i8324[9])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[9], a77675data[9]))))


(8) -> (13), if ((i70[8]* i70[13])∧(i8337[8] + -1* i8337[13])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i8417[8]* i8324[13]))


(8) -> (16), if ((i70[8]* i70[16])∧(i8417[8]* i8324[16])∧(i8337[8] + -1* i8337[16])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[16], a77675data[16]))))


(8) -> (20), if ((i8417[8]* i8324[20])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[20], a77675data[20])))∧(i8337[8] + -1* i8337[20])∧(i70[8]* i70[20]))


(8) -> (23), if ((i8417[8]* i8324[23])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[23], a77675data[23])))∧(i70[8]* i70[23])∧(i8337[8] + -1* i8337[23]))


(8) -> (27), if ((i8337[8] + -1* i8337[27])∧(i70[8]* i70[27])∧(i8417[8]* i8324[27])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[27], a77675data[27]))))


(8) -> (30), if ((i8337[8] + -1* i8337[30])∧(i70[8]* i70[30])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i8417[8]* i8324[30]))


(8) -> (33), if ((i8337[8] + -1* i8337[33])∧(i8417[8]* i8324[33])∧(java.lang.Object(ARRAY(i6[8], a77675data[8])) →* java.lang.Object(ARRAY(i6[33], a77675data[33])))∧(i70[8]* i70[33]))


(9) -> (10), if ((i8337[9]* i8337[10])∧(java.lang.Object(java.lang.String(i8713[9])) →* java.lang.Object(java.lang.String(i8713[10])))∧(java.lang.Object(ARRAY(i6[9], a77675data[9])) →* java.lang.Object(ARRAY(i6[10], a77675data[10])))∧(i70[9]* i70[10])∧(i8324[9]* i8324[10]))


(10) -> (11), if ((java.lang.Object(java.lang.String(i8713[10])) →* java.lang.Object(java.lang.String(i8713[11])))∧(i8713[10] <= 0 && i8324[10] > 0 && i8324[10] < i6[10] && i8337[10] > 0 && i8324[10] + 1 > 0* TRUE)∧(i8337[10]* i8337[11])∧(i8324[10]* i8324[11])∧(java.lang.Object(ARRAY(i6[10], a77675data[10])) →* java.lang.Object(ARRAY(i6[11], a77675data[11])))∧(i70[10]* i70[11]))


(11) -> (3), if ((i70[11]* i70[3])∧(i8324[11] + 1* i8324[3])∧(i8337[11] + -1* i8338[3])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[3], a77675data[3]))))


(11) -> (9), if ((i8324[11] + 1* i8324[9])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[9], a77675data[9])))∧(i8337[11] + -1* i8337[9])∧(i70[11]* i70[9]))


(11) -> (13), if ((i70[11]* i70[13])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i8337[11] + -1* i8337[13])∧(i8324[11] + 1* i8324[13]))


(11) -> (16), if ((i70[11]* i70[16])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[16], a77675data[16])))∧(i8337[11] + -1* i8337[16])∧(i8324[11] + 1* i8324[16]))


(11) -> (20), if ((i70[11]* i70[20])∧(i8337[11] + -1* i8337[20])∧(i8324[11] + 1* i8324[20])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[20], a77675data[20]))))


(11) -> (23), if ((i8337[11] + -1* i8337[23])∧(i70[11]* i70[23])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[23], a77675data[23])))∧(i8324[11] + 1* i8324[23]))


(11) -> (27), if ((java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[27], a77675data[27])))∧(i8337[11] + -1* i8337[27])∧(i70[11]* i70[27])∧(i8324[11] + 1* i8324[27]))


(11) -> (30), if ((java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i8337[11] + -1* i8337[30])∧(i70[11]* i70[30])∧(i8324[11] + 1* i8324[30]))


(11) -> (33), if ((i70[11]* i70[33])∧(i8337[11] + -1* i8337[33])∧(java.lang.Object(ARRAY(i6[11], a77675data[11])) →* java.lang.Object(ARRAY(i6[33], a77675data[33])))∧(i8324[11] + 1* i8324[33]))


(12) -> (3), if ((i70[12]* i70[3])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[3], a77675data[3])))∧(i8337[12] + -1* i8338[3])∧(i9698[12]* i8324[3]))


(12) -> (9), if ((i70[12]* i70[9])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[9], a77675data[9])))∧(i9698[12]* i8324[9])∧(i8337[12] + -1* i8337[9]))


(12) -> (13), if ((java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i70[12]* i70[13])∧(i8337[12] + -1* i8337[13])∧(i9698[12]* i8324[13]))


(12) -> (16), if ((i70[12]* i70[16])∧(i9698[12]* i8324[16])∧(i8337[12] + -1* i8337[16])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[16], a77675data[16]))))


(12) -> (20), if ((i8337[12] + -1* i8337[20])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[20], a77675data[20])))∧(i70[12]* i70[20])∧(i9698[12]* i8324[20]))


(12) -> (23), if ((i8337[12] + -1* i8337[23])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[23], a77675data[23])))∧(i9698[12]* i8324[23])∧(i70[12]* i70[23]))


(12) -> (27), if ((java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[27], a77675data[27])))∧(i8337[12] + -1* i8337[27])∧(i70[12]* i70[27])∧(i9698[12]* i8324[27]))


(12) -> (30), if ((i9698[12]* i8324[30])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i8337[12] + -1* i8337[30])∧(i70[12]* i70[30]))


(12) -> (33), if ((i70[12]* i70[33])∧(i8337[12] + -1* i8337[33])∧(i9698[12]* i8324[33])∧(java.lang.Object(ARRAY(i6[12], a77675data[12])) →* java.lang.Object(ARRAY(i6[33], a77675data[33]))))


(13) -> (14), if ((java.lang.Object(ARRAY(i6[13], a77675data[13])) →* java.lang.Object(ARRAY(i6[14], a77675data[14])))∧(i70[13]* i70[14])∧(i8324[13]* i8324[14])∧(java.lang.Object(java.lang.String(i8712[13])) →* java.lang.Object(java.lang.String(i8712[14])))∧(i8337[13]* i8337[14]))


(14) -> (15), if ((java.lang.Object(java.lang.String(i8712[14])) →* java.lang.Object(java.lang.String(i8712[15])))∧(i70[14]* i70[15])∧(i8324[14] + 1 > 0 && i8324[14] + 1 < i6[14] && i8712[14] > 0 && i8324[14] > 0 && i8324[14] < i6[14] && i8337[14] > 0 && i8324[14] + 1 + 1 > 0* TRUE)∧(i8337[14]* i8337[15])∧(i8324[14]* i8324[15])∧(java.lang.Object(ARRAY(i6[14], a77675data[14])) →* java.lang.Object(ARRAY(i6[15], a77675data[15]))))


(15) -> (3), if ((i70[15]* i70[3])∧(i8337[15] + -1* i8338[3])∧(i8324[15] + 1 + 1* i8324[3])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[3], a77675data[3]))))


(15) -> (9), if ((i70[15]* i70[9])∧(i8324[15] + 1 + 1* i8324[9])∧(i8337[15] + -1* i8337[9])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[9], a77675data[9]))))


(15) -> (13), if ((java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[13], a77675data[13])))∧(i70[15]* i70[13])∧(i8337[15] + -1* i8337[13])∧(i8324[15] + 1 + 1* i8324[13]))


(15) -> (16), if ((i70[15]* i70[16])∧(i8324[15] + 1 + 1* i8324[16])∧(i8337[15] + -1* i8337[16])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[16], a77675data[16]))))


(15) -> (20), if ((i8337[15] + -1* i8337[20])∧(i70[15]* i70[20])∧(i8324[15] + 1 + 1* i8324[20])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[20], a77675data[20]))))


(15) -> (23), if ((i8324[15] + 1 + 1* i8324[23])∧(i8337[15] + -1* i8337[23])∧(i70[15]* i70[23])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[23], a77675data[23]))))


(15) -> (27), if ((i8337[15] + -1* i8337[27])∧(i8324[15] + 1 + 1* i8324[27])∧(i70[15]* i70[27])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[27], a77675data[27]))))


(15) -> (30), if ((java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[30], a77675data[30])))∧(i70[15]* i70[30])∧(i8324[15] + 1 + 1* i8324[30])∧(i8337[15] + -1* i8337[30]))


(15) -> (33), if ((i70[15]* i70[33])∧(i8324[15] + 1 + 1* i8324[33])∧(i8337[15] + -1* i8337[33])∧(java.lang.Object(ARRAY(i6[15], a77675data[15])) →* java.lang.Object(ARRAY(i6[33], a77675data[33]))))


(16) -> (17), if ((java.lang.Object(ARRAY(i6[16], a77675data[16])) →* java.lang.Object(ARRAY(i6[17], a77675data[17])))∧(i8337[16]* i8337[17])∧(i70[16]* i70[17])∧(java.lang.Object(java.lang.String(i8712[16])) →* java.lang.Object(java.lang.String(i8712[17])))∧(i8324[16]* i8324[17]))


(17) -> (18), if ((i8712[17] > 0 && i8324[17] > 0 && i8324[17] < i6[17] && i8337[17] > 0 && i8324[17] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i6[17], a77675data[17])) →* java.lang.Object(ARRAY(i6[18], a77675data[18])))∧(i8324[17]* i8324[18])∧(java.lang.Object(java.lang.String(i8712[17])) →* java.lang.Object(java.lang.String(i8712[18])))∧(i8337[17]* i8337[18])∧(i70[17]* i70[18]))


(18) -> (19), if ((i8337[18]* i8337[19])∧(i70[18]* i70[19])∧(i8324[18] + 1* i8417[19])∧(java.lang.Object(ARRAY(i6[18], a77675data[18])) →* java.lang.Object(ARRAY(i6[19], a77675data[19]))))


(19) -> (8), if ((i70[19]* i70[8])∧(java.lang.Object(ARRAY(i6[19], a77675data[19])) →* java.lang.Object(ARRAY(i6[8], a77675data[8])))∧(i8337[19]* i8337[8])∧(i8417[19]* i8417[8]))


(20) -> (21), if ((java.lang.Object(java.lang.String(i8712[20])) →* java.lang.Object(java.lang.String(i8712[21])))∧(i70[20]* i70[21])∧(i8337[20]* i8337[21])∧(i8324[20]* i8324[21])∧(java.lang.Object(ARRAY(i6[20], a77675data[20])) →* java.lang.Object(ARRAY(i6[21], a77675data[21]))))


(21) -> (22), if ((i8712[21] > 0 && i8324[21] > 0 && i8324[21] < i6[21] && i8337[21] > 0 && i8324[21] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i8712[21])) →* java.lang.Object(java.lang.String(i8712[22])))∧(i70[21]* i70[22])∧(i8337[21]* i8337[22])∧(i8324[21]* i8324[22])∧(java.lang.Object(ARRAY(i6[21], a77675data[21])) →* java.lang.Object(ARRAY(i6[22], a77675data[22]))))


(22) -> (8), if ((i70[22]* i70[8])∧(i8337[22]* i8337[8])∧(java.lang.Object(ARRAY(i6[22], a77675data[22])) →* java.lang.Object(ARRAY(i6[8], a77675data[8])))∧(i8324[22] + 1* i8417[8]))


(23) -> (24), if ((i8324[23]* i8324[24])∧(java.lang.Object(ARRAY(i6[23], a77675data[23])) →* java.lang.Object(ARRAY(i6[24], a77675data[24])))∧(java.lang.Object(java.lang.String(i8713[23])) →* java.lang.Object(java.lang.String(i8713[24])))∧(i8337[23]* i8337[24])∧(i70[23]* i70[24]))


(24) -> (25), if ((i70[24]* i70[25])∧(i8713[24] <= 0 && i8324[24] > 0 && i8324[24] < i6[24] && i8337[24] > 0 && i8324[24] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i6[24], a77675data[24])) →* java.lang.Object(ARRAY(i6[25], a77675data[25])))∧(java.lang.Object(java.lang.String(i8713[24])) →* java.lang.Object(java.lang.String(i8713[25])))∧(i8337[24]* i8337[25])∧(i8324[24]* i8324[25]))


(25) -> (8), if ((i8337[25]* i8337[8])∧(i8324[25] + 1* i8417[8])∧(i70[25]* i70[8])∧(java.lang.Object(ARRAY(i6[25], a77675data[25])) →* java.lang.Object(ARRAY(i6[8], a77675data[8]))))


(26) -> (12), if ((java.lang.Object(ARRAY(i6[26], a77675data[26])) →* java.lang.Object(ARRAY(i6[12], a77675data[12])))∧(i9751[26]* i9698[12])∧(i8337[26]* i8337[12])∧(i70[26]* i70[12]))


(27) -> (28), if ((i8337[27]* i8337[28])∧(i70[27]* i70[28])∧(i8324[27]* i8324[28])∧(java.lang.Object(java.lang.String(i8713[27])) →* java.lang.Object(java.lang.String(i8713[28])))∧(java.lang.Object(ARRAY(i6[27], a77675data[27])) →* java.lang.Object(ARRAY(i6[28], a77675data[28]))))


(28) -> (29), if ((java.lang.Object(java.lang.String(i8713[28])) →* java.lang.Object(java.lang.String(i8713[29])))∧(i8337[28]* i8337[29])∧(i8324[28]* i8324[29])∧(java.lang.Object(ARRAY(i6[28], a77675data[28])) →* java.lang.Object(ARRAY(i6[29], a77675data[29])))∧(i8324[28] + 1 > 0 && i8324[28] + 1 < i6[28] && i8713[28] <= 0 && i8324[28] > 0 && i8324[28] < i6[28] && i8337[28] > 0 && i8324[28] + 1 + 1 > 0* TRUE)∧(i70[28]* i70[29]))


(29) -> (12), if ((i70[29]* i70[12])∧(i8337[29]* i8337[12])∧(i8324[29] + 1 + 1* i9698[12])∧(java.lang.Object(ARRAY(i6[29], a77675data[29])) →* java.lang.Object(ARRAY(i6[12], a77675data[12]))))


(30) -> (31), if ((i70[30]* i70[31])∧(java.lang.Object(ARRAY(i6[30], a77675data[30])) →* java.lang.Object(ARRAY(i6[31], a77675data[31])))∧(i8324[30]* i8324[31])∧(java.lang.Object(java.lang.String(i8712[30])) →* java.lang.Object(java.lang.String(i8712[31])))∧(i8337[30]* i8337[31]))


(31) -> (32), if ((i8324[31]* i8324[32])∧(java.lang.Object(java.lang.String(i8712[31])) →* java.lang.Object(java.lang.String(i8712[32])))∧(i8337[31]* i8337[32])∧(java.lang.Object(ARRAY(i6[31], a77675data[31])) →* java.lang.Object(ARRAY(i6[32], a77675data[32])))∧(i70[31]* i70[32])∧(i8324[31] + 1 > 0 && i8324[31] + 1 < i6[31] && i8712[31] > 0 && i8324[31] > 0 && i8324[31] < i6[31] && i8337[31] > 0 && i8324[31] + 1 + 1 > 0* TRUE))


(32) -> (12), if ((i8324[32] + 1 + 1* i9698[12])∧(i70[32]* i70[12])∧(i8337[32]* i8337[12])∧(java.lang.Object(ARRAY(i6[32], a77675data[32])) →* java.lang.Object(ARRAY(i6[12], a77675data[12]))))


(33) -> (34), if ((java.lang.Object(java.lang.String(i8713[33])) →* java.lang.Object(java.lang.String(i8713[34])))∧(i8337[33]* i8337[34])∧(i70[33]* i70[34])∧(i8324[33]* i8324[34])∧(java.lang.Object(ARRAY(i6[33], a77675data[33])) →* java.lang.Object(ARRAY(i6[34], a77675data[34]))))


(34) -> (35), if ((i8324[34]* i8324[35])∧(java.lang.Object(ARRAY(i6[34], a77675data[34])) →* java.lang.Object(ARRAY(i6[35], a77675data[35])))∧(i70[34]* i70[35])∧(i8324[34] + 1 > 0 && i8324[34] + 1 < i6[34] && i8713[34] <= 0 && i8324[34] > 0 && i8324[34] < i6[34] && i8337[34] > 0 && i8324[34] + 1 + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i8713[34])) →* java.lang.Object(java.lang.String(i8713[35])))∧(i8337[34]* i8337[35]))


(35) -> (26), if ((i8324[35] + 1 + 1* i9751[26])∧(i8337[35]* i8337[26])∧(java.lang.Object(ARRAY(i6[35], a77675data[35])) →* java.lang.Object(ARRAY(i6[26], a77675data[26])))∧(i70[35]* i70[26]))



The set Q consists of the following terms:
Load1633(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load1633ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load24130(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load24130(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load1633ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Inc25882(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Inc30743(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP25821(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP30655(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))

(35) ItpfGraphProof (EQUIVALENT transformation)

Applied rule ItpfICap [ICap]

(36) 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): LOAD1633(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0]) → LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])
(1): LOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1]) → COND_LOAD1633ARR1(i68[1] > 0 && i68[1] < i6[1] && i70[1] > 0 && i68[1] + 1 > 0, java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])
(2): COND_LOAD1633ARR1(TRUE, java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2], i70[2]) → LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2] + 1, i70[2] + -1)
(3): LOAD24130(java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3]) → COND_LOAD24130(i8338[3] <= 0 && i70[3] > 0, java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])
(4): COND_LOAD24130(TRUE, java.lang.Object(ARRAY(i6[4], a77675data[4])), i8324[4], i70[4], i8338[4]) → LOAD1633(java.lang.Object(ARRAY(i6[4], a77675data[4])), i8324[4], i70[4] + -1)
(5): LOAD1633(java.lang.Object(ARRAY(i6[5], a2558data[5])), i68[5], i70[5]) → LOAD1633ARR2(java.lang.Object(ARRAY(i6[5], a2558data[5])), i68[5], i70[5], java.lang.Object(java.lang.String(i118[5])))
(6): LOAD1633ARR2(java.lang.Object(ARRAY(i6[6], a2558data[6])), i68[6], i70[6], java.lang.Object(java.lang.String(i118[6]))) → COND_LOAD1633ARR2(i68[6] + 1 > 0 && i68[6] + 1 < i6[6] && !(i118[6] = 0) && i68[6] > 0 && i68[6] < i6[6] && i70[6] > 0 && i68[6] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[6], a2558data[6])), i68[6], i70[6], java.lang.Object(java.lang.String(i118[6])))
(7): COND_LOAD1633ARR2(TRUE, java.lang.Object(ARRAY(i6[7], a2558data[7])), i68[7], i70[7], java.lang.Object(java.lang.String(i118[7]))) → LOAD24130(java.lang.Object(ARRAY(i6[7], a2558data[7])), i68[7] + 1 + 1, i70[7], i118[7])
(8): INC25882(java.lang.Object(ARRAY(i6[8], a77675data[8])), i8417[8], i70[8], i8337[8]) → LOAD24130(java.lang.Object(ARRAY(i6[8], a77675data[8])), i8417[8], i70[8], i8337[8] + -1)
(9): LOAD24130(java.lang.Object(ARRAY(i6[9], a77675data[9])), i8324[9], i70[9], i8337[9]) → LOAD24130ARR3(java.lang.Object(ARRAY(i6[9], a77675data[9])), i8324[9], i70[9], i8337[9], java.lang.Object(java.lang.String(i8713[9])))
(10): LOAD24130ARR3(java.lang.Object(ARRAY(i6[10], a77675data[10])), i8324[10], i70[10], i8337[10], java.lang.Object(java.lang.String(i8713[10]))) → COND_LOAD24130ARR3(i8713[10] <= 0 && i8324[10] > 0 && i8324[10] < i6[10] && i8337[10] > 0 && i8324[10] + 1 > 0, java.lang.Object(ARRAY(i6[10], a77675data[10])), i8324[10], i70[10], i8337[10], java.lang.Object(java.lang.String(i8713[10])))
(11): COND_LOAD24130ARR3(TRUE, java.lang.Object(ARRAY(i6[11], a77675data[11])), i8324[11], i70[11], i8337[11], java.lang.Object(java.lang.String(i8713[11]))) → LOAD24130(java.lang.Object(ARRAY(i6[11], a77675data[11])), i8324[11] + 1, i70[11], i8337[11] + -1)
(12): INC30743(java.lang.Object(ARRAY(i6[12], a77675data[12])), i9698[12], i70[12], i8337[12]) → LOAD24130(java.lang.Object(ARRAY(i6[12], a77675data[12])), i9698[12], i70[12], i8337[12] + -1)
(13): LOAD24130(java.lang.Object(ARRAY(i6[13], a77675data[13])), i8324[13], i70[13], i8337[13]) → LOAD24130ARR4(java.lang.Object(ARRAY(i6[13], a77675data[13])), i8324[13], i70[13], i8337[13], java.lang.Object(java.lang.String(i8712[13])))
(14): LOAD24130ARR4(java.lang.Object(ARRAY(i6[14], a77675data[14])), i8324[14], i70[14], i8337[14], java.lang.Object(java.lang.String(i8712[14]))) → COND_LOAD24130ARR4(i8324[14] + 1 > 0 && i8324[14] + 1 < i6[14] && i8712[14] > 0 && i8324[14] > 0 && i8324[14] < i6[14] && i8337[14] > 0 && i8324[14] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[14], a77675data[14])), i8324[14], i70[14], i8337[14], java.lang.Object(java.lang.String(i8712[14])))
(15): COND_LOAD24130ARR4(TRUE, java.lang.Object(ARRAY(i6[15], a77675data[15])), i8324[15], i70[15], i8337[15], java.lang.Object(java.lang.String(i8712[15]))) → LOAD24130(java.lang.Object(ARRAY(i6[15], a77675data[15])), i8324[15] + 1 + 1, i70[15], i8337[15] + -1)
(16): LOAD24130(java.lang.Object(ARRAY(i6[16], a77675data[16])), i8324[16], i70[16], i8337[16]) → LOAD24130ARR5(java.lang.Object(ARRAY(i6[16], a77675data[16])), i8324[16], i70[16], i8337[16], java.lang.Object(java.lang.String(i8712[16])))
(17): LOAD24130ARR5(java.lang.Object(ARRAY(i6[17], a77675data[17])), i8324[17], i70[17], i8337[17], java.lang.Object(java.lang.String(i8712[17]))) → COND_LOAD24130ARR5(i8712[17] > 0 && i8324[17] > 0 && i8324[17] < i6[17] && i8337[17] > 0 && i8324[17] + 1 > 0, java.lang.Object(ARRAY(i6[17], a77675data[17])), i8324[17], i70[17], i8337[17], java.lang.Object(java.lang.String(i8712[17])))
(18): COND_LOAD24130ARR5(TRUE, java.lang.Object(ARRAY(i6[18], a77675data[18])), i8324[18], i70[18], i8337[18], java.lang.Object(java.lang.String(i8712[18]))) → JMP25821'(java.lang.Object(ARRAY(i6[18], a77675data[18])), i8324[18] + 1, i70[18], i8337[18])
(19): JMP25821'(java.lang.Object(ARRAY(i6[19], a77675data[19])), i8417[19], i70[19], i8337[19]) → INC25882(java.lang.Object(ARRAY(i6[19], a77675data[19])), i8417[19], i70[19], i8337[19])
(20): LOAD24130(java.lang.Object(ARRAY(i6[20], a77675data[20])), i8324[20], i70[20], i8337[20]) → LOAD24130ARR6(java.lang.Object(ARRAY(i6[20], a77675data[20])), i8324[20], i70[20], i8337[20], java.lang.Object(java.lang.String(i8712[20])))
(21): LOAD24130ARR6(java.lang.Object(ARRAY(i6[21], a77675data[21])), i8324[21], i70[21], i8337[21], java.lang.Object(java.lang.String(i8712[21]))) → COND_LOAD24130ARR6(i8712[21] > 0 && i8324[21] > 0 && i8324[21] < i6[21] && i8337[21] > 0 && i8324[21] + 1 > 0, java.lang.Object(ARRAY(i6[21], a77675data[21])), i8324[21], i70[21], i8337[21], java.lang.Object(java.lang.String(i8712[21])))
(22): COND_LOAD24130ARR6(TRUE, java.lang.Object(ARRAY(i6[22], a77675data[22])), i8324[22], i70[22], i8337[22], java.lang.Object(java.lang.String(i8712[22]))) → INC25882(java.lang.Object(ARRAY(i6[22], a77675data[22])), i8324[22] + 1, i70[22], i8337[22])
(23): LOAD24130(java.lang.Object(ARRAY(i6[23], a77675data[23])), i8324[23], i70[23], i8337[23]) → LOAD24130ARR7(java.lang.Object(ARRAY(i6[23], a77675data[23])), i8324[23], i70[23], i8337[23], java.lang.Object(java.lang.String(i8713[23])))
(24): LOAD24130ARR7(java.lang.Object(ARRAY(i6[24], a77675data[24])), i8324[24], i70[24], i8337[24], java.lang.Object(java.lang.String(i8713[24]))) → COND_LOAD24130ARR7(i8713[24] <= 0 && i8324[24] > 0 && i8324[24] < i6[24] && i8337[24] > 0 && i8324[24] + 1 > 0, java.lang.Object(ARRAY(i6[24], a77675data[24])), i8324[24], i70[24], i8337[24], java.lang.Object(java.lang.String(i8713[24])))
(25): COND_LOAD24130ARR7(TRUE, java.lang.Object(ARRAY(i6[25], a77675data[25])), i8324[25], i70[25], i8337[25], java.lang.Object(java.lang.String(i8713[25]))) → INC25882(java.lang.Object(ARRAY(i6[25], a77675data[25])), i8324[25] + 1, i70[25], i8337[25])
(26): JMP30655'(java.lang.Object(ARRAY(i6[26], a77675data[26])), i9751[26], i70[26], i8337[26]) → INC30743(java.lang.Object(ARRAY(i6[26], a77675data[26])), i9751[26], i70[26], i8337[26])
(27): LOAD24130(java.lang.Object(ARRAY(i6[27], a77675data[27])), i8324[27], i70[27], i8337[27]) → LOAD24130ARR8(java.lang.Object(ARRAY(i6[27], a77675data[27])), i8324[27], i70[27], i8337[27], java.lang.Object(java.lang.String(i8713[27])))
(28): LOAD24130ARR8(java.lang.Object(ARRAY(i6[28], a77675data[28])), i8324[28], i70[28], i8337[28], java.lang.Object(java.lang.String(i8713[28]))) → COND_LOAD24130ARR8(i8324[28] + 1 > 0 && i8324[28] + 1 < i6[28] && i8713[28] <= 0 && i8324[28] > 0 && i8324[28] < i6[28] && i8337[28] > 0 && i8324[28] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[28], a77675data[28])), i8324[28], i70[28], i8337[28], java.lang.Object(java.lang.String(i8713[28])))
(29): COND_LOAD24130ARR8(TRUE, java.lang.Object(ARRAY(i6[29], a77675data[29])), i8324[29], i70[29], i8337[29], java.lang.Object(java.lang.String(i8713[29]))) → INC30743(java.lang.Object(ARRAY(i6[29], a77675data[29])), i8324[29] + 1 + 1, i70[29], i8337[29])
(30): LOAD24130(java.lang.Object(ARRAY(i6[30], a77675data[30])), i8324[30], i70[30], i8337[30]) → LOAD24130ARR9(java.lang.Object(ARRAY(i6[30], a77675data[30])), i8324[30], i70[30], i8337[30], java.lang.Object(java.lang.String(i8712[30])))
(31): LOAD24130ARR9(java.lang.Object(ARRAY(i6[31], a77675data[31])), i8324[31], i70[31], i8337[31], java.lang.Object(java.lang.String(i8712[31]))) → COND_LOAD24130ARR9(i8324[31] + 1 > 0 && i8324[31] + 1 < i6[31] && i8712[31] > 0 && i8324[31] > 0 && i8324[31] < i6[31] && i8337[31] > 0 && i8324[31] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[31], a77675data[31])), i8324[31], i70[31], i8337[31], java.lang.Object(java.lang.String(i8712[31])))
(32): COND_LOAD24130ARR9(TRUE, java.lang.Object(ARRAY(i6[32], a77675data[32])), i8324[32], i70[32], i8337[32], java.lang.Object(java.lang.String(i8712[32]))) → INC30743(java.lang.Object(ARRAY(i6[32], a77675data[32])), i8324[32] + 1 + 1, i70[32], i8337[32])
(33): LOAD24130(java.lang.Object(ARRAY(i6[33], a77675data[33])), i8324[33], i70[33], i8337[33]) → LOAD24130ARR10(java.lang.Object(ARRAY(i6[33], a77675data[33])), i8324[33], i70[33], i8337[33], java.lang.Object(java.lang.String(i8713[33])))
(34): LOAD24130ARR10(java.lang.Object(ARRAY(i6[34], a77675data[34])), i8324[34], i70[34], i8337[34], java.lang.Object(java.lang.String(i8713[34]))) → COND_LOAD24130ARR10(i8324[34] + 1 > 0 && i8324[34] + 1 < i6[34] && i8713[34] <= 0 && i8324[34] > 0 && i8324[34] < i6[34] && i8337[34] > 0 && i8324[34] + 1 + 1 > 0, java.lang.Object(ARRAY(i6[34], a77675data[34])), i8324[34], i70[34], i8337[34], java.lang.Object(java.lang.String(i8713[34])))
(35): COND_LOAD24130ARR10(TRUE, java.lang.Object(ARRAY(i6[35], a77675data[35])), i8324[35], i70[35], i8337[35], java.lang.Object(java.lang.String(i8713[35]))) → JMP30655'(java.lang.Object(ARRAY(i6[35], a77675data[35])), i8324[35] + 1 + 1, i70[35], i8337[35])

(0) -> (1), if ((i70[0]* i70[1])∧(i68[0]* i68[1])∧((i6[0]* i6[1])∧(a2558data[0]* a2558data[1])))


(1) -> (2), if (((i6[1]* i6[2])∧(a2558data[1]* a2558data[2]))∧(i68[1]* i68[2])∧(i70[1]* i70[2])∧(i68[1] > 0 && i68[1] < i6[1] && i70[1] > 0 && i68[1] + 1 > 0* TRUE))


(2) -> (0), if ((i70[2] + -1* i70[0])∧(i68[2] + 1* i68[0])∧((i6[2]* i6[0])∧(a2558data[2]* a2558data[0])))


(2) -> (5), if ((i68[2] + 1* i68[5])∧(i70[2] + -1* i70[5])∧((i6[2]* i6[5])∧(a2558data[2]* a2558data[5])))


(3) -> (4), if ((i8338[3] <= 0 && i70[3] > 0* TRUE)∧(i8338[3]* i8338[4])∧((i6[3]* i6[4])∧(a77675data[3]* a77675data[4]))∧(i70[3]* i70[4])∧(i8324[3]* i8324[4]))


(4) -> (0), if (((i6[4]* i6[0])∧(a77675data[4]* a2558data[0]))∧(i8324[4]* i68[0])∧(i70[4] + -1* i70[0]))


(4) -> (5), if ((i70[4] + -1* i70[5])∧(i8324[4]* i68[5])∧((i6[4]* i6[5])∧(a77675data[4]* a2558data[5])))


(5) -> (6), if (((i6[5]* i6[6])∧(a2558data[5]* a2558data[6]))∧(i70[5]* i70[6])∧(i68[5]* i68[6])∧((i118[5]* i118[6])))


(6) -> (7), if (((i118[6]* i118[7]))∧(i70[6]* i70[7])∧((i6[6]* i6[7])∧(a2558data[6]* a2558data[7]))∧(i68[6]* i68[7])∧(i68[6] + 1 > 0 && i68[6] + 1 < i6[6] && !(i118[6] = 0) && i68[6] > 0 && i68[6] < i6[6] && i70[6] > 0 && i68[6] + 1 + 1 > 0* TRUE))


(7) -> (3), if ((i70[7]* i70[3])∧(i68[7] + 1 + 1* i8324[3])∧((i6[7]* i6[3])∧(a2558data[7]* a77675data[3]))∧(i118[7]* i8338[3]))


(7) -> (9), if ((i118[7]* i8337[9])∧(i68[7] + 1 + 1* i8324[9])∧(i70[7]* i70[9])∧((i6[7]* i6[9])∧(a2558data[7]* a77675data[9])))


(7) -> (13), if ((i118[7]* i8337[13])∧((i6[7]* i6[13])∧(a2558data[7]* a77675data[13]))∧(i70[7]* i70[13])∧(i68[7] + 1 + 1* i8324[13]))


(7) -> (16), if (((i6[7]* i6[16])∧(a2558data[7]* a77675data[16]))∧(i68[7] + 1 + 1* i8324[16])∧(i70[7]* i70[16])∧(i118[7]* i8337[16]))


(7) -> (20), if (((i6[7]* i6[20])∧(a2558data[7]* a77675data[20]))∧(i118[7]* i8337[20])∧(i70[7]* i70[20])∧(i68[7] + 1 + 1* i8324[20]))


(7) -> (23), if (((i6[7]* i6[23])∧(a2558data[7]* a77675data[23]))∧(i70[7]* i70[23])∧(i68[7] + 1 + 1* i8324[23])∧(i118[7]* i8337[23]))


(7) -> (27), if (((i6[7]* i6[27])∧(a2558data[7]* a77675data[27]))∧(i68[7] + 1 + 1* i8324[27])∧(i70[7]* i70[27])∧(i118[7]* i8337[27]))


(7) -> (30), if ((i68[7] + 1 + 1* i8324[30])∧((i6[7]* i6[30])∧(a2558data[7]* a77675data[30]))∧(i70[7]* i70[30])∧(i118[7]* i8337[30]))


(7) -> (33), if ((i118[7]* i8337[33])∧(i70[7]* i70[33])∧(i68[7] + 1 + 1* i8324[33])∧((i6[7]* i6[33])∧(a2558data[7]* a77675data[33])))


(8) -> (3), if (((i6[8]* i6[3])∧(a77675data[8]* a77675data[3]))∧(i70[8]* i70[3])∧(i8417[8]* i8324[3])∧(i8337[8] + -1* i8338[3]))


(8) -> (9), if ((i70[8]* i70[9])∧(i8337[8] + -1* i8337[9])∧(i8417[8]* i8324[9])∧((i6[8]* i6[9])∧(a77675data[8]* a77675data[9])))


(8) -> (13), if ((i70[8]* i70[13])∧(i8337[8] + -1* i8337[13])∧((i6[8]* i6[13])∧(a77675data[8]* a77675data[13]))∧(i8417[8]* i8324[13]))


(8) -> (16), if ((i70[8]* i70[16])∧(i8417[8]* i8324[16])∧(i8337[8] + -1* i8337[16])∧((i6[8]* i6[16])∧(a77675data[8]* a77675data[16])))


(8) -> (20), if ((i8417[8]* i8324[20])∧((i6[8]* i6[20])∧(a77675data[8]* a77675data[20]))∧(i8337[8] + -1* i8337[20])∧(i70[8]* i70[20]))


(8) -> (23), if ((i8417[8]* i8324[23])∧((i6[8]* i6[23])∧(a77675data[8]* a77675data[23]))∧(i70[8]* i70[23])∧(i8337[8] + -1* i8337[23]))


(8) -> (27), if ((i8337[8] + -1* i8337[27])∧(i70[8]* i70[27])∧(i8417[8]* i8324[27])∧((i6[8]* i6[27])∧(a77675data[8]* a77675data[27])))


(8) -> (30), if ((i8337[8] + -1* i8337[30])∧(i70[8]* i70[30])∧((i6[8]* i6[30])∧(a77675data[8]* a77675data[30]))∧(i8417[8]* i8324[30]))


(8) -> (33), if ((i8337[8] + -1* i8337[33])∧(i8417[8]* i8324[33])∧((i6[8]* i6[33])∧(a77675data[8]* a77675data[33]))∧(i70[8]* i70[33]))


(9) -> (10), if ((i8337[9]* i8337[10])∧((i8713[9]* i8713[10]))∧((i6[9]* i6[10])∧(a77675data[9]* a77675data[10]))∧(i70[9]* i70[10])∧(i8324[9]* i8324[10]))


(10) -> (11), if (((i8713[10]* i8713[11]))∧(i8713[10] <= 0 && i8324[10] > 0 && i8324[10] < i6[10] && i8337[10] > 0 && i8324[10] + 1 > 0* TRUE)∧(i8337[10]* i8337[11])∧(i8324[10]* i8324[11])∧((i6[10]* i6[11])∧(a77675data[10]* a77675data[11]))∧(i70[10]* i70[11]))


(11) -> (3), if ((i70[11]* i70[3])∧(i8324[11] + 1* i8324[3])∧(i8337[11] + -1* i8338[3])∧((i6[11]* i6[3])∧(a77675data[11]* a77675data[3])))


(11) -> (9), if ((i8324[11] + 1* i8324[9])∧((i6[11]* i6[9])∧(a77675data[11]* a77675data[9]))∧(i8337[11] + -1* i8337[9])∧(i70[11]* i70[9]))


(11) -> (13), if ((i70[11]* i70[13])∧((i6[11]* i6[13])∧(a77675data[11]* a77675data[13]))∧(i8337[11] + -1* i8337[13])∧(i8324[11] + 1* i8324[13]))


(11) -> (16), if ((i70[11]* i70[16])∧((i6[11]* i6[16])∧(a77675data[11]* a77675data[16]))∧(i8337[11] + -1* i8337[16])∧(i8324[11] + 1* i8324[16]))


(11) -> (20), if ((i70[11]* i70[20])∧(i8337[11] + -1* i8337[20])∧(i8324[11] + 1* i8324[20])∧((i6[11]* i6[20])∧(a77675data[11]* a77675data[20])))


(11) -> (23), if ((i8337[11] + -1* i8337[23])∧(i70[11]* i70[23])∧((i6[11]* i6[23])∧(a77675data[11]* a77675data[23]))∧(i8324[11] + 1* i8324[23]))


(11) -> (27), if (((i6[11]* i6[27])∧(a77675data[11]* a77675data[27]))∧(i8337[11] + -1* i8337[27])∧(i70[11]* i70[27])∧(i8324[11] + 1* i8324[27]))


(11) -> (30), if (((i6[11]* i6[30])∧(a77675data[11]* a77675data[30]))∧(i8337[11] + -1* i8337[30])∧(i70[11]* i70[30])∧(i8324[11] + 1* i8324[30]))


(11) -> (33), if ((i70[11]* i70[33])∧(i8337[11] + -1* i8337[33])∧((i6[11]* i6[33])∧(a77675data[11]* a77675data[33]))∧(i8324[11] + 1* i8324[33]))


(12) -> (3), if ((i70[12]* i70[3])∧((i6[12]* i6[3])∧(a77675data[12]* a77675data[3]))∧(i8337[12] + -1* i8338[3])∧(i9698[12]* i8324[3]))


(12) -> (9), if ((i70[12]* i70[9])∧((i6[12]* i6[9])∧(a77675data[12]* a77675data[9]))∧(i9698[12]* i8324[9])∧(i8337[12] + -1* i8337[9]))


(12) -> (13), if (((i6[12]* i6[13])∧(a77675data[12]* a77675data[13]))∧(i70[12]* i70[13])∧(i8337[12] + -1* i8337[13])∧(i9698[12]* i8324[13]))


(12) -> (16), if ((i70[12]* i70[16])∧(i9698[12]* i8324[16])∧(i8337[12] + -1* i8337[16])∧((i6[12]* i6[16])∧(a77675data[12]* a77675data[16])))


(12) -> (20), if ((i8337[12] + -1* i8337[20])∧((i6[12]* i6[20])∧(a77675data[12]* a77675data[20]))∧(i70[12]* i70[20])∧(i9698[12]* i8324[20]))


(12) -> (23), if ((i8337[12] + -1* i8337[23])∧((i6[12]* i6[23])∧(a77675data[12]* a77675data[23]))∧(i9698[12]* i8324[23])∧(i70[12]* i70[23]))


(12) -> (27), if (((i6[12]* i6[27])∧(a77675data[12]* a77675data[27]))∧(i8337[12] + -1* i8337[27])∧(i70[12]* i70[27])∧(i9698[12]* i8324[27]))


(12) -> (30), if ((i9698[12]* i8324[30])∧((i6[12]* i6[30])∧(a77675data[12]* a77675data[30]))∧(i8337[12] + -1* i8337[30])∧(i70[12]* i70[30]))


(12) -> (33), if ((i70[12]* i70[33])∧(i8337[12] + -1* i8337[33])∧(i9698[12]* i8324[33])∧((i6[12]* i6[33])∧(a77675data[12]* a77675data[33])))


(13) -> (14), if (((i6[13]* i6[14])∧(a77675data[13]* a77675data[14]))∧(i70[13]* i70[14])∧(i8324[13]* i8324[14])∧((i8712[13]* i8712[14]))∧(i8337[13]* i8337[14]))


(14) -> (15), if (((i8712[14]* i8712[15]))∧(i70[14]* i70[15])∧(i8324[14] + 1 > 0 && i8324[14] + 1 < i6[14] && i8712[14] > 0 && i8324[14] > 0 && i8324[14] < i6[14] && i8337[14] > 0 && i8324[14] + 1 + 1 > 0* TRUE)∧(i8337[14]* i8337[15])∧(i8324[14]* i8324[15])∧((i6[14]* i6[15])∧(a77675data[14]* a77675data[15])))


(15) -> (3), if ((i70[15]* i70[3])∧(i8337[15] + -1* i8338[3])∧(i8324[15] + 1 + 1* i8324[3])∧((i6[15]* i6[3])∧(a77675data[15]* a77675data[3])))


(15) -> (9), if ((i70[15]* i70[9])∧(i8324[15] + 1 + 1* i8324[9])∧(i8337[15] + -1* i8337[9])∧((i6[15]* i6[9])∧(a77675data[15]* a77675data[9])))


(15) -> (13), if (((i6[15]* i6[13])∧(a77675data[15]* a77675data[13]))∧(i70[15]* i70[13])∧(i8337[15] + -1* i8337[13])∧(i8324[15] + 1 + 1* i8324[13]))


(15) -> (16), if ((i70[15]* i70[16])∧(i8324[15] + 1 + 1* i8324[16])∧(i8337[15] + -1* i8337[16])∧((i6[15]* i6[16])∧(a77675data[15]* a77675data[16])))


(15) -> (20), if ((i8337[15] + -1* i8337[20])∧(i70[15]* i70[20])∧(i8324[15] + 1 + 1* i8324[20])∧((i6[15]* i6[20])∧(a77675data[15]* a77675data[20])))


(15) -> (23), if ((i8324[15] + 1 + 1* i8324[23])∧(i8337[15] + -1* i8337[23])∧(i70[15]* i70[23])∧((i6[15]* i6[23])∧(a77675data[15]* a77675data[23])))


(15) -> (27), if ((i8337[15] + -1* i8337[27])∧(i8324[15] + 1 + 1* i8324[27])∧(i70[15]* i70[27])∧((i6[15]* i6[27])∧(a77675data[15]* a77675data[27])))


(15) -> (30), if (((i6[15]* i6[30])∧(a77675data[15]* a77675data[30]))∧(i70[15]* i70[30])∧(i8324[15] + 1 + 1* i8324[30])∧(i8337[15] + -1* i8337[30]))


(15) -> (33), if ((i70[15]* i70[33])∧(i8324[15] + 1 + 1* i8324[33])∧(i8337[15] + -1* i8337[33])∧((i6[15]* i6[33])∧(a77675data[15]* a77675data[33])))


(16) -> (17), if (((i6[16]* i6[17])∧(a77675data[16]* a77675data[17]))∧(i8337[16]* i8337[17])∧(i70[16]* i70[17])∧((i8712[16]* i8712[17]))∧(i8324[16]* i8324[17]))


(17) -> (18), if ((i8712[17] > 0 && i8324[17] > 0 && i8324[17] < i6[17] && i8337[17] > 0 && i8324[17] + 1 > 0* TRUE)∧((i6[17]* i6[18])∧(a77675data[17]* a77675data[18]))∧(i8324[17]* i8324[18])∧((i8712[17]* i8712[18]))∧(i8337[17]* i8337[18])∧(i70[17]* i70[18]))


(18) -> (19), if ((i8337[18]* i8337[19])∧(i70[18]* i70[19])∧(i8324[18] + 1* i8417[19])∧((i6[18]* i6[19])∧(a77675data[18]* a77675data[19])))


(19) -> (8), if ((i70[19]* i70[8])∧((i6[19]* i6[8])∧(a77675data[19]* a77675data[8]))∧(i8337[19]* i8337[8])∧(i8417[19]* i8417[8]))


(20) -> (21), if (((i8712[20]* i8712[21]))∧(i70[20]* i70[21])∧(i8337[20]* i8337[21])∧(i8324[20]* i8324[21])∧((i6[20]* i6[21])∧(a77675data[20]* a77675data[21])))


(21) -> (22), if ((i8712[21] > 0 && i8324[21] > 0 && i8324[21] < i6[21] && i8337[21] > 0 && i8324[21] + 1 > 0* TRUE)∧((i8712[21]* i8712[22]))∧(i70[21]* i70[22])∧(i8337[21]* i8337[22])∧(i8324[21]* i8324[22])∧((i6[21]* i6[22])∧(a77675data[21]* a77675data[22])))


(22) -> (8), if ((i70[22]* i70[8])∧(i8337[22]* i8337[8])∧((i6[22]* i6[8])∧(a77675data[22]* a77675data[8]))∧(i8324[22] + 1* i8417[8]))


(23) -> (24), if ((i8324[23]* i8324[24])∧((i6[23]* i6[24])∧(a77675data[23]* a77675data[24]))∧((i8713[23]* i8713[24]))∧(i8337[23]* i8337[24])∧(i70[23]* i70[24]))


(24) -> (25), if ((i70[24]* i70[25])∧(i8713[24] <= 0 && i8324[24] > 0 && i8324[24] < i6[24] && i8337[24] > 0 && i8324[24] + 1 > 0* TRUE)∧((i6[24]* i6[25])∧(a77675data[24]* a77675data[25]))∧((i8713[24]* i8713[25]))∧(i8337[24]* i8337[25])∧(i8324[24]* i8324[25]))


(25) -> (8), if ((i8337[25]* i8337[8])∧(i8324[25] + 1* i8417[8])∧(i70[25]* i70[8])∧((i6[25]* i6[8])∧(a77675data[25]* a77675data[8])))


(26) -> (12), if (((i6[26]* i6[12])∧(a77675data[26]* a77675data[12]))∧(i9751[26]* i9698[12])∧(i8337[26]* i8337[12])∧(i70[26]* i70[12]))


(27) -> (28), if ((i8337[27]* i8337[28])∧(i70[27]* i70[28])∧(i8324[27]* i8324[28])∧((i8713[27]* i8713[28]))∧((i6[27]* i6[28])∧(a77675data[27]* a77675data[28])))


(28) -> (29), if (((i8713[28]* i8713[29]))∧(i8337[28]* i8337[29])∧(i8324[28]* i8324[29])∧((i6[28]* i6[29])∧(a77675data[28]* a77675data[29]))∧(i8324[28] + 1 > 0 && i8324[28] + 1 < i6[28] && i8713[28] <= 0 && i8324[28] > 0 && i8324[28] < i6[28] && i8337[28] > 0 && i8324[28] + 1 + 1 > 0* TRUE)∧(i70[28]* i70[29]))


(29) -> (12), if ((i70[29]* i70[12])∧(i8337[29]* i8337[12])∧(i8324[29] + 1 + 1* i9698[12])∧((i6[29]* i6[12])∧(a77675data[29]* a77675data[12])))


(30) -> (31), if ((i70[30]* i70[31])∧((i6[30]* i6[31])∧(a77675data[30]* a77675data[31]))∧(i8324[30]* i8324[31])∧((i8712[30]* i8712[31]))∧(i8337[30]* i8337[31]))


(31) -> (32), if ((i8324[31]* i8324[32])∧((i8712[31]* i8712[32]))∧(i8337[31]* i8337[32])∧((i6[31]* i6[32])∧(a77675data[31]* a77675data[32]))∧(i70[31]* i70[32])∧(i8324[31] + 1 > 0 && i8324[31] + 1 < i6[31] && i8712[31] > 0 && i8324[31] > 0 && i8324[31] < i6[31] && i8337[31] > 0 && i8324[31] + 1 + 1 > 0* TRUE))


(32) -> (12), if ((i8324[32] + 1 + 1* i9698[12])∧(i70[32]* i70[12])∧(i8337[32]* i8337[12])∧((i6[32]* i6[12])∧(a77675data[32]* a77675data[12])))


(33) -> (34), if (((i8713[33]* i8713[34]))∧(i8337[33]* i8337[34])∧(i70[33]* i70[34])∧(i8324[33]* i8324[34])∧((i6[33]* i6[34])∧(a77675data[33]* a77675data[34])))


(34) -> (35), if ((i8324[34]* i8324[35])∧((i6[34]* i6[35])∧(a77675data[34]* a77675data[35]))∧(i70[34]* i70[35])∧(i8324[34] + 1 > 0 && i8324[34] + 1 < i6[34] && i8713[34] <= 0 && i8324[34] > 0 && i8324[34] < i6[34] && i8337[34] > 0 && i8324[34] + 1 + 1 > 0* TRUE)∧((i8713[34]* i8713[35]))∧(i8337[34]* i8337[35]))


(35) -> (26), if ((i8324[35] + 1 + 1* i9751[26])∧(i8337[35]* i8337[26])∧((i6[35]* i6[26])∧(a77675data[35]* a77675data[26]))∧(i70[35]* i70[26]))



The set Q consists of the following terms:
Load1633(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load1633ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load1633ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load24130(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load24130(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load1633ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Cond_Load1633ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4)))
Inc25882(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Inc30743(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP25821(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
JMP30655(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load24130ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Load24130ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))
Cond_Load24130ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5)))

(37) 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 LOAD1633(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → LOAD1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) the following chains were created:
  • We consider the chain LOAD1633(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0]) → LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0]), LOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1]) → COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1]) which results in the following constraint:

    (1)    (i70[0]=i70[1]i68[0]=i68[1]i6[0]=i6[1]a2558data[0]=a2558data[1]LOAD1633(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])≥NonInfC∧LOAD1633(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])≥LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])∧(UIncreasing(LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])), ≥))



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

    (2)    (LOAD1633(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])≥NonInfC∧LOAD1633(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])≥LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])∧(UIncreasing(LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])), ≥))



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

    (3)    ((UIncreasing(LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])), ≥)∧[(-1)bso_53] ≥ 0)



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

    (4)    ((UIncreasing(LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])), ≥)∧[(-1)bso_53] ≥ 0)



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

    (5)    ((UIncreasing(LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])), ≥)∧[(-1)bso_53] ≥ 0)



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

    (6)    ((UIncreasing(LOAD1633ARR1(java.lang.Object(ARRAY(i6[0], a2558data[0])), i68[0], i70[0])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_53] ≥ 0)







For Pair LOAD1633ARR1(java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → COND_LOAD1633ARR1(&&(&&(&&(>(i68, 0), <(i68, i6)), >(i70, 0)), >(+(i68, 1), 0)), java.lang.Object(ARRAY(i6, a2558data)), i68, i70) the following chains were created:
  • We consider the chain LOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1]) → COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1]), COND_LOAD1633ARR1(TRUE, java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2], i70[2]) → LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), +(i68[2], 1), +(i70[2], -1)) which results in the following constraint:

    (7)    (i6[1]=i6[2]a2558data[1]=a2558data[2]i68[1]=i68[2]i70[1]=i70[2]&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0))=TRUELOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])≥NonInfC∧LOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])≥COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])∧(UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥))



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

    (8)    (>(+(i68[1], 1), 0)=TRUE>(i70[1], 0)=TRUE>(i68[1], 0)=TRUE<(i68[1], i6[1])=TRUELOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])≥NonInfC∧LOAD1633ARR1(java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])≥COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])∧(UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥))



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

    (9)    (i68[1] ≥ 0∧i70[1] + [-1] ≥ 0∧i68[1] + [-1] ≥ 0∧i6[1] + [-1] + [-1]i68[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥)∧[(-1)Bound*bni_54] + [bni_54]i70[1] + [(-1)bni_54]i68[1] + [bni_54]i6[1] ≥ 0∧[(-1)bso_55] ≥ 0)



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

    (10)    (i68[1] ≥ 0∧i70[1] + [-1] ≥ 0∧i68[1] + [-1] ≥ 0∧i6[1] + [-1] + [-1]i68[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥)∧[(-1)Bound*bni_54] + [bni_54]i70[1] + [(-1)bni_54]i68[1] + [bni_54]i6[1] ≥ 0∧[(-1)bso_55] ≥ 0)



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

    (11)    (i68[1] ≥ 0∧i70[1] + [-1] ≥ 0∧i68[1] + [-1] ≥ 0∧i6[1] + [-1] + [-1]i68[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥)∧[(-1)Bound*bni_54] + [bni_54]i70[1] + [(-1)bni_54]i68[1] + [bni_54]i6[1] ≥ 0∧[(-1)bso_55] ≥ 0)



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

    (12)    (i68[1] ≥ 0∧i70[1] + [-1] ≥ 0∧i68[1] + [-1] ≥ 0∧i6[1] + [-1] + [-1]i68[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥)∧0 = 0∧[(-1)Bound*bni_54] + [bni_54]i70[1] + [(-1)bni_54]i68[1] + [bni_54]i6[1] ≥ 0∧0 = 0∧[(-1)bso_55] ≥ 0)



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

    (13)    ([1] + i68[1] ≥ 0∧i70[1] + [-1] ≥ 0∧i68[1] ≥ 0∧i6[1] + [-2] + [-1]i68[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥)∧0 = 0∧[(-1)Bound*bni_54 + (-1)bni_54] + [bni_54]i70[1] + [(-1)bni_54]i68[1] + [bni_54]i6[1] ≥ 0∧0 = 0∧[(-1)bso_55] ≥ 0)



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

    (14)    ([1] + i68[1] ≥ 0∧i70[1] ≥ 0∧i68[1] ≥ 0∧i6[1] + [-2] + [-1]i68[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥)∧0 = 0∧[(-1)Bound*bni_54] + [bni_54]i70[1] + [(-1)bni_54]i68[1] + [bni_54]i6[1] ≥ 0∧0 = 0∧[(-1)bso_55] ≥ 0)



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

    (15)    ([1] + i68[1] ≥ 0∧i70[1] ≥ 0∧i68[1] ≥ 0∧i6[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD1633ARR1(&&(&&(&&(>(i68[1], 0), <(i68[1], i6[1])), >(i70[1], 0)), >(+(i68[1], 1), 0)), java.lang.Object(ARRAY(i6[1], a2558data[1])), i68[1], i70[1])), ≥)∧0 = 0∧[(-1)Bound*bni_54 + (2)bni_54] + [bni_54]i70[1] + [bni_54]i6[1] ≥ 0∧0 = 0∧[(-1)bso_55] ≥ 0)







For Pair COND_LOAD1633ARR1(TRUE, java.lang.Object(ARRAY(i6, a2558data)), i68, i70) → LOAD1633(java.lang.Object(ARRAY(i6, a2558data)), +(i68, 1), +(i70, -1)) the following chains were created:
  • We consider the chain COND_LOAD1633ARR1(TRUE, java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2], i70[2]) → LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), +(i68[2], 1), +(i70[2], -1)) which results in the following constraint:

    (16)    (COND_LOAD1633ARR1(TRUE, java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2], i70[2])≥NonInfC∧COND_LOAD1633ARR1(TRUE, java.lang.Object(ARRAY(i6[2], a2558data[2])), i68[2], i70[2])≥LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), +(i68[2], 1), +(i70[2], -1))∧(UIncreasing(LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), +(i68[2], 1), +(i70[2], -1))), ≥))



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

    (17)    ((UIncreasing(LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), +(i68[2], 1), +(i70[2], -1))), ≥)∧[2 + (-1)bso_57] ≥ 0)



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

    (18)    ((UIncreasing(LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), +(i68[2], 1), +(i70[2], -1))), ≥)∧[2 + (-1)bso_57] ≥ 0)



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

    (19)    ((UIncreasing(LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), +(i68[2], 1), +(i70[2], -1))), ≥)∧[2 + (-1)bso_57] ≥ 0)



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

    (20)    ((UIncreasing(LOAD1633(java.lang.Object(ARRAY(i6[2], a2558data[2])), +(i68[2], 1), +(i70[2], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_57] ≥ 0)







For Pair LOAD24130(java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) → COND_LOAD24130(&&(<=(i8338, 0), >(i70, 0)), java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) the following chains were created:
  • We consider the chain LOAD24130(java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3]) → COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3]), COND_LOAD24130(TRUE, java.lang.Object(ARRAY(i6[4], a77675data[4])), i8324[4], i70[4], i8338[4]) → LOAD1633(java.lang.Object(ARRAY(i6[4], a77675data[4])), i8324[4], +(i70[4], -1)) which results in the following constraint:

    (21)    (&&(<=(i8338[3], 0), >(i70[3], 0))=TRUEi8338[3]=i8338[4]i6[3]=i6[4]a77675data[3]=a77675data[4]i70[3]=i70[4]i8324[3]=i8324[4]LOAD24130(java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])≥NonInfC∧LOAD24130(java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])≥COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])∧(UIncreasing(COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])), ≥))



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

    (22)    (<=(i8338[3], 0)=TRUE>(i70[3], 0)=TRUELOAD24130(java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])≥NonInfC∧LOAD24130(java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])≥COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])∧(UIncreasing(COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])), ≥))



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

    (23)    ([-1]i8338[3] ≥ 0∧i70[3] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])), ≥)∧[(-1)Bound*bni_58] + [bni_58]i70[3] + [(-1)bni_58]i8324[3] + [bni_58]i6[3] ≥ 0∧[(-1)bso_59] ≥ 0)



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

    (24)    ([-1]i8338[3] ≥ 0∧i70[3] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])), ≥)∧[(-1)Bound*bni_58] + [bni_58]i70[3] + [(-1)bni_58]i8324[3] + [bni_58]i6[3] ≥ 0∧[(-1)bso_59] ≥ 0)



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

    (25)    ([-1]i8338[3] ≥ 0∧i70[3] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])), ≥)∧[(-1)Bound*bni_58] + [bni_58]i70[3] + [(-1)bni_58]i8324[3] + [bni_58]i6[3] ≥ 0∧[(-1)bso_59] ≥ 0)



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

    (26)    ([-1]i8338[3] ≥ 0∧i70[3] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])), ≥)∧[(-1)bni_58] = 0∧0 = 0∧[bni_58] = 0∧[(-1)Bound*bni_58] + [bni_58]i70[3] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_59] ≥ 0)



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

    (27)    (i8338[3] ≥ 0∧i70[3] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])), ≥)∧[(-1)bni_58] = 0∧0 = 0∧[bni_58] = 0∧[(-1)Bound*bni_58] + [bni_58]i70[3] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_59] ≥ 0)



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

    (28)    (i8338[3] ≥ 0∧i70[3] ≥ 0 ⇒ (UIncreasing(COND_LOAD24130(&&(<=(i8338[3], 0), >(i70[3], 0)), java.lang.Object(ARRAY(i6[3], a77675data[3])), i8324[3], i70[3], i8338[3])), ≥)∧[(-1)bni_58] = 0∧0 = 0∧[bni_58] = 0∧[(-1)Bound*bni_58 + bni_58] + [bni_58]i70[3] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_59] ≥ 0)







For Pair COND_LOAD24130(TRUE, java.lang.Object(ARRAY(i6, a77675data)), i8324, i70, i8338) → LOAD1633(java.lang.Object(ARRAY(i6, a77675data)), i8324, +(i70,