(0) Obligation:

JBC Problem based on JBC Program:
Manifest-Version: 1.0 Created-By: 1.6.0_20 (Apple Inc.) Main-Class: BubbleSortR
class BubbleSortR {
public static void main(String[] args) {
Random.args = args;
int dim = Random.random()*Random.random();
int[] t = new int[dim] ;
for(int i = 0; i < t.length; i++)
t[i] = Random.random();
sort(t);
}

public static void sort(int[] x) {
int n = x.length;
for (int pass=1; pass < n; pass++) // count how many times
// This next loop becomes shorter and shorter
aux(0,n-pass,x);
//for (int i = 0; i < x.length; i++)
// System.out.print(x[i]+ " ");
}

private static void aux(int min, int max, int[] x) {
if (min >= max) return;
int i = min;
if (x[i] > x[i+1]) {
// exchange elements
int temp = x[i]; x[i] = x[i+1]; x[i+1] = temp;
}
aux(min+1,max,x);
}
}


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

public static int random() {
if (index >= args.length)
return 0;

String string = args[index];
index++;
return string.length();
}
}


(1) JBCToGraph (SOUND transformation)

Constructed TerminationGraph.

(2) Obligation:

Termination Graph based on JBC Program:
BubbleSortR.main([Ljava/lang/String;)V: Graph of 442 nodes with 2 SCCs.

BubbleSortR.aux(II[I)V: Graph of 248 nodes with 0 SCCs.


(3) TerminationGraphToSCCProof (SOUND transformation)

Splitted TerminationGraph to 3 SCCss.

(4) Complex Obligation (AND)

(5) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: BubbleSortR.aux(II[I)V
SCC calls the following helper methods: BubbleSortR.aux(II[I)V
Performed SCC analyses: UsedFieldsAnalysis

(6) SCCToIDPv1Proof (SOUND transformation)

Transformed FIGraph SCCs to IDPs. Log:

Generated 52 rules for P and 200 rules for R.


P rules:
3710_0_aux_Load(EOS(STATIC_3710), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721) → 3712_0_aux_LT(EOS(STATIC_3712), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722)
3712_0_aux_LT(EOS(STATIC_3712), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722) → 3713_0_aux_LT(EOS(STATIC_3713), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722)
3713_0_aux_LT(EOS(STATIC_3713), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722) → 3715_0_aux_Load(EOS(STATIC_3715), i1721, i1722, java.lang.Object(ARRAY(i1723))) | <(i1721, i1722)
3715_0_aux_Load(EOS(STATIC_3715), i1721, i1722, java.lang.Object(ARRAY(i1723))) → 3718_0_aux_Store(EOS(STATIC_3718), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721)
3718_0_aux_Store(EOS(STATIC_3718), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721) → 3720_0_aux_Load(EOS(STATIC_3720), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721)
3720_0_aux_Load(EOS(STATIC_3720), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721) → 3724_0_aux_Load(EOS(STATIC_3724), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, java.lang.Object(ARRAY(i1723)))
3724_0_aux_Load(EOS(STATIC_3724), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, java.lang.Object(ARRAY(i1723))) → 3727_0_aux_ArrayAccess(EOS(STATIC_3727), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, java.lang.Object(ARRAY(i1723)), i1721)
3727_0_aux_ArrayAccess(EOS(STATIC_3727), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3731_0_aux_ArrayAccess(EOS(STATIC_3731), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3731_0_aux_ArrayAccess(EOS(STATIC_3731), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3735_0_aux_ArrayAccess(EOS(STATIC_3735), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3735_0_aux_ArrayAccess(EOS(STATIC_3735), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3745_0_aux_Load(EOS(STATIC_3745), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753) | <(i1733, i1723)
3745_0_aux_Load(EOS(STATIC_3745), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753) → 3750_0_aux_Load(EOS(STATIC_3750), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)))
3750_0_aux_Load(EOS(STATIC_3750), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723))) → 3756_0_aux_ConstantStackPush(EOS(STATIC_3756), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1733)
3756_0_aux_ConstantStackPush(EOS(STATIC_3756), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1733) → 3761_0_aux_IntArithmetic(EOS(STATIC_3761), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1733, 1)
3761_0_aux_IntArithmetic(EOS(STATIC_3761), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1733, matching1) → 3768_0_aux_ArrayAccess(EOS(STATIC_3768), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), +(i1733, 1)) | &&(>=(i1733, 0), =(matching1, 1))
3768_0_aux_ArrayAccess(EOS(STATIC_3768), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3775_0_aux_ArrayAccess(EOS(STATIC_3775), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3775_0_aux_ArrayAccess(EOS(STATIC_3775), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3781_0_aux_LE(EOS(STATIC_3781), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) | <(i1762, i1723)
3781_0_aux_LE(EOS(STATIC_3781), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) → 3788_0_aux_LE(EOS(STATIC_3788), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765)
3781_0_aux_LE(EOS(STATIC_3781), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) → 3789_0_aux_LE(EOS(STATIC_3789), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765)
3788_0_aux_LE(EOS(STATIC_3788), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) → 3793_0_aux_Load(EOS(STATIC_3793), i1733, i1722, java.lang.Object(ARRAY(i1723))) | <=(i1753, i1765)
3793_0_aux_Load(EOS(STATIC_3793), i1733, i1722, java.lang.Object(ARRAY(i1723))) → 4067_0_aux_Load(EOS(STATIC_4067), i1733, i1722, java.lang.Object(ARRAY(i1723)))
4067_0_aux_Load(EOS(STATIC_4067), i1733, i1722, java.lang.Object(ARRAY(i1723))) → 4086_0_aux_ConstantStackPush(EOS(STATIC_4086), i1722, java.lang.Object(ARRAY(i1723)), i1733)
4086_0_aux_ConstantStackPush(EOS(STATIC_4086), i1722, java.lang.Object(ARRAY(i1723)), i1733) → 4102_0_aux_IntArithmetic(EOS(STATIC_4102), i1722, java.lang.Object(ARRAY(i1723)), i1733, 1)
4102_0_aux_IntArithmetic(EOS(STATIC_4102), i1722, java.lang.Object(ARRAY(i1723)), i1733, matching1) → 4123_0_aux_Load(EOS(STATIC_4123), i1722, java.lang.Object(ARRAY(i1723)), +(i1733, 1)) | &&(>=(i1733, 0), =(matching1, 1))
4123_0_aux_Load(EOS(STATIC_4123), i1722, java.lang.Object(ARRAY(i1723)), i1906) → 4136_0_aux_Load(EOS(STATIC_4136), java.lang.Object(ARRAY(i1723)), i1906, i1722)
4136_0_aux_Load(EOS(STATIC_4136), java.lang.Object(ARRAY(i1723)), i1906, i1722) → 4148_0_aux_InvokeMethod(EOS(STATIC_4148), i1906, i1722, java.lang.Object(ARRAY(i1723)))
4148_0_aux_InvokeMethod(EOS(STATIC_4148), i1906, i1722, java.lang.Object(ARRAY(i1723))) → 4163_1_aux_InvokeMethod(4163_0_aux_Load(EOS(STATIC_4163), i1906, i1722, java.lang.Object(ARRAY(i1723))), i1906, i1722, java.lang.Object(ARRAY(i1723)))
4163_0_aux_Load(EOS(STATIC_4163), i1906, i1722, java.lang.Object(ARRAY(i1723))) → 4176_0_aux_Load(EOS(STATIC_4176), i1906, i1722, java.lang.Object(ARRAY(i1723)))
4176_0_aux_Load(EOS(STATIC_4176), i1906, i1722, java.lang.Object(ARRAY(i1723))) → 3709_0_aux_Load(EOS(STATIC_3709), i1906, i1722, java.lang.Object(ARRAY(i1723)))
3709_0_aux_Load(EOS(STATIC_3709), i1721, i1722, java.lang.Object(ARRAY(i1723))) → 3710_0_aux_Load(EOS(STATIC_3710), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721)
3789_0_aux_LE(EOS(STATIC_3789), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) → 3794_0_aux_Load(EOS(STATIC_3794), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) | >(i1753, i1765)
3794_0_aux_Load(EOS(STATIC_3794), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) → 3802_0_aux_Load(EOS(STATIC_3802), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)))
3802_0_aux_Load(EOS(STATIC_3802), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723))) → 3810_0_aux_ArrayAccess(EOS(STATIC_3810), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3810_0_aux_ArrayAccess(EOS(STATIC_3810), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3816_0_aux_ArrayAccess(EOS(STATIC_3816), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3816_0_aux_ArrayAccess(EOS(STATIC_3816), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3823_0_aux_Store(EOS(STATIC_3823), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) | <(i1733, i1723)
3823_0_aux_Store(EOS(STATIC_3823), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) → 3835_0_aux_Load(EOS(STATIC_3835), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733)
3835_0_aux_Load(EOS(STATIC_3835), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) → 3840_0_aux_Load(EOS(STATIC_3840), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)))
3840_0_aux_Load(EOS(STATIC_3840), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723))) → 3852_0_aux_Load(EOS(STATIC_3852), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3852_0_aux_Load(EOS(STATIC_3852), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3860_0_aux_Load(EOS(STATIC_3860), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)))
3860_0_aux_Load(EOS(STATIC_3860), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723))) → 3877_0_aux_ConstantStackPush(EOS(STATIC_3877), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3877_0_aux_ConstantStackPush(EOS(STATIC_3877), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3890_0_aux_IntArithmetic(EOS(STATIC_3890), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, 1)
3890_0_aux_IntArithmetic(EOS(STATIC_3890), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, matching1) → 3903_0_aux_ArrayAccess(EOS(STATIC_3903), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), +(i1733, 1)) | &&(>=(i1733, 0), =(matching1, 1))
3903_0_aux_ArrayAccess(EOS(STATIC_3903), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3911_0_aux_ArrayAccess(EOS(STATIC_3911), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3911_0_aux_ArrayAccess(EOS(STATIC_3911), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3927_0_aux_ArrayAccess(EOS(STATIC_3927), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) | <(i1818, i1723)
3927_0_aux_ArrayAccess(EOS(STATIC_3927), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3940_0_aux_ArrayAccess(EOS(STATIC_3940), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3940_0_aux_ArrayAccess(EOS(STATIC_3940), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3952_0_aux_Load(EOS(STATIC_3952), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) | <(i1733, i1723)
3952_0_aux_Load(EOS(STATIC_3952), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) → 3969_0_aux_Load(EOS(STATIC_3969), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)))
3969_0_aux_Load(EOS(STATIC_3969), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723))) → 3984_0_aux_ConstantStackPush(EOS(STATIC_3984), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1733)
3984_0_aux_ConstantStackPush(EOS(STATIC_3984), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1733) → 3998_0_aux_IntArithmetic(EOS(STATIC_3998), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1733, 1)
3998_0_aux_IntArithmetic(EOS(STATIC_3998), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1733, matching1) → 4015_0_aux_Load(EOS(STATIC_4015), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), +(i1733, 1)) | &&(>=(i1733, 0), =(matching1, 1))
4015_0_aux_Load(EOS(STATIC_4015), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4027_0_aux_ArrayAccess(EOS(STATIC_4027), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4027_0_aux_ArrayAccess(EOS(STATIC_4027), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4041_0_aux_ArrayAccess(EOS(STATIC_4041), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4041_0_aux_ArrayAccess(EOS(STATIC_4041), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4067_0_aux_Load(EOS(STATIC_4067), i1733, i1722, java.lang.Object(ARRAY(i1723))) | <(i1855, i1723)
R rules:
3712_0_aux_LT(EOS(STATIC_3712), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722) → 3714_0_aux_LT(EOS(STATIC_3714), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722)
3714_0_aux_LT(EOS(STATIC_3714), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722) → 3717_0_aux_Return(EOS(STATIC_3717), i1721, i1722, java.lang.Object(ARRAY(i1723))) | >=(i1721, i1722)
3727_0_aux_ArrayAccess(EOS(STATIC_3727), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3730_0_aux_ArrayAccess(EOS(STATIC_3730), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3730_0_aux_ArrayAccess(EOS(STATIC_3730), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3733_0_<init>_Load(EOS(STATIC_3733), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) | <=(i1732, -1)
3731_0_aux_ArrayAccess(EOS(STATIC_3731), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3736_0_aux_ArrayAccess(EOS(STATIC_3736), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3733_0_<init>_Load(EOS(STATIC_3733), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3749_0_<init>_InvokeMethod(EOS(STATIC_3749), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3736_0_aux_ArrayAccess(EOS(STATIC_3736), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3746_0_<init>_Load(EOS(STATIC_3746), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) | >=(i1733, i1723)
3746_0_<init>_Load(EOS(STATIC_3746), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3757_0_<init>_InvokeMethod(EOS(STATIC_3757), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3749_0_<init>_InvokeMethod(EOS(STATIC_3749), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3755_0_<init>_Load(EOS(STATIC_3755), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3755_0_<init>_Load(EOS(STATIC_3755), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3767_0_<init>_InvokeMethod(EOS(STATIC_3767), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3757_0_<init>_InvokeMethod(EOS(STATIC_3757), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3762_0_<init>_Load(EOS(STATIC_3762), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3762_0_<init>_Load(EOS(STATIC_3762), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3777_0_<init>_InvokeMethod(EOS(STATIC_3777), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3767_0_<init>_InvokeMethod(EOS(STATIC_3767), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3773_0_<init>_Load(EOS(STATIC_3773), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3768_0_aux_ArrayAccess(EOS(STATIC_3768), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3776_0_aux_ArrayAccess(EOS(STATIC_3776), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3773_0_<init>_Load(EOS(STATIC_3773), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3787_0_<init>_InvokeMethod(EOS(STATIC_3787), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3776_0_aux_ArrayAccess(EOS(STATIC_3776), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3783_0_<init>_Load(EOS(STATIC_3783), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) | >=(i1762, i1723)
3777_0_<init>_InvokeMethod(EOS(STATIC_3777), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3784_0_<init>_Load(EOS(STATIC_3784), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3783_0_<init>_Load(EOS(STATIC_3783), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3797_0_<init>_InvokeMethod(EOS(STATIC_3797), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3784_0_<init>_Load(EOS(STATIC_3784), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3798_0_<init>_InvokeMethod(EOS(STATIC_3798), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3787_0_<init>_InvokeMethod(EOS(STATIC_3787), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3792_0_<init>_Load(EOS(STATIC_3792), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3792_0_<init>_Load(EOS(STATIC_3792), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3807_0_<init>_InvokeMethod(EOS(STATIC_3807), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3797_0_<init>_InvokeMethod(EOS(STATIC_3797), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3803_0_<init>_Load(EOS(STATIC_3803), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3798_0_<init>_InvokeMethod(EOS(STATIC_3798), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3805_0_<init>_Load(EOS(STATIC_3805), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3803_0_<init>_Load(EOS(STATIC_3803), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3819_0_<init>_InvokeMethod(EOS(STATIC_3819), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3805_0_<init>_Load(EOS(STATIC_3805), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3821_0_<init>_InvokeMethod(EOS(STATIC_3821), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3807_0_<init>_InvokeMethod(EOS(STATIC_3807), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3813_0_<init>_Load(EOS(STATIC_3813), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3810_0_aux_ArrayAccess(EOS(STATIC_3810), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3817_0_aux_ArrayAccess(EOS(STATIC_3817), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3813_0_<init>_Load(EOS(STATIC_3813), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3832_0_<init>_InvokeMethod(EOS(STATIC_3832), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3817_0_aux_ArrayAccess(EOS(STATIC_3817), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3825_0_<init>_Load(EOS(STATIC_3825), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) | >=(i1733, i1723)
3819_0_<init>_InvokeMethod(EOS(STATIC_3819), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3826_0_<init>_Load(EOS(STATIC_3826), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3821_0_<init>_InvokeMethod(EOS(STATIC_3821), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3827_0_<init>_Load(EOS(STATIC_3827), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3825_0_<init>_Load(EOS(STATIC_3825), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3843_0_<init>_InvokeMethod(EOS(STATIC_3843), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3826_0_<init>_Load(EOS(STATIC_3826), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3845_0_<init>_InvokeMethod(EOS(STATIC_3845), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3827_0_<init>_Load(EOS(STATIC_3827), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3847_0_<init>_InvokeMethod(EOS(STATIC_3847), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3832_0_<init>_InvokeMethod(EOS(STATIC_3832), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3838_0_<init>_Load(EOS(STATIC_3838), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3838_0_<init>_Load(EOS(STATIC_3838), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3849_0_<init>_Load(EOS(STATIC_3849), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3843_0_<init>_InvokeMethod(EOS(STATIC_3843), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3853_0_<init>_Load(EOS(STATIC_3853), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3845_0_<init>_InvokeMethod(EOS(STATIC_3845), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3855_0_<init>_Load(EOS(STATIC_3855), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3847_0_<init>_InvokeMethod(EOS(STATIC_3847), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3856_0_<init>_Load(EOS(STATIC_3856), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3849_0_<init>_Load(EOS(STATIC_3849), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3859_0_<init>_FieldAccess(EOS(STATIC_3859), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3853_0_<init>_Load(EOS(STATIC_3853), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3880_0_<init>_InvokeMethod(EOS(STATIC_3880), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3855_0_<init>_Load(EOS(STATIC_3855), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3883_0_<init>_InvokeMethod(EOS(STATIC_3883), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3856_0_<init>_Load(EOS(STATIC_3856), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3862_0_<init>_Load(EOS(STATIC_3862), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3859_0_<init>_FieldAccess(EOS(STATIC_3859), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3872_0_<init>_Load(EOS(STATIC_3872), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3862_0_<init>_Load(EOS(STATIC_3862), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3884_0_<init>_FieldAccess(EOS(STATIC_3884), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3872_0_<init>_Load(EOS(STATIC_3872), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3888_0_<init>_InvokeMethod(EOS(STATIC_3888), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3880_0_<init>_InvokeMethod(EOS(STATIC_3880), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3891_0_<init>_Load(EOS(STATIC_3891), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3883_0_<init>_InvokeMethod(EOS(STATIC_3883), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3893_0_<init>_Load(EOS(STATIC_3893), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3884_0_<init>_FieldAccess(EOS(STATIC_3884), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3896_0_<init>_Load(EOS(STATIC_3896), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3888_0_<init>_InvokeMethod(EOS(STATIC_3888), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3900_0_<init>_StackPop(EOS(STATIC_3900), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3891_0_<init>_Load(EOS(STATIC_3891), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3914_0_<init>_InvokeMethod(EOS(STATIC_3914), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3893_0_<init>_Load(EOS(STATIC_3893), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3917_0_<init>_InvokeMethod(EOS(STATIC_3917), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3896_0_<init>_Load(EOS(STATIC_3896), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3904_0_<init>_InvokeMethod(EOS(STATIC_3904), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3900_0_<init>_StackPop(EOS(STATIC_3900), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3908_0_<init>_Return(EOS(STATIC_3908), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3903_0_aux_ArrayAccess(EOS(STATIC_3903), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3912_0_aux_ArrayAccess(EOS(STATIC_3912), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3904_0_<init>_InvokeMethod(EOS(STATIC_3904), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3918_0_<init>_StackPop(EOS(STATIC_3918), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3908_0_<init>_Return(EOS(STATIC_3908), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3923_0_<init>_Return(EOS(STATIC_3923), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3912_0_aux_ArrayAccess(EOS(STATIC_3912), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3928_0_<init>_Load(EOS(STATIC_3928), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) | >=(i1818, i1723)
3914_0_<init>_InvokeMethod(EOS(STATIC_3914), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3929_0_<init>_Load(EOS(STATIC_3929), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3917_0_<init>_InvokeMethod(EOS(STATIC_3917), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3932_0_<init>_Load(EOS(STATIC_3932), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3918_0_<init>_StackPop(EOS(STATIC_3918), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3933_0_<init>_Return(EOS(STATIC_3933), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3923_0_<init>_Return(EOS(STATIC_3923), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3938_0_<init>_Return(EOS(STATIC_3938), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3927_0_aux_ArrayAccess(EOS(STATIC_3927), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3941_0_aux_ArrayAccess(EOS(STATIC_3941), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3928_0_<init>_Load(EOS(STATIC_3928), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3957_0_<init>_InvokeMethod(EOS(STATIC_3957), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3929_0_<init>_Load(EOS(STATIC_3929), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3960_0_<init>_InvokeMethod(EOS(STATIC_3960), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3932_0_<init>_Load(EOS(STATIC_3932), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3943_0_<init>_Load(EOS(STATIC_3943), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3933_0_<init>_Return(EOS(STATIC_3933), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3945_0_<init>_Return(EOS(STATIC_3945), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3938_0_<init>_Return(EOS(STATIC_3938), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3949_0_<init>_Return(EOS(STATIC_3949), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3941_0_aux_ArrayAccess(EOS(STATIC_3941), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3954_0_<init>_Load(EOS(STATIC_3954), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) | >=(i1733, i1723)
3943_0_<init>_Load(EOS(STATIC_3943), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3963_0_<init>_FieldAccess(EOS(STATIC_3963), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3945_0_<init>_Return(EOS(STATIC_3945), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3964_0_<init>_Return(EOS(STATIC_3964), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3949_0_<init>_Return(EOS(STATIC_3949), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3967_0_<init>_Return(EOS(STATIC_3967), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3954_0_<init>_Load(EOS(STATIC_3954), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3988_0_<init>_InvokeMethod(EOS(STATIC_3988), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3957_0_<init>_InvokeMethod(EOS(STATIC_3957), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3971_0_<init>_Load(EOS(STATIC_3971), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3960_0_<init>_InvokeMethod(EOS(STATIC_3960), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3972_0_<init>_Load(EOS(STATIC_3972), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3963_0_<init>_FieldAccess(EOS(STATIC_3963), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3976_0_<init>_Load(EOS(STATIC_3976), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3964_0_<init>_Return(EOS(STATIC_3964), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3977_0_<init>_Return(EOS(STATIC_3977), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3967_0_<init>_Return(EOS(STATIC_3967), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3980_0_aux_ArrayAccess(EOS(STATIC_3980), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3971_0_<init>_Load(EOS(STATIC_3971), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4003_0_<init>_InvokeMethod(EOS(STATIC_4003), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3972_0_<init>_Load(EOS(STATIC_3972), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4006_0_<init>_InvokeMethod(EOS(STATIC_4006), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3976_0_<init>_Load(EOS(STATIC_3976), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3991_0_<init>_InvokeMethod(EOS(STATIC_3991), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3977_0_<init>_Return(EOS(STATIC_3977), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3992_0_<init>_Return(EOS(STATIC_3992), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3988_0_<init>_InvokeMethod(EOS(STATIC_3988), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4000_0_<init>_Load(EOS(STATIC_4000), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3991_0_<init>_InvokeMethod(EOS(STATIC_3991), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4009_0_<init>_StackPop(EOS(STATIC_4009), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3992_0_<init>_Return(EOS(STATIC_3992), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4011_0_aux_ArrayAccess(EOS(STATIC_4011), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4000_0_<init>_Load(EOS(STATIC_4000), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4032_0_<init>_InvokeMethod(EOS(STATIC_4032), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4003_0_<init>_InvokeMethod(EOS(STATIC_4003), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4016_0_<init>_Load(EOS(STATIC_4016), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4006_0_<init>_InvokeMethod(EOS(STATIC_4006), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4019_0_<init>_Load(EOS(STATIC_4019), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4009_0_<init>_StackPop(EOS(STATIC_4009), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4021_0_<init>_Return(EOS(STATIC_4021), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4016_0_<init>_Load(EOS(STATIC_4016), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4047_0_<init>_InvokeMethod(EOS(STATIC_4047), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4019_0_<init>_Load(EOS(STATIC_4019), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4035_0_<init>_Load(EOS(STATIC_4035), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4021_0_<init>_Return(EOS(STATIC_4021), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4037_0_<init>_Return(EOS(STATIC_4037), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4027_0_aux_ArrayAccess(EOS(STATIC_4027), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4042_0_aux_ArrayAccess(EOS(STATIC_4042), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4032_0_<init>_InvokeMethod(EOS(STATIC_4032), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4044_0_<init>_Load(EOS(STATIC_4044), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4035_0_<init>_Load(EOS(STATIC_4035), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4050_0_<init>_FieldAccess(EOS(STATIC_4050), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4037_0_<init>_Return(EOS(STATIC_4037), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4053_0_<init>_Return(EOS(STATIC_4053), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4042_0_aux_ArrayAccess(EOS(STATIC_4042), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4069_0_<init>_Load(EOS(STATIC_4069), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) | >=(i1855, i1723)
4044_0_<init>_Load(EOS(STATIC_4044), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4090_0_<init>_InvokeMethod(EOS(STATIC_4090), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4047_0_<init>_InvokeMethod(EOS(STATIC_4047), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4071_0_<init>_Load(EOS(STATIC_4071), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4050_0_<init>_FieldAccess(EOS(STATIC_4050), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4075_0_<init>_Load(EOS(STATIC_4075), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4053_0_<init>_Return(EOS(STATIC_4053), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4077_0_<init>_Return(EOS(STATIC_4077), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4069_0_<init>_Load(EOS(STATIC_4069), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4107_0_<init>_InvokeMethod(EOS(STATIC_4107), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4071_0_<init>_Load(EOS(STATIC_4071), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4112_0_<init>_InvokeMethod(EOS(STATIC_4112), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4075_0_<init>_Load(EOS(STATIC_4075), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4093_0_<init>_InvokeMethod(EOS(STATIC_4093), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4077_0_<init>_Return(EOS(STATIC_4077), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4095_0_<init>_Return(EOS(STATIC_4095), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4090_0_<init>_InvokeMethod(EOS(STATIC_4090), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4108_0_<init>_Load(EOS(STATIC_4108), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4093_0_<init>_InvokeMethod(EOS(STATIC_4093), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4115_0_<init>_StackPop(EOS(STATIC_4115), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4095_0_<init>_Return(EOS(STATIC_4095), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4117_0_aux_ArrayAccess(EOS(STATIC_4117), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4107_0_<init>_InvokeMethod(EOS(STATIC_4107), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4124_0_<init>_Load(EOS(STATIC_4124), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4108_0_<init>_Load(EOS(STATIC_4108), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4141_0_<init>_InvokeMethod(EOS(STATIC_4141), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4112_0_<init>_InvokeMethod(EOS(STATIC_4112), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4125_0_<init>_Load(EOS(STATIC_4125), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4115_0_<init>_StackPop(EOS(STATIC_4115), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4128_0_<init>_Return(EOS(STATIC_4128), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4124_0_<init>_Load(EOS(STATIC_4124), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4153_0_<init>_InvokeMethod(EOS(STATIC_4153), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4125_0_<init>_Load(EOS(STATIC_4125), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4158_0_<init>_InvokeMethod(EOS(STATIC_4158), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4128_0_<init>_Return(EOS(STATIC_4128), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4144_0_<init>_Return(EOS(STATIC_4144), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4141_0_<init>_InvokeMethod(EOS(STATIC_4141), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4154_0_<init>_Load(EOS(STATIC_4154), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4144_0_<init>_Return(EOS(STATIC_4144), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4161_0_<init>_Return(EOS(STATIC_4161), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4153_0_<init>_InvokeMethod(EOS(STATIC_4153), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4165_0_<init>_Load(EOS(STATIC_4165), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4154_0_<init>_Load(EOS(STATIC_4154), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4181_0_<init>_InvokeMethod(EOS(STATIC_4181), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4158_0_<init>_InvokeMethod(EOS(STATIC_4158), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4168_0_<init>_Load(EOS(STATIC_4168), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4161_0_<init>_Return(EOS(STATIC_4161), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4171_0_<init>_Return(EOS(STATIC_4171), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4163_1_aux_InvokeMethod(3717_0_aux_Return(EOS(STATIC_3717), i1939, i1940, java.lang.Object(ARRAY(i1941))), i1939, i1940, java.lang.Object(ARRAY(i1941))) → 4229_0_aux_Return(EOS(STATIC_4229), i1939, i1940, java.lang.Object(ARRAY(i1941)), i1939, i1940, java.lang.Object(ARRAY(i1941)))
4163_1_aux_InvokeMethod(4011_0_aux_ArrayAccess(EOS(STATIC_4011), i1953, i1954, java.lang.Object(ARRAY(i1955)), i1953, java.lang.Object(ARRAY(i1955)), i1953), i1953, i1954, java.lang.Object(ARRAY(i1955))) → 4232_0_aux_ArrayAccess(EOS(STATIC_4232), i1953, i1954, java.lang.Object(ARRAY(i1955)), i1953, i1954, java.lang.Object(ARRAY(i1955)), i1953, java.lang.Object(ARRAY(i1955)), i1953)
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(EOS(STATIC_4117), i1965, i1966, java.lang.Object(ARRAY(i1967)), i1965, i1753, java.lang.Object(ARRAY(i1967)), i1762), i1965, i1966, java.lang.Object(ARRAY(i1967))) → 4233_0_aux_ArrayAccess(EOS(STATIC_4233), i1965, i1966, java.lang.Object(ARRAY(i1967)), i1965, i1966, java.lang.Object(ARRAY(i1967)), i1965, i1753, java.lang.Object(ARRAY(i1967)), i1762)
4163_1_aux_InvokeMethod(4205_0_aux_ArrayAccess(EOS(STATIC_4205), i1979, i1980, java.lang.Object(ARRAY(i1981)), i1979, java.lang.Object(ARRAY(i1981)), i1979), i1979, i1980, java.lang.Object(ARRAY(i1981))) → 4272_0_aux_ArrayAccess(EOS(STATIC_4272), i1979, i1980, java.lang.Object(ARRAY(i1981)), i1979, i1980, java.lang.Object(ARRAY(i1981)), i1979, java.lang.Object(ARRAY(i1981)), i1979)
4163_1_aux_InvokeMethod(4249_0_aux_Return(EOS(STATIC_4249)), i2017, i2018, java.lang.Object(ARRAY(i1723))) → 4319_0_aux_Return(EOS(STATIC_4319), i2017, i2018, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4254_0_aux_InvokeMethod(EOS(STATIC_4254), i1965, i2029, java.lang.Object(ARRAY(i1723))), i2028, i2029, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2028, i2029, java.lang.Object(ARRAY(i1723)), i1965, i2029, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4291_0_aux_InvokeMethod(EOS(STATIC_4291), i1979, i2051, java.lang.Object(ARRAY(i1723))), i2050, i2051, java.lang.Object(ARRAY(i1723))) → 4368_0_aux_InvokeMethod(EOS(STATIC_4368), i2050, i2051, java.lang.Object(ARRAY(i1723)), i1979, i2051, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4344_0_aux_Return(EOS(STATIC_4344)), i2095, i2096, java.lang.Object(ARRAY(i1723))) → 4412_0_aux_Return(EOS(STATIC_4412), i2095, i2096, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4351_0_aux_InvokeMethod(EOS(STATIC_4351), i2028, i2107, java.lang.Object(ARRAY(i1723))), i2106, i2107, java.lang.Object(ARRAY(i1723))) → 4418_0_aux_InvokeMethod(EOS(STATIC_4418), i2106, i2107, java.lang.Object(ARRAY(i1723)), i2028, i2107, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4408_0_aux_ArrayAccess(EOS(STATIC_4408), i2139, i2140, java.lang.Object(ARRAY(i2141)), i2139, java.lang.Object(ARRAY(i2141)), i2139, java.lang.Object(ARRAY(i2141)), i1818), i2139, i2140, java.lang.Object(ARRAY(i2141))) → 4448_0_aux_ArrayAccess(EOS(STATIC_4448), i2139, i2140, java.lang.Object(ARRAY(i2141)), i2139, i2140, java.lang.Object(ARRAY(i2141)), i2139, java.lang.Object(ARRAY(i2141)), i2139, java.lang.Object(ARRAY(i2141)), i1818)
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(EOS(STATIC_4433), i2154, i2155, java.lang.Object(ARRAY(i2156)), i2154, java.lang.Object(ARRAY(i2156)), i2154), i2154, i2155, java.lang.Object(ARRAY(i2156))) → 4472_0_aux_ArrayAccess(EOS(STATIC_4472), i2154, i2155, java.lang.Object(ARRAY(i2156)), i2154, i2155, java.lang.Object(ARRAY(i2156)), i2154, java.lang.Object(ARRAY(i2156)), i2154)
4163_1_aux_InvokeMethod(4466_0_aux_InvokeMethod(EOS(STATIC_4466), i2139, i2211, java.lang.Object(ARRAY(i1723))), i2210, i2211, java.lang.Object(ARRAY(i1723))) → 4501_0_aux_InvokeMethod(EOS(STATIC_4501), i2210, i2211, java.lang.Object(ARRAY(i1723)), i2139, i2211, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4486_0_aux_InvokeMethod(EOS(STATIC_4486), i2154, i2234, java.lang.Object(ARRAY(i1723))), i2233, i2234, java.lang.Object(ARRAY(i1723))) → 4516_0_aux_InvokeMethod(EOS(STATIC_4516), i2233, i2234, java.lang.Object(ARRAY(i1723)), i2154, i2234, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(EOS(STATIC_4511), i2256, i2257, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855), i2256, i2257, java.lang.Object(ARRAY(i1723))) → 4524_0_aux_ArrayAccess(EOS(STATIC_4524), i2256, i2257, java.lang.Object(ARRAY(i1723)), i2256, i2257, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(EOS(STATIC_4529), i2256, i2289, java.lang.Object(ARRAY(i1723))), i2288, i2289, java.lang.Object(ARRAY(i1723))) → 4543_0_aux_InvokeMethod(EOS(STATIC_4543), i2288, i2289, java.lang.Object(ARRAY(i1723)), i2256, i2289, java.lang.Object(ARRAY(i1723)))
4165_0_<init>_Load(EOS(STATIC_4165), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4194_0_<init>_InvokeMethod(EOS(STATIC_4194), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4168_0_<init>_Load(EOS(STATIC_4168), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4185_0_<init>_Load(EOS(STATIC_4185), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4171_0_<init>_Return(EOS(STATIC_4171), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4187_0_<init>_Return(EOS(STATIC_4187), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4181_0_<init>_InvokeMethod(EOS(STATIC_4181), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4199_0_<init>_Load(EOS(STATIC_4199), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4185_0_<init>_Load(EOS(STATIC_4185), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4202_0_<init>_FieldAccess(EOS(STATIC_4202), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4187_0_<init>_Return(EOS(STATIC_4187), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4205_0_aux_ArrayAccess(EOS(STATIC_4205), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4194_0_<init>_InvokeMethod(EOS(STATIC_4194), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4217_0_<init>_Load(EOS(STATIC_4217), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4199_0_<init>_Load(EOS(STATIC_4199), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4222_0_<init>_Load(EOS(STATIC_4222), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4202_0_<init>_FieldAccess(EOS(STATIC_4202), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4227_0_<init>_Load(EOS(STATIC_4227), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4217_0_<init>_Load(EOS(STATIC_4217), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4260_0_<init>_InvokeMethod(EOS(STATIC_4260), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4222_0_<init>_Load(EOS(STATIC_4222), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4237_0_<init>_FieldAccess(EOS(STATIC_4237), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4227_0_<init>_Load(EOS(STATIC_4227), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4241_0_<init>_InvokeMethod(EOS(STATIC_4241), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4229_0_aux_Return(EOS(STATIC_4229), i1939, i1940, java.lang.Object(ARRAY(i1941)), i1939, i1940, java.lang.Object(ARRAY(i1941))) → 4249_0_aux_Return(EOS(STATIC_4249))
4232_0_aux_ArrayAccess(EOS(STATIC_4232), i1953, i1954, java.lang.Object(ARRAY(i1955)), i1953, i1954, java.lang.Object(ARRAY(i1955)), i1953, java.lang.Object(ARRAY(i1955)), i1953) → 4251_0_aux_InvokeMethod(EOS(STATIC_4251), i1953, i1954, java.lang.Object(ARRAY(i1955)))
4233_0_aux_ArrayAccess(EOS(STATIC_4233), i1965, i1966, java.lang.Object(ARRAY(i1967)), i1965, i1966, java.lang.Object(ARRAY(i1967)), i1965, i1753, java.lang.Object(ARRAY(i1967)), i1762) → 4254_0_aux_InvokeMethod(EOS(STATIC_4254), i1965, i1966, java.lang.Object(ARRAY(i1967)))
4237_0_<init>_FieldAccess(EOS(STATIC_4237), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4265_0_<init>_Load(EOS(STATIC_4265), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4241_0_<init>_InvokeMethod(EOS(STATIC_4241), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4269_0_<init>_StackPop(EOS(STATIC_4269), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4249_0_aux_Return(EOS(STATIC_4249)) → 4344_0_aux_Return(EOS(STATIC_4344))
4251_0_aux_InvokeMethod(EOS(STATIC_4251), i1953, i1954, java.lang.Object(ARRAY(i1955))) → 4254_0_aux_InvokeMethod(EOS(STATIC_4254), i1953, i1954, java.lang.Object(ARRAY(i1955)))
4254_0_aux_InvokeMethod(EOS(STATIC_4254), i1965, i1966, java.lang.Object(ARRAY(i1967))) → 4291_0_aux_InvokeMethod(EOS(STATIC_4291), i1965, i1966, java.lang.Object(ARRAY(i1967)))
4260_0_<init>_InvokeMethod(EOS(STATIC_4260), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4276_0_<init>_Load(EOS(STATIC_4276), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4265_0_<init>_Load(EOS(STATIC_4265), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4280_0_<init>_InvokeMethod(EOS(STATIC_4280), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4269_0_<init>_StackPop(EOS(STATIC_4269), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4284_0_<init>_Return(EOS(STATIC_4284), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4272_0_aux_ArrayAccess(EOS(STATIC_4272), i1979, i1980, java.lang.Object(ARRAY(i1981)), i1979, i1980, java.lang.Object(ARRAY(i1981)), i1979, java.lang.Object(ARRAY(i1981)), i1979) → 4291_0_aux_InvokeMethod(EOS(STATIC_4291), i1979, i1980, java.lang.Object(ARRAY(i1981)))
4276_0_<init>_Load(EOS(STATIC_4276), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4327_0_<init>_InvokeMethod(EOS(STATIC_4327), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4280_0_<init>_InvokeMethod(EOS(STATIC_4280), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4308_0_<init>_StackPop(EOS(STATIC_4308), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4284_0_<init>_Return(EOS(STATIC_4284), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4312_0_<init>_Return(EOS(STATIC_4312), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4291_0_aux_InvokeMethod(EOS(STATIC_4291), i1979, i1980, java.lang.Object(ARRAY(i1981))) → 4351_0_aux_InvokeMethod(EOS(STATIC_4351), i1979, i1980, java.lang.Object(ARRAY(i1981)))
4308_0_<init>_StackPop(EOS(STATIC_4308), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4331_0_<init>_Return(EOS(STATIC_4331), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4312_0_<init>_Return(EOS(STATIC_4312), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4335_0_<init>_Return(EOS(STATIC_4335), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4319_0_aux_Return(EOS(STATIC_4319), i2017, i2018, java.lang.Object(ARRAY(i1723))) → 4344_0_aux_Return(EOS(STATIC_4344))
4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2028, i2029, java.lang.Object(ARRAY(i1723)), i1965, i2029, java.lang.Object(ARRAY(i1723))) → 4351_0_aux_InvokeMethod(EOS(STATIC_4351), i2028, i2029, java.lang.Object(ARRAY(i1723)))
4327_0_<init>_InvokeMethod(EOS(STATIC_4327), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4356_0_<init>_Load(EOS(STATIC_4356), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4331_0_<init>_Return(EOS(STATIC_4331), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4359_0_<init>_Return(EOS(STATIC_4359), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4335_0_<init>_Return(EOS(STATIC_4335), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4363_0_<init>_Return(EOS(STATIC_4363), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4351_0_aux_InvokeMethod(EOS(STATIC_4351), i2028, i2029, java.lang.Object(ARRAY(i1723))) → 4466_0_aux_InvokeMethod(EOS(STATIC_4466), i2028, i2029, java.lang.Object(ARRAY(i1723)))
4356_0_<init>_Load(EOS(STATIC_4356), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4378_0_<init>_Load(EOS(STATIC_4378), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4359_0_<init>_Return(EOS(STATIC_4359), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4382_0_<init>_Return(EOS(STATIC_4382), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4363_0_<init>_Return(EOS(STATIC_4363), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4384_0_<init>_Return(EOS(STATIC_4384), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4368_0_aux_InvokeMethod(EOS(STATIC_4368), i2050, i2051, java.lang.Object(ARRAY(i1723)), i1979, i2051, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2050, i2051, java.lang.Object(ARRAY(i1723)), i1979, i2051, java.lang.Object(ARRAY(i1723)))
4378_0_<init>_Load(EOS(STATIC_4378), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4402_0_<init>_FieldAccess(EOS(STATIC_4402), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4382_0_<init>_Return(EOS(STATIC_4382), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4406_0_<init>_Return(EOS(STATIC_4406), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4384_0_<init>_Return(EOS(STATIC_4384), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4408_0_aux_ArrayAccess(EOS(STATIC_4408), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4402_0_<init>_FieldAccess(EOS(STATIC_4402), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4423_0_<init>_Load(EOS(STATIC_4423), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4406_0_<init>_Return(EOS(STATIC_4406), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4426_0_<init>_Return(EOS(STATIC_4426), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4412_0_aux_Return(EOS(STATIC_4412), i2095, i2096, java.lang.Object(ARRAY(i1723))) → 4319_0_aux_Return(EOS(STATIC_4319), i2095, i2096, java.lang.Object(ARRAY(i1723)))
4418_0_aux_InvokeMethod(EOS(STATIC_4418), i2106, i2107, java.lang.Object(ARRAY(i1723)), i2028, i2107, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2106, i2107, java.lang.Object(ARRAY(i1723)), i2028, i2107, java.lang.Object(ARRAY(i1723)))
4423_0_<init>_Load(EOS(STATIC_4423), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4431_0_<init>_InvokeMethod(EOS(STATIC_4431), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4426_0_<init>_Return(EOS(STATIC_4426), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4433_0_aux_ArrayAccess(EOS(STATIC_4433), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4431_0_<init>_InvokeMethod(EOS(STATIC_4431), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4445_0_<init>_StackPop(EOS(STATIC_4445), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4445_0_<init>_StackPop(EOS(STATIC_4445), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4452_0_<init>_Return(EOS(STATIC_4452), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4448_0_aux_ArrayAccess(EOS(STATIC_4448), i2139, i2140, java.lang.Object(ARRAY(i2141)), i2139, i2140, java.lang.Object(ARRAY(i2141)), i2139, java.lang.Object(ARRAY(i2141)), i2139, java.lang.Object(ARRAY(i2141)), i1818) → 4466_0_aux_InvokeMethod(EOS(STATIC_4466), i2139, i2140, java.lang.Object(ARRAY(i2141)))
4452_0_<init>_Return(EOS(STATIC_4452), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4470_0_<init>_Return(EOS(STATIC_4470), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4466_0_aux_InvokeMethod(EOS(STATIC_4466), i2139, i2140, java.lang.Object(ARRAY(i2141))) → 4486_0_aux_InvokeMethod(EOS(STATIC_4486), i2139, i2140, java.lang.Object(ARRAY(i2141)))
4470_0_<init>_Return(EOS(STATIC_4470), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4480_0_<init>_Return(EOS(STATIC_4480), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4472_0_aux_ArrayAccess(EOS(STATIC_4472), i2154, i2155, java.lang.Object(ARRAY(i2156)), i2154, i2155, java.lang.Object(ARRAY(i2156)), i2154, java.lang.Object(ARRAY(i2156)), i2154) → 4486_0_aux_InvokeMethod(EOS(STATIC_4486), i2154, i2155, java.lang.Object(ARRAY(i2156)))
4480_0_<init>_Return(EOS(STATIC_4480), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4493_0_<init>_Return(EOS(STATIC_4493), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4486_0_aux_InvokeMethod(EOS(STATIC_4486), i2154, i2155, java.lang.Object(ARRAY(i2156))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), i2154, i2155, java.lang.Object(ARRAY(i2156)))
4493_0_<init>_Return(EOS(STATIC_4493), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4503_0_<init>_Return(EOS(STATIC_4503), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4501_0_aux_InvokeMethod(EOS(STATIC_4501), i2210, i2211, java.lang.Object(ARRAY(i1723)), i2139, i2211, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2210, i2211, java.lang.Object(ARRAY(i1723)), i2139, i2211, java.lang.Object(ARRAY(i1723)))
4503_0_<init>_Return(EOS(STATIC_4503), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4511_0_aux_ArrayAccess(EOS(STATIC_4511), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4516_0_aux_InvokeMethod(EOS(STATIC_4516), i2233, i2234, java.lang.Object(ARRAY(i1723)), i2154, i2234, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2233, i2234, java.lang.Object(ARRAY(i1723)), i2154, i2234, java.lang.Object(ARRAY(i1723)))
4524_0_aux_ArrayAccess(EOS(STATIC_4524), i2256, i2257, java.lang.Object(ARRAY(i1723)), i2256, i2257, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), i2256, i2257, java.lang.Object(ARRAY(i1723)))
4543_0_aux_InvokeMethod(EOS(STATIC_4543), i2288, i2289, java.lang.Object(ARRAY(i1723)), i2256, i2289, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2288, i2289, java.lang.Object(ARRAY(i1723)), i2256, i2289, java.lang.Object(ARRAY(i1723)))

Combined rules. Obtained 1 conditional rules for P and 15 conditional rules for R.


P rules:
3710_0_aux_Load(EOS(STATIC_3710), x0, x1, java.lang.Object(ARRAY(x2)), x0) → 4163_1_aux_InvokeMethod(3710_0_aux_Load(EOS(STATIC_3710), +(x0, 1), x1, java.lang.Object(ARRAY(x2)), +(x0, 1)), +(x0, 1), x1, java.lang.Object(ARRAY(x2))) | &&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(+(x0, 1), 0))
R rules:
4163_1_aux_InvokeMethod(4249_0_aux_Return(EOS(STATIC_4249)), x0, x1, java.lang.Object(ARRAY(x2))) → 4344_0_aux_Return(EOS(STATIC_4344))
4163_1_aux_InvokeMethod(4344_0_aux_Return(EOS(STATIC_4344)), x0, x1, java.lang.Object(ARRAY(x2))) → 4344_0_aux_Return(EOS(STATIC_4344))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(EOS(STATIC_4511), x0, x1, java.lang.Object(ARRAY(x2)), java.lang.Object(ARRAY(x2)), x3), x0, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(3717_0_aux_Return(EOS(STATIC_3717), x0, x1, java.lang.Object(ARRAY(x2))), x0, x1, java.lang.Object(ARRAY(x2))) → 4344_0_aux_Return(EOS(STATIC_4344))
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(EOS(STATIC_4433), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0), x0, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4408_0_aux_ArrayAccess(EOS(STATIC_4408), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x3), x0, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4254_0_aux_InvokeMethod(EOS(STATIC_4254), x0, x1, java.lang.Object(ARRAY(x2))), x3, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4291_0_aux_InvokeMethod(EOS(STATIC_4291), x0, x1, java.lang.Object(ARRAY(x2))), x3, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4351_0_aux_InvokeMethod(EOS(STATIC_4351), x0, x1, java.lang.Object(ARRAY(x2))), x3, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4466_0_aux_InvokeMethod(EOS(STATIC_4466), x0, x1, java.lang.Object(ARRAY(x2))), x3, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4486_0_aux_InvokeMethod(EOS(STATIC_4486), x0, x1, java.lang.Object(ARRAY(x2))), x3, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, x1, java.lang.Object(ARRAY(x2))), x3, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4205_0_aux_ArrayAccess(EOS(STATIC_4205), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0), x0, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(EOS(STATIC_4117), x0, x1, java.lang.Object(ARRAY(x2)), x0, x3, java.lang.Object(ARRAY(x2)), x4), x0, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4011_0_aux_ArrayAccess(EOS(STATIC_4011), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0), x0, x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, x1, java.lang.Object(ARRAY(x2)))

Filtered ground terms:



3710_0_aux_Load(x1, x2, x3, x4, x5) → 3710_0_aux_Load(x2, x3, x4, x5)
Cond_3710_0_aux_Load(x1, x2, x3, x4, x5, x6) → Cond_3710_0_aux_Load(x1, x3, x4, x5, x6)
4529_0_aux_InvokeMethod(x1, x2, x3, x4) → 4529_0_aux_InvokeMethod(x2, x3, x4)
4011_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 4011_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7)
4117_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7, x8) → 4117_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7, x8)
4205_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 4205_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7)
4486_0_aux_InvokeMethod(x1, x2, x3, x4) → 4486_0_aux_InvokeMethod(x2, x3, x4)
4466_0_aux_InvokeMethod(x1, x2, x3, x4) → 4466_0_aux_InvokeMethod(x2, x3, x4)
4351_0_aux_InvokeMethod(x1, x2, x3, x4) → 4351_0_aux_InvokeMethod(x2, x3, x4)
4291_0_aux_InvokeMethod(x1, x2, x3, x4) → 4291_0_aux_InvokeMethod(x2, x3, x4)
4254_0_aux_InvokeMethod(x1, x2, x3, x4) → 4254_0_aux_InvokeMethod(x2, x3, x4)
4408_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7, x8, x9) → 4408_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7, x8, x9)
4433_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 4433_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7)
4344_0_aux_Return(x1) → 4344_0_aux_Return
3717_0_aux_Return(x1, x2, x3, x4) → 3717_0_aux_Return(x2, x3, x4)
4511_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 4511_0_aux_ArrayAccess(x2, x3, x4, x5, x6)
4249_0_aux_Return(x1) → 4249_0_aux_Return

Filtered duplicate args:



3710_0_aux_Load(x1, x2, x3, x4) → 3710_0_aux_Load(x2, x3, x4)
Cond_3710_0_aux_Load(x1, x2, x3, x4, x5) → Cond_3710_0_aux_Load(x1, x3, x4, x5)
4511_0_aux_ArrayAccess(x1, x2, x3, x4, x5) → 4511_0_aux_ArrayAccess(x1, x2, x4, x5)
4433_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 4433_0_aux_ArrayAccess(x2, x5, x6)
4408_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7, x8) → 4408_0_aux_ArrayAccess(x2, x6, x7, x8)
4205_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 4205_0_aux_ArrayAccess(x2, x5, x6)
4117_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 4117_0_aux_ArrayAccess(x2, x4, x5, x6, x7)
4011_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 4011_0_aux_ArrayAccess(x2, x5, x6)

Filtered unneeded arguments:



4163_1_aux_InvokeMethod(x1, x2, x3, x4) → 4163_1_aux_InvokeMethod(x1)

Combined rules. Obtained 1 conditional rules for P and 15 conditional rules for R.


P rules:
3710_0_aux_Load(x1, java.lang.Object(ARRAY(x2)), x0) → 4163_1_aux_InvokeMethod(3710_0_aux_Load(x1, java.lang.Object(ARRAY(x2)), +(x0, 1))) | &&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(x0, -1))
R rules:
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4344_0_aux_Return
4163_1_aux_InvokeMethod(4344_0_aux_Return) → 4344_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, x1, java.lang.Object(ARRAY(x2)))) → 4344_0_aux_Return
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4408_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4254_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4291_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4351_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4466_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4486_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4205_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4011_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))

Performed bisimulation on rules. Used the following equivalence classes: {[4249_0_aux_Return, 4344_0_aux_Return]=4249_0_aux_Return, [4511_0_aux_ArrayAccess_4, 4408_0_aux_ArrayAccess_4]=4511_0_aux_ArrayAccess_4, [4433_0_aux_ArrayAccess_3, 4205_0_aux_ArrayAccess_3, 4011_0_aux_ArrayAccess_3]=4433_0_aux_ArrayAccess_3, [4529_0_aux_InvokeMethod_3, 3717_0_aux_Return_3, 4254_0_aux_InvokeMethod_3, 4291_0_aux_InvokeMethod_3, 4351_0_aux_InvokeMethod_3, 4466_0_aux_InvokeMethod_3, 4486_0_aux_InvokeMethod_3]=4529_0_aux_InvokeMethod_3}


Finished conversion. Obtained 2 rules for P and 7 rules for R. System has predefined symbols.


P rules:
3710_0_AUX_LOAD(x1, java.lang.Object(ARRAY(x2)), x0) → COND_3710_0_AUX_LOAD(&&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(x0, -1)), x1, java.lang.Object(ARRAY(x2)), x0)
COND_3710_0_AUX_LOAD(TRUE, x1, java.lang.Object(ARRAY(x2)), x0) → 3710_0_AUX_LOAD(x1, java.lang.Object(ARRAY(x2)), +(x0, 1))
R rules:
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))

(7) 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:
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))

The integer pair graph contains the following rules and edges:
(0): 3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0]) → COND_3710_0_AUX_LOAD(x2[0] > x0[0] + 1 && x1[0] > x0[0] && x0[0] > -1, x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])
(1): COND_3710_0_AUX_LOAD(TRUE, x1[1], java.lang.Object(ARRAY(x2[1])), x0[1]) → 3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), x0[1] + 1)

(0) -> (1), if (x2[0] > x0[0] + 1 && x1[0] > x0[0] && x0[0] > -1x1[0]* x1[1]java.lang.Object(ARRAY(x2[0])) →* java.lang.Object(ARRAY(x2[1]))∧x0[0]* x0[1])


(1) -> (0), if (x1[1]* x1[0]java.lang.Object(ARRAY(x2[1])) →* java.lang.Object(ARRAY(x2[0]))∧x0[1] + 1* x0[0])



The set Q consists of the following terms:
4163_1_aux_InvokeMethod(4249_0_aux_Return)
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2))))
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x0, java.lang.Object(ARRAY(x1)), x2))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x0, x1, x2, java.lang.Object(ARRAY(x3)), x4))

(8) IDPNonInfProof (SOUND transformation)

Used the following options for this NonInfProof:
IDPGPoloSolver: Range: [(-1,2)] IsNat: false Interpretation Shape Heuristic: aprove.DPFramework.IDPProblem.Processors.nonInf.poly.IdpCand1ShapeHeuristic@43902f84 Constraint Generator: NonInfConstraintGenerator: PathGenerator: MetricPathGenerator: Max Left Steps: 0 Max Right Steps: 0

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 3710_0_AUX_LOAD(x1, java.lang.Object(ARRAY(x2)), x0) → COND_3710_0_AUX_LOAD(&&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(x0, -1)), x1, java.lang.Object(ARRAY(x2)), x0) the following chains were created:
  • We consider the chain 3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0]) → COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0]), COND_3710_0_AUX_LOAD(TRUE, x1[1], java.lang.Object(ARRAY(x2[1])), x0[1]) → 3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1)) which results in the following constraint:

    (1)    (&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1))=TRUEx1[0]=x1[1]java.lang.Object(ARRAY(x2[0]))=java.lang.Object(ARRAY(x2[1]))∧x0[0]=x0[1]3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])≥NonInfC∧3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])≥COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])∧(UIncreasing(COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])), ≥))



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

    (2)    (>(x0[0], -1)=TRUE>(x2[0], +(x0[0], 1))=TRUE>(x1[0], x0[0])=TRUE3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])≥NonInfC∧3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])≥COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])∧(UIncreasing(COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])), ≥))



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

    (3)    (x0[0] ≥ 0∧x2[0] + [-2] + [-1]x0[0] ≥ 0∧x1[0] + [-1] + [-1]x0[0] ≥ 0 ⇒ (UIncreasing(COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])), ≥)∧[(-1)bni_16 + (-1)Bound*bni_16] + [(-1)bni_16]x0[0] + [(2)bni_16]x2[0] + [(2)bni_16]x1[0] ≥ 0∧[(-1)bso_17] ≥ 0)



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

    (4)    (x0[0] ≥ 0∧x2[0] + [-2] + [-1]x0[0] ≥ 0∧x1[0] + [-1] + [-1]x0[0] ≥ 0 ⇒ (UIncreasing(COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])), ≥)∧[(-1)bni_16 + (-1)Bound*bni_16] + [(-1)bni_16]x0[0] + [(2)bni_16]x2[0] + [(2)bni_16]x1[0] ≥ 0∧[(-1)bso_17] ≥ 0)



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

    (5)    (x0[0] ≥ 0∧x2[0] + [-2] + [-1]x0[0] ≥ 0∧x1[0] + [-1] + [-1]x0[0] ≥ 0 ⇒ (UIncreasing(COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])), ≥)∧[(-1)bni_16 + (-1)Bound*bni_16] + [(-1)bni_16]x0[0] + [(2)bni_16]x2[0] + [(2)bni_16]x1[0] ≥ 0∧[(-1)bso_17] ≥ 0)



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

    (6)    (x0[0] ≥ 0∧x2[0] ≥ 0∧x1[0] + [-1] + [-1]x0[0] ≥ 0 ⇒ (UIncreasing(COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])), ≥)∧[(3)bni_16 + (-1)Bound*bni_16] + [bni_16]x0[0] + [(2)bni_16]x2[0] + [(2)bni_16]x1[0] ≥ 0∧[(-1)bso_17] ≥ 0)



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

    (7)    (x0[0] ≥ 0∧x2[0] ≥ 0∧x1[0] ≥ 0 ⇒ (UIncreasing(COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])), ≥)∧[(5)bni_16 + (-1)Bound*bni_16] + [(3)bni_16]x0[0] + [(2)bni_16]x2[0] + [(2)bni_16]x1[0] ≥ 0∧[(-1)bso_17] ≥ 0)







For Pair COND_3710_0_AUX_LOAD(TRUE, x1, java.lang.Object(ARRAY(x2)), x0) → 3710_0_AUX_LOAD(x1, java.lang.Object(ARRAY(x2)), +(x0, 1)) the following chains were created:
  • We consider the chain COND_3710_0_AUX_LOAD(TRUE, x1[1], java.lang.Object(ARRAY(x2[1])), x0[1]) → 3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1)) which results in the following constraint:

    (8)    (COND_3710_0_AUX_LOAD(TRUE, x1[1], java.lang.Object(ARRAY(x2[1])), x0[1])≥NonInfC∧COND_3710_0_AUX_LOAD(TRUE, x1[1], java.lang.Object(ARRAY(x2[1])), x0[1])≥3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1))∧(UIncreasing(3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1))), ≥))



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

    (9)    ((UIncreasing(3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1))), ≥)∧[bni_18] = 0∧[1 + (-1)bso_19] ≥ 0)



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

    (10)    ((UIncreasing(3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1))), ≥)∧[bni_18] = 0∧[1 + (-1)bso_19] ≥ 0)



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

    (11)    ((UIncreasing(3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1))), ≥)∧[bni_18] = 0∧[1 + (-1)bso_19] ≥ 0)



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

    (12)    ((UIncreasing(3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1))), ≥)∧[bni_18] = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_19] ≥ 0)







To summarize, we get the following constraints P for the following pairs.
  • 3710_0_AUX_LOAD(x1, java.lang.Object(ARRAY(x2)), x0) → COND_3710_0_AUX_LOAD(&&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(x0, -1)), x1, java.lang.Object(ARRAY(x2)), x0)
    • (x0[0] ≥ 0∧x2[0] ≥ 0∧x1[0] ≥ 0 ⇒ (UIncreasing(COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])), ≥)∧[(5)bni_16 + (-1)Bound*bni_16] + [(3)bni_16]x0[0] + [(2)bni_16]x2[0] + [(2)bni_16]x1[0] ≥ 0∧[(-1)bso_17] ≥ 0)

  • COND_3710_0_AUX_LOAD(TRUE, x1, java.lang.Object(ARRAY(x2)), x0) → 3710_0_AUX_LOAD(x1, java.lang.Object(ARRAY(x2)), +(x0, 1))
    • ((UIncreasing(3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1))), ≥)∧[bni_18] = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_19] ≥ 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[POLO]:

POL(TRUE) = 0   
POL(FALSE) = 0   
POL(4163_1_aux_InvokeMethod(x1)) = [-1]   
POL(4249_0_aux_Return) = [-1]   
POL(4511_0_aux_ArrayAccess(x1, x2, x3, x4)) = [-1]   
POL(java.lang.Object(x1)) = x1   
POL(ARRAY(x1)) = x1   
POL(4529_0_aux_InvokeMethod(x1, x2, x3)) = [-1]   
POL(4433_0_aux_ArrayAccess(x1, x2, x3)) = [-1]   
POL(4117_0_aux_ArrayAccess(x1, x2, x3, x4, x5)) = [-1]   
POL(3710_0_AUX_LOAD(x1, x2, x3)) = [-1] + [-1]x3 + [2]x2 + [2]x1   
POL(COND_3710_0_AUX_LOAD(x1, x2, x3, x4)) = [-1] + [-1]x4 + [2]x3 + [2]x2   
POL(&&(x1, x2)) = [-1]   
POL(>(x1, x2)) = [-1]   
POL(+(x1, x2)) = x1 + x2   
POL(1) = [1]   
POL(-1) = [-1]   

The following pairs are in P>:

COND_3710_0_AUX_LOAD(TRUE, x1[1], java.lang.Object(ARRAY(x2[1])), x0[1]) → 3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), +(x0[1], 1))

The following pairs are in Pbound:

3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0]) → COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])

The following pairs are in P:

3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0]) → COND_3710_0_AUX_LOAD(&&(&&(>(x2[0], +(x0[0], 1)), >(x1[0], x0[0])), >(x0[0], -1)), x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])

There are no usable rules.

(9) Complex Obligation (AND)

(10) 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:
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))

The integer pair graph contains the following rules and edges:
(0): 3710_0_AUX_LOAD(x1[0], java.lang.Object(ARRAY(x2[0])), x0[0]) → COND_3710_0_AUX_LOAD(x2[0] > x0[0] + 1 && x1[0] > x0[0] && x0[0] > -1, x1[0], java.lang.Object(ARRAY(x2[0])), x0[0])


The set Q consists of the following terms:
4163_1_aux_InvokeMethod(4249_0_aux_Return)
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2))))
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x0, java.lang.Object(ARRAY(x1)), x2))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x0, x1, x2, java.lang.Object(ARRAY(x3)), x4))

(11) IDependencyGraphProof (EQUIVALENT transformation)

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

(12) TRUE

(13) 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:

Integer


The ITRS R consists of the following rules:
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))) → 4529_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2)))

The integer pair graph contains the following rules and edges:
(1): COND_3710_0_AUX_LOAD(TRUE, x1[1], java.lang.Object(ARRAY(x2[1])), x0[1]) → 3710_0_AUX_LOAD(x1[1], java.lang.Object(ARRAY(x2[1])), x0[1] + 1)


The set Q consists of the following terms:
4163_1_aux_InvokeMethod(4249_0_aux_Return)
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, x1, java.lang.Object(ARRAY(x2))))
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x0, java.lang.Object(ARRAY(x1)), x2))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x0, x1, x2, java.lang.Object(ARRAY(x3)), x4))

(14) IDependencyGraphProof (EQUIVALENT transformation)

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

(15) TRUE

(16) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: BubbleSortR.main([Ljava/lang/String;)V
SCC calls the following helper methods: BubbleSortR.aux(II[I)V
Performed SCC analyses: UsedFieldsAnalysis

(17) SCCToIDPv1Proof (SOUND transformation)

Transformed FIGraph SCCs to IDPs. Log:

Generated 21 rules for P and 254 rules for R.


P rules:
3886_0_sort_Load(EOS(STATIC_3886), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, i1791) → 3899_0_sort_GE(EOS(STATIC_3899), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, i1791, i1790)
3899_0_sort_GE(EOS(STATIC_3899), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, i1791, i1790) → 3907_0_sort_GE(EOS(STATIC_3907), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, i1791, i1790)
3907_0_sort_GE(EOS(STATIC_3907), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, i1791, i1790) → 3921_0_sort_ConstantStackPush(EOS(STATIC_3921), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791) | <(i1791, i1790)
3921_0_sort_ConstantStackPush(EOS(STATIC_3921), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791) → 3936_0_sort_Load(EOS(STATIC_3936), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0)
3936_0_sort_Load(EOS(STATIC_3936), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, matching1) → 3948_0_sort_Load(EOS(STATIC_3948), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, i1790) | =(matching1, 0)
3948_0_sort_Load(EOS(STATIC_3948), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, matching1, i1790) → 3965_0_sort_IntArithmetic(EOS(STATIC_3965), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, i1790, i1791) | =(matching1, 0)
3965_0_sort_IntArithmetic(EOS(STATIC_3965), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, matching1, i1790, i1791) → 3979_0_sort_Load(EOS(STATIC_3979), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, -(i1790, i1791)) | &&(&&(>=(i1790, 0), >(i1791, 0)), =(matching1, 0))
3979_0_sort_Load(EOS(STATIC_3979), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, matching1, i1838) → 3993_0_sort_InvokeMethod(EOS(STATIC_3993), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, i1838, java.lang.Object(ARRAY(i1790))) | =(matching1, 0)
3993_0_sort_InvokeMethod(EOS(STATIC_3993), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, matching1, i1838, java.lang.Object(ARRAY(i1790))) → 4012_1_sort_InvokeMethod(4012_0_aux_Load(EOS(STATIC_4012), 0, i1838, java.lang.Object(ARRAY(i1790))), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, i1838, java.lang.Object(ARRAY(i1790))) | =(matching1, 0)
4012_1_sort_InvokeMethod(3717_0_aux_Return(EOS(STATIC_3717), matching1, i1872, java.lang.Object(ARRAY(i1873))), java.lang.Object(ARRAY(i1873)), java.lang.Object(ARRAY(i1873)), i1873, i1791, matching2, i1872, java.lang.Object(ARRAY(i1873))) → 4078_0_aux_Return(EOS(STATIC_4078), java.lang.Object(ARRAY(i1873)), java.lang.Object(ARRAY(i1873)), i1873, i1791, 0, i1872, java.lang.Object(ARRAY(i1873)), 0, i1872, java.lang.Object(ARRAY(i1873))) | &&(=(matching1, 0), =(matching2, 0))
4012_1_sort_InvokeMethod(4249_0_aux_Return(EOS(STATIC_4249)), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i2013, i1791, matching1, i2012, java.lang.Object(ARRAY(i1790))) → 4318_0_aux_Return(EOS(STATIC_4318), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, i2012, java.lang.Object(ARRAY(i1790))) | =(matching1, 0)
4012_1_sort_InvokeMethod(4344_0_aux_Return(EOS(STATIC_4344)), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i2090, i1791, matching1, i2089, java.lang.Object(ARRAY(i1790))) → 4410_0_aux_Return(EOS(STATIC_4410), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, i2089, java.lang.Object(ARRAY(i1790))) | =(matching1, 0)
4078_0_aux_Return(EOS(STATIC_4078), java.lang.Object(ARRAY(i1873)), java.lang.Object(ARRAY(i1873)), i1873, i1791, matching1, i1872, java.lang.Object(ARRAY(i1873)), matching2, i1872, java.lang.Object(ARRAY(i1873))) → 4096_0_sort_Inc(EOS(STATIC_4096), java.lang.Object(ARRAY(i1873)), java.lang.Object(ARRAY(i1873)), i1873, i1791) | &&(=(matching1, 0), =(matching2, 0))
4096_0_sort_Inc(EOS(STATIC_4096), java.lang.Object(ARRAY(i1873)), java.lang.Object(ARRAY(i1873)), i1873, i1791) → 4099_0_sort_Inc(EOS(STATIC_4099), java.lang.Object(ARRAY(i1873)), java.lang.Object(ARRAY(i1873)), i1873, i1791)
4099_0_sort_Inc(EOS(STATIC_4099), java.lang.Object(ARRAY(i1878)), java.lang.Object(ARRAY(i1878)), i1878, i1791) → 4119_0_sort_JMP(EOS(STATIC_4119), java.lang.Object(ARRAY(i1878)), java.lang.Object(ARRAY(i1878)), i1878, +(i1791, 1)) | >(i1791, 0)
4119_0_sort_JMP(EOS(STATIC_4119), java.lang.Object(ARRAY(i1878)), java.lang.Object(ARRAY(i1878)), i1878, i1901) → 4133_0_sort_Load(EOS(STATIC_4133), java.lang.Object(ARRAY(i1878)), java.lang.Object(ARRAY(i1878)), i1878, i1901)
4133_0_sort_Load(EOS(STATIC_4133), java.lang.Object(ARRAY(i1878)), java.lang.Object(ARRAY(i1878)), i1878, i1901) → 3869_0_sort_Load(EOS(STATIC_3869), java.lang.Object(ARRAY(i1878)), java.lang.Object(ARRAY(i1878)), i1878, i1901)
3869_0_sort_Load(EOS(STATIC_3869), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791) → 3886_0_sort_Load(EOS(STATIC_3886), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, i1791)
4318_0_aux_Return(EOS(STATIC_4318), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, matching1, i2012, java.lang.Object(ARRAY(i1790))) → 4080_0_aux_Return(EOS(STATIC_4080), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, i2012, java.lang.Object(ARRAY(i1790))) | =(matching1, 0)
4080_0_aux_Return(EOS(STATIC_4080), java.lang.Object(ARRAY(i1878)), java.lang.Object(ARRAY(i1878)), i1878, i1791, matching1, i1877, java.lang.Object(ARRAY(i1878))) → 4099_0_sort_Inc(EOS(STATIC_4099), java.lang.Object(ARRAY(i1878)), java.lang.Object(ARRAY(i1878)), i1878, i1791) | =(matching1, 0)
4410_0_aux_Return(EOS(STATIC_4410), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, matching1, i2089, java.lang.Object(ARRAY(i1790))) → 4080_0_aux_Return(EOS(STATIC_4080), java.lang.Object(ARRAY(i1790)), java.lang.Object(ARRAY(i1790)), i1790, i1791, 0, i2089, java.lang.Object(ARRAY(i1790))) | =(matching1, 0)
R rules:
4012_0_aux_Load(EOS(STATIC_4012), matching1, i1838, java.lang.Object(ARRAY(i1790))) → 4024_0_aux_Load(EOS(STATIC_4024), 0, i1838, java.lang.Object(ARRAY(i1790))) | =(matching1, 0)
4024_0_aux_Load(EOS(STATIC_4024), matching1, i1838, java.lang.Object(ARRAY(i1790))) → 3709_0_aux_Load(EOS(STATIC_3709), 0, i1838, java.lang.Object(ARRAY(i1790))) | =(matching1, 0)
4176_0_aux_Load(EOS(STATIC_4176), i1722, java.lang.Object(ARRAY(i1723))) → 3709_0_aux_Load(EOS(STATIC_3709), i1906, i1722, java.lang.Object(ARRAY(i1723)))
3709_0_aux_Load(EOS(STATIC_3709), i1721, i1722, java.lang.Object(ARRAY(i1723))) → 3710_0_aux_Load(EOS(STATIC_3710), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721)
3710_0_aux_Load(EOS(STATIC_3710), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721) → 3712_0_aux_LT(EOS(STATIC_3712), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722)
3712_0_aux_LT(EOS(STATIC_3712), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722) → 3713_0_aux_LT(EOS(STATIC_3713), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722)
3712_0_aux_LT(EOS(STATIC_3712), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722) → 3714_0_aux_LT(EOS(STATIC_3714), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722)
3713_0_aux_LT(EOS(STATIC_3713), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722) → 3715_0_aux_Load(EOS(STATIC_3715), i1721, i1722, java.lang.Object(ARRAY(i1723))) | <(i1721, i1722)
3714_0_aux_LT(EOS(STATIC_3714), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, i1722) → 3717_0_aux_Return(EOS(STATIC_3717), i1721, i1722, java.lang.Object(ARRAY(i1723))) | >=(i1721, i1722)
3715_0_aux_Load(EOS(STATIC_3715), i1721, i1722, java.lang.Object(ARRAY(i1723))) → 3718_0_aux_Store(EOS(STATIC_3718), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721)
3718_0_aux_Store(EOS(STATIC_3718), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721) → 3720_0_aux_Load(EOS(STATIC_3720), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721)
3720_0_aux_Load(EOS(STATIC_3720), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721) → 3724_0_aux_Load(EOS(STATIC_3724), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, java.lang.Object(ARRAY(i1723)))
3724_0_aux_Load(EOS(STATIC_3724), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, java.lang.Object(ARRAY(i1723))) → 3727_0_aux_ArrayAccess(EOS(STATIC_3727), i1721, i1722, java.lang.Object(ARRAY(i1723)), i1721, java.lang.Object(ARRAY(i1723)), i1721)
3727_0_aux_ArrayAccess(EOS(STATIC_3727), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3730_0_aux_ArrayAccess(EOS(STATIC_3730), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3727_0_aux_ArrayAccess(EOS(STATIC_3727), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3731_0_aux_ArrayAccess(EOS(STATIC_3731), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3730_0_aux_ArrayAccess(EOS(STATIC_3730), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3733_0_<init>_Load(EOS(STATIC_3733), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) | <=(i1732, -1)
3731_0_aux_ArrayAccess(EOS(STATIC_3731), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3735_0_aux_ArrayAccess(EOS(STATIC_3735), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3731_0_aux_ArrayAccess(EOS(STATIC_3731), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3736_0_aux_ArrayAccess(EOS(STATIC_3736), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3733_0_<init>_Load(EOS(STATIC_3733), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3749_0_<init>_InvokeMethod(EOS(STATIC_3749), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3735_0_aux_ArrayAccess(EOS(STATIC_3735), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3745_0_aux_Load(EOS(STATIC_3745), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753) | <(i1733, i1723)
3736_0_aux_ArrayAccess(EOS(STATIC_3736), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3746_0_<init>_Load(EOS(STATIC_3746), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) | >=(i1733, i1723)
3745_0_aux_Load(EOS(STATIC_3745), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753) → 3750_0_aux_Load(EOS(STATIC_3750), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)))
3746_0_<init>_Load(EOS(STATIC_3746), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3757_0_<init>_InvokeMethod(EOS(STATIC_3757), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3749_0_<init>_InvokeMethod(EOS(STATIC_3749), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3755_0_<init>_Load(EOS(STATIC_3755), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3750_0_aux_Load(EOS(STATIC_3750), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723))) → 3756_0_aux_ConstantStackPush(EOS(STATIC_3756), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1733)
3755_0_<init>_Load(EOS(STATIC_3755), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3767_0_<init>_InvokeMethod(EOS(STATIC_3767), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3756_0_aux_ConstantStackPush(EOS(STATIC_3756), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1733) → 3761_0_aux_IntArithmetic(EOS(STATIC_3761), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1733, 1)
3757_0_<init>_InvokeMethod(EOS(STATIC_3757), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3762_0_<init>_Load(EOS(STATIC_3762), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3761_0_aux_IntArithmetic(EOS(STATIC_3761), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1733, matching1) → 3768_0_aux_ArrayAccess(EOS(STATIC_3768), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), +(i1733, 1)) | &&(>=(i1733, 0), =(matching1, 1))
3762_0_<init>_Load(EOS(STATIC_3762), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3777_0_<init>_InvokeMethod(EOS(STATIC_3777), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3767_0_<init>_InvokeMethod(EOS(STATIC_3767), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3773_0_<init>_Load(EOS(STATIC_3773), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3768_0_aux_ArrayAccess(EOS(STATIC_3768), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3775_0_aux_ArrayAccess(EOS(STATIC_3775), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3768_0_aux_ArrayAccess(EOS(STATIC_3768), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3776_0_aux_ArrayAccess(EOS(STATIC_3776), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3773_0_<init>_Load(EOS(STATIC_3773), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3787_0_<init>_InvokeMethod(EOS(STATIC_3787), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3775_0_aux_ArrayAccess(EOS(STATIC_3775), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3781_0_aux_LE(EOS(STATIC_3781), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) | <(i1762, i1723)
3776_0_aux_ArrayAccess(EOS(STATIC_3776), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3783_0_<init>_Load(EOS(STATIC_3783), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) | >=(i1762, i1723)
3777_0_<init>_InvokeMethod(EOS(STATIC_3777), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3784_0_<init>_Load(EOS(STATIC_3784), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3781_0_aux_LE(EOS(STATIC_3781), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) → 3788_0_aux_LE(EOS(STATIC_3788), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765)
3781_0_aux_LE(EOS(STATIC_3781), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) → 3789_0_aux_LE(EOS(STATIC_3789), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765)
3783_0_<init>_Load(EOS(STATIC_3783), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3797_0_<init>_InvokeMethod(EOS(STATIC_3797), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3784_0_<init>_Load(EOS(STATIC_3784), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3798_0_<init>_InvokeMethod(EOS(STATIC_3798), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3787_0_<init>_InvokeMethod(EOS(STATIC_3787), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3792_0_<init>_Load(EOS(STATIC_3792), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3788_0_aux_LE(EOS(STATIC_3788), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) → 3793_0_aux_Load(EOS(STATIC_3793), i1733, i1722, java.lang.Object(ARRAY(i1723))) | <=(i1753, i1765)
3789_0_aux_LE(EOS(STATIC_3789), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, i1765) → 3794_0_aux_Load(EOS(STATIC_3794), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) | >(i1753, i1765)
3792_0_<init>_Load(EOS(STATIC_3792), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3807_0_<init>_InvokeMethod(EOS(STATIC_3807), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3793_0_aux_Load(EOS(STATIC_3793), i1733, i1722, java.lang.Object(ARRAY(i1723))) → 4067_0_aux_Load(EOS(STATIC_4067), i1733, i1722, java.lang.Object(ARRAY(i1723)))
3794_0_aux_Load(EOS(STATIC_3794), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) → 3802_0_aux_Load(EOS(STATIC_3802), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)))
3797_0_<init>_InvokeMethod(EOS(STATIC_3797), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3803_0_<init>_Load(EOS(STATIC_3803), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3798_0_<init>_InvokeMethod(EOS(STATIC_3798), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3805_0_<init>_Load(EOS(STATIC_3805), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3802_0_aux_Load(EOS(STATIC_3802), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723))) → 3810_0_aux_ArrayAccess(EOS(STATIC_3810), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3803_0_<init>_Load(EOS(STATIC_3803), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3819_0_<init>_InvokeMethod(EOS(STATIC_3819), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3805_0_<init>_Load(EOS(STATIC_3805), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3821_0_<init>_InvokeMethod(EOS(STATIC_3821), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3807_0_<init>_InvokeMethod(EOS(STATIC_3807), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3813_0_<init>_Load(EOS(STATIC_3813), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3810_0_aux_ArrayAccess(EOS(STATIC_3810), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3816_0_aux_ArrayAccess(EOS(STATIC_3816), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3810_0_aux_ArrayAccess(EOS(STATIC_3810), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3817_0_aux_ArrayAccess(EOS(STATIC_3817), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3813_0_<init>_Load(EOS(STATIC_3813), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3832_0_<init>_InvokeMethod(EOS(STATIC_3832), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3816_0_aux_ArrayAccess(EOS(STATIC_3816), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3823_0_aux_Store(EOS(STATIC_3823), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) | <(i1733, i1723)
3817_0_aux_ArrayAccess(EOS(STATIC_3817), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3825_0_<init>_Load(EOS(STATIC_3825), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) | >=(i1733, i1723)
3819_0_<init>_InvokeMethod(EOS(STATIC_3819), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3826_0_<init>_Load(EOS(STATIC_3826), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3821_0_<init>_InvokeMethod(EOS(STATIC_3821), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3827_0_<init>_Load(EOS(STATIC_3827), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3823_0_aux_Store(EOS(STATIC_3823), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) → 3835_0_aux_Load(EOS(STATIC_3835), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733)
3825_0_<init>_Load(EOS(STATIC_3825), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3843_0_<init>_InvokeMethod(EOS(STATIC_3843), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3826_0_<init>_Load(EOS(STATIC_3826), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3845_0_<init>_InvokeMethod(EOS(STATIC_3845), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3827_0_<init>_Load(EOS(STATIC_3827), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3847_0_<init>_InvokeMethod(EOS(STATIC_3847), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3832_0_<init>_InvokeMethod(EOS(STATIC_3832), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3838_0_<init>_Load(EOS(STATIC_3838), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3835_0_aux_Load(EOS(STATIC_3835), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) → 3840_0_aux_Load(EOS(STATIC_3840), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)))
3838_0_<init>_Load(EOS(STATIC_3838), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3849_0_<init>_Load(EOS(STATIC_3849), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3840_0_aux_Load(EOS(STATIC_3840), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723))) → 3852_0_aux_Load(EOS(STATIC_3852), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3843_0_<init>_InvokeMethod(EOS(STATIC_3843), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3853_0_<init>_Load(EOS(STATIC_3853), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3845_0_<init>_InvokeMethod(EOS(STATIC_3845), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3855_0_<init>_Load(EOS(STATIC_3855), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3847_0_<init>_InvokeMethod(EOS(STATIC_3847), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3856_0_<init>_Load(EOS(STATIC_3856), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3849_0_<init>_Load(EOS(STATIC_3849), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3859_0_<init>_FieldAccess(EOS(STATIC_3859), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3852_0_aux_Load(EOS(STATIC_3852), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3860_0_aux_Load(EOS(STATIC_3860), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)))
3853_0_<init>_Load(EOS(STATIC_3853), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3880_0_<init>_InvokeMethod(EOS(STATIC_3880), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3855_0_<init>_Load(EOS(STATIC_3855), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3883_0_<init>_InvokeMethod(EOS(STATIC_3883), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3856_0_<init>_Load(EOS(STATIC_3856), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3862_0_<init>_Load(EOS(STATIC_3862), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3859_0_<init>_FieldAccess(EOS(STATIC_3859), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3872_0_<init>_Load(EOS(STATIC_3872), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3860_0_aux_Load(EOS(STATIC_3860), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723))) → 3877_0_aux_ConstantStackPush(EOS(STATIC_3877), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3862_0_<init>_Load(EOS(STATIC_3862), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3884_0_<init>_FieldAccess(EOS(STATIC_3884), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3872_0_<init>_Load(EOS(STATIC_3872), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3888_0_<init>_InvokeMethod(EOS(STATIC_3888), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3877_0_aux_ConstantStackPush(EOS(STATIC_3877), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3890_0_aux_IntArithmetic(EOS(STATIC_3890), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, 1)
3880_0_<init>_InvokeMethod(EOS(STATIC_3880), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3891_0_<init>_Load(EOS(STATIC_3891), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3883_0_<init>_InvokeMethod(EOS(STATIC_3883), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3893_0_<init>_Load(EOS(STATIC_3893), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3884_0_<init>_FieldAccess(EOS(STATIC_3884), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3896_0_<init>_Load(EOS(STATIC_3896), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3888_0_<init>_InvokeMethod(EOS(STATIC_3888), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3900_0_<init>_StackPop(EOS(STATIC_3900), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3890_0_aux_IntArithmetic(EOS(STATIC_3890), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, matching1) → 3903_0_aux_ArrayAccess(EOS(STATIC_3903), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), +(i1733, 1)) | &&(>=(i1733, 0), =(matching1, 1))
3891_0_<init>_Load(EOS(STATIC_3891), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3914_0_<init>_InvokeMethod(EOS(STATIC_3914), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3893_0_<init>_Load(EOS(STATIC_3893), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3917_0_<init>_InvokeMethod(EOS(STATIC_3917), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3896_0_<init>_Load(EOS(STATIC_3896), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3904_0_<init>_InvokeMethod(EOS(STATIC_3904), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3900_0_<init>_StackPop(EOS(STATIC_3900), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3908_0_<init>_Return(EOS(STATIC_3908), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3903_0_aux_ArrayAccess(EOS(STATIC_3903), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3911_0_aux_ArrayAccess(EOS(STATIC_3911), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3903_0_aux_ArrayAccess(EOS(STATIC_3903), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3912_0_aux_ArrayAccess(EOS(STATIC_3912), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3904_0_<init>_InvokeMethod(EOS(STATIC_3904), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3918_0_<init>_StackPop(EOS(STATIC_3918), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3908_0_<init>_Return(EOS(STATIC_3908), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3923_0_<init>_Return(EOS(STATIC_3923), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3911_0_aux_ArrayAccess(EOS(STATIC_3911), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3927_0_aux_ArrayAccess(EOS(STATIC_3927), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) | <(i1818, i1723)
3912_0_aux_ArrayAccess(EOS(STATIC_3912), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3928_0_<init>_Load(EOS(STATIC_3928), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) | >=(i1818, i1723)
3914_0_<init>_InvokeMethod(EOS(STATIC_3914), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3929_0_<init>_Load(EOS(STATIC_3929), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3917_0_<init>_InvokeMethod(EOS(STATIC_3917), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3932_0_<init>_Load(EOS(STATIC_3932), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3918_0_<init>_StackPop(EOS(STATIC_3918), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3933_0_<init>_Return(EOS(STATIC_3933), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3923_0_<init>_Return(EOS(STATIC_3923), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3938_0_<init>_Return(EOS(STATIC_3938), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3927_0_aux_ArrayAccess(EOS(STATIC_3927), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3940_0_aux_ArrayAccess(EOS(STATIC_3940), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3927_0_aux_ArrayAccess(EOS(STATIC_3927), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3941_0_aux_ArrayAccess(EOS(STATIC_3941), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3928_0_<init>_Load(EOS(STATIC_3928), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3957_0_<init>_InvokeMethod(EOS(STATIC_3957), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3929_0_<init>_Load(EOS(STATIC_3929), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3960_0_<init>_InvokeMethod(EOS(STATIC_3960), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3932_0_<init>_Load(EOS(STATIC_3932), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3943_0_<init>_Load(EOS(STATIC_3943), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3933_0_<init>_Return(EOS(STATIC_3933), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3945_0_<init>_Return(EOS(STATIC_3945), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3938_0_<init>_Return(EOS(STATIC_3938), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3949_0_<init>_Return(EOS(STATIC_3949), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3940_0_aux_ArrayAccess(EOS(STATIC_3940), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3952_0_aux_Load(EOS(STATIC_3952), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) | <(i1733, i1723)
3941_0_aux_ArrayAccess(EOS(STATIC_3941), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3954_0_<init>_Load(EOS(STATIC_3954), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) | >=(i1733, i1723)
3943_0_<init>_Load(EOS(STATIC_3943), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3963_0_<init>_FieldAccess(EOS(STATIC_3963), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3945_0_<init>_Return(EOS(STATIC_3945), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3964_0_<init>_Return(EOS(STATIC_3964), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3949_0_<init>_Return(EOS(STATIC_3949), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3967_0_<init>_Return(EOS(STATIC_3967), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3952_0_aux_Load(EOS(STATIC_3952), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733) → 3969_0_aux_Load(EOS(STATIC_3969), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)))
3954_0_<init>_Load(EOS(STATIC_3954), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3988_0_<init>_InvokeMethod(EOS(STATIC_3988), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3957_0_<init>_InvokeMethod(EOS(STATIC_3957), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 3971_0_<init>_Load(EOS(STATIC_3971), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3960_0_<init>_InvokeMethod(EOS(STATIC_3960), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3972_0_<init>_Load(EOS(STATIC_3972), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3963_0_<init>_FieldAccess(EOS(STATIC_3963), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3976_0_<init>_Load(EOS(STATIC_3976), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3964_0_<init>_Return(EOS(STATIC_3964), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3977_0_<init>_Return(EOS(STATIC_3977), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3967_0_<init>_Return(EOS(STATIC_3967), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732) → 3980_0_aux_ArrayAccess(EOS(STATIC_3980), i1732, i1722, java.lang.Object(ARRAY(i1723)), i1732, java.lang.Object(ARRAY(i1723)), i1732)
3969_0_aux_Load(EOS(STATIC_3969), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723))) → 3984_0_aux_ConstantStackPush(EOS(STATIC_3984), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1733)
3971_0_<init>_Load(EOS(STATIC_3971), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4003_0_<init>_InvokeMethod(EOS(STATIC_4003), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
3972_0_<init>_Load(EOS(STATIC_3972), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4006_0_<init>_InvokeMethod(EOS(STATIC_4006), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3976_0_<init>_Load(EOS(STATIC_3976), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 3991_0_<init>_InvokeMethod(EOS(STATIC_3991), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3977_0_<init>_Return(EOS(STATIC_3977), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 3992_0_<init>_Return(EOS(STATIC_3992), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3984_0_aux_ConstantStackPush(EOS(STATIC_3984), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1733) → 3998_0_aux_IntArithmetic(EOS(STATIC_3998), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1733, 1)
3988_0_<init>_InvokeMethod(EOS(STATIC_3988), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4000_0_<init>_Load(EOS(STATIC_4000), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3991_0_<init>_InvokeMethod(EOS(STATIC_3991), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4009_0_<init>_StackPop(EOS(STATIC_4009), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
3992_0_<init>_Return(EOS(STATIC_3992), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4011_0_aux_ArrayAccess(EOS(STATIC_4011), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
3998_0_aux_IntArithmetic(EOS(STATIC_3998), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1733, matching1) → 4015_0_aux_Load(EOS(STATIC_4015), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), +(i1733, 1)) | &&(>=(i1733, 0), =(matching1, 1))
4000_0_<init>_Load(EOS(STATIC_4000), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4032_0_<init>_InvokeMethod(EOS(STATIC_4032), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4003_0_<init>_InvokeMethod(EOS(STATIC_4003), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4016_0_<init>_Load(EOS(STATIC_4016), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4006_0_<init>_InvokeMethod(EOS(STATIC_4006), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4019_0_<init>_Load(EOS(STATIC_4019), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4009_0_<init>_StackPop(EOS(STATIC_4009), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4021_0_<init>_Return(EOS(STATIC_4021), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4015_0_aux_Load(EOS(STATIC_4015), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4027_0_aux_ArrayAccess(EOS(STATIC_4027), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4016_0_<init>_Load(EOS(STATIC_4016), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4047_0_<init>_InvokeMethod(EOS(STATIC_4047), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4019_0_<init>_Load(EOS(STATIC_4019), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4035_0_<init>_Load(EOS(STATIC_4035), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4021_0_<init>_Return(EOS(STATIC_4021), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4037_0_<init>_Return(EOS(STATIC_4037), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4027_0_aux_ArrayAccess(EOS(STATIC_4027), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4041_0_aux_ArrayAccess(EOS(STATIC_4041), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4027_0_aux_ArrayAccess(EOS(STATIC_4027), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4042_0_aux_ArrayAccess(EOS(STATIC_4042), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4032_0_<init>_InvokeMethod(EOS(STATIC_4032), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4044_0_<init>_Load(EOS(STATIC_4044), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4035_0_<init>_Load(EOS(STATIC_4035), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4050_0_<init>_FieldAccess(EOS(STATIC_4050), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4037_0_<init>_Return(EOS(STATIC_4037), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4053_0_<init>_Return(EOS(STATIC_4053), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4041_0_aux_ArrayAccess(EOS(STATIC_4041), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4067_0_aux_Load(EOS(STATIC_4067), i1733, i1722, java.lang.Object(ARRAY(i1723))) | <(i1855, i1723)
4042_0_aux_ArrayAccess(EOS(STATIC_4042), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4069_0_<init>_Load(EOS(STATIC_4069), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) | >=(i1855, i1723)
4044_0_<init>_Load(EOS(STATIC_4044), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4090_0_<init>_InvokeMethod(EOS(STATIC_4090), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4047_0_<init>_InvokeMethod(EOS(STATIC_4047), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4071_0_<init>_Load(EOS(STATIC_4071), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4050_0_<init>_FieldAccess(EOS(STATIC_4050), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4075_0_<init>_Load(EOS(STATIC_4075), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4053_0_<init>_Return(EOS(STATIC_4053), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4077_0_<init>_Return(EOS(STATIC_4077), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4067_0_aux_Load(EOS(STATIC_4067), i1733, i1722, java.lang.Object(ARRAY(i1723))) → 4086_0_aux_ConstantStackPush(EOS(STATIC_4086), i1722, java.lang.Object(ARRAY(i1723)), i1733)
4069_0_<init>_Load(EOS(STATIC_4069), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4107_0_<init>_InvokeMethod(EOS(STATIC_4107), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4071_0_<init>_Load(EOS(STATIC_4071), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4112_0_<init>_InvokeMethod(EOS(STATIC_4112), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4075_0_<init>_Load(EOS(STATIC_4075), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4093_0_<init>_InvokeMethod(EOS(STATIC_4093), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4077_0_<init>_Return(EOS(STATIC_4077), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4095_0_<init>_Return(EOS(STATIC_4095), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4086_0_aux_ConstantStackPush(EOS(STATIC_4086), i1722, java.lang.Object(ARRAY(i1723)), i1733) → 4102_0_aux_IntArithmetic(EOS(STATIC_4102), i1722, java.lang.Object(ARRAY(i1723)), i1733)
4090_0_<init>_InvokeMethod(EOS(STATIC_4090), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4108_0_<init>_Load(EOS(STATIC_4108), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4093_0_<init>_InvokeMethod(EOS(STATIC_4093), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4115_0_<init>_StackPop(EOS(STATIC_4115), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4095_0_<init>_Return(EOS(STATIC_4095), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762) → 4117_0_aux_ArrayAccess(EOS(STATIC_4117), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, i1753, java.lang.Object(ARRAY(i1723)), i1762)
4102_0_aux_IntArithmetic(EOS(STATIC_4102), i1722, java.lang.Object(ARRAY(i1723)), i1733) → 4123_0_aux_Load(EOS(STATIC_4123), i1722, java.lang.Object(ARRAY(i1723))) | >=(i1733, 0)
4107_0_<init>_InvokeMethod(EOS(STATIC_4107), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4124_0_<init>_Load(EOS(STATIC_4124), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4108_0_<init>_Load(EOS(STATIC_4108), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4141_0_<init>_InvokeMethod(EOS(STATIC_4141), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4112_0_<init>_InvokeMethod(EOS(STATIC_4112), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4125_0_<init>_Load(EOS(STATIC_4125), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4115_0_<init>_StackPop(EOS(STATIC_4115), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4128_0_<init>_Return(EOS(STATIC_4128), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4123_0_aux_Load(EOS(STATIC_4123), i1722, java.lang.Object(ARRAY(i1723))) → 4136_0_aux_Load(EOS(STATIC_4136), java.lang.Object(ARRAY(i1723)), i1722)
4124_0_<init>_Load(EOS(STATIC_4124), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4153_0_<init>_InvokeMethod(EOS(STATIC_4153), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4125_0_<init>_Load(EOS(STATIC_4125), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4158_0_<init>_InvokeMethod(EOS(STATIC_4158), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4128_0_<init>_Return(EOS(STATIC_4128), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4144_0_<init>_Return(EOS(STATIC_4144), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4136_0_aux_Load(EOS(STATIC_4136), java.lang.Object(ARRAY(i1723)), i1722) → 4148_0_aux_InvokeMethod(EOS(STATIC_4148), i1722, java.lang.Object(ARRAY(i1723)))
4141_0_<init>_InvokeMethod(EOS(STATIC_4141), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4154_0_<init>_Load(EOS(STATIC_4154), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4144_0_<init>_Return(EOS(STATIC_4144), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4161_0_<init>_Return(EOS(STATIC_4161), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4148_0_aux_InvokeMethod(EOS(STATIC_4148), i1722, java.lang.Object(ARRAY(i1723))) → 4163_1_aux_InvokeMethod(4163_0_aux_Load(EOS(STATIC_4163), i1722, java.lang.Object(ARRAY(i1723))), i1722, java.lang.Object(ARRAY(i1723)))
4153_0_<init>_InvokeMethod(EOS(STATIC_4153), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4165_0_<init>_Load(EOS(STATIC_4165), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4154_0_<init>_Load(EOS(STATIC_4154), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4181_0_<init>_InvokeMethod(EOS(STATIC_4181), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4158_0_<init>_InvokeMethod(EOS(STATIC_4158), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4168_0_<init>_Load(EOS(STATIC_4168), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4161_0_<init>_Return(EOS(STATIC_4161), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4171_0_<init>_Return(EOS(STATIC_4171), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4163_0_aux_Load(EOS(STATIC_4163), i1722, java.lang.Object(ARRAY(i1723))) → 4176_0_aux_Load(EOS(STATIC_4176), i1722, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(3717_0_aux_Return(EOS(STATIC_3717), i1939, i1940, java.lang.Object(ARRAY(i1941))), i1940, java.lang.Object(ARRAY(i1941))) → 4229_0_aux_Return(EOS(STATIC_4229), i1940, java.lang.Object(ARRAY(i1941)), i1940, java.lang.Object(ARRAY(i1941)))
4163_1_aux_InvokeMethod(4011_0_aux_ArrayAccess(EOS(STATIC_4011), i1953, i1954, java.lang.Object(ARRAY(i1955)), i1953, java.lang.Object(ARRAY(i1955)), i1953), i1954, java.lang.Object(ARRAY(i1955))) → 4232_0_aux_ArrayAccess(EOS(STATIC_4232), i1954, java.lang.Object(ARRAY(i1955)), i1954, java.lang.Object(ARRAY(i1955)), java.lang.Object(ARRAY(i1955)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(EOS(STATIC_4117), i1965, i1966, java.lang.Object(ARRAY(i1967)), i1965, i1753, java.lang.Object(ARRAY(i1967)), i1762), i1966, java.lang.Object(ARRAY(i1967))) → 4233_0_aux_ArrayAccess(EOS(STATIC_4233), i1966, java.lang.Object(ARRAY(i1967)), i1966, java.lang.Object(ARRAY(i1967)), i1753, java.lang.Object(ARRAY(i1967)), i1762)
4163_1_aux_InvokeMethod(4205_0_aux_ArrayAccess(EOS(STATIC_4205), i1979, i1980, java.lang.Object(ARRAY(i1981)), i1979, java.lang.Object(ARRAY(i1981)), i1979), i1980, java.lang.Object(ARRAY(i1981))) → 4272_0_aux_ArrayAccess(EOS(STATIC_4272), i1980, java.lang.Object(ARRAY(i1981)), i1980, java.lang.Object(ARRAY(i1981)), java.lang.Object(ARRAY(i1981)))
4163_1_aux_InvokeMethod(4249_0_aux_Return(EOS(STATIC_4249)), i2018, java.lang.Object(ARRAY(i1723))) → 4319_0_aux_Return(EOS(STATIC_4319), i2018, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4254_0_aux_InvokeMethod(EOS(STATIC_4254), i2029, java.lang.Object(ARRAY(i1723))), i2029, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2029, java.lang.Object(ARRAY(i1723)), i2029, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4291_0_aux_InvokeMethod(EOS(STATIC_4291), i2051, java.lang.Object(ARRAY(i1723))), i2051, java.lang.Object(ARRAY(i1723))) → 4368_0_aux_InvokeMethod(EOS(STATIC_4368), i2051, java.lang.Object(ARRAY(i1723)), i2051, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4344_0_aux_Return(EOS(STATIC_4344)), i2096, java.lang.Object(ARRAY(i1723))) → 4412_0_aux_Return(EOS(STATIC_4412), i2096, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4351_0_aux_InvokeMethod(EOS(STATIC_4351), i2107, java.lang.Object(ARRAY(i1723))), i2107, java.lang.Object(ARRAY(i1723))) → 4418_0_aux_InvokeMethod(EOS(STATIC_4418), i2107, java.lang.Object(ARRAY(i1723)), i2107, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4408_0_aux_ArrayAccess(EOS(STATIC_4408), i2139, i2140, java.lang.Object(ARRAY(i2141)), i2139, java.lang.Object(ARRAY(i2141)), i2139, java.lang.Object(ARRAY(i2141)), i1818), i2140, java.lang.Object(ARRAY(i2141))) → 4448_0_aux_ArrayAccess(EOS(STATIC_4448), i2140, java.lang.Object(ARRAY(i2141)), i2140, java.lang.Object(ARRAY(i2141)), java.lang.Object(ARRAY(i2141)), java.lang.Object(ARRAY(i2141)), i1818)
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(EOS(STATIC_4433), i2154, i2155, java.lang.Object(ARRAY(i2156)), i2154, java.lang.Object(ARRAY(i2156)), i2154), i2155, java.lang.Object(ARRAY(i2156))) → 4472_0_aux_ArrayAccess(EOS(STATIC_4472), i2155, java.lang.Object(ARRAY(i2156)), i2155, java.lang.Object(ARRAY(i2156)), java.lang.Object(ARRAY(i2156)))
4163_1_aux_InvokeMethod(4466_0_aux_InvokeMethod(EOS(STATIC_4466), i2211, java.lang.Object(ARRAY(i1723))), i2211, java.lang.Object(ARRAY(i1723))) → 4501_0_aux_InvokeMethod(EOS(STATIC_4501), i2211, java.lang.Object(ARRAY(i1723)), i2211, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4486_0_aux_InvokeMethod(EOS(STATIC_4486), i2234, java.lang.Object(ARRAY(i1723))), i2234, java.lang.Object(ARRAY(i1723))) → 4516_0_aux_InvokeMethod(EOS(STATIC_4516), i2234, java.lang.Object(ARRAY(i1723)), i2234, java.lang.Object(ARRAY(i1723)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(EOS(STATIC_4511), i2256, i2257, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855), i2257, java.lang.Object(ARRAY(i1723))) → 4524_0_aux_ArrayAccess(EOS(STATIC_4524), i2257, java.lang.Object(ARRAY(i1723)), i2257, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(EOS(STATIC_4529), i2289, java.lang.Object(ARRAY(i1723))), i2289, java.lang.Object(ARRAY(i1723))) → 4543_0_aux_InvokeMethod(EOS(STATIC_4543), i2289, java.lang.Object(ARRAY(i1723)), i2289, java.lang.Object(ARRAY(i1723)))
4165_0_<init>_Load(EOS(STATIC_4165), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4194_0_<init>_InvokeMethod(EOS(STATIC_4194), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4168_0_<init>_Load(EOS(STATIC_4168), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4185_0_<init>_Load(EOS(STATIC_4185), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4171_0_<init>_Return(EOS(STATIC_4171), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4187_0_<init>_Return(EOS(STATIC_4187), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4181_0_<init>_InvokeMethod(EOS(STATIC_4181), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4199_0_<init>_Load(EOS(STATIC_4199), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4185_0_<init>_Load(EOS(STATIC_4185), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4202_0_<init>_FieldAccess(EOS(STATIC_4202), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4187_0_<init>_Return(EOS(STATIC_4187), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4205_0_aux_ArrayAccess(EOS(STATIC_4205), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4194_0_<init>_InvokeMethod(EOS(STATIC_4194), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4217_0_<init>_Load(EOS(STATIC_4217), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4199_0_<init>_Load(EOS(STATIC_4199), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4222_0_<init>_Load(EOS(STATIC_4222), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4202_0_<init>_FieldAccess(EOS(STATIC_4202), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4227_0_<init>_Load(EOS(STATIC_4227), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4217_0_<init>_Load(EOS(STATIC_4217), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4260_0_<init>_InvokeMethod(EOS(STATIC_4260), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4222_0_<init>_Load(EOS(STATIC_4222), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4237_0_<init>_FieldAccess(EOS(STATIC_4237), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4227_0_<init>_Load(EOS(STATIC_4227), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4241_0_<init>_InvokeMethod(EOS(STATIC_4241), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4229_0_aux_Return(EOS(STATIC_4229), i1940, java.lang.Object(ARRAY(i1941)), i1940, java.lang.Object(ARRAY(i1941))) → 4249_0_aux_Return(EOS(STATIC_4249))
4232_0_aux_ArrayAccess(EOS(STATIC_4232), i1954, java.lang.Object(ARRAY(i1955)), i1954, java.lang.Object(ARRAY(i1955)), java.lang.Object(ARRAY(i1955))) → 4251_0_aux_InvokeMethod(EOS(STATIC_4251), i1954, java.lang.Object(ARRAY(i1955)))
4233_0_aux_ArrayAccess(EOS(STATIC_4233), i1966, java.lang.Object(ARRAY(i1967)), i1966, java.lang.Object(ARRAY(i1967)), i1753, java.lang.Object(ARRAY(i1967)), i1762) → 4254_0_aux_InvokeMethod(EOS(STATIC_4254), i1966, java.lang.Object(ARRAY(i1967)))
4237_0_<init>_FieldAccess(EOS(STATIC_4237), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4265_0_<init>_Load(EOS(STATIC_4265), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4241_0_<init>_InvokeMethod(EOS(STATIC_4241), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4269_0_<init>_StackPop(EOS(STATIC_4269), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4249_0_aux_Return(EOS(STATIC_4249)) → 4344_0_aux_Return(EOS(STATIC_4344))
4251_0_aux_InvokeMethod(EOS(STATIC_4251), i1954, java.lang.Object(ARRAY(i1955))) → 4254_0_aux_InvokeMethod(EOS(STATIC_4254), i1954, java.lang.Object(ARRAY(i1955)))
4254_0_aux_InvokeMethod(EOS(STATIC_4254), i1966, java.lang.Object(ARRAY(i1967))) → 4291_0_aux_InvokeMethod(EOS(STATIC_4291), i1966, java.lang.Object(ARRAY(i1967)))
4260_0_<init>_InvokeMethod(EOS(STATIC_4260), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4276_0_<init>_Load(EOS(STATIC_4276), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4265_0_<init>_Load(EOS(STATIC_4265), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4280_0_<init>_InvokeMethod(EOS(STATIC_4280), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4269_0_<init>_StackPop(EOS(STATIC_4269), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4284_0_<init>_Return(EOS(STATIC_4284), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4272_0_aux_ArrayAccess(EOS(STATIC_4272), i1980, java.lang.Object(ARRAY(i1981)), i1980, java.lang.Object(ARRAY(i1981)), java.lang.Object(ARRAY(i1981))) → 4291_0_aux_InvokeMethod(EOS(STATIC_4291), i1980, java.lang.Object(ARRAY(i1981)))
4276_0_<init>_Load(EOS(STATIC_4276), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4327_0_<init>_InvokeMethod(EOS(STATIC_4327), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4280_0_<init>_InvokeMethod(EOS(STATIC_4280), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4308_0_<init>_StackPop(EOS(STATIC_4308), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4284_0_<init>_Return(EOS(STATIC_4284), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4312_0_<init>_Return(EOS(STATIC_4312), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4291_0_aux_InvokeMethod(EOS(STATIC_4291), i1980, java.lang.Object(ARRAY(i1981))) → 4351_0_aux_InvokeMethod(EOS(STATIC_4351), i1980, java.lang.Object(ARRAY(i1981)))
4308_0_<init>_StackPop(EOS(STATIC_4308), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4331_0_<init>_Return(EOS(STATIC_4331), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4312_0_<init>_Return(EOS(STATIC_4312), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4335_0_<init>_Return(EOS(STATIC_4335), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4319_0_aux_Return(EOS(STATIC_4319), i2018, java.lang.Object(ARRAY(i1723))) → 4344_0_aux_Return(EOS(STATIC_4344))
4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2029, java.lang.Object(ARRAY(i1723)), i2029, java.lang.Object(ARRAY(i1723))) → 4351_0_aux_InvokeMethod(EOS(STATIC_4351), i2029, java.lang.Object(ARRAY(i1723)))
4327_0_<init>_InvokeMethod(EOS(STATIC_4327), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4356_0_<init>_Load(EOS(STATIC_4356), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4331_0_<init>_Return(EOS(STATIC_4331), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4359_0_<init>_Return(EOS(STATIC_4359), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4335_0_<init>_Return(EOS(STATIC_4335), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4363_0_<init>_Return(EOS(STATIC_4363), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4351_0_aux_InvokeMethod(EOS(STATIC_4351), i2029, java.lang.Object(ARRAY(i1723))) → 4466_0_aux_InvokeMethod(EOS(STATIC_4466), i2029, java.lang.Object(ARRAY(i1723)))
4356_0_<init>_Load(EOS(STATIC_4356), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4378_0_<init>_Load(EOS(STATIC_4378), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4359_0_<init>_Return(EOS(STATIC_4359), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4382_0_<init>_Return(EOS(STATIC_4382), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4363_0_<init>_Return(EOS(STATIC_4363), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4384_0_<init>_Return(EOS(STATIC_4384), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4368_0_aux_InvokeMethod(EOS(STATIC_4368), i2051, java.lang.Object(ARRAY(i1723)), i2051, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2051, java.lang.Object(ARRAY(i1723)), i2051, java.lang.Object(ARRAY(i1723)))
4378_0_<init>_Load(EOS(STATIC_4378), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4402_0_<init>_FieldAccess(EOS(STATIC_4402), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4382_0_<init>_Return(EOS(STATIC_4382), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4406_0_<init>_Return(EOS(STATIC_4406), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4384_0_<init>_Return(EOS(STATIC_4384), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818) → 4408_0_aux_ArrayAccess(EOS(STATIC_4408), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1818)
4402_0_<init>_FieldAccess(EOS(STATIC_4402), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4423_0_<init>_Load(EOS(STATIC_4423), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4406_0_<init>_Return(EOS(STATIC_4406), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4426_0_<init>_Return(EOS(STATIC_4426), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4412_0_aux_Return(EOS(STATIC_4412), i2096, java.lang.Object(ARRAY(i1723))) → 4319_0_aux_Return(EOS(STATIC_4319), i2096, java.lang.Object(ARRAY(i1723)))
4418_0_aux_InvokeMethod(EOS(STATIC_4418), i2107, java.lang.Object(ARRAY(i1723)), i2107, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2107, java.lang.Object(ARRAY(i1723)), i2107, java.lang.Object(ARRAY(i1723)))
4423_0_<init>_Load(EOS(STATIC_4423), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4431_0_<init>_InvokeMethod(EOS(STATIC_4431), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4426_0_<init>_Return(EOS(STATIC_4426), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733) → 4433_0_aux_ArrayAccess(EOS(STATIC_4433), i1733, i1722, java.lang.Object(ARRAY(i1723)), i1733, java.lang.Object(ARRAY(i1723)), i1733)
4431_0_<init>_InvokeMethod(EOS(STATIC_4431), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4445_0_<init>_StackPop(EOS(STATIC_4445), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4445_0_<init>_StackPop(EOS(STATIC_4445), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4452_0_<init>_Return(EOS(STATIC_4452), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4448_0_aux_ArrayAccess(EOS(STATIC_4448), i2140, java.lang.Object(ARRAY(i2141)), i2140, java.lang.Object(ARRAY(i2141)), java.lang.Object(ARRAY(i2141)), java.lang.Object(ARRAY(i2141)), i1818) → 4466_0_aux_InvokeMethod(EOS(STATIC_4466), i2140, java.lang.Object(ARRAY(i2141)))
4452_0_<init>_Return(EOS(STATIC_4452), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4470_0_<init>_Return(EOS(STATIC_4470), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4466_0_aux_InvokeMethod(EOS(STATIC_4466), i2140, java.lang.Object(ARRAY(i2141))) → 4486_0_aux_InvokeMethod(EOS(STATIC_4486), i2140, java.lang.Object(ARRAY(i2141)))
4470_0_<init>_Return(EOS(STATIC_4470), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4480_0_<init>_Return(EOS(STATIC_4480), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4472_0_aux_ArrayAccess(EOS(STATIC_4472), i2155, java.lang.Object(ARRAY(i2156)), i2155, java.lang.Object(ARRAY(i2156)), java.lang.Object(ARRAY(i2156))) → 4486_0_aux_InvokeMethod(EOS(STATIC_4486), i2155, java.lang.Object(ARRAY(i2156)))
4480_0_<init>_Return(EOS(STATIC_4480), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4493_0_<init>_Return(EOS(STATIC_4493), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4486_0_aux_InvokeMethod(EOS(STATIC_4486), i2155, java.lang.Object(ARRAY(i2156))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), i2155, java.lang.Object(ARRAY(i2156)))
4493_0_<init>_Return(EOS(STATIC_4493), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4503_0_<init>_Return(EOS(STATIC_4503), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4501_0_aux_InvokeMethod(EOS(STATIC_4501), i2211, java.lang.Object(ARRAY(i1723)), i2211, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2211, java.lang.Object(ARRAY(i1723)), i2211, java.lang.Object(ARRAY(i1723)))
4503_0_<init>_Return(EOS(STATIC_4503), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4511_0_aux_ArrayAccess(EOS(STATIC_4511), i1733, i1722, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855)
4516_0_aux_InvokeMethod(EOS(STATIC_4516), i2234, java.lang.Object(ARRAY(i1723)), i2234, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2234, java.lang.Object(ARRAY(i1723)), i2234, java.lang.Object(ARRAY(i1723)))
4524_0_aux_ArrayAccess(EOS(STATIC_4524), i2257, java.lang.Object(ARRAY(i1723)), i2257, java.lang.Object(ARRAY(i1723)), java.lang.Object(ARRAY(i1723)), i1855) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), i2257, java.lang.Object(ARRAY(i1723)))
4543_0_aux_InvokeMethod(EOS(STATIC_4543), i2289, java.lang.Object(ARRAY(i1723)), i2289, java.lang.Object(ARRAY(i1723))) → 4321_0_aux_InvokeMethod(EOS(STATIC_4321), i2289, java.lang.Object(ARRAY(i1723)), i2289, java.lang.Object(ARRAY(i1723)))

Combined rules. Obtained 3 conditional rules for P and 25 conditional rules for R.


P rules:
4012_1_sort_InvokeMethod(3717_0_aux_Return(EOS(STATIC_3717), 0, x1, java.lang.Object(ARRAY(x2))), java.lang.Object(ARRAY(x2)), java.lang.Object(ARRAY(x2)), x2, x3, 0, x1, java.lang.Object(ARRAY(x2))) → 4012_1_sort_InvokeMethod(4012_0_aux_Load(EOS(STATIC_4012), 0, -(x2, +(x3, 1)), java.lang.Object(ARRAY(x2))), java.lang.Object(ARRAY(x2)), java.lang.Object(ARRAY(x2)), x2, +(x3, 1), 0, -(x2, +(x3, 1)), java.lang.Object(ARRAY(x2))) | &&(&&(>(x3, 0), >(+(x2, 1), 0)), >(x2, +(x3, 1)))
4012_1_sort_InvokeMethod(4249_0_aux_Return(EOS(STATIC_4249)), java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x0)), x1, x2, 0, x4, java.lang.Object(ARRAY(x0))) → 4012_1_sort_InvokeMethod(4012_0_aux_Load(EOS(STATIC_4012), 0, -(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))), java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x0)), x0, +(x2, 1), 0, -(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))) | &&(&&(>(x2, 0), >(+(x0, 1), 0)), >(x0, +(x2, 1)))
4012_1_sort_InvokeMethod(4344_0_aux_Return(EOS(STATIC_4344)), java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x0)), x1, x2, 0, x4, java.lang.Object(ARRAY(x0))) → 4012_1_sort_InvokeMethod(4012_0_aux_Load(EOS(STATIC_4012), 0, -(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))), java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x0)), x0, +(x2, 1), 0, -(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))) | &&(&&(>(x2, 0), >(+(x0, 1), 0)), >(x0, +(x2, 1)))
R rules:
4012_0_aux_Load(EOS(STATIC_4012), 0, x1, java.lang.Object(ARRAY(x2))) → 3712_0_aux_LT(EOS(STATIC_3712), 0, x1, java.lang.Object(ARRAY(x2)), 0, x1)
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 3717_0_aux_Return(EOS(STATIC_3717), x0, x1, java.lang.Object(ARRAY(x2))) | <=(x1, x0)
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(EOS(STATIC_3980), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0) | &&(>(x1, x0), <=(x0, -1))
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 4011_0_aux_ArrayAccess(EOS(STATIC_4011), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0) | &&(<=(x2, x0), >(x1, x0))
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 4117_0_aux_ArrayAccess(EOS(STATIC_4117), x0, x1, java.lang.Object(ARRAY(x2)), x0, x3, java.lang.Object(ARRAY(x2)), +(x0, 1)) | &&(&&(&&(>(x2, x0), <=(x2, +(x0, 1))), >(x1, x0)), >(+(x0, 1), 0))
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 4163_1_aux_InvokeMethod(3712_0_aux_LT(EOS(STATIC_3712), x3, x1, java.lang.Object(ARRAY(x2)), x3, x1), x1, java.lang.Object(ARRAY(x2))) | &&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(+(x0, 1), 0))
4163_1_aux_InvokeMethod(4249_0_aux_Return(EOS(STATIC_4249)), x0, java.lang.Object(ARRAY(x1))) → 4344_0_aux_Return(EOS(STATIC_4344))
4163_1_aux_InvokeMethod(4344_0_aux_Return(EOS(STATIC_4344)), x0, java.lang.Object(ARRAY(x1))) → 4344_0_aux_Return(EOS(STATIC_4344))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(EOS(STATIC_4511), x0, x1, java.lang.Object(ARRAY(x2)), java.lang.Object(ARRAY(x2)), x3), x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x1, java.lang.Object(ARRAY(x2)))
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 4205_0_aux_ArrayAccess(EOS(STATIC_4205), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0) | FALSE
4163_1_aux_InvokeMethod(3717_0_aux_Return(EOS(STATIC_3717), x0, x1, java.lang.Object(ARRAY(x2))), x1, java.lang.Object(ARRAY(x2))) → 4344_0_aux_Return(EOS(STATIC_4344))
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 4408_0_aux_ArrayAccess(EOS(STATIC_4408), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), arith[8]) | FALSE
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 4433_0_aux_ArrayAccess(EOS(STATIC_4433), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0) | FALSE
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(EOS(STATIC_4433), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0), x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4408_0_aux_ArrayAccess(EOS(STATIC_4408), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x3), x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4254_0_aux_InvokeMethod(EOS(STATIC_4254), x0, java.lang.Object(ARRAY(x1))), x0, java.lang.Object(ARRAY(x1))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4291_0_aux_InvokeMethod(EOS(STATIC_4291), x0, java.lang.Object(ARRAY(x1))), x0, java.lang.Object(ARRAY(x1))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4351_0_aux_InvokeMethod(EOS(STATIC_4351), x0, java.lang.Object(ARRAY(x1))), x0, java.lang.Object(ARRAY(x1))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4466_0_aux_InvokeMethod(EOS(STATIC_4466), x0, java.lang.Object(ARRAY(x1))), x0, java.lang.Object(ARRAY(x1))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4486_0_aux_InvokeMethod(EOS(STATIC_4486), x0, java.lang.Object(ARRAY(x1))), x0, java.lang.Object(ARRAY(x1))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, java.lang.Object(ARRAY(x1))), x0, java.lang.Object(ARRAY(x1))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4205_0_aux_ArrayAccess(EOS(STATIC_4205), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0), x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(EOS(STATIC_4117), x0, x1, java.lang.Object(ARRAY(x2)), x0, x3, java.lang.Object(ARRAY(x2)), x4), x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4011_0_aux_ArrayAccess(EOS(STATIC_4011), x0, x1, java.lang.Object(ARRAY(x2)), x0, java.lang.Object(ARRAY(x2)), x0), x1, java.lang.Object(ARRAY(x2))) → 4529_0_aux_InvokeMethod(EOS(STATIC_4529), x1, java.lang.Object(ARRAY(x2)))
3712_0_aux_LT(EOS(STATIC_3712), x0, x1, java.lang.Object(ARRAY(x2)), x0, x1) → 4511_0_aux_ArrayAccess(EOS(STATIC_4511), x0, x1, java.lang.Object(ARRAY(x2)), java.lang.Object(ARRAY(x2)), arith[5]) | FALSE

Filtered ground terms:



4012_1_sort_InvokeMethod(x1, x2, x3, x4, x5, x6, x7, x8) → 4012_1_sort_InvokeMethod(x1, x2, x3, x4, x5, x7, x8)
4012_0_aux_Load(x1, x2, x3, x4) → 4012_0_aux_Load(x3, x4)
Cond_4012_1_sort_InvokeMethod2(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_4012_1_sort_InvokeMethod2(x1, x3, x4, x5, x6, x8, x9)
4344_0_aux_Return(x1) → 4344_0_aux_Return
Cond_4012_1_sort_InvokeMethod1(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_4012_1_sort_InvokeMethod1(x1, x3, x4, x5, x6, x8, x9)
4249_0_aux_Return(x1) → 4249_0_aux_Return
Cond_4012_1_sort_InvokeMethod(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_4012_1_sort_InvokeMethod(x1, x2, x3, x4, x5, x6, x8, x9)
3717_0_aux_Return(x1, x2, x3, x4) → 3717_0_aux_Return(x2, x3, x4)
4529_0_aux_InvokeMethod(x1, x2, x3) → 4529_0_aux_InvokeMethod(x2, x3)
4011_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 4011_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7)
4117_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7, x8) → 4117_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7, x8)
4205_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 4205_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7)
4486_0_aux_InvokeMethod(x1, x2, x3) → 4486_0_aux_InvokeMethod(x2, x3)
4466_0_aux_InvokeMethod(x1, x2, x3) → 4466_0_aux_InvokeMethod(x2, x3)
4351_0_aux_InvokeMethod(x1, x2, x3) → 4351_0_aux_InvokeMethod(x2, x3)
4291_0_aux_InvokeMethod(x1, x2, x3) → 4291_0_aux_InvokeMethod(x2, x3)
4254_0_aux_InvokeMethod(x1, x2, x3) → 4254_0_aux_InvokeMethod(x2, x3)
4408_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7, x8, x9) → 4408_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7, x8, x9)
4433_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 4433_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7)
4511_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 4511_0_aux_ArrayAccess(x2, x3, x4, x5, x6)
3712_0_aux_LT(x1, x2, x3, x4, x5, x6) → 3712_0_aux_LT(x2, x3, x4, x5, x6)
Cond_3712_0_aux_LT4(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_3712_0_aux_LT4(x1, x3, x4, x5, x6, x7, x8)
Cond_3712_0_aux_LT3(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_3712_0_aux_LT3(x1, x3, x4, x5, x6, x7, x8)
Cond_3712_0_aux_LT2(x1, x2, x3, x4, x5, x6, x7) → Cond_3712_0_aux_LT2(x1, x3, x4, x5, x6, x7)
3980_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 3980_0_aux_ArrayAccess(x2, x3, x4, x5, x6, x7)
Cond_3712_0_aux_LT1(x1, x2, x3, x4, x5, x6, x7) → Cond_3712_0_aux_LT1(x1, x3, x4, x5, x6, x7)
Cond_3712_0_aux_LT(x1, x2, x3, x4, x5, x6, x7) → Cond_3712_0_aux_LT(x1, x3, x4, x5, x6, x7)

Filtered duplicate args:



4012_1_sort_InvokeMethod(x1, x2, x3, x4, x5, x6, x7) → 4012_1_sort_InvokeMethod(x1, x4, x5, x6, x7)
Cond_4012_1_sort_InvokeMethod(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_4012_1_sort_InvokeMethod(x1, x2, x6)
Cond_4012_1_sort_InvokeMethod1(x1, x2, x3, x4, x5, x6, x7) → Cond_4012_1_sort_InvokeMethod1(x1, x4, x5, x6, x7)
Cond_4012_1_sort_InvokeMethod2(x1, x2, x3, x4, x5, x6, x7) → Cond_4012_1_sort_InvokeMethod2(x1, x4, x5, x6, x7)
3712_0_aux_LT(x1, x2, x3, x4, x5) → 3712_0_aux_LT(x3, x4, x5)
Cond_3712_0_aux_LT(x1, x2, x3, x4, x5, x6) → Cond_3712_0_aux_LT(x1, x4, x5, x6)
Cond_3712_0_aux_LT1(x1, x2, x3, x4, x5, x6) → Cond_3712_0_aux_LT1(x1, x4, x5, x6)
3980_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 3980_0_aux_ArrayAccess(x2, x5, x6)
Cond_3712_0_aux_LT2(x1, x2, x3, x4, x5, x6) → Cond_3712_0_aux_LT2(x1, x4, x5, x6)
4011_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 4011_0_aux_ArrayAccess(x2, x5, x6)
Cond_3712_0_aux_LT3(x1, x2, x3, x4, x5, x6, x7) → Cond_3712_0_aux_LT3(x1, x4, x5, x6, x7)
4117_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7) → 4117_0_aux_ArrayAccess(x2, x4, x5, x6, x7)
Cond_3712_0_aux_LT4(x1, x2, x3, x4, x5, x6, x7) → Cond_3712_0_aux_LT4(x1, x4, x5, x6, x7)
4511_0_aux_ArrayAccess(x1, x2, x3, x4, x5) → 4511_0_aux_ArrayAccess(x1, x2, x4, x5)
4433_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 4433_0_aux_ArrayAccess(x2, x5, x6)
4408_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6, x7, x8) → 4408_0_aux_ArrayAccess(x2, x6, x7, x8)
4205_0_aux_ArrayAccess(x1, x2, x3, x4, x5, x6) → 4205_0_aux_ArrayAccess(x2, x5, x6)

Filtered unneeded arguments:



4012_1_sort_InvokeMethod(x1, x2, x3, x4, x5) → 4012_1_sort_InvokeMethod(x1, x2, x3, x5)
3717_0_aux_Return(x1, x2, x3) → 3717_0_aux_Return(x1, x3)
Cond_4012_1_sort_InvokeMethod1(x1, x2, x3, x4, x5) → Cond_4012_1_sort_InvokeMethod1(x1, x3, x5)
Cond_4012_1_sort_InvokeMethod2(x1, x2, x3, x4, x5) → Cond_4012_1_sort_InvokeMethod2(x1, x3, x5)
Cond_3712_0_aux_LT(x1, x2, x3, x4) → Cond_3712_0_aux_LT(x1, x2, x3)
Cond_3712_0_aux_LT1(x1, x2, x3, x4) → Cond_3712_0_aux_LT1(x1)
Cond_3712_0_aux_LT2(x1, x2, x3, x4) → Cond_3712_0_aux_LT2(x1)
Cond_3712_0_aux_LT3(x1, x2, x3, x4, x5) → Cond_3712_0_aux_LT3(x1)
Cond_3712_0_aux_LT4(x1, x2, x3, x4, x5) → Cond_3712_0_aux_LT4(x1, x2, x4, x5)
4163_1_aux_InvokeMethod(x1, x2, x3) → 4163_1_aux_InvokeMethod(x1)

Combined rules. Obtained 3 conditional rules for P and 21 conditional rules for R.


P rules:
4012_1_sort_InvokeMethod(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2))) → 4012_1_sort_InvokeMethod(4012_0_aux_Load(-(x2, +(x3, 1)), java.lang.Object(ARRAY(x2))), x2, +(x3, 1), java.lang.Object(ARRAY(x2))) | &&(&&(>(x3, 0), >(x2, -1)), >(x2, +(x3, 1)))
4012_1_sort_InvokeMethod(4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) → 4012_1_sort_InvokeMethod(4012_0_aux_Load(-(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))), x0, +(x2, 1), java.lang.Object(ARRAY(x0))) | &&(&&(>(x2, 0), >(x0, -1)), >(x0, +(x2, 1)))
4012_1_sort_InvokeMethod(4344_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) → 4012_1_sort_InvokeMethod(4012_0_aux_Load(-(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))), x0, +(x2, 1), java.lang.Object(ARRAY(x0))) | &&(&&(>(x2, 0), >(x0, -1)), >(x0, +(x2, 1)))
R rules:
4012_0_aux_Load(x1, java.lang.Object(ARRAY(x2))) → 3712_0_aux_LT(java.lang.Object(ARRAY(x2)), 0, x1)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → 3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2))) | <=(x1, x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0) | &&(>(x1, x0), <=(x0, -1))
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → 4011_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0) | &&(<=(x2, x0), >(x1, x0))
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → 4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), +(x0, 1)) | &&(&&(&&(>(x2, x0), <=(x2, +(x0, 1))), >(x1, x0)), >(x0, -1))
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → 4163_1_aux_InvokeMethod(3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x3, x1)) | &&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(x0, -1))
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4344_0_aux_Return
4163_1_aux_InvokeMethod(4344_0_aux_Return) → 4344_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))) → 4344_0_aux_Return
4163_1_aux_InvokeMethod(4433_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4408_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4254_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4291_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4351_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4466_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4486_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4205_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4011_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))

Performed bisimulation on rules. Used the following equivalence classes: {[4529_0_aux_InvokeMethod_2, 4254_0_aux_InvokeMethod_2, 4291_0_aux_InvokeMethod_2, 4351_0_aux_InvokeMethod_2, 4466_0_aux_InvokeMethod_2, 4486_0_aux_InvokeMethod_2]=4529_0_aux_InvokeMethod_2, [3980_0_aux_ArrayAccess_3, 4011_0_aux_ArrayAccess_3, 4433_0_aux_ArrayAccess_3, 4205_0_aux_ArrayAccess_3]=3980_0_aux_ArrayAccess_3, [4511_0_aux_ArrayAccess_4, 4408_0_aux_ArrayAccess_4]=4511_0_aux_ArrayAccess_4, [Cond_4012_1_sort_InvokeMethod1_5, Cond_4012_1_sort_InvokeMethod2_5]=Cond_4012_1_sort_InvokeMethod1_5, [4249_0_aux_Return, 4344_0_aux_Return]=4249_0_aux_Return}


Finished conversion. Obtained 4 rules for P and 18 rules for R. System has predefined symbols.


P rules:
4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2))) → COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3, 0), >(x2, -1)), >(x2, +(x3, 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2)))
COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2, +(x3, 1)), java.lang.Object(ARRAY(x2))), x2, +(x3, 1), java.lang.Object(ARRAY(x2)))
4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) → COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2, 0), >(x0, -1)), >(x0, +(x2, 1))), 4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0)))
COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))), x0, +(x2, 1), java.lang.Object(ARRAY(x0)))
R rules:
4012_0_aux_Load(x1, java.lang.Object(ARRAY(x2))) → 3712_0_aux_LT(java.lang.Object(ARRAY(x2)), 0, x1)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT(<=(x1, x0), java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT1(&&(>(x1, x0), <=(x0, -1)), java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT1(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT2(&&(<=(x2, x0), >(x1, x0)), java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT2(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT3(&&(&&(&&(>(x2, x0), <=(x2, +(x0, 1))), >(x1, x0)), >(x0, -1)), java.lang.Object(ARRAY(x2)), x0, x1, x3)
Cond_3712_0_aux_LT3(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3) → 4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), +(x0, 1))
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT4(&&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(x0, -1)), java.lang.Object(ARRAY(x2)), x0, x1, x3)
Cond_3712_0_aux_LT4(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3) → 4163_1_aux_InvokeMethod(3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x3, x1))
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))

(18) 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:

Integer, Boolean


The ITRS R consists of the following rules:
4012_0_aux_Load(x1, java.lang.Object(ARRAY(x2))) → 3712_0_aux_LT(java.lang.Object(ARRAY(x2)), 0, x1)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT(x1 <= x0, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT1(x1 > x0 && x0 <= -1, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT1(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT2(x2 <= x0 && x1 > x0, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT2(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT3(x2 > x0 && x2 <= x0 + 1 && x1 > x0 && x0 > -1, java.lang.Object(ARRAY(x2)), x0, x1, x3)
Cond_3712_0_aux_LT3(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3) → 4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x0 + 1)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT4(x2 > x0 + 1 && x1 > x0 && x0 > -1, java.lang.Object(ARRAY(x2)), x0, x1, x3)
Cond_3712_0_aux_LT4(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3) → 4163_1_aux_InvokeMethod(3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x3, x1))
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))

The integer pair graph contains the following rules and edges:
(0): 4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0]))) → COND_4012_1_SORT_INVOKEMETHOD(x3[0] > 0 && x2[0] > -1 && x2[0] > x3[0] + 1, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))
(1): COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1], java.lang.Object(ARRAY(x2[1]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(x2[1] - x3[1] + 1, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1] + 1, java.lang.Object(ARRAY(x2[1])))
(2): 4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2]))) → COND_4012_1_SORT_INVOKEMETHOD1(x2[2] > 0 && x0[2] > -1 && x0[2] > x2[2] + 1, 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))
(3): COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1[3], x2[3], java.lang.Object(ARRAY(x0[3]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(x0[3] - x2[3] + 1, java.lang.Object(ARRAY(x0[3]))), x0[3], x2[3] + 1, java.lang.Object(ARRAY(x0[3])))

(0) -> (1), if (x3[0] > 0 && x2[0] > -1 && x2[0] > x3[0] + 13717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))) →* 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1])))∧x2[0]* x2[1]x3[0]* x3[1]java.lang.Object(ARRAY(x2[0])) →* java.lang.Object(ARRAY(x2[1])))


(1) -> (0), if (4012_0_aux_Load(x2[1] - x3[1] + 1, java.lang.Object(ARRAY(x2[1]))) →* 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0])))∧x2[1]* x2[0]x3[1] + 1* x3[0]java.lang.Object(ARRAY(x2[1])) →* java.lang.Object(ARRAY(x2[0])))


(1) -> (2), if (4012_0_aux_Load(x2[1] - x3[1] + 1, java.lang.Object(ARRAY(x2[1]))) →* 4249_0_aux_Returnx2[1]* x1[2]x3[1] + 1* x2[2]java.lang.Object(ARRAY(x2[1])) →* java.lang.Object(ARRAY(x0[2])))


(2) -> (3), if (x2[2] > 0 && x0[2] > -1 && x0[2] > x2[2] + 1x1[2]* x1[3]x2[2]* x2[3]java.lang.Object(ARRAY(x0[2])) →* java.lang.Object(ARRAY(x0[3])))


(3) -> (0), if (4012_0_aux_Load(x0[3] - x2[3] + 1, java.lang.Object(ARRAY(x0[3]))) →* 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0])))∧x0[3]* x2[0]x2[3] + 1* x3[0]java.lang.Object(ARRAY(x0[3])) →* java.lang.Object(ARRAY(x2[0])))


(3) -> (2), if (4012_0_aux_Load(x0[3] - x2[3] + 1, java.lang.Object(ARRAY(x0[3]))) →* 4249_0_aux_Returnx0[3]* x1[2]x2[3] + 1* x2[2]java.lang.Object(ARRAY(x0[3])) →* java.lang.Object(ARRAY(x0[2])))



The set Q consists of the following terms:
4012_0_aux_Load(x0, java.lang.Object(ARRAY(x1)))
3712_0_aux_LT(java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT1(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT2(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT3(TRUE, java.lang.Object(ARRAY(x0)), x1, x2, x3)
Cond_3712_0_aux_LT4(TRUE, java.lang.Object(ARRAY(x0)), x1, x2, x3)
4163_1_aux_InvokeMethod(4249_0_aux_Return)
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x1))))
4163_1_aux_InvokeMethod(3980_0_aux_ArrayAccess(x0, java.lang.Object(ARRAY(x1)), x2))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1))))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x0, x1, x2, java.lang.Object(ARRAY(x3)), x4))

(19) IDPNonInfProof (SOUND transformation)

Used the following options for this NonInfProof:
IDPGPoloSolver: Range: [(-1,2)] IsNat: false Interpretation Shape Heuristic: aprove.DPFramework.IDPProblem.Processors.nonInf.poly.IdpCand1ShapeHeuristic@43902f84 Constraint Generator: NonInfConstraintGenerator: PathGenerator: MetricPathGenerator: Max Left Steps: 0 Max Right Steps: 0

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 4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2))) → COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3, 0), >(x2, -1)), >(x2, +(x3, 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2))) the following chains were created:
  • We consider the chain 4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0]))) → COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0]))), COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1], java.lang.Object(ARRAY(x2[1]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1]))) which results in the following constraint:

    (1)    (&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1)))=TRUE3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0])))=3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1])))∧x2[0]=x2[1]x3[0]=x3[1]java.lang.Object(ARRAY(x2[0]))=java.lang.Object(ARRAY(x2[1])) ⇒ 4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))≥NonInfC∧4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))≥COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))∧(UIncreasing(COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))), ≥))



    We simplified constraint (1) using rules (I), (II), (IV), (DELETE_TRIVIAL_REDUCESTO), (IDP_BOOLEAN) which results in the following new constraint:

    (2)    (>(x2[0], +(x3[0], 1))=TRUE>(x3[0], 0)=TRUE>(x2[0], -1)=TRUE4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))≥NonInfC∧4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))≥COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))∧(UIncreasing(COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))), ≥))



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

    (3)    (x2[0] + [-2] + [-1]x3[0] ≥ 0∧x3[0] + [-1] ≥ 0∧x2[0] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))), ≥)∧[bni_43 + (-1)Bound*bni_43] + [bni_43]x2[0] + [(-1)bni_43]x3[0] ≥ 0∧[(-1)bso_44] ≥ 0)



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

    (4)    (x2[0] + [-2] + [-1]x3[0] ≥ 0∧x3[0] + [-1] ≥ 0∧x2[0] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))), ≥)∧[bni_43 + (-1)Bound*bni_43] + [bni_43]x2[0] + [(-1)bni_43]x3[0] ≥ 0∧[(-1)bso_44] ≥ 0)



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

    (5)    (x2[0] + [-2] + [-1]x3[0] ≥ 0∧x3[0] + [-1] ≥ 0∧x2[0] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))), ≥)∧[bni_43 + (-1)Bound*bni_43] + [bni_43]x2[0] + [(-1)bni_43]x3[0] ≥ 0∧[(-1)bso_44] ≥ 0)



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

    (6)    (x2[0] ≥ 0∧x3[0] + [-1] ≥ 0∧[2] + x3[0] + x2[0] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))), ≥)∧[(3)bni_43 + (-1)Bound*bni_43] + [bni_43]x2[0] ≥ 0∧[(-1)bso_44] ≥ 0)



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

    (7)    (x2[0] ≥ 0∧x3[0] ≥ 0∧[3] + x3[0] + x2[0] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))), ≥)∧[(3)bni_43 + (-1)Bound*bni_43] + [bni_43]x2[0] ≥ 0∧[(-1)bso_44] ≥ 0)







For Pair COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2, +(x3, 1)), java.lang.Object(ARRAY(x2))), x2, +(x3, 1), java.lang.Object(ARRAY(x2))) the following chains were created:
  • We consider the chain COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1], java.lang.Object(ARRAY(x2[1]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1]))) which results in the following constraint:

    (8)    (COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1], java.lang.Object(ARRAY(x2[1])))≥NonInfC∧COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1], java.lang.Object(ARRAY(x2[1])))≥4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1])))∧(UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1])))), ≥))



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

    (9)    ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1])))), ≥)∧[bni_45] = 0∧[1 + (-1)bso_46] ≥ 0)



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

    (10)    ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1])))), ≥)∧[bni_45] = 0∧[1 + (-1)bso_46] ≥ 0)



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

    (11)    ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1])))), ≥)∧[bni_45] = 0∧[1 + (-1)bso_46] ≥ 0)



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

    (12)    ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1])))), ≥)∧[bni_45] = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_46] ≥ 0)







For Pair 4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) → COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2, 0), >(x0, -1)), >(x0, +(x2, 1))), 4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) the following chains were created:
  • We consider the chain 4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2]))) → COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2]))), COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1[3], x2[3], java.lang.Object(ARRAY(x0[3]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3]))) which results in the following constraint:

    (13)    (&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1)))=TRUEx1[2]=x1[3]x2[2]=x2[3]java.lang.Object(ARRAY(x0[2]))=java.lang.Object(ARRAY(x0[3])) ⇒ 4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))≥NonInfC∧4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))≥COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))∧(UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥))



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

    (14)    (>(x0[2], +(x2[2], 1))=TRUE>(x2[2], 0)=TRUE>(x0[2], -1)=TRUE4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))≥NonInfC∧4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))≥COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))∧(UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥))



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

    (15)    (x0[2] + [-2] + [-1]x2[2] ≥ 0∧x2[2] + [-1] ≥ 0∧x0[2] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥)∧[bni_47 + (-1)Bound*bni_47] + [bni_47]x0[2] + [(-1)bni_47]x2[2] ≥ 0∧[(-1)bso_48] ≥ 0)



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

    (16)    (x0[2] + [-2] + [-1]x2[2] ≥ 0∧x2[2] + [-1] ≥ 0∧x0[2] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥)∧[bni_47 + (-1)Bound*bni_47] + [bni_47]x0[2] + [(-1)bni_47]x2[2] ≥ 0∧[(-1)bso_48] ≥ 0)



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

    (17)    (x0[2] + [-2] + [-1]x2[2] ≥ 0∧x2[2] + [-1] ≥ 0∧x0[2] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥)∧[bni_47 + (-1)Bound*bni_47] + [bni_47]x0[2] + [(-1)bni_47]x2[2] ≥ 0∧[(-1)bso_48] ≥ 0)



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

    (18)    (x0[2] + [-2] + [-1]x2[2] ≥ 0∧x2[2] + [-1] ≥ 0∧x0[2] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥)∧0 = 0∧[bni_47 + (-1)Bound*bni_47] + [bni_47]x0[2] + [(-1)bni_47]x2[2] ≥ 0∧0 = 0∧[(-1)bso_48] ≥ 0)



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

    (19)    (x0[2] ≥ 0∧x2[2] + [-1] ≥ 0∧[2] + x2[2] + x0[2] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥)∧0 = 0∧[(3)bni_47 + (-1)Bound*bni_47] + [bni_47]x0[2] ≥ 0∧0 = 0∧[(-1)bso_48] ≥ 0)



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

    (20)    (x0[2] ≥ 0∧x2[2] ≥ 0∧[3] + x2[2] + x0[2] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥)∧0 = 0∧[(3)bni_47 + (-1)Bound*bni_47] + [bni_47]x0[2] ≥ 0∧0 = 0∧[(-1)bso_48] ≥ 0)







For Pair COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))), x0, +(x2, 1), java.lang.Object(ARRAY(x0))) the following chains were created:
  • We consider the chain COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1[3], x2[3], java.lang.Object(ARRAY(x0[3]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3]))) which results in the following constraint:

    (21)    (COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1[3], x2[3], java.lang.Object(ARRAY(x0[3])))≥NonInfC∧COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1[3], x2[3], java.lang.Object(ARRAY(x0[3])))≥4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3])))∧(UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3])))), ≥))



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

    (22)    ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3])))), ≥)∧[bni_49] = 0∧[1 + (-1)bso_50] ≥ 0)



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

    (23)    ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3])))), ≥)∧[bni_49] = 0∧[1 + (-1)bso_50] ≥ 0)



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

    (24)    ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3])))), ≥)∧[bni_49] = 0∧[1 + (-1)bso_50] ≥ 0)



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

    (25)    ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3])))), ≥)∧[bni_49] = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_50] ≥ 0)







To summarize, we get the following constraints P for the following pairs.
  • 4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2))) → COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3, 0), >(x2, -1)), >(x2, +(x3, 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2)))
    • (x2[0] ≥ 0∧x3[0] ≥ 0∧[3] + x3[0] + x2[0] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))), ≥)∧[(3)bni_43 + (-1)Bound*bni_43] + [bni_43]x2[0] ≥ 0∧[(-1)bso_44] ≥ 0)

  • COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2))), x2, x3, java.lang.Object(ARRAY(x2))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2, +(x3, 1)), java.lang.Object(ARRAY(x2))), x2, +(x3, 1), java.lang.Object(ARRAY(x2)))
    • ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1])))), ≥)∧[bni_45] = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_46] ≥ 0)

  • 4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) → COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2, 0), >(x0, -1)), >(x0, +(x2, 1))), 4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0)))
    • (x0[2] ≥ 0∧x2[2] ≥ 0∧[3] + x2[2] + x0[2] ≥ 0 ⇒ (UIncreasing(COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))), ≥)∧0 = 0∧[(3)bni_47 + (-1)Bound*bni_47] + [bni_47]x0[2] ≥ 0∧0 = 0∧[(-1)bso_48] ≥ 0)

  • COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1, x2, java.lang.Object(ARRAY(x0))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0, +(x2, 1)), java.lang.Object(ARRAY(x0))), x0, +(x2, 1), java.lang.Object(ARRAY(x0)))
    • ((UIncreasing(4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3])))), ≥)∧[bni_49] = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_50] ≥ 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[POLO]:

POL(TRUE) = 0   
POL(FALSE) = 0   
POL(4012_0_aux_Load(x1, x2)) = [-1]   
POL(java.lang.Object(x1)) = x1   
POL(ARRAY(x1)) = x1   
POL(3712_0_aux_LT(x1, x2, x3)) = [-1]   
POL(0) = 0   
POL(Cond_3712_0_aux_LT(x1, x2, x3, x4)) = [-1]   
POL(<=(x1, x2)) = [-1]   
POL(3717_0_aux_Return(x1, x2)) = [-1]   
POL(Cond_3712_0_aux_LT1(x1, x2, x3, x4)) = [-1]   
POL(&&(x1, x2)) = [-1]   
POL(>(x1, x2)) = [-1]   
POL(-1) = [-1]   
POL(3980_0_aux_ArrayAccess(x1, x2, x3)) = [-1]   
POL(Cond_3712_0_aux_LT2(x1, x2, x3, x4)) = [-1]   
POL(Cond_3712_0_aux_LT3(x1, x2, x3, x4, x5)) = [-1]   
POL(+(x1, x2)) = x1 + x2   
POL(1) = [1]   
POL(4117_0_aux_ArrayAccess(x1, x2, x3, x4, x5)) = [-1]   
POL(Cond_3712_0_aux_LT4(x1, x2, x3, x4, x5)) = [-1]   
POL(4163_1_aux_InvokeMethod(x1)) = x1   
POL(4249_0_aux_Return) = [-1]   
POL(4511_0_aux_ArrayAccess(x1, x2, x3, x4)) = [-1]   
POL(4529_0_aux_InvokeMethod(x1, x2)) = [-1]   
POL(4012_1_SORT_INVOKEMETHOD(x1, x2, x3, x4)) = x4 + [-1]x3 + [-1]x1   
POL(COND_4012_1_SORT_INVOKEMETHOD(x1, x2, x3, x4, x5)) = x5 + [-1]x4 + [-1]x2   
POL(-(x1, x2)) = x1 + [-1]x2   
POL(COND_4012_1_SORT_INVOKEMETHOD1(x1, x2, x3, x4, x5)) = [1] + x5 + [-1]x4   

The following pairs are in P>:

COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1], java.lang.Object(ARRAY(x2[1]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x2[1], +(x3[1], 1)), java.lang.Object(ARRAY(x2[1]))), x2[1], +(x3[1], 1), java.lang.Object(ARRAY(x2[1])))
COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1[3], x2[3], java.lang.Object(ARRAY(x0[3]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(-(x0[3], +(x2[3], 1)), java.lang.Object(ARRAY(x0[3]))), x0[3], +(x2[3], 1), java.lang.Object(ARRAY(x0[3])))

The following pairs are in Pbound:

4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0]))) → COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))
4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2]))) → COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))

The following pairs are in P:

4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0]))) → COND_4012_1_SORT_INVOKEMETHOD(&&(&&(>(x3[0], 0), >(x2[0], -1)), >(x2[0], +(x3[0], 1))), 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))
4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2]))) → COND_4012_1_SORT_INVOKEMETHOD1(&&(&&(>(x2[2], 0), >(x0[2], -1)), >(x0[2], +(x2[2], 1))), 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))

At least the following rules have been oriented under context sensitive arithmetic replacement:

4012_0_aux_Load(x1, java.lang.Object(ARRAY(x2)))13712_0_aux_LT(java.lang.Object(ARRAY(x2)), 0, x1)1
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1)1Cond_3712_0_aux_LT(<=(x1, x0), java.lang.Object(ARRAY(x2)), x0, x1)1
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1)1Cond_3712_0_aux_LT1(&&(>(x1, x0), <=(x0, -1)), java.lang.Object(ARRAY(x2)), x0, x1)1
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1)1Cond_3712_0_aux_LT2(&&(<=(x2, x0), >(x1, x0)), java.lang.Object(ARRAY(x2)), x0, x1)1
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1)1Cond_3712_0_aux_LT3(&&(&&(&&(>(x2, x0), <=(x2, +(x0, 1))), >(x1, x0)), >(x0, -1)), java.lang.Object(ARRAY(x2)), x0, x1, x3)1
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1)1Cond_3712_0_aux_LT4(&&(&&(>(x2, +(x0, 1)), >(x1, x0)), >(x0, -1)), java.lang.Object(ARRAY(x2)), x0, x1, x3)1
Cond_3712_0_aux_LT4(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3)14163_1_aux_InvokeMethod(3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x3, x1))1
4163_1_aux_InvokeMethod(4249_0_aux_Return)14249_0_aux_Return1
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3))14529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))1
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2))))14249_0_aux_Return1
4163_1_aux_InvokeMethod(3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0))14529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))1
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3))14529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))1
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1))))14529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))1
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4))14529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))1
Cond_3712_0_aux_LT(TRUE, java.lang.Object(ARRAY(x2)), x0, x1)13717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))1
Cond_3712_0_aux_LT1(TRUE, java.lang.Object(ARRAY(x2)), x0, x1)13980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)1
Cond_3712_0_aux_LT2(TRUE, java.lang.Object(ARRAY(x2)), x0, x1)13980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)1
Cond_3712_0_aux_LT3(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3)14117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), +(x0, 1))1

(20) Complex Obligation (AND)

(21) 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:

Integer, Boolean


The ITRS R consists of the following rules:
4012_0_aux_Load(x1, java.lang.Object(ARRAY(x2))) → 3712_0_aux_LT(java.lang.Object(ARRAY(x2)), 0, x1)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT(x1 <= x0, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT1(x1 > x0 && x0 <= -1, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT1(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT2(x2 <= x0 && x1 > x0, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT2(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT3(x2 > x0 && x2 <= x0 + 1 && x1 > x0 && x0 > -1, java.lang.Object(ARRAY(x2)), x0, x1, x3)
Cond_3712_0_aux_LT3(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3) → 4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x0 + 1)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT4(x2 > x0 + 1 && x1 > x0 && x0 > -1, java.lang.Object(ARRAY(x2)), x0, x1, x3)
Cond_3712_0_aux_LT4(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3) → 4163_1_aux_InvokeMethod(3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x3, x1))
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))

The integer pair graph contains the following rules and edges:
(0): 4012_1_SORT_INVOKEMETHOD(3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0]))) → COND_4012_1_SORT_INVOKEMETHOD(x3[0] > 0 && x2[0] > -1 && x2[0] > x3[0] + 1, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[0]))), x2[0], x3[0], java.lang.Object(ARRAY(x2[0])))
(2): 4012_1_SORT_INVOKEMETHOD(4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2]))) → COND_4012_1_SORT_INVOKEMETHOD1(x2[2] > 0 && x0[2] > -1 && x0[2] > x2[2] + 1, 4249_0_aux_Return, x1[2], x2[2], java.lang.Object(ARRAY(x0[2])))


The set Q consists of the following terms:
4012_0_aux_Load(x0, java.lang.Object(ARRAY(x1)))
3712_0_aux_LT(java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT1(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT2(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT3(TRUE, java.lang.Object(ARRAY(x0)), x1, x2, x3)
Cond_3712_0_aux_LT4(TRUE, java.lang.Object(ARRAY(x0)), x1, x2, x3)
4163_1_aux_InvokeMethod(4249_0_aux_Return)
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x1))))
4163_1_aux_InvokeMethod(3980_0_aux_ArrayAccess(x0, java.lang.Object(ARRAY(x1)), x2))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1))))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x0, x1, x2, java.lang.Object(ARRAY(x3)), x4))

(22) IDependencyGraphProof (EQUIVALENT transformation)

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

(23) TRUE

(24) Obligation:

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


The following domains are used:

Integer, Boolean


The ITRS R consists of the following rules:
4012_0_aux_Load(x1, java.lang.Object(ARRAY(x2))) → 3712_0_aux_LT(java.lang.Object(ARRAY(x2)), 0, x1)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT(x1 <= x0, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT1(x1 > x0 && x0 <= -1, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT1(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT2(x2 <= x0 && x1 > x0, java.lang.Object(ARRAY(x2)), x0, x1)
Cond_3712_0_aux_LT2(TRUE, java.lang.Object(ARRAY(x2)), x0, x1) → 3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT3(x2 > x0 && x2 <= x0 + 1 && x1 > x0 && x0 > -1, java.lang.Object(ARRAY(x2)), x0, x1, x3)
Cond_3712_0_aux_LT3(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3) → 4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x0 + 1)
3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x0, x1) → Cond_3712_0_aux_LT4(x2 > x0 + 1 && x1 > x0 && x0 > -1, java.lang.Object(ARRAY(x2)), x0, x1, x3)
Cond_3712_0_aux_LT4(TRUE, java.lang.Object(ARRAY(x2)), x0, x1, x3) → 4163_1_aux_InvokeMethod(3712_0_aux_LT(java.lang.Object(ARRAY(x2)), x3, x1))
4163_1_aux_InvokeMethod(4249_0_aux_Return) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x2)))) → 4249_0_aux_Return
4163_1_aux_InvokeMethod(3980_0_aux_ArrayAccess(x1, java.lang.Object(ARRAY(x2)), x0)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x1, x0, java.lang.Object(ARRAY(x2)), x3)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))) → 4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1)))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x1, x0, x3, java.lang.Object(ARRAY(x2)), x4)) → 4529_0_aux_InvokeMethod(x1, java.lang.Object(ARRAY(x2)))

The integer pair graph contains the following rules and edges:
(1): COND_4012_1_SORT_INVOKEMETHOD(TRUE, 3717_0_aux_Return(0, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1], java.lang.Object(ARRAY(x2[1]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(x2[1] - x3[1] + 1, java.lang.Object(ARRAY(x2[1]))), x2[1], x3[1] + 1, java.lang.Object(ARRAY(x2[1])))
(3): COND_4012_1_SORT_INVOKEMETHOD1(TRUE, 4249_0_aux_Return, x1[3], x2[3], java.lang.Object(ARRAY(x0[3]))) → 4012_1_SORT_INVOKEMETHOD(4012_0_aux_Load(x0[3] - x2[3] + 1, java.lang.Object(ARRAY(x0[3]))), x0[3], x2[3] + 1, java.lang.Object(ARRAY(x0[3])))


The set Q consists of the following terms:
4012_0_aux_Load(x0, java.lang.Object(ARRAY(x1)))
3712_0_aux_LT(java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT1(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT2(TRUE, java.lang.Object(ARRAY(x0)), x1, x2)
Cond_3712_0_aux_LT3(TRUE, java.lang.Object(ARRAY(x0)), x1, x2, x3)
Cond_3712_0_aux_LT4(TRUE, java.lang.Object(ARRAY(x0)), x1, x2, x3)
4163_1_aux_InvokeMethod(4249_0_aux_Return)
4163_1_aux_InvokeMethod(4511_0_aux_ArrayAccess(x0, x1, java.lang.Object(ARRAY(x2)), x3))
4163_1_aux_InvokeMethod(3717_0_aux_Return(x0, java.lang.Object(ARRAY(x1))))
4163_1_aux_InvokeMethod(3980_0_aux_ArrayAccess(x0, java.lang.Object(ARRAY(x1)), x2))
4163_1_aux_InvokeMethod(4529_0_aux_InvokeMethod(x0, java.lang.Object(ARRAY(x1))))
4163_1_aux_InvokeMethod(4117_0_aux_ArrayAccess(x0, x1, x2, java.lang.Object(ARRAY(x3)), x4))

(25) IDependencyGraphProof (EQUIVALENT transformation)

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

(26) TRUE

(27) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: BubbleSortR.main([Ljava/lang/String;)V
SCC calls the following helper methods:
Performed SCC analyses: UsedFieldsAnalysis

(28) SCCToIDPv1Proof (SOUND transformation)

Transformed FIGraph SCCs to IDPs. Log:

Generated 46 rules for P and 0 rules for R.


P rules:
2517_0_main_Load(EOS(STATIC_2517(i1092)), java.lang.Object(ARRAY(i76)), i1093, i1093) → 2523_0_main_ArrayLength(EOS(STATIC_2523(i1092)), java.lang.Object(ARRAY(i76)), i1093, i1093, java.lang.Object(ARRAY(i76)))
2523_0_main_ArrayLength(EOS(STATIC_2523(i1092)), java.lang.Object(ARRAY(i76)), i1093, i1093, java.lang.Object(ARRAY(i76))) → 2528_0_main_GE(EOS(STATIC_2528(i1092)), java.lang.Object(ARRAY(i76)), i1093, i1093, i76) | >=(i76, 0)
2528_0_main_GE(EOS(STATIC_2528(i1092)), java.lang.Object(ARRAY(i76)), i1093, i1093, i76) → 2534_0_main_GE(EOS(STATIC_2534(i1092)), java.lang.Object(ARRAY(i76)), i1093, i1093, i76)
2534_0_main_GE(EOS(STATIC_2534(i1092)), java.lang.Object(ARRAY(i76)), i1093, i1093, i76) → 2543_0_main_Load(EOS(STATIC_2543(i1092)), java.lang.Object(ARRAY(i76)), i1093) | <(i1093, i76)
2543_0_main_Load(EOS(STATIC_2543(i1092)), java.lang.Object(ARRAY(i76)), i1093) → 2551_0_main_Load(EOS(STATIC_2551(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)))
2551_0_main_Load(EOS(STATIC_2551(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76))) → 2557_0_main_InvokeMethod(EOS(STATIC_2557(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093)
2557_0_main_InvokeMethod(EOS(STATIC_2557(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093) → 2567_0_random_FieldAccess(EOS(STATIC_2567(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093)
2567_0_random_FieldAccess(EOS(STATIC_2567(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093) → 2584_0_random_FieldAccess(EOS(STATIC_2584(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092)
2584_0_random_FieldAccess(EOS(STATIC_2584(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092) → 2598_0_random_ArrayLength(EOS(STATIC_2598(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, java.lang.Object(ARRAY(i286)))
2598_0_random_ArrayLength(EOS(STATIC_2598(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, java.lang.Object(ARRAY(i286))) → 2612_0_random_LT(EOS(STATIC_2612(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, i286) | >=(i286, 0)
2612_0_random_LT(EOS(STATIC_2612(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, i286) → 2620_0_random_LT(EOS(STATIC_2620(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, i286)
2612_0_random_LT(EOS(STATIC_2612(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, i286) → 2621_0_random_LT(EOS(STATIC_2621(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, i286)
2620_0_random_LT(EOS(STATIC_2620(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, i286) → 2637_0_random_FieldAccess(EOS(STATIC_2637(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093) | <(i1092, i286)
2637_0_random_FieldAccess(EOS(STATIC_2637(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093) → 2655_0_random_FieldAccess(EOS(STATIC_2655(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i286)))
2655_0_random_FieldAccess(EOS(STATIC_2655(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i286))) → 2668_0_random_ArrayAccess(EOS(STATIC_2668(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i286)), i1092)
2668_0_random_ArrayAccess(EOS(STATIC_2668(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i286)), i1092) → 2692_0_random_ArrayAccess(EOS(STATIC_2692(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i286)), i1092)
2692_0_random_ArrayAccess(EOS(STATIC_2692(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i286)), i1092) → 2713_0_random_Store(EOS(STATIC_2713(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005)
2713_0_random_Store(EOS(STATIC_2713(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005) → 2729_0_random_FieldAccess(EOS(STATIC_2729(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005)
2729_0_random_FieldAccess(EOS(STATIC_2729(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005) → 2748_0_random_ConstantStackPush(EOS(STATIC_2748(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005, i1092)
2748_0_random_ConstantStackPush(EOS(STATIC_2748(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005, i1092) → 2768_0_random_IntArithmetic(EOS(STATIC_2768(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005, i1092, 1)
2768_0_random_IntArithmetic(EOS(STATIC_2768(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005, i1092, matching1) → 2790_0_random_FieldAccess(EOS(STATIC_2790(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005, +(i1092, 1)) | &&(>(i1092, 0), =(matching1, 1))
2790_0_random_FieldAccess(EOS(STATIC_2790(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005, i1212) → 2811_0_random_Load(EOS(STATIC_2811(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005)
2811_0_random_Load(EOS(STATIC_2811(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005) → 2837_0_random_InvokeMethod(EOS(STATIC_2837(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, o1005)
2837_0_random_InvokeMethod(EOS(STATIC_2837(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(o1083sub)) → 2858_0_random_InvokeMethod(EOS(STATIC_2858(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(o1083sub))
2858_0_random_InvokeMethod(EOS(STATIC_2858(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(o1083sub)) → 2887_0_length_Load(EOS(STATIC_2887(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(o1083sub), java.lang.Object(o1083sub))
2887_0_length_Load(EOS(STATIC_2887(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(o1083sub), java.lang.Object(o1083sub)) → 2942_0_length_FieldAccess(EOS(STATIC_2942(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(o1083sub), java.lang.Object(o1083sub))
2942_0_length_FieldAccess(EOS(STATIC_2942(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(java.lang.String(o1157sub, i1314)), java.lang.Object(java.lang.String(o1157sub, i1314))) → 2962_0_length_FieldAccess(EOS(STATIC_2962(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(java.lang.String(o1157sub, i1314)), java.lang.Object(java.lang.String(o1157sub, i1314))) | &&(>=(i1314, 0), >=(i1315, 0))
2962_0_length_FieldAccess(EOS(STATIC_2962(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(java.lang.String(o1157sub, i1314)), java.lang.Object(java.lang.String(o1157sub, i1314))) → 2994_0_length_Return(EOS(STATIC_2994(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(java.lang.String(o1157sub, i1314)))
2994_0_length_Return(EOS(STATIC_2994(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(java.lang.String(o1157sub, i1314))) → 3016_0_random_Return(EOS(STATIC_3016(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093)
3016_0_random_Return(EOS(STATIC_3016(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093) → 3044_0_main_ArrayAccess(EOS(STATIC_3044(i1212)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093)
3044_0_main_ArrayAccess(EOS(STATIC_3044(i1212)), java.lang.Object(ARRAY(i76)), i1373, java.lang.Object(ARRAY(i76)), i1373) → 3066_0_main_ArrayAccess(EOS(STATIC_3066(i1212)), java.lang.Object(ARRAY(i76)), i1373, java.lang.Object(ARRAY(i76)), i1373)
3066_0_main_ArrayAccess(EOS(STATIC_3066(i1212)), java.lang.Object(ARRAY(i76)), i1373, java.lang.Object(ARRAY(i76)), i1373) → 3093_0_main_ArrayAccess(EOS(STATIC_3093(i1212)), java.lang.Object(ARRAY(i76)), i1373, java.lang.Object(ARRAY(i76)), i1373)
3093_0_main_ArrayAccess(EOS(STATIC_3093(i1212)), java.lang.Object(ARRAY(i76)), i1373, java.lang.Object(ARRAY(i76)), i1373) → 3125_0_main_Inc(EOS(STATIC_3125(i1212)), java.lang.Object(ARRAY(i76)), i1373) | <(i1373, i76)
3125_0_main_Inc(EOS(STATIC_3125(i1212)), java.lang.Object(ARRAY(i76)), i1373) → 3156_0_main_JMP(EOS(STATIC_3156(i1212)), java.lang.Object(ARRAY(i76)), +(i1373, 1)) | >=(i1373, 0)
3156_0_main_JMP(EOS(STATIC_3156(i1212)), java.lang.Object(ARRAY(i76)), i1411) → 3193_0_main_Load(EOS(STATIC_3193(i1212)), java.lang.Object(ARRAY(i76)), i1411)
3193_0_main_Load(EOS(STATIC_3193(i1212)), java.lang.Object(ARRAY(i76)), i1411) → 2511_0_main_Load(EOS(STATIC_2511(i1212)), java.lang.Object(ARRAY(i76)), i1411)
2511_0_main_Load(EOS(STATIC_2511(i1092)), java.lang.Object(ARRAY(i76)), i1093) → 2517_0_main_Load(EOS(STATIC_2517(i1092)), java.lang.Object(ARRAY(i76)), i1093, i1093)
2621_0_random_LT(EOS(STATIC_2621(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093, i1092, i286) → 2639_0_random_ConstantStackPush(EOS(STATIC_2639(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093) | >=(i1092, i286)
2639_0_random_ConstantStackPush(EOS(STATIC_2639(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093) → 2657_0_random_Return(EOS(STATIC_2657(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093)
2657_0_random_Return(EOS(STATIC_2657(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093) → 2669_0_main_ArrayAccess(EOS(STATIC_2669(i1092)), java.lang.Object(ARRAY(i76)), i1093, java.lang.Object(ARRAY(i76)), i1093)
2669_0_main_ArrayAccess(EOS(STATIC_2669(i1092)), java.lang.Object(ARRAY(i76)), i1185, java.lang.Object(ARRAY(i76)), i1185) → 2695_0_main_ArrayAccess(EOS(STATIC_2695(i1092)), java.lang.Object(ARRAY(i76)), i1185, java.lang.Object(ARRAY(i76)), i1185)
2695_0_main_ArrayAccess(EOS(STATIC_2695(i1092)), java.lang.Object(ARRAY(i76)), i1185, java.lang.Object(ARRAY(i76)), i1185) → 2717_0_main_ArrayAccess(EOS(STATIC_2717(i1092)), java.lang.Object(ARRAY(i76)), i1185, java.lang.Object(ARRAY(i76)), i1185)
2717_0_main_ArrayAccess(EOS(STATIC_2717(i1092)), java.lang.Object(ARRAY(i76)), i1185, java.lang.Object(ARRAY(i76)), i1185) → 2731_0_main_Inc(EOS(STATIC_2731(i1092)), java.lang.Object(ARRAY(i76)), i1185) | <(i1185, i76)
2731_0_main_Inc(EOS(STATIC_2731(i1092)), java.lang.Object(ARRAY(i76)), i1185) → 2753_0_main_JMP(EOS(STATIC_2753(i1092)), java.lang.Object(ARRAY(i76)), +(i1185, 1)) | >=(i1185, 0)
2753_0_main_JMP(EOS(STATIC_2753(i1092)), java.lang.Object(ARRAY(i76)), i1195) → 2774_0_main_Load(EOS(STATIC_2774(i1092)), java.lang.Object(ARRAY(i76)), i1195)
2774_0_main_Load(EOS(STATIC_2774(i1092)), java.lang.Object(ARRAY(i76)), i1195) → 2511_0_main_Load(EOS(STATIC_2511(i1092)), java.lang.Object(ARRAY(i76)), i1195)
R rules:

Combined rules. Obtained 2 conditional rules for P and 0 conditional rules for R.


P rules:
2517_0_main_Load(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2, x2) → 2517_0_main_Load(EOS(STATIC_2517(+(x0, 1))), java.lang.Object(ARRAY(x1)), +(x2, 1), +(x2, 1)) | &&(&&(&&(>(+(x2, 1), 0), <(x2, x1)), >(+(x1, 1), 0)), >(x0, 0))
2517_0_main_Load(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2, x2) → 2517_0_main_Load(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), +(x2, 1), +(x2, 1)) | &&(&&(>(+(x2, 1), 0), <(x2, x1)), >(+(x1, 1), 0))
R rules:

Filtered duplicate args:



2517_0_main_Load(x1, x2, x3, x4) → 2517_0_main_Load(x1, x2, x4)
Cond_2517_0_main_Load(x1, x2, x3, x4, x5) → Cond_2517_0_main_Load(x1, x2, x3, x5)
Cond_2517_0_main_Load1(x1, x2, x3, x4, x5) → Cond_2517_0_main_Load1(x1, x2, x3, x5)

Combined rules. Obtained 2 conditional rules for P and 0 conditional rules for R.


P rules:
2517_0_main_Load(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → 2517_0_main_Load(EOS(STATIC_2517(+(x0, 1))), java.lang.Object(ARRAY(x1)), +(x2, 1)) | &&(&&(&&(>(x2, -1), <(x2, x1)), >(x1, -1)), >(x0, 0))
2517_0_main_Load(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → 2517_0_main_Load(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), +(x2, 1)) | &&(&&(>(x2, -1), <(x2, x1)), >(x1, -1))
R rules:

Finished conversion. Obtained 4 rules for P and 0 rules for R. System has predefined symbols.


P rules:
2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2, -1), <(x2, x1)), >(x1, -1)), >(x0, 0)), EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2)
COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0, 1))), java.lang.Object(ARRAY(x1)), +(x2, 1))
2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → COND_2517_0_MAIN_LOAD1(&&(&&(>(x2, -1), <(x2, x1)), >(x1, -1)), EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2)
COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), +(x2, 1))
R rules:

(29) 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): 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0]) → COND_2517_0_MAIN_LOAD(x2[0] > -1 && x2[0] < x1[0] && x1[0] > -1 && x0[0] > 0, EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])
(1): COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0[1])), java.lang.Object(ARRAY(x1[1])), x2[1]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[1] + 1)), java.lang.Object(ARRAY(x1[1])), x2[1] + 1)
(2): 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2]) → COND_2517_0_MAIN_LOAD1(x2[2] > -1 && x2[2] < x1[2] && x1[2] > -1, EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])
(3): COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3] + 1)

(0) -> (1), if (x2[0] > -1 && x2[0] < x1[0] && x1[0] > -1 && x0[0] > 0EOS(STATIC_2517(x0[0])) →* EOS(STATIC_2517(x0[1]))∧java.lang.Object(ARRAY(x1[0])) →* java.lang.Object(ARRAY(x1[1]))∧x2[0]* x2[1])


(1) -> (0), if (EOS(STATIC_2517(x0[1] + 1)) →* EOS(STATIC_2517(x0[0]))∧java.lang.Object(ARRAY(x1[1])) →* java.lang.Object(ARRAY(x1[0]))∧x2[1] + 1* x2[0])


(1) -> (2), if (EOS(STATIC_2517(x0[1] + 1)) →* EOS(STATIC_2517(x0[2]))∧java.lang.Object(ARRAY(x1[1])) →* java.lang.Object(ARRAY(x1[2]))∧x2[1] + 1* x2[2])


(2) -> (3), if (x2[2] > -1 && x2[2] < x1[2] && x1[2] > -1EOS(STATIC_2517(x0[2])) →* EOS(STATIC_2517(x0[3]))∧java.lang.Object(ARRAY(x1[2])) →* java.lang.Object(ARRAY(x1[3]))∧x2[2]* x2[3])


(3) -> (0), if (EOS(STATIC_2517(x0[3])) →* EOS(STATIC_2517(x0[0]))∧java.lang.Object(ARRAY(x1[3])) →* java.lang.Object(ARRAY(x1[0]))∧x2[3] + 1* x2[0])


(3) -> (2), if (EOS(STATIC_2517(x0[3])) →* EOS(STATIC_2517(x0[2]))∧java.lang.Object(ARRAY(x1[3])) →* java.lang.Object(ARRAY(x1[2]))∧x2[3] + 1* x2[2])



The set Q is empty.

(30) IDPNonInfProof (SOUND transformation)

Used the following options for this NonInfProof:
IDPGPoloSolver: Range: [(-1,2)] IsNat: false Interpretation Shape Heuristic: aprove.DPFramework.IDPProblem.Processors.nonInf.poly.IdpCand1ShapeHeuristic@43902f84 Constraint Generator: NonInfConstraintGenerator: PathGenerator: MetricPathGenerator: Max Left Steps: 0 Max Right Steps: 0

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 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2, -1), <(x2, x1)), >(x1, -1)), >(x0, 0)), EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) the following chains were created:
  • We consider the chain 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0]) → COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0]), COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0[1])), java.lang.Object(ARRAY(x1[1])), x2[1]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1)) which results in the following constraint:

    (1)    (&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0))=TRUEEOS(STATIC_2517(x0[0]))=EOS(STATIC_2517(x0[1]))∧java.lang.Object(ARRAY(x1[0]))=java.lang.Object(ARRAY(x1[1]))∧x2[0]=x2[1]2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])≥NonInfC∧2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])≥COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])∧(UIncreasing(COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])), ≥))



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

    (2)    (>(x0[0], 0)=TRUE>(x1[0], -1)=TRUE>(x2[0], -1)=TRUE<(x2[0], x1[0])=TRUE2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])≥NonInfC∧2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])≥COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])∧(UIncreasing(COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])), ≥))



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

    (3)    (x0[0] + [-1] ≥ 0∧x1[0] ≥ 0∧x2[0] ≥ 0∧x1[0] + [-1] + [-1]x2[0] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])), ≥)∧[(-1)Bound*bni_12] + [(-1)bni_12]x2[0] + [bni_12]x1[0] ≥ 0∧[1 + (-1)bso_13] ≥ 0)



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

    (4)    (x0[0] + [-1] ≥ 0∧x1[0] ≥ 0∧x2[0] ≥ 0∧x1[0] + [-1] + [-1]x2[0] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])), ≥)∧[(-1)Bound*bni_12] + [(-1)bni_12]x2[0] + [bni_12]x1[0] ≥ 0∧[1 + (-1)bso_13] ≥ 0)



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

    (5)    (x0[0] + [-1] ≥ 0∧x1[0] ≥ 0∧x2[0] ≥ 0∧x1[0] + [-1] + [-1]x2[0] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])), ≥)∧[(-1)Bound*bni_12] + [(-1)bni_12]x2[0] + [bni_12]x1[0] ≥ 0∧[1 + (-1)bso_13] ≥ 0)



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

    (6)    (x0[0] ≥ 0∧x1[0] ≥ 0∧x2[0] ≥ 0∧x1[0] + [-1] + [-1]x2[0] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])), ≥)∧[(-1)Bound*bni_12] + [(-1)bni_12]x2[0] + [bni_12]x1[0] ≥ 0∧[1 + (-1)bso_13] ≥ 0)



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

    (7)    (x0[0] ≥ 0∧[1] + x2[0] + x1[0] ≥ 0∧x2[0] ≥ 0∧x1[0] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])), ≥)∧[(-1)Bound*bni_12 + bni_12] + [bni_12]x1[0] ≥ 0∧[1 + (-1)bso_13] ≥ 0)







For Pair COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0, 1))), java.lang.Object(ARRAY(x1)), +(x2, 1)) the following chains were created:
  • We consider the chain COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0[1])), java.lang.Object(ARRAY(x1[1])), x2[1]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1)) which results in the following constraint:

    (8)    (COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0[1])), java.lang.Object(ARRAY(x1[1])), x2[1])≥NonInfC∧COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0[1])), java.lang.Object(ARRAY(x1[1])), x2[1])≥2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1))∧(UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1))), ≥))



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

    (9)    ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1))), ≥)∧[bni_14] = 0∧[(-1)bso_15] ≥ 0)



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

    (10)    ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1))), ≥)∧[bni_14] = 0∧[(-1)bso_15] ≥ 0)



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

    (11)    ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1))), ≥)∧[bni_14] = 0∧[(-1)bso_15] ≥ 0)



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

    (12)    ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1))), ≥)∧[bni_14] = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_15] ≥ 0)







For Pair 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → COND_2517_0_MAIN_LOAD1(&&(&&(>(x2, -1), <(x2, x1)), >(x1, -1)), EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) the following chains were created:
  • We consider the chain 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2]) → COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2]), COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1)) which results in the following constraint:

    (13)    (&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1))=TRUEEOS(STATIC_2517(x0[2]))=EOS(STATIC_2517(x0[3]))∧java.lang.Object(ARRAY(x1[2]))=java.lang.Object(ARRAY(x1[3]))∧x2[2]=x2[3]2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])≥NonInfC∧2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])≥COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])∧(UIncreasing(COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])), ≥))



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

    (14)    (>(x1[2], -1)=TRUE>(x2[2], -1)=TRUE<(x2[2], x1[2])=TRUE2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])≥NonInfC∧2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])≥COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])∧(UIncreasing(COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])), ≥))



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

    (15)    (x1[2] ≥ 0∧x2[2] ≥ 0∧x1[2] + [-1] + [-1]x2[2] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])), ≥)∧[(-1)Bound*bni_16] + [(-1)bni_16]x2[2] + [bni_16]x1[2] ≥ 0∧[1 + (-1)bso_17] ≥ 0)



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

    (16)    (x1[2] ≥ 0∧x2[2] ≥ 0∧x1[2] + [-1] + [-1]x2[2] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])), ≥)∧[(-1)Bound*bni_16] + [(-1)bni_16]x2[2] + [bni_16]x1[2] ≥ 0∧[1 + (-1)bso_17] ≥ 0)



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

    (17)    (x1[2] ≥ 0∧x2[2] ≥ 0∧x1[2] + [-1] + [-1]x2[2] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])), ≥)∧[(-1)Bound*bni_16] + [(-1)bni_16]x2[2] + [bni_16]x1[2] ≥ 0∧[1 + (-1)bso_17] ≥ 0)



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

    (18)    (x1[2] ≥ 0∧x2[2] ≥ 0∧x1[2] + [-1] + [-1]x2[2] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])), ≥)∧0 = 0∧[(-1)Bound*bni_16] + [(-1)bni_16]x2[2] + [bni_16]x1[2] ≥ 0∧0 = 0∧[1 + (-1)bso_17] ≥ 0)



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

    (19)    ([1] + x2[2] + x1[2] ≥ 0∧x2[2] ≥ 0∧x1[2] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])), ≥)∧0 = 0∧[(-1)Bound*bni_16 + bni_16] + [bni_16]x1[2] ≥ 0∧0 = 0∧[1 + (-1)bso_17] ≥ 0)







For Pair COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), +(x2, 1)) the following chains were created:
  • We consider the chain COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1)) which results in the following constraint:

    (20)    (COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3])≥NonInfC∧COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3])≥2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1))∧(UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1))), ≥))



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

    (21)    ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1))), ≥)∧[bni_18] = 0∧[(-1)bso_19] ≥ 0)



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

    (22)    ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1))), ≥)∧[bni_18] = 0∧[(-1)bso_19] ≥ 0)



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

    (23)    ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1))), ≥)∧[bni_18] = 0∧[(-1)bso_19] ≥ 0)



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

    (24)    ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1))), ≥)∧[bni_18] = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_19] ≥ 0)







To summarize, we get the following constraints P for the following pairs.
  • 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2, -1), <(x2, x1)), >(x1, -1)), >(x0, 0)), EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2)
    • (x0[0] ≥ 0∧[1] + x2[0] + x1[0] ≥ 0∧x2[0] ≥ 0∧x1[0] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])), ≥)∧[(-1)Bound*bni_12 + bni_12] + [bni_12]x1[0] ≥ 0∧[1 + (-1)bso_13] ≥ 0)

  • COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0, 1))), java.lang.Object(ARRAY(x1)), +(x2, 1))
    • ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1))), ≥)∧[bni_14] = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_15] ≥ 0)

  • 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → COND_2517_0_MAIN_LOAD1(&&(&&(>(x2, -1), <(x2, x1)), >(x1, -1)), EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2)
    • ([1] + x2[2] + x1[2] ≥ 0∧x2[2] ≥ 0∧x1[2] ≥ 0 ⇒ (UIncreasing(COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])), ≥)∧0 = 0∧[(-1)Bound*bni_16 + bni_16] + [bni_16]x1[2] ≥ 0∧0 = 0∧[1 + (-1)bso_17] ≥ 0)

  • COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), x2) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0)), java.lang.Object(ARRAY(x1)), +(x2, 1))
    • ((UIncreasing(2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1))), ≥)∧[bni_18] = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_19] ≥ 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[POLO]:

POL(TRUE) = 0   
POL(FALSE) = 0   
POL(2517_0_MAIN_LOAD(x1, x2, x3)) = [-1]x3 + x2   
POL(EOS(x1)) = x1   
POL(STATIC_2517(x1)) = x1   
POL(java.lang.Object(x1)) = x1   
POL(ARRAY(x1)) = x1   
POL(COND_2517_0_MAIN_LOAD(x1, x2, x3, x4)) = [-1] + [-1]x4 + x3   
POL(&&(x1, x2)) = [-1]   
POL(>(x1, x2)) = [-1]   
POL(-1) = [-1]   
POL(<(x1, x2)) = [-1]   
POL(0) = 0   
POL(+(x1, x2)) = x1 + x2   
POL(1) = [1]   
POL(COND_2517_0_MAIN_LOAD1(x1, x2, x3, x4)) = [-1] + [-1]x4 + x3   

The following pairs are in P>:

2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0]) → COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])
2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2]) → COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])

The following pairs are in Pbound:

2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0]) → COND_2517_0_MAIN_LOAD(&&(&&(&&(>(x2[0], -1), <(x2[0], x1[0])), >(x1[0], -1)), >(x0[0], 0)), EOS(STATIC_2517(x0[0])), java.lang.Object(ARRAY(x1[0])), x2[0])
2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2]) → COND_2517_0_MAIN_LOAD1(&&(&&(>(x2[2], -1), <(x2[2], x1[2])), >(x1[2], -1)), EOS(STATIC_2517(x0[2])), java.lang.Object(ARRAY(x1[2])), x2[2])

The following pairs are in P:

COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0[1])), java.lang.Object(ARRAY(x1[1])), x2[1]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(+(x0[1], 1))), java.lang.Object(ARRAY(x1[1])), +(x2[1], 1))
COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), +(x2[3], 1))

There are no usable rules.

(31) 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:

Integer


R is empty.

The integer pair graph contains the following rules and edges:
(1): COND_2517_0_MAIN_LOAD(TRUE, EOS(STATIC_2517(x0[1])), java.lang.Object(ARRAY(x1[1])), x2[1]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[1] + 1)), java.lang.Object(ARRAY(x1[1])), x2[1] + 1)
(3): COND_2517_0_MAIN_LOAD1(TRUE, EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3]) → 2517_0_MAIN_LOAD(EOS(STATIC_2517(x0[3])), java.lang.Object(ARRAY(x1[3])), x2[3] + 1)


The set Q is empty.

(32) IDependencyGraphProof (EQUIVALENT transformation)

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

(33) TRUE