0 JBC
↳1 JBCToGraph (⇒, 1673 ms)
↳2 JBCTerminationGraph
↳3 TerminationGraphToSCCProof (⇒, 0 ms)
↳4 AND
↳5 JBCTerminationSCC
↳6 SCCToIntTRSProof (⇒, 377 ms)
↳7 intTRS
↳8 PolynomialOrderProcessor (⇔, 0 ms)
↳9 YES
↳10 JBCTerminationSCC
↳11 SCCToIntTRSProof (⇒, 238 ms)
↳12 intTRS
↳13 PolynomialOrderProcessor (⇔, 3 ms)
↳14 YES
↳15 JBCTerminationSCC
↳16 SCCToIntTRSProof (⇒, 216 ms)
↳17 intTRS
↳18 PolynomialOrderProcessor (⇔, 0 ms)
↳19 YES
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();
}
}
Generated rules. Obtained 52 IRules
P rules:
f5360_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) → f5364_0_aux_LT(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428)
f5364_0_aux_LT(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428) → f5366_0_aux_LT(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428)
f5366_0_aux_LT(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428) → f5377_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429))) | <(i1427, i1428)
f5377_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429))) → f5391_0_aux_Store(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427)
f5391_0_aux_Store(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) → f5416_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427)
f5416_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) → f5444_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)))
f5444_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429))) → f5454_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427)
f5454_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) → f5592_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427)
f5592_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) → f5671_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504) | <(i1427, i1429)
f5671_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504) → f5678_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)))
f5678_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429))) → f5688_0_aux_ConstantStackPush(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)), i1427)
f5688_0_aux_ConstantStackPush(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)), i1427) → f5702_0_aux_IntArithmetic(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)), i1427, 1)
f5702_0_aux_IntArithmetic(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)), i1427, matching1) → f5712_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)), +(i1427, 1)) | &&(>=(i1427, 0), =(matching1, 1))
f5712_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)), i1514) → f5724_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)), i1514)
f5724_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, java.lang.Object(ARRAY(i1429)), i1514) → f5741_0_aux_LE(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, i1523) | <(i1514, i1429)
f5741_0_aux_LE(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, i1523) → f5759_0_aux_LE(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, i1523)
f5741_0_aux_LE(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, i1523) → f5760_0_aux_LE(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, i1523)
f5759_0_aux_LE(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, i1523) → f5789_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429))) | <=(i1504, i1523)
f5789_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429))) → f6849_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)))
f6849_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429))) → f6873_0_aux_ConstantStackPush(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1428, java.lang.Object(ARRAY(i1429)), i1427)
f6873_0_aux_ConstantStackPush(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1428, java.lang.Object(ARRAY(i1429)), i1427) → f6909_0_aux_IntArithmetic(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1428, java.lang.Object(ARRAY(i1429)), i1427, 1)
f6909_0_aux_IntArithmetic(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1428, java.lang.Object(ARRAY(i1429)), i1427, matching1) → f6951_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1428, java.lang.Object(ARRAY(i1429)), +(i1427, 1)) | &&(>=(i1427, 0), =(matching1, 1))
f6951_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1428, java.lang.Object(ARRAY(i1429)), i1837) → f6964_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1837, i1428)
f6964_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1837, i1428) → f6998_0_aux_InvokeMethod(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429)))
f6998_0_aux_InvokeMethod(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429))) → f7051_0_aux_Load(EOS, i1837, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429)))
f6998_0_aux_InvokeMethod(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429))) → f7051_1_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429)))
f7051_0_aux_Load(EOS, i1837, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429))) → f7065_0_aux_Load(EOS, i1837, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429)))
f7065_0_aux_Load(EOS, i1837, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429))) → f5335_0_aux_Load(EOS, i1837, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429)))
f5335_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429))) → f5360_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427)
f5760_0_aux_LE(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1504, i1523) → f5795_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) | >(i1504, i1523)
f5795_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) → f5815_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)))
f5815_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429))) → f5862_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427)
f5862_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) → f5878_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427)
f5878_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) → f5914_0_aux_Store(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) | <(i1427, i1429)
f5914_0_aux_Store(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) → f5940_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427)
f5940_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) → f5963_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)))
f5963_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429))) → f5995_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427)
f5995_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) → f6017_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)))
f6017_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429))) → f6060_0_aux_ConstantStackPush(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427)
f6060_0_aux_ConstantStackPush(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) → f6103_0_aux_IntArithmetic(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, 1)
f6103_0_aux_IntArithmetic(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, matching1) → f6136_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), +(i1427, 1)) | &&(>=(i1427, 0), =(matching1, 1))
f6136_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1628) → f6188_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1628)
f6188_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1628) → f6263_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) | <(i1628, i1429)
f6263_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) → f6292_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427)
f6292_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)), i1427) → f6318_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) | <(i1427, i1429)
f6318_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427) → f6392_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429)))
f6392_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, java.lang.Object(ARRAY(i1429))) → f6467_0_aux_ConstantStackPush(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1427)
f6467_0_aux_ConstantStackPush(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1427) → f6705_0_aux_IntArithmetic(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1427, 1)
f6705_0_aux_IntArithmetic(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1427, matching1) → f6728_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), +(i1427, 1)) | &&(>=(i1427, 0), =(matching1, 1))
f6728_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1800) → f6745_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1800)
f6745_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1800) → f6809_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1800)
f6809_0_aux_ArrayAccess(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429)), java.lang.Object(ARRAY(i1429)), i1800) → f6849_0_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1427, i1428, java.lang.Object(ARRAY(i1429))) | <(i1800, i1429)
Combined rules. Obtained 3 IRules
P rules:
f6998_0_aux_InvokeMethod(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429))) → f7051_1_aux_Load(EOS, i1427, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429)), i1837, i1428, java.lang.Object(ARRAY(i1429)))
f6998_0_aux_InvokeMethod(EOS, x0, x1, java.lang.Object(ARRAY(x2)), x3, x1, java.lang.Object(ARRAY(x2))) → f6998_0_aux_InvokeMethod(EOS, x3, x1, java.lang.Object(ARRAY(x2)), +(x3, 1), x1, java.lang.Object(ARRAY(x2))) | &&(&&(>(+(x3, 1), 0), <(+(x3, 1), x2)), <(x3, x1))
f6998_0_aux_InvokeMethod(EOS, x0, x1, java.lang.Object(ARRAY(x2)), x3, x1, java.lang.Object(ARRAY(x2))) → f6998_0_aux_InvokeMethod(EOS, x3, x1, java.lang.Object(ARRAY(x2)), +(x3, 1), x1, java.lang.Object(ARRAY(x2))) | &&(&&(>(+(x3, 1), 0), <(x3, x1)), <(+(x3, 1), x2))
Filtered ground terms:
f6998_0_aux_InvokeMethod(x1, x2, x3, x4, x5, x6, x7) → f6998_0_aux_InvokeMethod(x2, x3, x4, x5, x6, x7)
f7051_1_aux_Load(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) → f7051_1_aux_Load(x2, x3, x4, x5, x6, x7, x8, x9, x10)
Cond_f6998_0_aux_InvokeMethod(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f6998_0_aux_InvokeMethod(x1, x3, x4, x5, x6, x7, x8)
Cond_f6998_0_aux_InvokeMethod1(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f6998_0_aux_InvokeMethod1(x1, x3, x4, x5, x6, x7, x8)
Filtered duplicate terms:
f6998_0_aux_InvokeMethod(x1, x2, x3, x4, x5, x6) → f6998_0_aux_InvokeMethod(x1, x4, x5, x6)
f7051_1_aux_Load(x1, x2, x3, x4, x5, x6, x7, x8, x9) → f7051_1_aux_Load(x1, x7, x8, x9)
Cond_f6998_0_aux_InvokeMethod(x1, x2, x3, x4, x5, x6, x7) → Cond_f6998_0_aux_InvokeMethod(x1, x2, x5, x6, x7)
Cond_f6998_0_aux_InvokeMethod1(x1, x2, x3, x4, x5, x6, x7) → Cond_f6998_0_aux_InvokeMethod1(x1, x2, x5, x6, x7)
Filtered unneeded terms:
Cond_f6998_0_aux_InvokeMethod(x1, x2, x3, x4, x5) → Cond_f6998_0_aux_InvokeMethod(x1, x3, x4, x5)
Cond_f6998_0_aux_InvokeMethod1(x1, x2, x3, x4, x5) → Cond_f6998_0_aux_InvokeMethod1(x1, x3, x4, x5)
f6998_0_aux_InvokeMethod(x1, x2, x3, x4) → f6998_0_aux_InvokeMethod(x2, x3, x4)
Prepared 3 rules for path length conversion:
P rules:
f6998_0_aux_InvokeMethod(i1837, i1428, java.lang.Object(ARRAY(i1429)), i1429) → f7051_1_aux_Load(i1427, i1837, i1428, java.lang.Object(ARRAY(i1429)))
f6998_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)), x2) → f6998_0_aux_InvokeMethod(+(x3, 1), x1, java.lang.Object(ARRAY(x2)), x2) | &&(&&(>(+(x3, 1), 0), <(+(x3, 1), x2)), <(x3, x1))
f6998_0_aux_InvokeMethod(x3, x1, java.lang.Object(ARRAY(x2)), x2) → f6998_0_aux_InvokeMethod(+(x3, 1), x1, java.lang.Object(ARRAY(x2)), x2) | &&(&&(>(+(x3, 1), 0), <(x3, x1)), <(+(x3, 1), x2))
Finished conversion. Obtained 2 rules.
P rules:
f6998_0_aux_InvokeMethod(x4, x5, v14, x6) → f6998_0_aux_InvokeMethod(+(x4, 1), x5, v15, x6) | &&(&&(&&(&&(&&(>(x6, +(x4, 1)), >(x5, x4)), >(x4, -1)), >(+(v15, 1), 1)), <=(v15, v14)), >(+(v14, 1), 1))
f6998_0_aux_InvokeMethod(x7, x8, v16, x9) → f6998_0_aux_InvokeMethod(+(x7, 1), x8, v17, x9) | &&(&&(&&(&&(&&(>(x9, +(x7, 1)), >(x8, x7)), >(x7, -1)), >(+(v17, 1), 1)), <=(v17, v16)), >(+(v16, 1), 1))
Found the following polynomial interpretation:
Therefore the following rule(s) have been dropped:
Generated rules. Obtained 22 IRules
P rules:
f7528_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, i2079) → f7530_0_sort_GE(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, i2079, i2078)
f7530_0_sort_GE(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, i2079, i2078) → f7543_0_sort_GE(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, i2079, i2078)
f7543_0_sort_GE(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, i2079, i2078) → f7568_0_sort_ConstantStackPush(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079) | <(i2079, i2078)
f7568_0_sort_ConstantStackPush(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079) → f7594_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, 0)
f7594_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, matching1) → f7616_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, 0, i2078) | =(matching1, 0)
f7616_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, matching1, i2078) → f7629_0_sort_IntArithmetic(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, 0, i2078, i2079) | =(matching1, 0)
f7629_0_sort_IntArithmetic(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, matching1, i2078, i2079) → f7642_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, 0, -(i2078, i2079)) | &&(&&(>=(i2078, 0), >(i2079, 0)), =(matching1, 0))
f7642_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, matching1, i2119) → f7657_0_sort_InvokeMethod(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, 0, i2119, java.lang.Object(ARRAY(i2077))) | =(matching1, 0)
f7657_0_sort_InvokeMethod(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, matching1, i2119, java.lang.Object(ARRAY(i2077))) → f7660_0_aux_Load(EOS, 0, i2119, java.lang.Object(ARRAY(i2077)), 0, i2119, java.lang.Object(ARRAY(i2077))) | =(matching1, 0)
f7657_0_sort_InvokeMethod(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, matching1, i2119, java.lang.Object(ARRAY(i2077))) → f7660_1_aux_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, 0, i2119, java.lang.Object(ARRAY(i2077)), 0, i2119, java.lang.Object(ARRAY(i2077))) | =(matching1, 0)
f7660_0_aux_Load(EOS, matching1, i2119, java.lang.Object(ARRAY(i2077)), matching2, i2119, java.lang.Object(ARRAY(i2077))) → f7663_0_aux_Load(EOS, 0, i2119, java.lang.Object(ARRAY(i2077)), 0, i2119, java.lang.Object(ARRAY(i2077))) | &&(=(matching1, 0), =(matching2, 0))
f7842_0_aux_Return(EOS, java.lang.Object(ARRAY(i2146)), java.lang.Object(ARRAY(i2146)), i2078, i2079, matching1, i2148, java.lang.Object(ARRAY(i2146)), matching2, i2148, java.lang.Object(ARRAY(i2146))) → f7961_0_sort_Inc(EOS, java.lang.Object(ARRAY(i2146)), java.lang.Object(ARRAY(i2146)), i2078, i2079) | &&(=(matching1, 0), =(matching2, 0))
f7961_0_sort_Inc(EOS, java.lang.Object(ARRAY(i2146)), java.lang.Object(ARRAY(i2146)), i2078, i2079) → f8013_0_sort_Inc(EOS, java.lang.Object(ARRAY(i2146)), java.lang.Object(ARRAY(i2146)), i2078, i2079)
f8013_0_sort_Inc(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, i2079) → f8128_0_sort_JMP(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, +(i2079, 1)) | >(i2079, 0)
f8128_0_sort_JMP(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, i2389) → f8175_0_sort_Load(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, i2389)
f8175_0_sort_Load(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, i2389) → f7519_0_sort_Load(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, i2389)
f7519_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079) → f7528_0_sort_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, i2079)
f7911_0_aux_Return(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, i2079, matching1, i2200, java.lang.Object(ARRAY(i2193))) → f8013_0_sort_Inc(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, i2079) | =(matching1, 0)
f7938_0_aux_Return(EOS, java.lang.Object(ARRAY(i2230)), java.lang.Object(ARRAY(i2230)), i2078, i2079, matching1, i2239, java.lang.Object(ARRAY(i2230))) → f7911_0_aux_Return(EOS, java.lang.Object(ARRAY(i2230)), java.lang.Object(ARRAY(i2230)), i2078, i2079, 0, i2239, java.lang.Object(ARRAY(i2230))) | =(matching1, 0)
f7660_1_aux_Load(EOS, java.lang.Object(ARRAY(i2146)), java.lang.Object(ARRAY(i2146)), i2078, i2079, matching1, i2148, java.lang.Object(ARRAY(i2146)), matching2, i2148, java.lang.Object(ARRAY(i2146))) → f7842_0_aux_Return(EOS, java.lang.Object(ARRAY(i2146)), java.lang.Object(ARRAY(i2146)), i2078, i2079, 0, i2148, java.lang.Object(ARRAY(i2146)), 0, i2148, java.lang.Object(ARRAY(i2146))) | &&(=(matching1, 0), =(matching2, 0))
f7660_1_aux_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, matching1, i2200, java.lang.Object(ARRAY(i2077)), matching2, i2200, java.lang.Object(ARRAY(i2077))) → f7911_0_aux_Return(EOS, java.lang.Object(ARRAY(i2193)), java.lang.Object(ARRAY(i2193)), i2078, i2079, 0, i2200, java.lang.Object(ARRAY(i2193))) | &&(=(matching1, 0), =(matching2, 0))
f7660_1_aux_Load(EOS, java.lang.Object(ARRAY(i2077)), java.lang.Object(ARRAY(i2077)), i2078, i2079, matching1, i2239, java.lang.Object(ARRAY(i2077)), matching2, i2239, java.lang.Object(ARRAY(i2077))) → f7938_0_aux_Return(EOS, java.lang.Object(ARRAY(i2230)), java.lang.Object(ARRAY(i2230)), i2078, i2079, 0, i2239, java.lang.Object(ARRAY(i2230))) | &&(=(matching1, 0), =(matching2, 0))
Combined rules. Obtained 3 IRules
P rules:
f7528_0_sort_Load(EOS, java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x0)), x1, x2, x2) → f7663_0_aux_Load(EOS, 0, -(x1, x2), java.lang.Object(ARRAY(x0)), 0, -(x1, x2), java.lang.Object(ARRAY(x0))) | &&(&&(>(x2, 0), >(+(x1, 1), 0)), <(x2, x1))
f7528_0_sort_Load(EOS, java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x0)), x1, x2, x2) → f7528_0_sort_Load(EOS, java.lang.Object(ARRAY(x3)), java.lang.Object(ARRAY(x3)), x1, +(x2, 1), +(x2, 1)) | &&(&&(>(x2, 0), >(+(x1, 1), 0)), <(x2, x1))
f7528_0_sort_Load(EOS, java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x0)), x1, x2, x2) → f7528_0_sort_Load(EOS, java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x0)), x1, +(x2, 1), +(x2, 1)) | &&(&&(>(x2, 0), >(+(x1, 1), 0)), <(x2, x1))
Filtered ground terms:
f7528_0_sort_Load(x1, x2, x3, x4, x5, x6) → f7528_0_sort_Load(x2, x3, x4, x5, x6)
Cond_f7528_0_sort_Load(x1, x2, x3, x4, x5, x6, x7) → Cond_f7528_0_sort_Load(x1, x3, x4, x5, x6, x7)
f7663_0_aux_Load(x1, x2, x3, x4, x5, x6, x7) → f7663_0_aux_Load(x3, x4, x6, x7)
Cond_f7528_0_sort_Load1(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f7528_0_sort_Load1(x1, x3, x4, x5, x6, x7, x8)
Cond_f7528_0_sort_Load2(x1, x2, x3, x4, x5, x6, x7) → Cond_f7528_0_sort_Load2(x1, x3, x4, x5, x6, x7)
Filtered duplicate terms:
f7528_0_sort_Load(x1, x2, x3, x4, x5) → f7528_0_sort_Load(x2, x3, x5)
Cond_f7528_0_sort_Load(x1, x2, x3, x4, x5, x6) → Cond_f7528_0_sort_Load(x1, x3, x4, x6)
f7663_0_aux_Load(x1, x2, x3, x4) → f7663_0_aux_Load(x3, x4)
Cond_f7528_0_sort_Load1(x1, x2, x3, x4, x5, x6, x7) → Cond_f7528_0_sort_Load1(x1, x3, x4, x6, x7)
Cond_f7528_0_sort_Load2(x1, x2, x3, x4, x5, x6) → Cond_f7528_0_sort_Load2(x1, x3, x4, x6)
Filtered unneeded terms:
Cond_f7528_0_sort_Load(x1, x2, x3, x4) → Cond_f7528_0_sort_Load(x1)
Cond_f7528_0_sort_Load1(x1, x2, x3, x4, x5) → Cond_f7528_0_sort_Load1(x1, x3, x4)
Cond_f7528_0_sort_Load2(x1, x2, x3, x4) → Cond_f7528_0_sort_Load2(x1, x3, x4)
f7528_0_sort_Load(x1, x2, x3) → f7528_0_sort_Load(x2, x3)
Prepared 2 rules for path length conversion:
P rules:
f7528_0_sort_Load(x1, x2) → f7663_0_aux_Load(-(x1, x2), java.lang.Object(ARRAY(x0))) | &&(&&(>(x2, 0), >(+(x1, 1), 0)), <(x2, x1))
f7528_0_sort_Load(x1, x2) → f7528_0_sort_Load(x1, +(x2, 1)) | &&(&&(>(x2, 0), >(+(x1, 1), 0)), <(x2, x1))
Finished conversion. Obtained 1 rules.
P rules:
f7528_0_sort_Load(x3, x4) → f7528_0_sort_Load(x3, +(x4, 1)) | &&(&&(>(x4, 0), >(x3, -1)), <(x4, x3))
Found the following polynomial interpretation:
Therefore the following rule(s) have been dropped:
Generated rules. Obtained 44 IRules
P rules:
f4447_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, i1161) → f4460_0_main_ArrayLength(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, i1161, java.lang.Object(ARRAY(i79)))
f4460_0_main_ArrayLength(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, i1161, java.lang.Object(ARRAY(i79))) → f4477_0_main_GE(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, i1161, i79) | >=(i79, 0)
f4477_0_main_GE(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, i1161, i79) → f4487_0_main_GE(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, i1161, i79)
f4487_0_main_GE(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, i1161, i79) → f4511_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161) | <(i1161, i79)
f4511_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161) → f4524_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)))
f4524_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79))) → f4537_0_main_InvokeMethod(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161)
f4537_0_main_InvokeMethod(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f4543_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161)
f4543_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f4604_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160)
f4604_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160) → f4631_0_random_ArrayLength(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, java.lang.Object(ARRAY(i333)))
f4631_0_random_ArrayLength(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, java.lang.Object(ARRAY(i333))) → f4652_0_random_LT(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, i333) | >=(i333, 0)
f4652_0_random_LT(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, i333) → f4660_0_random_LT(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, i333)
f4652_0_random_LT(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, i333) → f4662_0_random_LT(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, i333)
f4660_0_random_LT(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, i333) → f4673_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) | <(i1160, i333)
f4673_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f4698_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i333)))
f4698_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i333))) → f4714_0_random_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i333)), i1160)
f4714_0_random_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i333)), i1160) → f4741_0_random_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i333)), i1160)
f4741_0_random_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i333)), i1160) → f4759_0_random_Store(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227)
f4759_0_random_Store(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227) → f4780_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227)
f4780_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227) → f4799_0_random_ConstantStackPush(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227, i1160)
f4799_0_random_ConstantStackPush(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227, i1160) → f4855_0_random_IntArithmetic(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227, i1160, 1)
f4855_0_random_IntArithmetic(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227, i1160, matching1) → f4996_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227, +(i1160, 1)) | &&(>(i1160, 0), =(matching1, 1))
f4996_0_random_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227, i1328) → f5013_0_random_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227)
f5013_0_random_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227) → f5045_0_random_InvokeMethod(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, o1227)
f5045_0_random_InvokeMethod(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(o1269sub)) → f5071_0_random_InvokeMethod(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(o1269sub))
f5071_0_random_InvokeMethod(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(o1269sub)) → f5088_0_length_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(o1269sub), java.lang.Object(o1269sub))
f5088_0_length_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(o1269sub), java.lang.Object(o1269sub)) → f5144_0_length_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(o1269sub), java.lang.Object(o1269sub))
f5144_0_length_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(java.lang.String(o1289sub, i1371)), java.lang.Object(java.lang.String(o1289sub, i1371))) → f5159_0_length_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(java.lang.String(o1289sub, i1371)), java.lang.Object(java.lang.String(o1289sub, i1371)))
f5159_0_length_FieldAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(java.lang.String(o1289sub, i1371)), java.lang.Object(java.lang.String(o1289sub, i1371))) → f5214_0_length_Return(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(java.lang.String(o1289sub, i1371)))
f5214_0_length_Return(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(java.lang.String(o1289sub, i1371))) → f5249_0_random_Return(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161)
f5249_0_random_Return(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f5270_0_main_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161)
f5270_0_main_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f5296_0_main_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161)
f5296_0_main_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f5347_0_main_Inc(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161) | <(i1161, i79)
f5347_0_main_Inc(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161) → f5362_0_main_JMP(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), +(i1161, 1)) | >=(i1161, 0)
f5362_0_main_JMP(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1439) → f5406_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1439)
f5406_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1439) → f4412_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1439)
f4412_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161) → f4447_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, i1161)
f4662_0_random_LT(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161, i1160, i333) → f4680_0_random_ConstantStackPush(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) | >=(i1160, i333)
f4680_0_random_ConstantStackPush(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f4705_0_random_Return(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161)
f4705_0_random_Return(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f4737_0_main_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161)
f4737_0_main_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f4751_0_main_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161)
f4751_0_main_ArrayAccess(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161, java.lang.Object(ARRAY(i79)), i1161) → f4770_0_main_Inc(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161) | <(i1161, i79)
f4770_0_main_Inc(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1161) → f4791_0_main_JMP(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), +(i1161, 1)) | >=(i1161, 0)
f4791_0_main_JMP(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1286) → f4845_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1286)
f4845_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1286) → f4412_0_main_Load(EOS, java.lang.Object(ARRAY(i333)), java.lang.Object(ARRAY(i79)), i1286)
Combined rules. Obtained 1 IRules
P rules:
f4447_0_main_Load(EOS, java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x1)), x2, x2) → f4447_0_main_Load(EOS, java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x1)), +(x2, 1), +(x2, 1)) | &&(&&(&&(>(+(x2, 1), 0), <(x2, x1)), >(+(x0, 1), 0)), >(+(x1, 1), 0))
Filtered ground terms:
f4447_0_main_Load(x1, x2, x3, x4, x5) → f4447_0_main_Load(x2, x3, x4, x5)
Cond_f4447_0_main_Load(x1, x2, x3, x4, x5, x6) → Cond_f4447_0_main_Load(x1, x3, x4, x5, x6)
Filtered duplicate terms:
f4447_0_main_Load(x1, x2, x3, x4) → f4447_0_main_Load(x1, x2, x4)
Cond_f4447_0_main_Load(x1, x2, x3, x4, x5) → Cond_f4447_0_main_Load(x1, x2, x3, x5)
Prepared 1 rules for path length conversion:
P rules:
f4447_0_main_Load(java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x1)), x2, x0, x1) → f4447_0_main_Load(java.lang.Object(ARRAY(x0)), java.lang.Object(ARRAY(x1)), +(x2, 1), x0, x1) | &&(&&(&&(>(+(x2, 1), 0), <(x2, x1)), >(+(x0, 1), 0)), >(+(x1, 1), 0))
Finished conversion. Obtained 1 rules.
P rules:
f4447_0_main_Load(v8, v9, x2, x0, x1) → f4447_0_main_Load(v10, v11, +(x2, 1), x0, x1) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x2, -1), <(x2, x1)), >(x1, -1)), >(x0, -1)), >=(v9, v11)), >=(v9, v10)), >(+(v9, 1), 1)), >=(v8, v11)), >=(v8, v10)), >(+(v8, 1), 1)), >(+(v10, 1), 1)), >(+(v11, 1), 1))
Found the following polynomial interpretation:
Therefore the following rule(s) have been dropped: