(0) Obligation:

JBC Problem based on JBC Program:
import java.util.*;
class PartitionList {
private final Partition first;
private final PartitionList next;

PartitionList(Partition p, PartitionList pl) {
first = p;
next = pl;
}

public static PartitionList insert(int n,PartitionList l) {
if (l == null) //fin de la récusion
return null;
else
return new PartitionList(new Partition(n,l.first), insert(n,l.next));
}

public static PartitionList union(PartitionList p1, PartitionList p2){
if (p1 == null) return p2;
else {
PartitionList res=union(p1.next,new PartitionList(p1.first,p2));
return res;
}
}

public static PartitionList generation(int n, IntList parts) {
if (parts == null) return null;

PartitionList p1=null;
int x=parts.getFirst();
if (n -x > 0 && n-x < n) {
p1=generation(n-x,parts);
p1=insert(x,p1);
}
else if (n -x == 0) {
p1=new PartitionList(new Partition(x,null),null);
}
PartitionList p2=generation(n,parts.getNext());
return union(p1,p2);
}

public static PartitionList partitionOf(int n) {
IntList parts = new IntList (1,null);
for(int i=2;i<=n;i++) {
parts = new IntList(i,parts);
}
return generation(n,parts);
}

public PartitionList sublistAutoDual(){
//pour chaque element de la liste. calculer la dual et voir si elle est egale.
//on en tient pas compte de l'ordre
Partition dual = first.dual();
PartitionList result_next = null;
if (next != null) result_next = next.sublistAutoDual();
if (first.isEqual(dual) == true) {
return new PartitionList(dual,result_next);
}
else return result_next;
}

public PartitionList sublistOddDistinctParts(){
//pour chaque element de la liste. calculer la dual et voir si elle est egale.
//on en tient pas compte de l'ordre
boolean first_distinctparts = first.oddDistinctParts();
if (first_distinctparts) {
PartitionList result_next = null;
if (next != null) result_next = next.sublistOddDistinctParts();
return new PartitionList(first,result_next);
}
else {
PartitionList result_next = null;
if (next != null) result_next = next.sublistOddDistinctParts();
return result_next;
}
}


public static PartitionList rendreLaMonnaie(int n) {
IntList parts = new IntList (1,null);
parts = new IntList(2,parts);
parts = new IntList(5,parts);
parts = new IntList(10,parts);
return generation(n,parts);
}

/*
public String toString() {
String s;
s="\n"+ first.toString();
if (next!=null) s+=next.toString();
return s;
}
*/

public static void main(String[] args){
// //p1 est constituté la partition (1)
// PartitionList p1 = new PartitionList(new Partition(1,null),null);
//
// //p2 est constitué de la partition (1) et de la partition (2)
// PartitionList p2 = new PartitionList(new Partition(1,null),new PartitionList(new Partition(2,null),null));
//
// //p3 est constitué des partitions (3) et (4)
// PartitionList p3 = new PartitionList(new Partition(3,null),new PartitionList(new Partition(4,null),null));
//
// //pl_null est la liste vide
// PartitionList pl_null = null;
//
// System.out.println("L'union de la liste de partitions contenant la partition (1) et de la liste de partitions null donne" + union(p1,pl_null));
// System.out.println("L'union de la liste de partitions null et de la liste de partitions contenant la partition (1) donne" + union(pl_null,p1));
// System.out.println("L'union de la liste de partitions contenant les partitions (1) et (2) et de la liste de partitions contenant la partition (3,4) donne" + union(p2,p3));

// //p3 est constitué des partition (3) et (4)
// PartitionList p3 = new PartitionList(new Partition(3,null),new PartitionList(new Partition(4,null),null));
//
// //pl_null est la liste vide
// PartitionList pl_null = null;
//
// System.out.println("L'insertion de 7 dans chacune des partitions de la liste \n\n"+ pl_null + "\n");
// System.out.println("donne \n\n"+ insert(7,pl_null)+"\n");
// System.out.println("L'insertion de 7 dans chacune des partitions de la liste \n"+ p3);
// System.out.println("donne \n"+ insert(7,p3));
//
// int n=Integer.parseInt(args[0]);
// System.out.println("Les partitions de "+ n + " sont ");
// System.out.println(PartitionList.partitionOf(n));
// System.out.println("Rend la monnaie de " + n);
// System.out.println(rendreLaMonnaie(n));
//
// int n=Integer.parseInt(args[0]);
// PartitionList pl_partitions = PartitionList.partitionOf(n);
// System.out.println("Les partitions de "+ n + " sont ");
// System.out.println(pl_partitions);
// System.out.println("La liste des partitions en parties impaires distinctes est " + pl_partitions.sublistOddDistinctParts());

// int n=Integer.parseInt(args[0]);
// PartitionList pl = PartitionList.partitionOf(n);
// while(pl!=null){
// System.out.println("La partition duale de \n" + pl.first);
// System.out.println("est la partition\n" + (pl.first).dual());
// pl = pl.next;
// }
//
int n=args.length;
PartitionList pl_partitions = PartitionList.partitionOf(n);
//System.out.println("Les partitions de "+ n + " sont ");
//System.out.println(pl_partitions);
//System.out.println("La liste des partitions auto-duales est " +
pl_partitions.sublistAutoDual();
//System.out.println("La liste des partitions en parties impaires distinctes est " +
pl_partitions.sublistOddDistinctParts();
}
}

class Partition {
private final int first;
private final Partition next;
Partition(int f, Partition n) {
first=f;
next=n;
}

int number_greater(int n){
int sum=0;
if (first>= n) sum++;
if (next != null) sum+=next.number_greater(n);
return sum;
}

Partition dual() {
Partition result=null;
for(int i=first;i>0;i--) {
result= new Partition(number_greater(i),result);
}
return result;
}

boolean oddDistinctParts(){
if (first%2 == 0) return false;
if (next == null) return true;
else return (first!=next.first) && (next.oddDistinctParts());
}

boolean isEqual(Partition p) {
if (p == null) return false;
if (next == null) return p.first == first && p.next == null;
return first == p.first && next.isEqual(p.next);
}

/*
public String toString(){
String s=first+ " ";
for(int i=first;i>0;i--) {
s+="o";
}
s+="\n";
if (next != null) s+=next.toString();
return s;
}
*/

/*
public static void main(String[] args) {
Partition p = new Partition(9,new Partition(8,new Partition(4,new Partition(1,null))));
//System.out.println("Affichage de la partition (9,8,4,1)\n" + p);
}
*/
}

class IntList {
private final int first;
private final IntList next;
IntList(int f,IntList n){
first=f;
next=n;
}
int getFirst(){
return first;
}
IntList getNext(){
return next;
}

/*
public String toString(){
String s=first+" ";
if (next!= null) s+=next.toString();
return s;
}
*/
}


(1) JBCToGraph (SOUND transformation)

Constructed TerminationGraph.

(2) Obligation:

Termination Graph based on JBC Program:
PartitionList.main([Ljava/lang/String;)V: Graph of 161 nodes with 1 SCC.

PartitionList.generation(ILIntList;)LPartitionList;: Graph of 183 nodes with 0 SCCs.

PartitionList.union(LPartitionList;LPartitionList;)LPartitionList;: Graph of 47 nodes with 0 SCCs.

PartitionList.insert(ILPartitionList;)LPartitionList;: Graph of 59 nodes with 0 SCCs.

PartitionList.sublistAutoDual()LPartitionList;: Graph of 297 nodes with 1 SCC.

Partition.number_greater(I)I: Graph of 154 nodes with 0 SCCs.

Partition.isEqual(LPartition;)Z: Graph of 195 nodes with 0 SCCs.

PartitionList.sublistOddDistinctParts()LPartitionList;: Graph of 196 nodes with 0 SCCs.

Partition.oddDistinctParts()Z: Graph of 121 nodes with 0 SCCs.


(3) TerminationGraphToSCCProof (SOUND transformation)

Splitted TerminationGraph to 9 SCCss.

(4) Complex Obligation (AND)

(5) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: Partition.oddDistinctParts()Z
SCC calls the following helper methods: Partition.oddDistinctParts()Z
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
    • Partition: [first, next]
  • Marker field analysis yielded the following relations that could be markers:
    • Partition.first != i3023 (Introduced counter i6601)

(6) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 44 IRules

P rules:
f15115_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), java.lang.Object(Partition(EOC, i3023, o11928)), i6601) → f15121_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), java.lang.Object(Partition(EOC, i3023, o11928)), i6601)
f15121_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), java.lang.Object(Partition(EOC, i3023, o11928)), i6601) → f15129_0_oddDistinctParts_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i3023, i6601)
f15129_0_oddDistinctParts_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i3023, i6601) → f15139_0_oddDistinctParts_IntArithmetic(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i3023, 2, i6601)
f15139_0_oddDistinctParts_IntArithmetic(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i3023, matching1, i6601) → f15143_0_oddDistinctParts_NE(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), %(i3023, 2), i6601) | =(matching1, 2)
f15143_0_oddDistinctParts_NE(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i3050, i6601) → f15149_0_oddDistinctParts_NE(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i3050, i6601)
f15149_0_oddDistinctParts_NE(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i3050, i6601) → f15159_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i6601) | !(=(i3050, 0))
f15159_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), i6601) → f15176_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), java.lang.Object(Partition(EOC, i3023, o11928)), i6601)
f15176_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), java.lang.Object(Partition(EOC, i3023, o11928)), i6601) → f15197_0_oddDistinctParts_NONNULL(EOS, java.lang.Object(Partition(EOC, i3023, o11928)), o11889, o11890, java.lang.Object(Partition(EOC, i3023, o11928)), o11928, i6601)
f15197_0_oddDistinctParts_NONNULL(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), java.lang.Object(o12117sub), i6601) → f15215_0_oddDistinctParts_NONNULL(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), java.lang.Object(o12117sub), i6601)
f15215_0_oddDistinctParts_NONNULL(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), java.lang.Object(o12117sub), i6601) → f15242_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i6601)
f15242_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i6601) → f15268_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i6601)
f15268_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i6601) → f15288_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i3023, i6601)
f15288_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i3023, i6601) → f15309_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i3023, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i6601)
f15309_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i3023, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i6601) → f15341_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i3023, java.lang.Object(o12117sub), i6601)
f15341_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i3023, java.lang.Object(o12117sub), i6601) → f15360_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12117sub))), i3023, java.lang.Object(o12117sub), i6601)
f15341_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12397sub))), o11889, java.lang.Object(o12397sub), java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12397sub))), i3023, java.lang.Object(o12397sub), i6601) → f15361_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12397sub))), o11889, java.lang.Object(o12397sub), java.lang.Object(Partition(EOC, i3023, java.lang.Object(o12397sub))), i3023, java.lang.Object(o12397sub), i6601)
f15360_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i3023, java.lang.Object(Partition(EOC, i3203, o12431)), i6601) → f15377_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i3023, java.lang.Object(Partition(EOC, i3203, o12431)), i6601)
f15377_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i3023, java.lang.Object(Partition(EOC, i3203, o12431)), i6601) → f15393_0_oddDistinctParts_EQ(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i3023, i3203, i6601)
f15393_0_oddDistinctParts_EQ(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i3023, i3203, i6601) → f15424_0_oddDistinctParts_EQ(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i3023, i3203, i6601)
f15424_0_oddDistinctParts_EQ(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i3023, i3203, i6601) → f15468_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i6601) | !(=(i3023, i3203))
f15468_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i6601) → f15517_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i6601)
f15517_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), i6601) → f15596_0_oddDistinctParts_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3203, o12431)), i6601)
f15596_0_oddDistinctParts_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3203, o12431)), i6601) → f15622_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12431)), o11889, o11890, o12431, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), java.lang.Object(Partition(EOC, i3203, o12431)), i6601)
f15596_0_oddDistinctParts_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3203, o12431)), i6601) → f15622_1_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), o11889, o11890, java.lang.Object(Partition(EOC, i3203, o12431)), java.lang.Object(Partition(EOC, i3203, o12431)), i6601)
f15622_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12431)), o11889, o11890, o12431, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), java.lang.Object(Partition(EOC, i3203, o12431)), i6601) → f15649_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12431)), o11889, o11890, o12431, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), java.lang.Object(Partition(EOC, i3203, o12431)), i6601)
f15649_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12431)), o11889, o11890, o12431, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), java.lang.Object(Partition(EOC, i3203, o12431)), i6601) → f15675_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12431)), o11889, o11890, o12431, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3203, o12431)))), java.lang.Object(Partition(EOC, i3203, o12431)), i6601)
f15675_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12930)), o12931, o12932, o12930, o12934, java.lang.Object(Partition(EOC, i3203, o12930)), i6601) → f15696_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12930)), o12931, o12932, o12934, java.lang.Object(Partition(EOC, i3203, o12930)), i6601)
f15696_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12931)), o12931, o12932, o12934, java.lang.Object(Partition(EOC, i3203, o12931)), i6601) → f15719_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12931)), o12931, o12932, java.lang.Object(Partition(EOC, i3203, o12931)), i6601)
f15719_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12931)), o12931, o12932, java.lang.Object(Partition(EOC, i3203, o12931)), i6601) → f15105_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3203, o12931)), o12931, o12932, java.lang.Object(Partition(EOC, i3203, o12931)), i6601)
f15105_0_oddDistinctParts_Load(EOS, java.lang.Object(o11888sub), o11889, o11890, java.lang.Object(o11888sub), i6601) → f15115_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(o11888sub), o11889, o11890, java.lang.Object(o11888sub), java.lang.Object(o11888sub), i6601)
f15361_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i3023, java.lang.Object(Partition(EOC, i3213, o12449)), i6601) → f15387_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i3023, java.lang.Object(Partition(EOC, i3213, o12449)), i6601)
f15387_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i3023, java.lang.Object(Partition(EOC, i3213, o12449)), i6601) → f15415_0_oddDistinctParts_EQ(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i3023, i3213, i6601)
f15415_0_oddDistinctParts_EQ(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i3023, i3213, i6601) → f15436_0_oddDistinctParts_EQ(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i3023, i3213, i6601)
f15436_0_oddDistinctParts_EQ(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i3023, i3213, i6601) → f15499_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i6601) | !(=(i3023, i3213))
f15499_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i6601) → f15568_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i6601)
f15568_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), i6601) → f15609_0_oddDistinctParts_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3213, o12449)), i6601)
f15609_0_oddDistinctParts_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3213, o12449)), i6601) → f15636_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12449)), o11889, o12449, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), java.lang.Object(Partition(EOC, i3213, o12449)), i6601)
f15609_0_oddDistinctParts_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3213, o12449)), i6601) → f15636_1_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), o11889, java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3213, o12449)), java.lang.Object(Partition(EOC, i3213, o12449)), i6601)
f15636_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12449)), o11889, o12449, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), java.lang.Object(Partition(EOC, i3213, o12449)), i6601) → f15659_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12449)), o11889, o12449, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), java.lang.Object(Partition(EOC, i3213, o12449)), i6601)
f15659_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12449)), o11889, o12449, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), java.lang.Object(Partition(EOC, i3213, o12449)), i6601) → f15685_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12449)), o11889, o12449, java.lang.Object(Partition(EOC, i3023, java.lang.Object(Partition(EOC, i3213, o12449)))), java.lang.Object(Partition(EOC, i3213, o12449)), i6601)
f15685_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12949)), o12950, o12949, o12952, java.lang.Object(Partition(EOC, i3213, o12949)), i6601) → f15708_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12949)), o12950, o12952, java.lang.Object(Partition(EOC, i3213, o12949)), i6601)
f15708_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12950)), o12950, o12952, java.lang.Object(Partition(EOC, i3213, o12950)), i6601) → f15725_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12950)), o12950, java.lang.Object(Partition(EOC, i3213, o12950)), i6601)
f15725_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12950)), o12950, java.lang.Object(Partition(EOC, i3213, o12950)), i6601) → f15794_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12950)), o12950, o11890, java.lang.Object(Partition(EOC, i3213, o12950)), i6601)
f15794_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12950)), o12950, o11890, java.lang.Object(Partition(EOC, i3213, o12950)), i6601) → f15105_0_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, i3213, o12950)), o12950, o11890, java.lang.Object(Partition(EOC, i3213, o12950)), i6601)

Combined rules. Obtained 4 IRules

P rules:
f15115_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x3, x4, java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x5) → f15622_1_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x3, x4, java.lang.Object(Partition(EOC, x1, x2)), java.lang.Object(Partition(EOC, x1, x2)), x5) | &&(!(=(x0, x1)), !(=(%(x0, 2), 0)))
f15115_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x2, x3, java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x4) → f15115_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, x1, x2)), x2, x3, java.lang.Object(Partition(EOC, x1, x2)), java.lang.Object(Partition(EOC, x1, x2)), x4) | &&(!(=(x0, x1)), !(=(%(x0, 2), 0)))
f15115_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x3, java.lang.Object(Partition(EOC, x1, x2)), java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x4) → f15636_1_oddDistinctParts_Load(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x3, java.lang.Object(Partition(EOC, x1, x2)), java.lang.Object(Partition(EOC, x1, x2)), java.lang.Object(Partition(EOC, x1, x2)), x4) | &&(!(=(x0, x1)), !(=(%(x0, 2), 0)))
f15115_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x2, java.lang.Object(Partition(EOC, x1, x2)), java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), java.lang.Object(Partition(EOC, x0, java.lang.Object(Partition(EOC, x1, x2)))), x3) → f15115_0_oddDistinctParts_FieldAccess(EOS, java.lang.Object(Partition(EOC, x1, x2)), x2, x4, java.lang.Object(Partition(EOC, x1, x2)), java.lang.Object(Partition(EOC, x1, x2)), x3) | &&(!(=(x0, x1)), !(=(%(x0, 2), 0)))

Filtered ground terms:


f15115_0_oddDistinctParts_FieldAccess(x1, x2, x3, x4, x5, x6, x7) → f15115_0_oddDistinctParts_FieldAccess(x2, x3, x4, x5, x6, x7)
Cond_f15115_0_oddDistinctParts_FieldAccess(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f15115_0_oddDistinctParts_FieldAccess(x1, x3, x4, x5, x6, x7, x8)
f15622_1_oddDistinctParts_Load(x1, x2, x3, x4, x5, x6, x7) → f15622_1_oddDistinctParts_Load(x2, x3, x4, x5, x6, x7)
Cond_f15115_0_oddDistinctParts_FieldAccess1(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f15115_0_oddDistinctParts_FieldAccess1(x1, x3, x4, x5, x6, x7, x8)
Cond_f15115_0_oddDistinctParts_FieldAccess2(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f15115_0_oddDistinctParts_FieldAccess2(x1, x3, x4, x5, x6, x7, x8)
f15636_1_oddDistinctParts_Load(x1, x2, x3, x4, x5, x6, x7) → f15636_1_oddDistinctParts_Load(x2, x3, x4, x5, x6, x7)
Cond_f15115_0_oddDistinctParts_FieldAccess3(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_f15115_0_oddDistinctParts_FieldAccess3(x1, x3, x4, x5, x6, x7, x8, x9)
Partition(x1, x2, x3) → Partition(x2, x3)

Filtered duplicate terms:


f15115_0_oddDistinctParts_FieldAccess(x1, x2, x3, x4, x5, x6) → f15115_0_oddDistinctParts_FieldAccess(x2, x3, x5, x6)
Cond_f15115_0_oddDistinctParts_FieldAccess(x1, x2, x3, x4, x5, x6, x7) → Cond_f15115_0_oddDistinctParts_FieldAccess(x1, x3, x4, x6, x7)
f15622_1_oddDistinctParts_Load(x1, x2, x3, x4, x5, x6) → f15622_1_oddDistinctParts_Load(x1, x2, x3, x6)
Cond_f15115_0_oddDistinctParts_FieldAccess1(x1, x2, x3, x4, x5, x6, x7) → Cond_f15115_0_oddDistinctParts_FieldAccess1(x1, x4, x6, x7)
Cond_f15115_0_oddDistinctParts_FieldAccess2(x1, x2, x3, x4, x5, x6, x7) → Cond_f15115_0_oddDistinctParts_FieldAccess2(x1, x3, x6, x7)
f15636_1_oddDistinctParts_Load(x1, x2, x3, x4, x5, x6) → f15636_1_oddDistinctParts_Load(x1, x2, x6)
Cond_f15115_0_oddDistinctParts_FieldAccess3(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f15115_0_oddDistinctParts_FieldAccess3(x1, x6, x7, x8)

Filtered unneeded terms:


f15115_0_oddDistinctParts_FieldAccess(x1, x2, x3, x4) → f15115_0_oddDistinctParts_FieldAccess(x1, x2, x3)
Cond_f15115_0_oddDistinctParts_FieldAccess(x1, x2, x3, x4, x5) → Cond_f15115_0_oddDistinctParts_FieldAccess(x1)
Cond_f15115_0_oddDistinctParts_FieldAccess1(x1, x2, x3, x4) → Cond_f15115_0_oddDistinctParts_FieldAccess1(x1, x2, x3)
Cond_f15115_0_oddDistinctParts_FieldAccess2(x1, x2, x3, x4) → Cond_f15115_0_oddDistinctParts_FieldAccess2(x1)
Cond_f15115_0_oddDistinctParts_FieldAccess3(x1, x2, x3, x4) → Cond_f15115_0_oddDistinctParts_FieldAccess3(x1, x2, x4)

Prepared 4 rules for path length conversion:

P rules:
f15115_0_oddDistinctParts_FieldAccess(x3, x4, java.lang.Object(Partition(x0, java.lang.Object(Partition(x1, x2)))), x0) → f15622_1_oddDistinctParts_Load(java.lang.Object(Partition(x0, java.lang.Object(Partition(x1, x2)))), x3, x4, x5) | &&(!(=(x0, x1)), !(=(%(x0, 2), 0)))
f15115_0_oddDistinctParts_FieldAccess(x2, x3, java.lang.Object(Partition(x0, java.lang.Object(Partition(x1, x2)))), x0) → f15115_0_oddDistinctParts_FieldAccess(x2, x3, java.lang.Object(Partition(x1, x2)), x1) | &&(!(=(x0, x1)), !(=(%(x0, 2), 0)))
f15115_0_oddDistinctParts_FieldAccess(x3, java.lang.Object(Partition(x1, x2)), java.lang.Object(Partition(x0, java.lang.Object(Partition(x1, x2)))), x0) → f15636_1_oddDistinctParts_Load(java.lang.Object(Partition(x0, java.lang.Object(Partition(x1, x2)))), x3, x4) | &&(!(=(x0, x1)), !(=(%(x0, 2), 0)))
f15115_0_oddDistinctParts_FieldAccess(x2, java.lang.Object(Partition(x1, x2)), java.lang.Object(Partition(x0, java.lang.Object(Partition(x1, x2)))), x0) → f15115_0_oddDistinctParts_FieldAccess(x2, x4, java.lang.Object(Partition(x1, x2)), x1) | &&(!(=(x0, x1)), !(=(%(x0, 2), 0)))

Finished conversion. Obtained 12 rules.

P rules:
f15115_0_oddDistinctParts_FieldAccess(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x9, x8), <=(+(x9, 4), v24)), <(-(x8, *(2, div)), 0)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x9, x8), <=(+(x9, 4), v24)), >(-(x8, *(2, div)), 0)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x9, x8), <=(+(x9, 4), v24)), <(-(x8, *(2, div)), 0)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x9, x8), <=(+(x9, 4), v24)), >(-(x8, *(2, div)), 0)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess(x6, v25, v26, x9) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x9, x8), <=(+(x9, 4), v24)), >(-(x8, *(2, div)), 0)), <(-(x8, *(2, div)), 2)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess(x6, v25, v26, x9) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x9, x8), <=(+(x9, 4), v24)), >(-(x8, *(2, div)), 0)), <(-(x8, *(2, div)), 2)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x17, x16), <(-(x17, *(2, div)), 0)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x17, x16), >(-(x17, *(2, div)), 0)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x17, x16), <(-(x17, *(2, div)), 0)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x17, x16), >(-(x17, *(2, div)), 0)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess(x15, v29, v30, x16) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x17, x16), >(-(x17, *(2, div)), 0)), <(-(x17, *(2, div)), 2)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess(x15, v29, v30, x16) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x17, x16), >(-(x17, *(2, div)), 0)), <(-(x17, *(2, div)), 2)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))

(7) Obligation:

Rules:
f15115_0_oddDistinctParts_FieldAccess(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x9, x8), <=(+(x9, 4), v24)), <(-(x8, *(2, div)), 0)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x9, x8), <=(+(x9, 4), v24)), >(-(x8, *(2, div)), 0)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x9, x8), <=(+(x9, 4), v24)), <(-(x8, *(2, div)), 0)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x9, x8), <=(+(x9, 4), v24)), >(-(x8, *(2, div)), 0)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess(x6, v25, v26, x9) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x9, x8), <=(+(x9, 4), v24)), >(-(x8, *(2, div)), 0)), <(-(x8, *(2, div)), 2)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess'(x6, v23, v24, x8) → f15115_0_oddDistinctParts_FieldAccess(x6, v25, v26, x9) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x9, x8), <=(+(x9, 4), v24)), >(-(x8, *(2, div)), 0)), <(-(x8, *(2, div)), 2)), <=(+(x8, 2), v24)), <=(+(x6, 4), v24)), >(+(v26, 1), 1)), <=(+(v26, 2), v24)), >(+(v25, 1), 0)), <=(v25, v23)), >(+(v24, 1), 3)), >(+(v23, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x17, x16), <(-(x17, *(2, div)), 0)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x17, x16), >(-(x17, *(2, div)), 0)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x17, x16), <(-(x17, *(2, div)), 0)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x17, x16), >(-(x17, *(2, div)), 0)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess(x15, v29, v30, x16) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x17, x16), >(-(x17, *(2, div)), 0)), <(-(x17, *(2, div)), 2)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))
f15115_0_oddDistinctParts_FieldAccess'(x15, v27, v28, x17) → f15115_0_oddDistinctParts_FieldAccess(x15, v29, v30, x16) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x17, x16), >(-(x17, *(2, div)), 0)), <(-(x17, *(2, div)), 2)), <=(+(x17, 2), v28)), <=(+(x16, 4), v28)), <=(+(x16, 2), v27)), <=(+(x15, 4), v28)), <=(+(x15, 2), v27)), >(+(v30, 1), 1)), <=(v30, v27)), <=(+(v30, 2), v28)), >(+(v29, 1), 0)), >(+(v28, 1), 3)), >(+(v27, 1), 1))

(8) PolynomialOrderProcessor (EQUIVALENT transformation)

Found the following polynomial interpretation:


[f15115_0_oddDistinctParts_FieldAccess(x97, x99, x101, x103)] = 1 + x101
[f15115_0_oddDistinctParts_FieldAccess'(x106, x108, x110, x112)] = x110

Therefore the following rule(s) have been dropped:


f15115_0_oddDistinctParts_FieldAccess(x0, x1, x2, x3) → f15115_0_oddDistinctParts_FieldAccess'(x0, x1, x2, x3) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x4, x3), <=(+(x4, 4), x2)), <(-(x3, *(2, x5)), 0)), <=(+(x3, 2), x2)), <=(+(x0, 4), x2)), >(+(x6, 1), 1)), <=(+(x6, 2), x2)), >(+(x7, 1), 0)), <=(x7, x1)), >(+(x2, 1), 3)), >(+(x1, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x8, x9, x10, x11) → f15115_0_oddDistinctParts_FieldAccess'(x8, x9, x10, x11) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x12, x11), <=(+(x12, 4), x10)), >(-(x11, *(2, x13)), 0)), <=(+(x11, 2), x10)), <=(+(x8, 4), x10)), >(+(x14, 1), 1)), <=(+(x14, 2), x10)), >(+(x15, 1), 0)), <=(x15, x9)), >(+(x10, 1), 3)), >(+(x9, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x16, x17, x18, x19) → f15115_0_oddDistinctParts_FieldAccess'(x16, x17, x18, x19) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x20, x19), <=(+(x20, 4), x18)), <(-(x19, *(2, x21)), 0)), <=(+(x19, 2), x18)), <=(+(x16, 4), x18)), >(+(x22, 1), 1)), <=(+(x22, 2), x18)), >(+(x23, 1), 0)), <=(x23, x17)), >(+(x18, 1), 3)), >(+(x17, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x24, x25, x26, x27) → f15115_0_oddDistinctParts_FieldAccess'(x24, x25, x26, x27) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x28, x27), <=(+(x28, 4), x26)), >(-(x27, *(2, x29)), 0)), <=(+(x27, 2), x26)), <=(+(x24, 4), x26)), >(+(x30, 1), 1)), <=(+(x30, 2), x26)), >(+(x31, 1), 0)), <=(x31, x25)), >(+(x26, 1), 3)), >(+(x25, 1), 0))
f15115_0_oddDistinctParts_FieldAccess'(x32, x33, x34, x35) → f15115_0_oddDistinctParts_FieldAccess(x32, x36, x37, x38) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x38, x35), <=(+(x38, 4), x34)), >(-(x35, *(2, x39)), 0)), <(-(x35, *(2, x39)), 2)), <=(+(x35, 2), x34)), <=(+(x32, 4), x34)), >(+(x37, 1), 1)), <=(+(x37, 2), x34)), >(+(x36, 1), 0)), <=(x36, x33)), >(+(x34, 1), 3)), >(+(x33, 1), 0))
f15115_0_oddDistinctParts_FieldAccess'(x40, x41, x42, x43) → f15115_0_oddDistinctParts_FieldAccess(x40, x44, x45, x46) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x46, x43), <=(+(x46, 4), x42)), >(-(x43, *(2, x47)), 0)), <(-(x43, *(2, x47)), 2)), <=(+(x43, 2), x42)), <=(+(x40, 4), x42)), >(+(x45, 1), 1)), <=(+(x45, 2), x42)), >(+(x44, 1), 0)), <=(x44, x41)), >(+(x42, 1), 3)), >(+(x41, 1), 0))
f15115_0_oddDistinctParts_FieldAccess(x48, x49, x50, x51) → f15115_0_oddDistinctParts_FieldAccess'(x48, x49, x50, x51) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x51, x52), <(-(x51, *(2, x53)), 0)), <=(+(x51, 2), x50)), <=(+(x52, 4), x50)), <=(+(x52, 2), x49)), <=(+(x48, 4), x50)), <=(+(x48, 2), x49)), >(+(x54, 1), 1)), <=(x54, x49)), <=(+(x54, 2), x50)), >(+(x55, 1), 0)), >(+(x50, 1), 3)), >(+(x49, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x56, x57, x58, x59) → f15115_0_oddDistinctParts_FieldAccess'(x56, x57, x58, x59) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x59, x60), >(-(x59, *(2, x61)), 0)), <=(+(x59, 2), x58)), <=(+(x60, 4), x58)), <=(+(x60, 2), x57)), <=(+(x56, 4), x58)), <=(+(x56, 2), x57)), >(+(x62, 1), 1)), <=(x62, x57)), <=(+(x62, 2), x58)), >(+(x63, 1), 0)), >(+(x58, 1), 3)), >(+(x57, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x64, x65, x66, x67) → f15115_0_oddDistinctParts_FieldAccess'(x64, x65, x66, x67) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x67, x68), <(-(x67, *(2, x69)), 0)), <=(+(x67, 2), x66)), <=(+(x68, 4), x66)), <=(+(x68, 2), x65)), <=(+(x64, 4), x66)), <=(+(x64, 2), x65)), >(+(x70, 1), 1)), <=(x70, x65)), <=(+(x70, 2), x66)), >(+(x71, 1), 0)), >(+(x66, 1), 3)), >(+(x65, 1), 1))
f15115_0_oddDistinctParts_FieldAccess(x72, x73, x74, x75) → f15115_0_oddDistinctParts_FieldAccess'(x72, x73, x74, x75) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x75, x76), >(-(x75, *(2, x77)), 0)), <=(+(x75, 2), x74)), <=(+(x76, 4), x74)), <=(+(x76, 2), x73)), <=(+(x72, 4), x74)), <=(+(x72, 2), x73)), >(+(x78, 1), 1)), <=(x78, x73)), <=(+(x78, 2), x74)), >(+(x79, 1), 0)), >(+(x74, 1), 3)), >(+(x73, 1), 1))
f15115_0_oddDistinctParts_FieldAccess'(x80, x81, x82, x83) → f15115_0_oddDistinctParts_FieldAccess(x80, x84, x85, x86) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(<(x83, x86), >(-(x83, *(2, x87)), 0)), <(-(x83, *(2, x87)), 2)), <=(+(x83, 2), x82)), <=(+(x86, 4), x82)), <=(+(x86, 2), x81)), <=(+(x80, 4), x82)), <=(+(x80, 2), x81)), >(+(x85, 1), 1)), <=(x85, x81)), <=(+(x85, 2), x82)), >(+(x84, 1), 0)), >(+(x82, 1), 3)), >(+(x81, 1), 1))
f15115_0_oddDistinctParts_FieldAccess'(x88, x89, x90, x91) → f15115_0_oddDistinctParts_FieldAccess(x88, x92, x93, x94) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(x91, x94), >(-(x91, *(2, x95)), 0)), <(-(x91, *(2, x95)), 2)), <=(+(x91, 2), x90)), <=(+(x94, 4), x90)), <=(+(x94, 2), x89)), <=(+(x88, 4), x90)), <=(+(x88, 2), x89)), >(+(x93, 1), 1)), <=(x93, x89)), <=(+(x93, 2), x90)), >(+(x92, 1), 0)), >(+(x90, 1), 3)), >(+(x89, 1), 1))

(9) YES

(10) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: PartitionList.sublistOddDistinctParts()LPartitionList;
SCC calls the following helper methods: Partition.oddDistinctParts()Z, PartitionList.sublistOddDistinctParts()LPartitionList;
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
    • PartitionList: [first, next]
  • Marker field analysis yielded the following relations that could be markers:

(11) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 92 IRules

P rules:
f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o4625, o4626)), java.lang.Object(PartitionList(EOC, o4625, o4626)), java.lang.Object(PartitionList(EOC, o4625, o4626))) → f8839_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o4625, o4626)), java.lang.Object(PartitionList(EOC, o4625, o4626)), java.lang.Object(PartitionList(EOC, o4625, o4626)))
f8839_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o4625, o4626)), java.lang.Object(PartitionList(EOC, o4625, o4626)), java.lang.Object(PartitionList(EOC, o4625, o4626))) → f8887_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o4625, o4626)), java.lang.Object(PartitionList(EOC, o4625, o4626)), o4625)
f8887_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(o4672sub)) → f8902_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(o4672sub))
f8902_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(o4672sub)) → f8913_0_oddDistinctParts_Load(EOS, java.lang.Object(o4672sub), java.lang.Object(o4672sub))
f8902_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(o4672sub)) → f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(o4672sub), o4626)), java.lang.Object(o4672sub), java.lang.Object(o4672sub))
f8913_0_oddDistinctParts_Load(EOS, java.lang.Object(o4672sub), java.lang.Object(o4672sub)) → f8949_0_oddDistinctParts_Load(EOS, java.lang.Object(o4672sub), java.lang.Object(o4672sub))
f15246_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), matching1) → f9548_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), 0) | =(matching1, 0)
f9548_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), matching1) → f9582_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), 0) | =(matching1, 0)
f9582_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), matching1) → f9624_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), 0) | =(matching1, 0)
f9624_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), matching1) → f9663_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), 0) | =(matching1, 0)
f9663_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), matching1) → f9736_0_sublistOddDistinctParts_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626))) | =(matching1, 0)
f9736_0_sublistOddDistinctParts_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626))) → f9793_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL)
f9793_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL) → f9835_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL)
f9835_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL) → f9882_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)))
f9882_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626))) → f9920_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL, o4626)
f9920_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), NULL, java.lang.Object(o5691sub)) → f9968_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), NULL, java.lang.Object(o5691sub))
f9968_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), NULL, java.lang.Object(o5691sub)) → f10013_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))))
f10013_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub)))) → f10097_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))))
f10097_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub)))) → f10134_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(o5691sub))
f10134_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(o5691sub)) → f10201_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5691sub), java.lang.Object(o5691sub))
f10134_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(o5691sub)) → f10201_1_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(o5691sub), java.lang.Object(o5691sub))
f10201_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5691sub), java.lang.Object(o5691sub)) → f10259_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5691sub), java.lang.Object(o5691sub))
f10259_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5691sub), java.lang.Object(o5691sub)) → f8775_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5691sub), java.lang.Object(o5691sub))
f8775_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o4560sub), java.lang.Object(o4560sub)) → f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(o4560sub), java.lang.Object(o4560sub), java.lang.Object(o4560sub))
f15347_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), matching1) → f9755_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), 1) | =(matching1, 1)
f9755_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), matching1) → f9818_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), 1) | =(matching1, 1)
f9818_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), matching1) → f9853_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), 1) | =(matching1, 1)
f9853_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), matching1) → f9910_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), 1) | =(matching1, 1)
f9910_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), matching1) → f9934_0_sublistOddDistinctParts_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626))) | &&(>(1, 0), =(matching1, 1))
f9934_0_sublistOddDistinctParts_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626))) → f9986_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL)
f9986_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL) → f10073_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL)
f10073_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL) → f10121_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)))
f10121_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626))) → f10188_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), NULL, o4626)
f10188_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), NULL, java.lang.Object(o5961sub)) → f10244_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), NULL, java.lang.Object(o5961sub))
f10244_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), NULL, java.lang.Object(o5961sub)) → f10273_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))))
f10273_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub)))) → f10337_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))))
f10337_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub)))) → f10446_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(o5961sub))
f10446_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(o5961sub)) → f10534_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5961sub), java.lang.Object(o5961sub))
f10446_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(o5961sub)) → f10534_1_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5961sub))), java.lang.Object(o5961sub), java.lang.Object(o5961sub))
f10534_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5961sub), java.lang.Object(o5961sub)) → f10689_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5961sub), java.lang.Object(o5961sub))
f10689_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5961sub), java.lang.Object(o5961sub)) → f8775_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o5961sub), java.lang.Object(o5961sub))
f16374_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16375_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0) | =(matching1, 0)
f16375_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14189)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14189)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14189)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14189)), java.lang.Object(Partition(EOC)), 0) | =(matching1, 0)
f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(Partition(EOC)), i3900) → f16795_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), i3900)
f16795_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), i3900) → f16807_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), i3900)
f16807_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), i3900) → f16819_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), i3900)
f16819_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), matching1) → f16846_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), 1) | =(matching1, 1)
f16819_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), matching1) → f16847_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), 0) | =(matching1, 0)
f16846_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), matching1) → f16909_0_sublistOddDistinctParts_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939))) | &&(>(1, 0), =(matching1, 1))
f16909_0_sublistOddDistinctParts_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939))) → f16952_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL)
f16952_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL) → f16989_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL)
f16989_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL) → f17037_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)))
f17037_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939))) → f17110_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL, o14939)
f17110_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), NULL, java.lang.Object(o15758sub)) → f17146_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), NULL, java.lang.Object(o15758sub))
f17146_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), NULL, java.lang.Object(o15758sub)) → f17157_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))))
f17157_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub)))) → f17216_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))))
f17216_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub)))) → f17239_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(o15758sub))
f17239_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(o15758sub)) → f17292_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o15758sub), java.lang.Object(o15758sub))
f17239_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(o15758sub)) → f17292_1_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o15758sub))), java.lang.Object(o15758sub), java.lang.Object(o15758sub))
f17292_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o15758sub), java.lang.Object(o15758sub)) → f17327_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o15758sub), java.lang.Object(o15758sub))
f17327_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o15758sub), java.lang.Object(o15758sub)) → f8775_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(o15758sub), java.lang.Object(o15758sub))
f16847_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), matching1) → f16931_0_sublistOddDistinctParts_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939))) | =(matching1, 0)
f16931_0_sublistOddDistinctParts_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939))) → f16978_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL)
f16978_0_sublistOddDistinctParts_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL) → f17010_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL)
f17010_0_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL) → f17083_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)))
f17083_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939))) → f17128_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL, o14939)
f17128_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL, o14939) → f9920_0_sublistOddDistinctParts_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o14939)), NULL, o14939)
f16770_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1) | =(matching1, 1)
f16872_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0) | =(matching1, 0)
f17197_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1) | =(matching1, 1)
f17713_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0) | =(matching1, 0)
f17870_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0) | =(matching1, 0)
f17941_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1) | =(matching1, 1)
f18000_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1) | =(matching1, 1)
f18142_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0) | =(matching1, 0)
f18213_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0) | =(matching1, 0)
f18285_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1) | =(matching1, 1)
f18466_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), matching1) → f16771_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1) | =(matching1, 1)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f15246_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), 0)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f15347_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), 1)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f16374_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f16770_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f16872_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f17197_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f17713_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f17870_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f17941_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f18000_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f18142_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f18213_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 0)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f18285_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1)
f8913_1_oddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f18466_0_oddDistinctParts_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), o4626)), java.lang.Object(Partition(EOC)), 1)

Combined rules. Obtained 11 IRules

P rules:
f10134_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(o5691sub)) → f10201_1_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(o5691sub))), java.lang.Object(o5691sub), java.lang.Object(o5691sub))
f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(x0), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(x0), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(x0), x1))) → f8949_0_oddDistinctParts_Load(EOS, java.lang.Object(x0), java.lang.Object(x0))
f10134_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(x0)) → f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(x0), java.lang.Object(x0), java.lang.Object(x0))
f16819_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), 1) → f17292_1_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(x0), java.lang.Object(x0))
f16819_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), 1) → f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(x0), java.lang.Object(x0), java.lang.Object(x0))
f16819_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), 0) → f10134_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(x0))
f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0)))) → f10134_0_sublistOddDistinctParts_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(x0))
f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0)))) → f10534_1_sublistOddDistinctParts_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(x0), java.lang.Object(x0))
f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), java.lang.Object(x0)))) → f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(x0), java.lang.Object(x0), java.lang.Object(x0))
f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0))) → f16819_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0)), 0)
f8818_0_sublistOddDistinctParts_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0))) → f16819_0_sublistOddDistinctParts_EQ(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC)), x0)), 1)

Filtered ground terms:


f10134_0_sublistOddDistinctParts_InvokeMethod(x1, x2, x3) → f10134_0_sublistOddDistinctParts_InvokeMethod(x2, x3)
f10201_1_sublistOddDistinctParts_Load(x1, x2, x3, x4) → f10201_1_sublistOddDistinctParts_Load(x2, x3, x4)
f8818_0_sublistOddDistinctParts_FieldAccess(x1, x2, x3, x4) → f8818_0_sublistOddDistinctParts_FieldAccess(x2, x3, x4)
f8949_0_oddDistinctParts_Load(x1, x2, x3) → f8949_0_oddDistinctParts_Load(x2, x3)
f16819_0_sublistOddDistinctParts_EQ(x1, x2, x3, x4) → f16819_0_sublistOddDistinctParts_EQ(x2, x3, x4)
f17292_1_sublistOddDistinctParts_Load(x1, x2, x3, x4, x5) → f17292_1_sublistOddDistinctParts_Load(x2, x3, x4, x5)
f10534_1_sublistOddDistinctParts_Load(x1, x2, x3, x4, x5) → f10534_1_sublistOddDistinctParts_Load(x2, x3, x4, x5)
PartitionList(x1, x2, x3) → PartitionList(x2, x3)
Partition(x1) → Partition

Filtered duplicate terms:


f10134_0_sublistOddDistinctParts_InvokeMethod(x1, x2) → f10134_0_sublistOddDistinctParts_InvokeMethod(x1)
f10201_1_sublistOddDistinctParts_Load(x1, x2, x3) → f10201_1_sublistOddDistinctParts_Load(x1)
f8818_0_sublistOddDistinctParts_FieldAccess(x1, x2, x3) → f8818_0_sublistOddDistinctParts_FieldAccess(x3)
f8949_0_oddDistinctParts_Load(x1, x2) → f8949_0_oddDistinctParts_Load(x2)
f16819_0_sublistOddDistinctParts_EQ(x1, x2, x3) → f16819_0_sublistOddDistinctParts_EQ(x2, x3)
f17292_1_sublistOddDistinctParts_Load(x1, x2, x3, x4) → f17292_1_sublistOddDistinctParts_Load(x2)
f10534_1_sublistOddDistinctParts_Load(x1, x2, x3, x4) → f10534_1_sublistOddDistinctParts_Load(x2)

Prepared 11 rules for path length conversion:

P rules:
f10134_0_sublistOddDistinctParts_InvokeMethod(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(o5691sub))), o5691sub) → f10201_1_sublistOddDistinctParts_Load(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(o5691sub))))
f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(PartitionList(java.lang.Object(x0), x1))) → f8949_0_oddDistinctParts_Load(java.lang.Object(x0))
f10134_0_sublistOddDistinctParts_InvokeMethod(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0))), x0) → f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(x0))
f16819_0_sublistOddDistinctParts_EQ(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0))), 1) → f17292_1_sublistOddDistinctParts_Load(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0))))
f16819_0_sublistOddDistinctParts_EQ(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0))), 1) → f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(x0))
f16819_0_sublistOddDistinctParts_EQ(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0))), 0) → f10134_0_sublistOddDistinctParts_InvokeMethod(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0))), x0)
f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0)))) → f10134_0_sublistOddDistinctParts_InvokeMethod(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0))), x0)
f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0)))) → f10534_1_sublistOddDistinctParts_Load(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0))))
f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(PartitionList(java.lang.Object(Partition), java.lang.Object(x0)))) → f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(x0))
f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(PartitionList(java.lang.Object(Partition), x0))) → f16819_0_sublistOddDistinctParts_EQ(java.lang.Object(PartitionList(java.lang.Object(Partition), x0)), 0)
f8818_0_sublistOddDistinctParts_FieldAccess(java.lang.Object(PartitionList(java.lang.Object(Partition), x0))) → f16819_0_sublistOddDistinctParts_EQ(java.lang.Object(PartitionList(java.lang.Object(Partition), x0)), 1)

Finished conversion. Obtained 7 rules.

P rules:
f10134_0_sublistOddDistinctParts_InvokeMethod(v17, x3) → f8818_0_sublistOddDistinctParts_FieldAccess(v18) | &&(&&(&&(<=(+(x3, 3), v17), >(+(v18, 1), 1)), <=(+(v18, 2), v17)), >(+(v17, 1), 3))
f16819_0_sublistOddDistinctParts_EQ(v19, c1) → f8818_0_sublistOddDistinctParts_FieldAccess(v20) | &&(&&(&&(>(+(v20, 1), 1), <=(+(v20, 2), v19)), >(+(v19, 1), 3)), =(1, c1))
f16819_0_sublistOddDistinctParts_EQ(v21, c0) → f10134_0_sublistOddDistinctParts_InvokeMethod(v22, x6) | &&(&&(&&(&&(<=(+(x6, 3), v21), >(+(v22, 1), 3)), <=(v22, v21)), >(+(v21, 1), 3)), =(0, c0))
f8818_0_sublistOddDistinctParts_FieldAccess(v23) → f10134_0_sublistOddDistinctParts_InvokeMethod(v24, x7) | &&(&&(&&(<=(+(x7, 3), v23), >(+(v24, 1), 3)), <=(v24, v23)), >(+(v23, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(v25) → f8818_0_sublistOddDistinctParts_FieldAccess(v26) | &&(&&(>(+(v26, 1), 1), <=(+(v26, 2), v25)), >(+(v25, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(v27) → f16819_0_sublistOddDistinctParts_EQ(v28, 0) | &&(&&(>(+(v28, 1), 3), <=(v28, v27)), >(+(v27, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(v29) → f16819_0_sublistOddDistinctParts_EQ(v30, 1) | &&(&&(>(+(v30, 1), 3), <=(v30, v29)), >(+(v29, 1), 3))

(12) Obligation:

Rules:
f10134_0_sublistOddDistinctParts_InvokeMethod(v17, x3) → f8818_0_sublistOddDistinctParts_FieldAccess(v18) | &&(&&(&&(<=(+(x3, 3), v17), >(+(v18, 1), 1)), <=(+(v18, 2), v17)), >(+(v17, 1), 3))
f16819_0_sublistOddDistinctParts_EQ(v19, c1) → f8818_0_sublistOddDistinctParts_FieldAccess(v20) | &&(&&(&&(>(+(v20, 1), 1), <=(+(v20, 2), v19)), >(+(v19, 1), 3)), =(1, c1))
f16819_0_sublistOddDistinctParts_EQ(v21, c0) → f10134_0_sublistOddDistinctParts_InvokeMethod(v22, x6) | &&(&&(&&(&&(<=(+(x6, 3), v21), >(+(v22, 1), 3)), <=(v22, v21)), >(+(v21, 1), 3)), =(0, c0))
f8818_0_sublistOddDistinctParts_FieldAccess(v23) → f10134_0_sublistOddDistinctParts_InvokeMethod(v24, x7) | &&(&&(&&(<=(+(x7, 3), v23), >(+(v24, 1), 3)), <=(v24, v23)), >(+(v23, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(v25) → f8818_0_sublistOddDistinctParts_FieldAccess(v26) | &&(&&(>(+(v26, 1), 1), <=(+(v26, 2), v25)), >(+(v25, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(v27) → f16819_0_sublistOddDistinctParts_EQ(v28, 0) | &&(&&(>(+(v28, 1), 3), <=(v28, v27)), >(+(v27, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(v29) → f16819_0_sublistOddDistinctParts_EQ(v30, 1) | &&(&&(>(+(v30, 1), 3), <=(v30, v29)), >(+(v29, 1), 3))

(13) PolynomialOrderProcessor (EQUIVALENT transformation)

Found the following polynomial interpretation:


[f10134_0_sublistOddDistinctParts_InvokeMethod(x20, x22)] = -1 + 2·x20
[f8818_0_sublistOddDistinctParts_FieldAccess(x25)] = 1 + 2·x25
[f16819_0_sublistOddDistinctParts_EQ(x28, x30)] = 2·x28

Therefore the following rule(s) have been dropped:


f10134_0_sublistOddDistinctParts_InvokeMethod(x0, x1) → f8818_0_sublistOddDistinctParts_FieldAccess(x2) | &&(&&(&&(<=(+(x1, 3), x0), >(+(x2, 1), 1)), <=(+(x2, 2), x0)), >(+(x0, 1), 3))
f16819_0_sublistOddDistinctParts_EQ(x3, x4) → f8818_0_sublistOddDistinctParts_FieldAccess(x5) | &&(&&(&&(>(+(x5, 1), 1), <=(+(x5, 2), x3)), >(+(x3, 1), 3)), =(1, x4))
f16819_0_sublistOddDistinctParts_EQ(x6, x7) → f10134_0_sublistOddDistinctParts_InvokeMethod(x8, x9) | &&(&&(&&(&&(<=(+(x9, 3), x6), >(+(x8, 1), 3)), <=(x8, x6)), >(+(x6, 1), 3)), =(0, x7))
f8818_0_sublistOddDistinctParts_FieldAccess(x10) → f10134_0_sublistOddDistinctParts_InvokeMethod(x11, x12) | &&(&&(&&(<=(+(x12, 3), x10), >(+(x11, 1), 3)), <=(x11, x10)), >(+(x10, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(x13) → f8818_0_sublistOddDistinctParts_FieldAccess(x14) | &&(&&(>(+(x14, 1), 1), <=(+(x14, 2), x13)), >(+(x13, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(x15) → f16819_0_sublistOddDistinctParts_EQ(x16, 0) | &&(&&(>(+(x16, 1), 3), <=(x16, x15)), >(+(x15, 1), 3))
f8818_0_sublistOddDistinctParts_FieldAccess(x17) → f16819_0_sublistOddDistinctParts_EQ(x18, 1) | &&(&&(>(+(x18, 1), 3), <=(x18, x17)), >(+(x17, 1), 3))

(14) YES

(15) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: Partition.isEqual(LPartition;)Z
SCC calls the following helper methods: Partition.isEqual(LPartition;)Z
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
    • Partition: [next, first]
  • Marker field analysis yielded the following relations that could be markers:

(16) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 47 IRules

P rules:
f15932_0_isEqual_NONNULL(EOS, java.lang.Object(o13137sub), java.lang.Object(o13392sub), o13140, java.lang.Object(o13137sub), java.lang.Object(o13392sub), java.lang.Object(o13392sub)) → f15940_0_isEqual_NONNULL(EOS, java.lang.Object(o13137sub), java.lang.Object(o13392sub), o13140, java.lang.Object(o13137sub), java.lang.Object(o13392sub), java.lang.Object(o13392sub))
f15940_0_isEqual_NONNULL(EOS, java.lang.Object(o13137sub), java.lang.Object(o13392sub), o13140, java.lang.Object(o13137sub), java.lang.Object(o13392sub), java.lang.Object(o13392sub)) → f15963_0_isEqual_Load(EOS, java.lang.Object(o13137sub), java.lang.Object(o13392sub), o13140, java.lang.Object(o13137sub), java.lang.Object(o13392sub))
f15963_0_isEqual_Load(EOS, java.lang.Object(o13137sub), java.lang.Object(o13392sub), o13140, java.lang.Object(o13137sub), java.lang.Object(o13392sub)) → f15981_0_isEqual_FieldAccess(EOS, java.lang.Object(o13137sub), java.lang.Object(o13392sub), o13140, java.lang.Object(o13137sub), java.lang.Object(o13392sub), java.lang.Object(o13137sub))
f15981_0_isEqual_FieldAccess(EOS, java.lang.Object(o13137sub), java.lang.Object(o13392sub), o13140, java.lang.Object(o13137sub), java.lang.Object(o13392sub), java.lang.Object(o13137sub)) → f16003_0_isEqual_FieldAccess(EOS, java.lang.Object(o13137sub), java.lang.Object(o13392sub), o13140, java.lang.Object(o13137sub), java.lang.Object(o13392sub), java.lang.Object(o13137sub))
f15981_0_isEqual_FieldAccess(EOS, java.lang.Object(o13522sub), java.lang.Object(o13392sub), java.lang.Object(o13522sub), java.lang.Object(o13522sub), java.lang.Object(o13392sub), java.lang.Object(o13522sub)) → f16004_0_isEqual_FieldAccess(EOS, java.lang.Object(o13522sub), java.lang.Object(o13392sub), java.lang.Object(o13522sub), java.lang.Object(o13522sub), java.lang.Object(o13392sub), java.lang.Object(o13522sub))
f16003_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, o13574, i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, o13574, i3534)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13574, i3534))) → f16040_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, o13574, i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, o13574, i3534)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13574, i3534)))
f16040_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, o13574, i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, o13574, i3534)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13574, i3534))) → f16121_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, o13574, i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, o13574, i3534)), java.lang.Object(o13392sub), o13574)
f16121_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), java.lang.Object(o13821sub)) → f16162_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), java.lang.Object(o13821sub))
f16162_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), java.lang.Object(o13821sub)) → f16195_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub))
f16195_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub)) → f16245_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)))
f16245_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534))) → f16296_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), i3534)
f16296_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), i3534) → f16423_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(o13392sub), i3534, java.lang.Object(o13392sub))
f16423_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(Partition(EOC, o14566, i3816)), i3534, java.lang.Object(Partition(EOC, o14566, i3816))) → f16575_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(Partition(EOC, o14566, i3816)), i3534, java.lang.Object(Partition(EOC, o14566, i3816)))
f16575_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(Partition(EOC, o14566, i3816)), i3534, java.lang.Object(Partition(EOC, o14566, i3816))) → f16664_0_isEqual_NE(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3534)), java.lang.Object(Partition(EOC, o14566, i3816)), i3534, i3816)
f16664_0_isEqual_NE(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), i3816, i3816) → f16799_0_isEqual_NE(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), i3816, i3816)
f16799_0_isEqual_NE(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), i3816, i3816) → f16915_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)))
f16915_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816))) → f17113_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, o14566, i3816)), java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)))
f17113_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, o14566, i3816)), java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816))) → f17251_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, o14566, i3816)), java.lang.Object(o13821sub))
f17251_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(Partition(EOC, o14566, i3816)), java.lang.Object(o13821sub)) → f17479_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(o13821sub), java.lang.Object(Partition(EOC, o14566, i3816)))
f17479_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(o13821sub), java.lang.Object(Partition(EOC, o14566, i3816))) → f17715_0_isEqual_InvokeMethod(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(o13821sub), o14566)
f17715_0_isEqual_InvokeMethod(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(o13821sub), o14566) → f17843_0_isEqual_Load(EOS, java.lang.Object(o13821sub), o14566, o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(o13821sub), o14566)
f17715_0_isEqual_InvokeMethod(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(o13821sub), o14566) → f17843_1_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(Partition(EOC, o14566, i3816)), o13140, java.lang.Object(o13821sub), o14566, java.lang.Object(o13821sub), o14566)
f17843_0_isEqual_Load(EOS, java.lang.Object(o13821sub), o14566, o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(o13821sub), o14566) → f17957_0_isEqual_Load(EOS, java.lang.Object(o13821sub), o14566, o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(o13821sub), o14566)
f17957_0_isEqual_Load(EOS, java.lang.Object(o13821sub), o14566, o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(o13821sub), o14566) → f18053_0_isEqual_Load(EOS, java.lang.Object(o13821sub), o14566, o13140, java.lang.Object(Partition(EOC, java.lang.Object(o13821sub), i3816)), java.lang.Object(o13821sub), o14566)
f18053_0_isEqual_Load(EOS, java.lang.Object(o17839sub), o17840, o17842, o17843, java.lang.Object(o17839sub), o17840) → f18264_0_isEqual_Load(EOS, java.lang.Object(o17839sub), o17840, o17842, java.lang.Object(o17839sub), o17840)
f18264_0_isEqual_Load(EOS, java.lang.Object(o17839sub), o17840, o17842, java.lang.Object(o17839sub), o17840) → f15826_0_isEqual_Load(EOS, java.lang.Object(o17839sub), o17840, o17842, java.lang.Object(o17839sub), o17840)
f15826_0_isEqual_Load(EOS, java.lang.Object(o13137sub), o13138, o13140, java.lang.Object(o13137sub), o13138) → f15932_0_isEqual_NONNULL(EOS, java.lang.Object(o13137sub), o13138, o13140, java.lang.Object(o13137sub), o13138, o13138)
f16004_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13601, i3542))) → f16052_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13601, i3542)))
f16052_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13601, i3542))) → f16148_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(Partition(EOC, o13601, i3542)), java.lang.Object(o13392sub), o13601)
f16148_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(o13842sub)) → f16178_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(o13842sub))
f16178_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(o13842sub)) → f16227_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub))
f16227_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub)) → f16272_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)))
f16272_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542))) → f16347_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), i3542)
f16347_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), i3542) → f16470_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(o13392sub), i3542, java.lang.Object(o13392sub))
f16470_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, o14653, i3837)), i3542, java.lang.Object(Partition(EOC, o14653, i3837))) → f16617_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, o14653, i3837)), i3542, java.lang.Object(Partition(EOC, o14653, i3837)))
f16617_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, o14653, i3837)), i3542, java.lang.Object(Partition(EOC, o14653, i3837))) → f16741_0_isEqual_NE(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3542)), java.lang.Object(Partition(EOC, o14653, i3837)), i3542, i3837)
f16741_0_isEqual_NE(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), i3837, i3837) → f16824_0_isEqual_NE(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), i3837, i3837)
f16824_0_isEqual_NE(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), i3837, i3837) → f16995_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)))
f16995_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837))) → f17186_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)))
f17186_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837))) → f17339_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(o13842sub))
f17339_0_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(o13842sub)) → f17642_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), java.lang.Object(Partition(EOC, o14653, i3837)))
f17642_0_isEqual_FieldAccess(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), java.lang.Object(Partition(EOC, o14653, i3837))) → f17776_0_isEqual_InvokeMethod(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653)
f17776_0_isEqual_InvokeMethod(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653) → f17905_0_isEqual_Load(EOS, java.lang.Object(o13842sub), o14653, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653)
f17776_0_isEqual_InvokeMethod(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653) → f17905_1_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(Partition(EOC, o14653, i3837)), java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653, java.lang.Object(o13842sub), o14653)
f17905_0_isEqual_Load(EOS, java.lang.Object(o13842sub), o14653, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653) → f18003_0_isEqual_Load(EOS, java.lang.Object(o13842sub), o14653, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653)
f18003_0_isEqual_Load(EOS, java.lang.Object(o13842sub), o14653, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653) → f18158_0_isEqual_Load(EOS, java.lang.Object(o13842sub), o14653, java.lang.Object(Partition(EOC, java.lang.Object(o13842sub), i3837)), java.lang.Object(o13842sub), o14653)
f18158_0_isEqual_Load(EOS, java.lang.Object(o18092sub), o18093, o18095, java.lang.Object(o18092sub), o18093) → f15826_0_isEqual_Load(EOS, java.lang.Object(o18092sub), o18093, o18095, java.lang.Object(o18092sub), o18093)

Combined rules. Obtained 4 IRules

P rules:
f15932_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), x3, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), java.lang.Object(Partition(EOC, x2, x1))) → f17843_1_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), x3, java.lang.Object(x0), x2, java.lang.Object(x0), x2)
f15932_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), x3, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), java.lang.Object(Partition(EOC, x2, x1))) → f15932_0_isEqual_NONNULL(EOS, java.lang.Object(x0), x2, x3, java.lang.Object(x0), x2, x2)
f15932_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), java.lang.Object(Partition(EOC, x2, x1))) → f17905_1_isEqual_Load(EOS, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(x0), x2, java.lang.Object(x0), x2)
f15932_0_isEqual_NONNULL(EOS, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(Partition(EOC, x2, x1)), java.lang.Object(Partition(EOC, x2, x1))) → f15932_0_isEqual_NONNULL(EOS, java.lang.Object(x0), x2, java.lang.Object(Partition(EOC, java.lang.Object(x0), x1)), java.lang.Object(x0), x2, x2)

Filtered ground terms:


f15932_0_isEqual_NONNULL(x1, x2, x3, x4, x5, x6, x7) → f15932_0_isEqual_NONNULL(x2, x3, x4, x5, x6, x7)
f17843_1_isEqual_Load(x1, x2, x3, x4, x5, x6, x7, x8) → f17843_1_isEqual_Load(x2, x3, x4, x5, x6, x7, x8)
f17905_1_isEqual_Load(x1, x2, x3, x4, x5, x6, x7, x8) → f17905_1_isEqual_Load(x2, x3, x4, x5, x6, x7, x8)
Partition(x1, x2, x3) → Partition(x2, x3)

Filtered duplicate terms:


f15932_0_isEqual_NONNULL(x1, x2, x3, x4, x5, x6) → f15932_0_isEqual_NONNULL(x3, x4, x6)
f17843_1_isEqual_Load(x1, x2, x3, x4, x5, x6, x7) → f17843_1_isEqual_Load(x1, x2, x3)
f17905_1_isEqual_Load(x1, x2, x3, x4, x5, x6, x7) → f17905_1_isEqual_Load(x2, x3)

Filtered unneeded terms:


Partition(x1, x2) → Partition(x1)

Prepared 4 rules for path length conversion:

P rules:
f15932_0_isEqual_NONNULL(x3, java.lang.Object(Partition(java.lang.Object(x0))), java.lang.Object(Partition(x2))) → f17843_1_isEqual_Load(java.lang.Object(Partition(java.lang.Object(x0))), java.lang.Object(Partition(x2)), x3)
f15932_0_isEqual_NONNULL(x3, java.lang.Object(Partition(java.lang.Object(x0))), java.lang.Object(Partition(x2))) → f15932_0_isEqual_NONNULL(x3, java.lang.Object(x0), x2)
f15932_0_isEqual_NONNULL(java.lang.Object(Partition(java.lang.Object(x0))), java.lang.Object(Partition(java.lang.Object(x0))), java.lang.Object(Partition(x2))) → f17905_1_isEqual_Load(java.lang.Object(Partition(x2)), java.lang.Object(Partition(java.lang.Object(x0))))
f15932_0_isEqual_NONNULL(java.lang.Object(Partition(java.lang.Object(x0))), java.lang.Object(Partition(java.lang.Object(x0))), java.lang.Object(Partition(x2))) → f15932_0_isEqual_NONNULL(java.lang.Object(Partition(java.lang.Object(x0))), java.lang.Object(x0), x2)

Finished conversion. Obtained 2 rules.

P rules:
f15932_0_isEqual_NONNULL(v13, v14, v15) → f15932_0_isEqual_NONNULL(v16, v17, v18) | &&(&&(&&(&&(&&(&&(&&(&&(>(+(v18, 1), 0), <=(+(v18, 1), v15)), >(+(v17, 1), 1)), <=(+(v17, 2), v14)), >(+(v16, 1), 0)), <=(v16, v13)), >(+(v15, 1), 1)), >(+(v14, 1), 3)), >(+(v13, 1), 0))
f15932_0_isEqual_NONNULL(v19, v20, v21) → f15932_0_isEqual_NONNULL(v22, v23, v24) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(+(v24, 1), 0), <=(+(v24, 1), v21)), >(+(v23, 1), 1)), <=(+(v23, 2), v20)), <=(+(v23, 2), v19)), >(+(v22, 1), 3)), <=(v22, v20)), <=(v22, v19)), >(+(v21, 1), 1)), >(+(v20, 1), 3)), >(+(v19, 1), 3))

(17) Obligation:

Rules:
f15932_0_isEqual_NONNULL(v13, v14, v15) → f15932_0_isEqual_NONNULL(v16, v17, v18) | &&(&&(&&(&&(&&(&&(&&(&&(>(+(v18, 1), 0), <=(+(v18, 1), v15)), >(+(v17, 1), 1)), <=(+(v17, 2), v14)), >(+(v16, 1), 0)), <=(v16, v13)), >(+(v15, 1), 1)), >(+(v14, 1), 3)), >(+(v13, 1), 0))
f15932_0_isEqual_NONNULL(v19, v20, v21) → f15932_0_isEqual_NONNULL(v22, v23, v24) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(+(v24, 1), 0), <=(+(v24, 1), v21)), >(+(v23, 1), 1)), <=(+(v23, 2), v20)), <=(+(v23, 2), v19)), >(+(v22, 1), 3)), <=(v22, v20)), <=(v22, v19)), >(+(v21, 1), 1)), >(+(v20, 1), 3)), >(+(v19, 1), 3))

(18) PolynomialOrderProcessor (EQUIVALENT transformation)

Found the following polynomial interpretation:


[f15932_0_isEqual_NONNULL(x13, x15, x17)] = x17

Therefore the following rule(s) have been dropped:


f15932_0_isEqual_NONNULL(x0, x1, x2) → f15932_0_isEqual_NONNULL(x3, x4, x5) | &&(&&(&&(&&(&&(&&(&&(&&(>(+(x5, 1), 0), <=(+(x5, 1), x2)), >(+(x4, 1), 1)), <=(+(x4, 2), x1)), >(+(x3, 1), 0)), <=(x3, x0)), >(+(x2, 1), 1)), >(+(x1, 1), 3)), >(+(x0, 1), 0))
f15932_0_isEqual_NONNULL(x6, x7, x8) → f15932_0_isEqual_NONNULL(x9, x10, x11) | &&(&&(&&(&&(&&(&&(&&(&&(&&(&&(>(+(x11, 1), 0), <=(+(x11, 1), x8)), >(+(x10, 1), 1)), <=(+(x10, 2), x7)), <=(+(x10, 2), x6)), >(+(x9, 1), 3)), <=(x9, x7)), <=(x9, x6)), >(+(x8, 1), 1)), >(+(x7, 1), 3)), >(+(x6, 1), 3))

(19) YES

(20) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: Partition.number_greater(I)I
SCC calls the following helper methods: Partition.number_greater(I)I
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
    • Partition: [first, next]
  • Marker field analysis yielded the following relations that could be markers:

(21) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 75 IRules

P rules:
f11540_0_number_greater_Store(EOS, java.lang.Object(o6879sub), i592, o6881, java.lang.Object(o6879sub), i592) → f11547_0_number_greater_Load(EOS, java.lang.Object(o6879sub), i592, o6881, java.lang.Object(o6879sub), i592)
f11547_0_number_greater_Load(EOS, java.lang.Object(o6879sub), i592, o6881, java.lang.Object(o6879sub), i592) → f11565_0_number_greater_FieldAccess(EOS, java.lang.Object(o6879sub), i592, o6881, java.lang.Object(o6879sub), i592, java.lang.Object(o6879sub))
f11565_0_number_greater_FieldAccess(EOS, java.lang.Object(o6879sub), i592, o6881, java.lang.Object(o6879sub), i592, java.lang.Object(o6879sub)) → f11591_0_number_greater_FieldAccess(EOS, java.lang.Object(o6879sub), i592, o6881, java.lang.Object(o6879sub), i592, java.lang.Object(o6879sub))
f11565_0_number_greater_FieldAccess(EOS, java.lang.Object(o7011sub), i592, java.lang.Object(o7011sub), java.lang.Object(o7011sub), i592, java.lang.Object(o7011sub)) → f11592_0_number_greater_FieldAccess(EOS, java.lang.Object(o7011sub), i592, java.lang.Object(o7011sub), java.lang.Object(o7011sub), i592, java.lang.Object(o7011sub))
f11591_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, java.lang.Object(Partition(EOC, i1678, o7013))) → f11599_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, java.lang.Object(Partition(EOC, i1678, o7013)))
f11599_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, java.lang.Object(Partition(EOC, i1678, o7013))) → f11625_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678)
f11625_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678) → f11664_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678, i592)
f11664_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678, i592) → f11722_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678, i592)
f11664_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678, i592) → f11723_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678, i592)
f11722_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678, i592) → f11760_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592) | <(i1678, i592)
f11760_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592) → f11871_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, java.lang.Object(Partition(EOC, i1678, o7013)))
f11871_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, java.lang.Object(Partition(EOC, i1678, o7013))) → f12002_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o7013)
f12002_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, java.lang.Object(o7523sub)) → f12086_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, java.lang.Object(o7523sub))
f12086_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, java.lang.Object(o7523sub)) → f12170_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592)
f12170_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592) → f12351_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592)
f12351_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592) → f12537_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, i592, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))))
f12537_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, i592, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub)))) → f12722_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, i592, java.lang.Object(o7523sub))
f12722_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, i592, java.lang.Object(o7523sub)) → f12861_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(o7523sub), i592)
f12861_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(o7523sub), i592) → f12987_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7523sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), java.lang.Object(o7523sub), i592)
f12861_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(o7523sub), i592) → f12987_1_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), i592, o6881, java.lang.Object(o7523sub), i592, java.lang.Object(o7523sub), i592)
f12987_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7523sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), java.lang.Object(o7523sub), i592) → f13050_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7523sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), java.lang.Object(o7523sub), i592)
f13050_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7523sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), java.lang.Object(o7523sub), i592) → f13150_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7523sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7523sub))), java.lang.Object(o7523sub), i592)
f13150_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8866sub), i592, o8868, o8869, java.lang.Object(o8866sub), i592) → f13199_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8866sub), i592, o8868, java.lang.Object(o8866sub), i592)
f13199_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8866sub), i592, o8868, java.lang.Object(o8866sub), i592) → f11452_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8866sub), i592, o8868, java.lang.Object(o8866sub), i592)
f11452_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o6879sub), i592, o6881, java.lang.Object(o6879sub), i592) → f11540_0_number_greater_Store(EOS, java.lang.Object(o6879sub), i592, o6881, java.lang.Object(o6879sub), i592)
f11723_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, i1678, i592) → f11780_0_number_greater_Inc(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592) | >=(i1678, i592)
f11780_0_number_greater_Inc(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592) → f11904_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592)
f11904_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592) → f12032_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, java.lang.Object(Partition(EOC, i1678, o7013)))
f12032_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, java.lang.Object(Partition(EOC, i1678, o7013))) → f12116_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o6881, java.lang.Object(Partition(EOC, i1678, o7013)), i592, o7013)
f12116_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, java.lang.Object(o7696sub)) → f12225_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, java.lang.Object(o7696sub))
f12225_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, java.lang.Object(o7696sub)) → f12399_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592)
f12399_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592) → f12576_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592)
f12576_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592) → f12770_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, i592, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))))
f12770_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, i592, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub)))) → f12880_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, i592, java.lang.Object(o7696sub))
f12880_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, i592, java.lang.Object(o7696sub)) → f13002_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(o7696sub), i592)
f13002_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(o7696sub), i592) → f13064_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7696sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), java.lang.Object(o7696sub), i592)
f13002_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(o7696sub), i592) → f13064_1_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), i592, o6881, java.lang.Object(o7696sub), i592, java.lang.Object(o7696sub), i592)
f13064_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7696sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), java.lang.Object(o7696sub), i592) → f13155_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7696sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), java.lang.Object(o7696sub), i592)
f13155_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7696sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), java.lang.Object(o7696sub), i592) → f13218_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7696sub), i592, o6881, java.lang.Object(Partition(EOC, i1678, java.lang.Object(o7696sub))), java.lang.Object(o7696sub), i592)
f13218_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8942sub), i592, o8944, o8945, java.lang.Object(o8942sub), i592) → f13348_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8942sub), i592, o8944, java.lang.Object(o8942sub), i592)
f13348_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8942sub), i592, o8944, java.lang.Object(o8942sub), i592) → f11452_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8942sub), i592, o8944, java.lang.Object(o8942sub), i592)
f11592_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023))) → f11616_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)))
f11616_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023))) → f11651_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680)
f11651_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680) → f11698_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680, i592)
f11698_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680, i592) → f11747_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680, i592)
f11698_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680, i592) → f11748_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680, i592)
f11747_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680, i592) → f11800_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592) | <(i1680, i592)
f11800_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592) → f11922_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)))
f11922_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023))) → f12050_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, o7023)
f12050_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(o7571sub)) → f12126_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(o7571sub))
f12126_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(o7571sub)) → f12266_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592)
f12266_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592) → f12453_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592)
f12453_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592) → f12603_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))))
f12603_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub)))) → f12793_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(o7571sub))
f12793_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(o7571sub)) → f12917_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592)
f12917_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592) → f13015_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7571sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592)
f12917_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592) → f13015_1_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592, java.lang.Object(o7571sub), i592)
f13015_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7571sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592) → f13084_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7571sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592)
f13084_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7571sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592) → f13160_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7571sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7571sub))), java.lang.Object(o7571sub), i592)
f13160_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8874sub), i592, o8876, java.lang.Object(o8874sub), i592) → f11452_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o8874sub), i592, o8876, java.lang.Object(o8874sub), i592)
f11748_0_number_greater_LT(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, i1680, i592) → f11834_0_number_greater_Inc(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592) | >=(i1680, i592)
f11834_0_number_greater_Inc(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592) → f11978_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592)
f11978_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592) → f12065_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)))
f12065_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023))) → f12156_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1680, o7023)), i592, java.lang.Object(Partition(EOC, i1680, o7023)), java.lang.Object(Partition(EOC, i1680, o7023)), i592, o7023)
f12156_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(o7781sub)) → f12326_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(o7781sub))
f12326_0_number_greater_NULL(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(o7781sub)) → f12499_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592)
f12499_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592) → f12674_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592)
f12674_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592) → f12824_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))))
f12824_0_number_greater_FieldAccess(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub)))) → f12945_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(o7781sub))
f12945_0_number_greater_Load(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(o7781sub)) → f13040_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592)
f13040_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592) → f13133_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7781sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592)
f13040_0_number_greater_InvokeMethod(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592) → f13133_1_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592, java.lang.Object(o7781sub), i592)
f13133_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7781sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592) → f13172_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7781sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592)
f13172_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7781sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592) → f13289_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o7781sub), i592, java.lang.Object(Partition(EOC, i1680, java.lang.Object(o7781sub))), java.lang.Object(o7781sub), i592)
f13289_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o9048sub), i592, o9050, java.lang.Object(o9048sub), i592) → f11452_0_number_greater_ConstantStackPush(EOS, java.lang.Object(o9048sub), i592, o9050, java.lang.Object(o9048sub), i592)

Combined rules. Obtained 8 IRules

P rules:
f11540_0_number_greater_Store(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, x3, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2) → f12987_1_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, x3, java.lang.Object(x1), x2, java.lang.Object(x1), x2) | >(x2, x0)
f11540_0_number_greater_Store(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, x3, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2) → f11540_0_number_greater_Store(EOS, java.lang.Object(x1), x2, x3, java.lang.Object(x1), x2) | >(x2, x0)
f11540_0_number_greater_Store(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, x3, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2) → f13064_1_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, x3, java.lang.Object(x1), x2, java.lang.Object(x1), x2) | <=(x2, x0)
f11540_0_number_greater_Store(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, x3, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2) → f11540_0_number_greater_Store(EOS, java.lang.Object(x1), x2, x3, java.lang.Object(x1), x2) | <=(x2, x0)
f11540_0_number_greater_Store(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2) → f13015_1_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), java.lang.Object(x1), x2, java.lang.Object(x1), x2) | >(x2, x0)
f11540_0_number_greater_Store(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2) → f11540_0_number_greater_Store(EOS, java.lang.Object(x1), x2, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), java.lang.Object(x1), x2) | >(x2, x0)
f11540_0_number_greater_Store(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2) → f13133_1_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), java.lang.Object(x1), x2, java.lang.Object(x1), x2) | <=(x2, x0)
f11540_0_number_greater_Store(EOS, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), x2) → f11540_0_number_greater_Store(EOS, java.lang.Object(x1), x2, java.lang.Object(Partition(EOC, x0, java.lang.Object(x1))), java.lang.Object(x1), x2) | <=(x2, x0)

Filtered ground terms:


f11540_0_number_greater_Store(x1, x2, x3, x4, x5, x6) → f11540_0_number_greater_Store(x2, x3, x4, x5, x6)
Cond_f11540_0_number_greater_Store(x1, x2, x3, x4, x5, x6, x7) → Cond_f11540_0_number_greater_Store(x1, x3, x4, x5, x6, x7)
f12987_1_number_greater_ConstantStackPush(x1, x2, x3, x4, x5, x6, x7, x8) → f12987_1_number_greater_ConstantStackPush(x2, x3, x4, x5, x6, x7, x8)
Cond_f11540_0_number_greater_Store1(x1, x2, x3, x4, x5, x6, x7) → Cond_f11540_0_number_greater_Store1(x1, x3, x4, x5, x6, x7)
Cond_f11540_0_number_greater_Store2(x1, x2, x3, x4, x5, x6, x7) → Cond_f11540_0_number_greater_Store2(x1, x3, x4, x5, x6, x7)
f13064_1_number_greater_ConstantStackPush(x1, x2, x3, x4, x5, x6, x7, x8) → f13064_1_number_greater_ConstantStackPush(x2, x3, x4, x5, x6, x7, x8)
Cond_f11540_0_number_greater_Store3(x1, x2, x3, x4, x5, x6, x7) → Cond_f11540_0_number_greater_Store3(x1, x3, x4, x5, x6, x7)
Cond_f11540_0_number_greater_Store4(x1, x2, x3, x4, x5, x6, x7) → Cond_f11540_0_number_greater_Store4(x1, x3, x4, x5, x6, x7)
f13015_1_number_greater_ConstantStackPush(x1, x2, x3, x4, x5, x6, x7, x8) → f13015_1_number_greater_ConstantStackPush(x2, x3, x4, x5, x6, x7, x8)
Cond_f11540_0_number_greater_Store5(x1, x2, x3, x4, x5, x6, x7) → Cond_f11540_0_number_greater_Store5(x1, x3, x4, x5, x6, x7)
Cond_f11540_0_number_greater_Store6(x1, x2, x3, x4, x5, x6, x7) → Cond_f11540_0_number_greater_Store6(x1, x3, x4, x5, x6, x7)
f13133_1_number_greater_ConstantStackPush(x1, x2, x3, x4, x5, x6, x7, x8) → f13133_1_number_greater_ConstantStackPush(x2, x3, x4, x5, x6, x7, x8)
Cond_f11540_0_number_greater_Store7(x1, x2, x3, x4, x5, x6, x7) → Cond_f11540_0_number_greater_Store7(x1, x3, x4, x5, x6, x7)
Partition(x1, x2, x3) → Partition(x2, x3)

Filtered duplicate terms:


f11540_0_number_greater_Store(x1, x2, x3, x4, x5) → f11540_0_number_greater_Store(x3, x4, x5)
Cond_f11540_0_number_greater_Store(x1, x2, x3, x4, x5, x6) → Cond_f11540_0_number_greater_Store(x1, x4, x5, x6)
f12987_1_number_greater_ConstantStackPush(x1, x2, x3, x4, x5, x6, x7) → f12987_1_number_greater_ConstantStackPush(x1, x3, x7)
Cond_f11540_0_number_greater_Store1(x1, x2, x3, x4, x5, x6) → Cond_f11540_0_number_greater_Store1(x1, x4, x5, x6)
Cond_f11540_0_number_greater_Store2(x1, x2, x3, x4, x5, x6) → Cond_f11540_0_number_greater_Store2(x1, x4, x5, x6)
f13064_1_number_greater_ConstantStackPush(x1, x2, x3, x4, x5, x6, x7) → f13064_1_number_greater_ConstantStackPush(x1, x3, x7)
Cond_f11540_0_number_greater_Store3(x1, x2, x3, x4, x5, x6) → Cond_f11540_0_number_greater_Store3(x1, x4, x5, x6)
Cond_f11540_0_number_greater_Store4(x1, x2, x3, x4, x5, x6) → Cond_f11540_0_number_greater_Store4(x1, x5, x6)
f13015_1_number_greater_ConstantStackPush(x1, x2, x3, x4, x5, x6, x7) → f13015_1_number_greater_ConstantStackPush(x3, x7)
Cond_f11540_0_number_greater_Store5(x1, x2, x3, x4, x5, x6) → Cond_f11540_0_number_greater_Store5(x1, x5, x6)
Cond_f11540_0_number_greater_Store6(x1, x2, x3, x4, x5, x6) → Cond_f11540_0_number_greater_Store6(x1, x5, x6)
f13133_1_number_greater_ConstantStackPush(x1, x2, x3, x4, x5, x6, x7) → f13133_1_number_greater_ConstantStackPush(x3, x7)
Cond_f11540_0_number_greater_Store7(x1, x2, x3, x4, x5, x6) → Cond_f11540_0_number_greater_Store7(x1, x5, x6)

Filtered unneeded terms:


Cond_f11540_0_number_greater_Store(x1, x2, x3, x4) → Cond_f11540_0_number_greater_Store(x1)
Cond_f11540_0_number_greater_Store2(x1, x2, x3, x4) → Cond_f11540_0_number_greater_Store2(x1)
Cond_f11540_0_number_greater_Store4(x1, x2, x3) → Cond_f11540_0_number_greater_Store4(x1)
Cond_f11540_0_number_greater_Store6(x1, x2, x3) → Cond_f11540_0_number_greater_Store6(x1)

Prepared 8 rules for path length conversion:

P rules:
f11540_0_number_greater_Store(x3, java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) → f12987_1_number_greater_ConstantStackPush(java.lang.Object(Partition(x0, java.lang.Object(x1))), x3, x2) | >(x2, x0)
f11540_0_number_greater_Store(x3, java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) → f11540_0_number_greater_Store(x3, java.lang.Object(x1), x2) | >(x2, x0)
f11540_0_number_greater_Store(x3, java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) → f13064_1_number_greater_ConstantStackPush(java.lang.Object(Partition(x0, java.lang.Object(x1))), x3, x2) | <=(x2, x0)
f11540_0_number_greater_Store(x3, java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) → f11540_0_number_greater_Store(x3, java.lang.Object(x1), x2) | <=(x2, x0)
f11540_0_number_greater_Store(java.lang.Object(Partition(x0, java.lang.Object(x1))), java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) → f13015_1_number_greater_ConstantStackPush(java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) | >(x2, x0)
f11540_0_number_greater_Store(java.lang.Object(Partition(x0, java.lang.Object(x1))), java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) → f11540_0_number_greater_Store(java.lang.Object(Partition(x0, java.lang.Object(x1))), java.lang.Object(x1), x2) | >(x2, x0)
f11540_0_number_greater_Store(java.lang.Object(Partition(x0, java.lang.Object(x1))), java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) → f13133_1_number_greater_ConstantStackPush(java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) | <=(x2, x0)
f11540_0_number_greater_Store(java.lang.Object(Partition(x0, java.lang.Object(x1))), java.lang.Object(Partition(x0, java.lang.Object(x1))), x2) → f11540_0_number_greater_Store(java.lang.Object(Partition(x0, java.lang.Object(x1))), java.lang.Object(x1), x2) | <=(x2, x0)

Finished conversion. Obtained 4 rules.

P rules:
f11540_0_number_greater_Store(v31, v32, x7) → f11540_0_number_greater_Store(v33, v34, x7) | &&(&&(&&(&&(&&(&&(>(x7, x5), >(+(v34, 1), 1)), <=(+(v34, 2), v32)), >(+(v33, 1), 0)), <=(v33, v31)), >(+(v32, 1), 3)), >(+(v31, 1), 0))
f11540_0_number_greater_Store(v35, v36, x15) → f11540_0_number_greater_Store(v37, v38, x15) | &&(&&(&&(&&(&&(&&(<=(x15, x13), >(+(v38, 1), 1)), <=(+(v38, 2), v36)), >(+(v37, 1), 0)), <=(v37, v35)), >(+(v36, 1), 3)), >(+(v35, 1), 0))
f11540_0_number_greater_Store(v39, v40, x21) → f11540_0_number_greater_Store(v41, v42, x21) | &&(&&(&&(&&(&&(&&(&&(&&(>(x21, x19), >(+(v42, 1), 1)), <=(+(v42, 2), v40)), <=(+(v42, 2), v39)), >(+(v41, 1), 3)), <=(v41, v40)), <=(v41, v39)), >(+(v40, 1), 3)), >(+(v39, 1), 3))
f11540_0_number_greater_Store(v43, v44, x27) → f11540_0_number_greater_Store(v45, v46, x27) | &&(&&(&&(&&(&&(&&(&&(&&(<=(x27, x25), >(+(v46, 1), 1)), <=(+(v46, 2), v44)), <=(+(v46, 2), v43)), >(+(v45, 1), 3)), <=(v45, v44)), <=(v45, v43)), >(+(v44, 1), 3)), >(+(v43, 1), 3))

(22) Obligation:

Rules:
f11540_0_number_greater_Store(v31, v32, x7) → f11540_0_number_greater_Store(v33, v34, x7) | &&(&&(&&(&&(&&(&&(>(x7, x5), >(+(v34, 1), 1)), <=(+(v34, 2), v32)), >(+(v33, 1), 0)), <=(v33, v31)), >(+(v32, 1), 3)), >(+(v31, 1), 0))
f11540_0_number_greater_Store(v35, v36, x15) → f11540_0_number_greater_Store(v37, v38, x15) | &&(&&(&&(&&(&&(&&(<=(x15, x13), >(+(v38, 1), 1)), <=(+(v38, 2), v36)), >(+(v37, 1), 0)), <=(v37, v35)), >(+(v36, 1), 3)), >(+(v35, 1), 0))
f11540_0_number_greater_Store(v39, v40, x21) → f11540_0_number_greater_Store(v41, v42, x21) | &&(&&(&&(&&(&&(&&(&&(&&(>(x21, x19), >(+(v42, 1), 1)), <=(+(v42, 2), v40)), <=(+(v42, 2), v39)), >(+(v41, 1), 3)), <=(v41, v40)), <=(v41, v39)), >(+(v40, 1), 3)), >(+(v39, 1), 3))
f11540_0_number_greater_Store(v43, v44, x27) → f11540_0_number_greater_Store(v45, v46, x27) | &&(&&(&&(&&(&&(&&(&&(&&(<=(x27, x25), >(+(v46, 1), 1)), <=(+(v46, 2), v44)), <=(+(v46, 2), v43)), >(+(v45, 1), 3)), <=(v45, v44)), <=(v45, v43)), >(+(v44, 1), 3)), >(+(v43, 1), 3))

(23) LinearRankingProcessor (EQUIVALENT transformation)

Linear ranking:


[f11540_0_number_greater_Store(x)] = 1/2·x2

where x = (x1, ... ,xn).



Therefore the following rule(s) have been dropped:


f11540_0_number_greater_Store(x0, x1, x2) → f11540_0_number_greater_Store(x3, x4, x2) | &&(&&(&&(&&(&&(&&(>(x2, x5), >(+(x4, 1), 1)), <=(+(x4, 2), x1)), >(+(x3, 1), 0)), <=(x3, x0)), >(+(x1, 1), 3)), >(+(x0, 1), 0))
f11540_0_number_greater_Store(x6, x7, x8) → f11540_0_number_greater_Store(x9, x10, x8) | &&(&&(&&(&&(&&(&&(<=(x8, x11), >(+(x10, 1), 1)), <=(+(x10, 2), x7)), >(+(x9, 1), 0)), <=(x9, x6)), >(+(x7, 1), 3)), >(+(x6, 1), 0))
f11540_0_number_greater_Store(x12, x13, x14) → f11540_0_number_greater_Store(x15, x16, x14) | &&(&&(&&(&&(&&(&&(&&(&&(>(x14, x17), >(+(x16, 1), 1)), <=(+(x16, 2), x13)), <=(+(x16, 2), x12)), >(+(x15, 1), 3)), <=(x15, x13)), <=(x15, x12)), >(+(x13, 1), 3)), >(+(x12, 1), 3))
f11540_0_number_greater_Store(x18, x19, x20) → f11540_0_number_greater_Store(x21, x22, x20) | &&(&&(&&(&&(&&(&&(&&(&&(<=(x20, x23), >(+(x22, 1), 1)), <=(+(x22, 2), x19)), <=(+(x22, 2), x18)), >(+(x21, 1), 3)), <=(x21, x19)), <=(x21, x18)), >(+(x19, 1), 3)), >(+(x18, 1), 3))

(24) YES

(25) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: PartitionList.sublistAutoDual()LPartitionList;
SCC calls the following helper methods: PartitionList.sublistAutoDual()LPartitionList;, Partition.number_greater(I)I, Partition.isEqual(LPartition;)Z
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
    • PartitionList: [first, next]
    • Partition: [first]
  • Marker field analysis yielded the following relations that could be markers:

(26) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 71 IRules

P rules:
f5393_0_sublistAutoDual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1887, o1888)), java.lang.Object(PartitionList(EOC, o1887, o1888)), java.lang.Object(PartitionList(EOC, o1887, o1888))) → f5425_0_sublistAutoDual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1887, o1888)), java.lang.Object(PartitionList(EOC, o1887, o1888)), java.lang.Object(PartitionList(EOC, o1887, o1888)))
f5425_0_sublistAutoDual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1887, o1888)), java.lang.Object(PartitionList(EOC, o1887, o1888)), java.lang.Object(PartitionList(EOC, o1887, o1888))) → f5447_0_sublistAutoDual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o1887, o1888)), java.lang.Object(PartitionList(EOC, o1887, o1888)), o1887)
f5447_0_sublistAutoDual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub)) → f5479_0_sublistAutoDual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub))
f5479_0_sublistAutoDual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub)) → f5511_0_dual_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub), java.lang.Object(o1925sub))
f5511_0_dual_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub), java.lang.Object(o1925sub)) → f5618_0_dual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub), java.lang.Object(o1925sub), NULL)
f5618_0_dual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub), java.lang.Object(o1925sub), NULL) → f5668_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub), java.lang.Object(o1925sub), NULL)
f5668_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub), java.lang.Object(o1925sub), NULL) → f5778_0_dual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(o1925sub), o1888)), java.lang.Object(o1925sub), java.lang.Object(o1925sub), NULL, java.lang.Object(o1925sub))
f5778_0_dual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(Partition(EOC, i579)), java.lang.Object(Partition(EOC, i579)), NULL, java.lang.Object(Partition(EOC, i579))) → f5794_0_dual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(Partition(EOC, i579)), java.lang.Object(Partition(EOC, i579)), NULL, java.lang.Object(Partition(EOC, i579)))
f5794_0_dual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(Partition(EOC, i579)), java.lang.Object(Partition(EOC, i579)), NULL, java.lang.Object(Partition(EOC, i579))) → f5813_0_dual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(Partition(EOC, i579)), java.lang.Object(Partition(EOC, i579)), NULL, i579)
f5813_0_dual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(Partition(EOC, i579)), java.lang.Object(Partition(EOC, i579)), NULL, i579) → f5870_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(Partition(EOC, i579)), java.lang.Object(Partition(EOC, i579)), NULL, i579)
f5870_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(Partition(EOC, i579)), java.lang.Object(Partition(EOC, i579)), NULL, i579) → f7769_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i579)), o1888)), java.lang.Object(Partition(EOC, i579)), java.lang.Object(Partition(EOC, i579)), NULL, i579)
f7769_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i895) → f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i895, i895)
f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i904, i904) → f7822_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i904, i904)
f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, i905) → f7823_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, i905)
f7822_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i904, i904) → f7855_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), o3743) | <=(i904, 0)
f7855_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), o3743) → f7896_0_dual_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), o3743)
f7896_0_dual_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), o3743) → f7919_0_sublistAutoDual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743)
f7919_0_sublistAutoDual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743) → f7940_0_sublistAutoDual_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743)
f7940_0_sublistAutoDual_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743) → f7963_0_sublistAutoDual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743, NULL)
f7963_0_sublistAutoDual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743, NULL) → f7996_0_sublistAutoDual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743, NULL)
f7996_0_sublistAutoDual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743, NULL) → f8033_0_sublistAutoDual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743, NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)))
f8033_0_sublistAutoDual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743, NULL, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745))) → f8053_0_sublistAutoDual_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), o3743, NULL, o3745)
f8053_0_sublistAutoDual_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, NULL, java.lang.Object(o3963sub)) → f8081_0_sublistAutoDual_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, NULL, java.lang.Object(o3963sub))
f8081_0_sublistAutoDual_NULL(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, NULL, java.lang.Object(o3963sub)) → f8112_0_sublistAutoDual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743)
f8112_0_sublistAutoDual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743) → f8190_0_sublistAutoDual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))))
f8190_0_sublistAutoDual_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub)))) → f8246_0_sublistAutoDual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, java.lang.Object(o3963sub))
f8246_0_sublistAutoDual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, java.lang.Object(o3963sub)) → f8275_0_sublistAutoDual_Load(EOS, java.lang.Object(o3963sub), java.lang.Object(o3963sub))
f8246_0_sublistAutoDual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, java.lang.Object(o3963sub)) → f8275_1_sublistAutoDual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), java.lang.Object(o3963sub))), o3743, java.lang.Object(o3963sub), java.lang.Object(o3963sub))
f8275_0_sublistAutoDual_Load(EOS, java.lang.Object(o3963sub), java.lang.Object(o3963sub)) → f8311_0_sublistAutoDual_Load(EOS, java.lang.Object(o3963sub), java.lang.Object(o3963sub))
f8311_0_sublistAutoDual_Load(EOS, java.lang.Object(o3963sub), java.lang.Object(o3963sub)) → f5366_0_sublistAutoDual_Load(EOS, java.lang.Object(o3963sub), java.lang.Object(o3963sub))
f5366_0_sublistAutoDual_Load(EOS, java.lang.Object(o1669sub), java.lang.Object(o1669sub)) → f5393_0_sublistAutoDual_FieldAccess(EOS, java.lang.Object(o1669sub), java.lang.Object(o1669sub), java.lang.Object(o1669sub))
f7823_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, i905) → f7883_0_dual_New(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905) | >(i905, 0)
f7883_0_dual_New(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905) → f7909_0_dual_Duplicate(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, 0)))
f7909_0_dual_Duplicate(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, matching1))) → f7930_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0))) | =(matching1, 0)
f7930_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2))) → f7950_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i894))) | &&(=(matching1, 0), =(matching2, 0))
f7950_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i894))) → f7981_0_dual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i894)), i905) | &&(=(matching1, 0), =(matching2, 0))
f7981_0_dual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i894)), i905) → f8009_0_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i894)), i905, java.lang.Object(Partition(EOC, i894)), i905) | &&(=(matching1, 0), =(matching2, 0))
f7981_0_dual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i894)), i905) → f8009_1_number_greater_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i894)), o3745)), java.lang.Object(Partition(EOC, i894)), java.lang.Object(Partition(EOC, i894)), o3743, i905, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i894)), i905, java.lang.Object(Partition(EOC, i894)), i905) | &&(=(matching1, 0), =(matching2, 0))
f8009_0_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i894)), i905, java.lang.Object(Partition(EOC, i894)), i905) → f8042_0_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, i894)), i905, java.lang.Object(Partition(EOC, i894)), i905)
f12817_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1927)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1927)), o3745)), java.lang.Object(Partition(EOC, i1927)), java.lang.Object(Partition(EOC, i1927)), o3743, i1929, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i1927)), i1929, matching3) → f9415_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1927)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1927)), o3745)), java.lang.Object(Partition(EOC, i1927)), java.lang.Object(Partition(EOC, i1927)), o3743, i1929, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i1927)), i1929, 0) | &&(&&(=(matching1, 0), =(matching2, 0)), =(matching3, 0))
f9415_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1289)), o5200)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1289)), o5200)), java.lang.Object(Partition(EOC, i1289)), java.lang.Object(Partition(EOC, i1289)), o5197, i1290, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i1289)), i1290, i1288) → f14273_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1289)), o5200)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1289)), o5200)), java.lang.Object(Partition(EOC, i1289)), java.lang.Object(Partition(EOC, i1289)), o5197, i1290, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i1289)), i1290, i1288) | &&(=(matching1, 0), =(matching2, 0))
f14273_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i2578)), o10699)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i2578)), o10699)), java.lang.Object(Partition(EOC, i2578)), java.lang.Object(Partition(EOC, i2578)), o10696, i2579, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i2578)), i2579, i2577) → f14496_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i2578)), o10699)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i2578)), o10699)), java.lang.Object(Partition(EOC, i2578)), java.lang.Object(Partition(EOC, i2578)), o10696, i2579, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i2578)), i2579, i2577) | &&(=(matching1, 0), =(matching2, 0))
f14496_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i2679)), o11016)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i2679)), o11016)), java.lang.Object(Partition(EOC, i2679)), java.lang.Object(Partition(EOC, i2679)), o11013, i2680, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i2679)), i2680, i2678) → f15542_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i2679)), o11016)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i2679)), o11016)), java.lang.Object(Partition(EOC, i2679)), java.lang.Object(Partition(EOC, i2679)), o11013, i2680, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i2679)), i2680, i2678) | &&(=(matching1, 0), =(matching2, 0))
f15542_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i3314)), o12728)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i3314)), o12728)), java.lang.Object(Partition(EOC, i3314)), java.lang.Object(Partition(EOC, i3314)), o12725, i3315, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i3314)), i3315, i3313) → f17513_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i3314)), o12728)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i3314)), o12728)), java.lang.Object(Partition(EOC, i3314)), java.lang.Object(Partition(EOC, i3314)), o12725, i3315, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i3314)), i3315, i3313) | &&(=(matching1, 0), =(matching2, 0))
f17513_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), o16528, i4345, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i4344)), i4345, i4343) → f17597_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), o16528, i4345, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), i4343) | &&(=(matching1, 0), =(matching2, 0))
f17597_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), o16528, i4345, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), i4343) → f17643_0_dual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), i4343, o16528) | &&(=(matching1, 0), =(matching2, 0))
f17643_0_dual_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), i4343, o16528) → f17744_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), i4343, o16528, java.lang.Object(Partition(EOC, 0)), i4343, o16528) | &&(=(matching1, 0), =(matching2, 0))
f17744_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), i4343, o16528, java.lang.Object(Partition(EOC, matching3)), i4343, o16528) → f17937_0__init__InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), i4343, o16528, java.lang.Object(Partition(EOC, 0)), i4343, o16528, java.lang.Object(Partition(EOC, 0))) | &&(&&(=(matching1, 0), =(matching2, 0)), =(matching3, 0))
f17937_0__init__InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), i4343, o16528, java.lang.Object(Partition(EOC, matching3)), i4343, o16528, java.lang.Object(Partition(EOC, matching4))) → f17993_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), i4343, o16528, java.lang.Object(Partition(EOC, 0)), i4343, o16528) | &&(&&(&&(=(matching1, 0), =(matching2, 0)), =(matching3, 0)), =(matching4, 0))
f17993_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), i4343, o16528, java.lang.Object(Partition(EOC, matching3)), i4343, o16528) → f18055_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), i4343, o16528, java.lang.Object(Partition(EOC, 0)), i4343, o16528, java.lang.Object(Partition(EOC, 0))) | &&(&&(=(matching1, 0), =(matching2, 0)), =(matching3, 0))
f18055_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), i4343, o16528, java.lang.Object(Partition(EOC, matching3)), i4343, o16528, java.lang.Object(Partition(EOC, matching4))) → f18146_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), i4343, o16528, java.lang.Object(Partition(EOC, 0)), o16528, java.lang.Object(Partition(EOC, 0)), i4343) | &&(&&(&&(=(matching1, 0), =(matching2, 0)), =(matching3, 0)), =(matching4, 0))
f18146_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), i4343, o16528, java.lang.Object(Partition(EOC, matching3)), o16528, java.lang.Object(Partition(EOC, matching4)), i4343) → f18267_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)), java.lang.Object(Partition(EOC, i4343)), i4343, o16528, java.lang.Object(Partition(EOC, i4343)), o16528) | &&(&&(&&(=(matching1, 0), =(matching2, 0)), =(matching3, 0)), =(matching4, 0))
f18267_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)), java.lang.Object(Partition(EOC, i4343)), i4343, o16528, java.lang.Object(Partition(EOC, i4343)), o16528) → f18454_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)), java.lang.Object(Partition(EOC, i4343)), i4343, o16528, o16528, java.lang.Object(Partition(EOC, i4343)))
f18454_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)), java.lang.Object(Partition(EOC, i4343)), i4343, o16528, o16528, java.lang.Object(Partition(EOC, i4343))) → f18657_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)), java.lang.Object(Partition(EOC, i4343)), i4343, o16528, java.lang.Object(Partition(EOC, i4343)), o16528)
f18657_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)), java.lang.Object(Partition(EOC, i4343)), i4343, o16528, java.lang.Object(Partition(EOC, i4343)), o16528) → f18720_0__init__Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)), java.lang.Object(Partition(EOC, i4343)), i4343, o16528)
f18720_0__init__Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)), java.lang.Object(Partition(EOC, i4343)), i4343, o16528) → f18761_0_dual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343)))
f18761_0_dual_Store(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), i4345, java.lang.Object(Partition(EOC, i4343))) → f18775_0_dual_Inc(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4343)), i4345)
f18775_0_dual_Inc(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4343)), i4345) → f18787_0_dual_JMP(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4343)), +(i4345, -1)) | >(i4345, 0)
f18787_0_dual_JMP(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4343)), i5068) → f18799_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4343)), i5068)
f18799_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4343)), i5068) → f7769_0_dual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i4344)), o16531)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4344)), java.lang.Object(Partition(EOC, i4343)), i5068)
f12997_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1972)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1972)), o3745)), java.lang.Object(Partition(EOC, i1972)), java.lang.Object(Partition(EOC, i1972)), o3743, i1974, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i1972)), i1974, matching3) → f9415_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1972)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1972)), o3745)), java.lang.Object(Partition(EOC, i1972)), java.lang.Object(Partition(EOC, i1972)), o3743, i1974, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i1972)), i1974, 1) | &&(&&(=(matching1, 0), =(matching2, 0)), =(matching3, 1))
f18940_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5204)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5204)), o3745)), java.lang.Object(Partition(EOC, i5204)), java.lang.Object(Partition(EOC, i5204)), o3743, i5206, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i5204)), i5206, i5200) → f17513_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5204)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5204)), o3745)), java.lang.Object(Partition(EOC, i5204)), java.lang.Object(Partition(EOC, i5204)), o3743, i5206, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i5204)), i5206, i5200) | &&(=(matching1, 0), =(matching2, 0))
f18943_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5262)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5262)), o3745)), java.lang.Object(Partition(EOC, i5262)), java.lang.Object(Partition(EOC, i5262)), o3743, i5264, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i5262)), i5264, i5258) → f17513_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5262)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5262)), o3745)), java.lang.Object(Partition(EOC, i5262)), java.lang.Object(Partition(EOC, i5262)), o3743, i5264, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i5262)), i5264, i5258) | &&(=(matching1, 0), =(matching2, 0))
f18965_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5359)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5359)), o3745)), java.lang.Object(Partition(EOC, i5359)), java.lang.Object(Partition(EOC, i5359)), o3743, i5361, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i5359)), i5361, i5356) → f17513_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5359)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5359)), o3745)), java.lang.Object(Partition(EOC, i5359)), java.lang.Object(Partition(EOC, i5359)), o3743, i5361, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i5359)), i5361, i5356) | &&(=(matching1, 0), =(matching2, 0))
f18971_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5404)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5404)), o3745)), java.lang.Object(Partition(EOC, i5404)), java.lang.Object(Partition(EOC, i5404)), o3743, i5406, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i5404)), i5406, i5401) → f17513_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5404)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5404)), o3745)), java.lang.Object(Partition(EOC, i5404)), java.lang.Object(Partition(EOC, i5404)), o3743, i5406, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i5404)), i5406, i5401) | &&(=(matching1, 0), =(matching2, 0))
f8009_1_number_greater_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1927)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1927)), o3745)), java.lang.Object(Partition(EOC, i1927)), java.lang.Object(Partition(EOC, i1927)), o3743, i1929, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i1927)), i1929, java.lang.Object(Partition(EOC, i1927)), i1929) → f12817_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1927)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1927)), o3745)), java.lang.Object(Partition(EOC, i1927)), java.lang.Object(Partition(EOC, i1927)), o3743, i1929, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i1927)), i1929, 0) | &&(=(matching1, 0), =(matching2, 0))
f8009_1_number_greater_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1972)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1972)), o3745)), java.lang.Object(Partition(EOC, i1972)), java.lang.Object(Partition(EOC, i1972)), o3743, i1974, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i1972)), i1974, java.lang.Object(Partition(EOC, i1972)), i1974) → f12997_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1972)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i1972)), o3745)), java.lang.Object(Partition(EOC, i1972)), java.lang.Object(Partition(EOC, i1972)), o3743, i1974, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i1972)), i1974, 1) | &&(=(matching1, 0), =(matching2, 0))
f8009_1_number_greater_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5204)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5204)), o3745)), java.lang.Object(Partition(EOC, i5204)), java.lang.Object(Partition(EOC, i5204)), o3743, i5206, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i5204)), i5206, java.lang.Object(Partition(EOC, i5204)), i5206) → f18940_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5204)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5204)), o3745)), java.lang.Object(Partition(EOC, i5204)), java.lang.Object(Partition(EOC, i5204)), o3743, i5206, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i5204)), i5206, i5200) | &&(=(matching1, 0), =(matching2, 0))
f8009_1_number_greater_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5262)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5262)), o3745)), java.lang.Object(Partition(EOC, i5262)), java.lang.Object(Partition(EOC, i5262)), o3743, i5264, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i5262)), i5264, java.lang.Object(Partition(EOC, i5262)), i5264) → f18943_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5262)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5262)), o3745)), java.lang.Object(Partition(EOC, i5262)), java.lang.Object(Partition(EOC, i5262)), o3743, i5264, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i5262)), i5264, i5258) | &&(=(matching1, 0), =(matching2, 0))
f8009_1_number_greater_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5359)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5359)), o3745)), java.lang.Object(Partition(EOC, i5359)), java.lang.Object(Partition(EOC, i5359)), o3743, i5361, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i5359)), i5361, java.lang.Object(Partition(EOC, i5359)), i5361) → f18965_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5359)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5359)), o3745)), java.lang.Object(Partition(EOC, i5359)), java.lang.Object(Partition(EOC, i5359)), o3743, i5361, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i5359)), i5361, i5356) | &&(=(matching1, 0), =(matching2, 0))
f8009_1_number_greater_ConstantStackPush(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5404)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5404)), o3745)), java.lang.Object(Partition(EOC, i5404)), java.lang.Object(Partition(EOC, i5404)), o3743, i5406, java.lang.Object(Partition(EOC, matching1)), java.lang.Object(Partition(EOC, matching2)), java.lang.Object(Partition(EOC, i5404)), i5406, java.lang.Object(Partition(EOC, i5404)), i5406) → f18971_0_number_greater_Return(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5404)), o3745)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, i5404)), o3745)), java.lang.Object(Partition(EOC, i5404)), java.lang.Object(Partition(EOC, i5404)), o3743, i5406, java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, 0)), java.lang.Object(Partition(EOC, i5404)), i5406, i5401) | &&(=(matching1, 0), =(matching2, 0))

Combined rules. Obtained 6 IRules

P rules:
f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), java.lang.Object(x1))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), java.lang.Object(x1))), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), x2, x3, x3) → f8275_1_sublistAutoDual_Load(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), java.lang.Object(x1))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), java.lang.Object(x1))), x2, java.lang.Object(x1), java.lang.Object(x1)) | <=(x3, 0)
f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x1)), x2)))), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x1)), x2)))), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), x3, x4, x4) → f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x1)), x2)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x1)), x2)), java.lang.Object(Partition(EOC, x1)), java.lang.Object(Partition(EOC, x1)), NULL, x1, x1) | <=(x4, 0)
f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), x2, x3, x3) → f8042_0_number_greater_ConstantStackPush(EOS, java.lang.Object(Partition(EOC, x0)), x3, java.lang.Object(Partition(EOC, x0)), x3) | >(x3, 0)
f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), x2, x3, x3) → f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, 0)), -(x3, 1), -(x3, 1)) | >(x3, 0)
f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), x2, x3, x3) → f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, 1)), -(x3, 1), -(x3, 1)) | >(x3, 0)
f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), x2, x3, x3) → f7805_0_dual_LE(EOS, java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(PartitionList(EOC, java.lang.Object(Partition(EOC, x0)), x1)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x0)), java.lang.Object(Partition(EOC, x4)), -(x3, 1), -(x3, 1)) | >(x3, 0)

Filtered ground terms:


f7805_0_dual_LE(x1, x2, x3, x4, x5, x6, x7, x8) → f7805_0_dual_LE(x2, x3, x4, x5, x6, x7, x8)
Cond_f7805_0_dual_LE(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_f7805_0_dual_LE(x1, x3, x4, x5, x6, x7, x8, x9)
f8275_1_sublistAutoDual_Load(x1, x2, x3, x4, x5, x6) → f8275_1_sublistAutoDual_Load(x2, x3, x4, x5, x6)
Cond_f7805_0_dual_LE1(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_f7805_0_dual_LE1(x1, x3, x4, x5, x6, x7, x8, x9)
Cond_f7805_0_dual_LE2(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_f7805_0_dual_LE2(x1, x3, x4, x5, x6, x7, x8, x9)
f8042_0_number_greater_ConstantStackPush(x1, x2, x3, x4, x5) → f8042_0_number_greater_ConstantStackPush(x2, x3, x4, x5)
Cond_f7805_0_dual_LE3(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_f7805_0_dual_LE3(x1, x3, x4, x5, x6, x7, x8, x9)
Cond_f7805_0_dual_LE4(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_f7805_0_dual_LE4(x1, x3, x4, x5, x6, x7, x8, x9)
Cond_f7805_0_dual_LE5(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) → Cond_f7805_0_dual_LE5(x1, x3, x4, x5, x6, x7, x8, x9, x10)
PartitionList(x1, x2, x3) → PartitionList(x2, x3)
Partition(x1, x2) → Partition(x2)

Filtered duplicate terms:


f7805_0_dual_LE(x1, x2, x3, x4, x5, x6, x7) → f7805_0_dual_LE(x2, x5, x7)
Cond_f7805_0_dual_LE(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f7805_0_dual_LE(x1, x3, x6, x8)
f8275_1_sublistAutoDual_Load(x1, x2, x3, x4, x5) → f8275_1_sublistAutoDual_Load(x2, x3)
Cond_f7805_0_dual_LE1(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f7805_0_dual_LE1(x1, x3, x6, x8)
Cond_f7805_0_dual_LE2(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f7805_0_dual_LE2(x1, x3, x6, x8)
f8042_0_number_greater_ConstantStackPush(x1, x2, x3, x4) → f8042_0_number_greater_ConstantStackPush(x3, x4)
Cond_f7805_0_dual_LE3(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f7805_0_dual_LE3(x1, x3, x6, x8)
Cond_f7805_0_dual_LE4(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f7805_0_dual_LE4(x1, x3, x6, x8)
Cond_f7805_0_dual_LE5(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_f7805_0_dual_LE5(x1, x3, x6, x8, x9)

Filtered unneeded terms:


f7805_0_dual_LE(x1, x2, x3) → f7805_0_dual_LE(x1, x3)
Cond_f7805_0_dual_LE(x1, x2, x3, x4) → Cond_f7805_0_dual_LE(x1)
Cond_f7805_0_dual_LE1(x1, x2, x3, x4) → Cond_f7805_0_dual_LE1(x1, x2)
Cond_f7805_0_dual_LE2(x1, x2, x3, x4) → Cond_f7805_0_dual_LE2(x1)
Cond_f7805_0_dual_LE3(x1, x2, x3, x4) → Cond_f7805_0_dual_LE3(x1, x2, x4)
Cond_f7805_0_dual_LE4(x1, x2, x3, x4) → Cond_f7805_0_dual_LE4(x1, x2, x4)
Cond_f7805_0_dual_LE5(x1, x2, x3, x4, x5) → Cond_f7805_0_dual_LE5(x1, x2, x4)

Prepared 4 rules for path length conversion:

P rules:
f7805_0_dual_LE(java.lang.Object(PartitionList(java.lang.Object(Partition(x0)), java.lang.Object(x1))), x3, x0) → f8275_1_sublistAutoDual_Load(java.lang.Object(PartitionList(java.lang.Object(Partition(x0)), java.lang.Object(x1))), x2) | <=(x3, 0)
f7805_0_dual_LE(java.lang.Object(PartitionList(java.lang.Object(Partition(x0)), java.lang.Object(PartitionList(java.lang.Object(Partition(x1)), x2)))), x4, x0) → f7805_0_dual_LE(java.lang.Object(PartitionList(java.lang.Object(Partition(x1)), x2)), x1, x1) | <=(x4, 0)
f7805_0_dual_LE(java.lang.Object(PartitionList(java.lang.Object(Partition(x0)), x1)), x3, x0) → f8042_0_number_greater_ConstantStackPush(java.lang.Object(Partition(x0)), x3) | >(x3, 0)
f7805_0_dual_LE(java.lang.Object(PartitionList(java.lang.Object(Partition(x0)), x1)), x3, x0) → f7805_0_dual_LE(java.lang.Object(PartitionList(java.lang.Object(Partition(x0)), x1)), -(x3, 1), x0) | >(x3, 0)

Finished conversion. Obtained 2 rules.

P rules:
f7805_0_dual_LE(v17, x7, x4) → f7805_0_dual_LE(v18, x5, x5) | &&(&&(&&(&&(&&(<=(x7, 0), <=(+(x5, 6), v17)), <=(+(x4, 4), v17)), >(+(v18, 1), 3)), <=(+(v18, 2), v17)), >(+(v17, 1), 5))
f7805_0_dual_LE(v19, x13, x11) → f7805_0_dual_LE(v20, -(x13, 1), x11) | &&(&&(&&(&&(>(x13, 0), <=(+(x11, 4), v19)), >(+(v20, 1), 3)), <=(v20, v19)), >(+(v19, 1), 3))

(27) Obligation:

Rules:
f7805_0_dual_LE(v17, x7, x4) → f7805_0_dual_LE(v18, x5, x5) | &&(&&(&&(&&(&&(<=(x7, 0), <=(+(x5, 6), v17)), <=(+(x4, 4), v17)), >(+(v18, 1), 3)), <=(+(v18, 2), v17)), >(+(v17, 1), 5))
f7805_0_dual_LE(v19, x13, x11) → f7805_0_dual_LE(v20, -(x13, 1), x11) | &&(&&(&&(&&(>(x13, 0), <=(+(x11, 4), v19)), >(+(v20, 1), 3)), <=(v20, v19)), >(+(v19, 1), 3))

(28) PolynomialOrderProcessor (SOUND transformation)

Found the following polynomial interpretation:


[f7805_0_dual_LE(x10, x12, x14)] = -4 + x10

Therefore the following rule(s) have been dropped:


f7805_0_dual_LE(x0, x1, x2) → f7805_0_dual_LE(x3, x4, x4) | &&(&&(&&(&&(&&(<=(x1, 0), <=(+(x4, 6), x0)), <=(+(x2, 4), x0)), >(+(x3, 1), 3)), <=(+(x3, 2), x0)), >(+(x0, 1), 5))

(29) Obligation:

Rules:
f7805_0_dual_LE(x5, x6, x7) → f7805_0_dual_LE(x8, -(x6, 1), x7) | &&(&&(&&(&&(>(x6, 0), <=(+(x7, 4), x5)), >(+(x8, 1), 3)), <=(x8, x5)), >(+(x5, 1), 3))

(30) PolynomialOrderProcessor (EQUIVALENT transformation)

Found the following polynomial interpretation:


[f7805_0_dual_LE(x5, x7, x9)] = x7

Therefore the following rule(s) have been dropped:


f7805_0_dual_LE(x0, x1, x2) → f7805_0_dual_LE(x3, -(x1, 1), x2) | &&(&&(&&(&&(>(x1, 0), <=(+(x2, 4), x0)), >(+(x3, 1), 3)), <=(x3, x0)), >(+(x0, 1), 3))

(31) YES

(32) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: PartitionList.insert(ILPartitionList;)LPartitionList;
SCC calls the following helper methods: PartitionList.insert(ILPartitionList;)LPartitionList;
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
    • PartitionList: [first, next]
  • Marker field analysis yielded the following relations that could be markers:

(33) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 28 IRules

P rules:
f6455_0_insert_NONNULL(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub), java.lang.Object(o2683sub)) → f6464_0_insert_NONNULL(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub), java.lang.Object(o2683sub))
f6464_0_insert_NONNULL(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub), java.lang.Object(o2683sub)) → f6506_0_insert_New(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub))
f6506_0_insert_New(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub)) → f6560_0_insert_Duplicate(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub))
f6560_0_insert_Duplicate(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub)) → f6586_0_insert_New(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub))
f6586_0_insert_New(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub)) → f6595_0_insert_Duplicate(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub))
f6595_0_insert_Duplicate(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub)) → f6632_0_insert_Load(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub))
f6632_0_insert_Load(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub)) → f6640_0_insert_Load(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub))
f6640_0_insert_Load(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub)) → f6656_0_insert_FieldAccess(EOS, java.lang.Object(o2683sub), java.lang.Object(o2683sub), java.lang.Object(o2683sub))
f6656_0_insert_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6663_0_insert_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6663_0_insert_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6671_0_insert_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6671_0_insert_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6678_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6678_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6711_0__init__InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6711_0__init__InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6747_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6747_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6763_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6763_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6774_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6774_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6785_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6785_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6793_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6793_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6803_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6803_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6817_0__init__Return(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6817_0__init__Return(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6835_0_insert_Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6835_0_insert_Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6850_0_insert_Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6850_0_insert_Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6858_0_insert_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873)))
f6858_0_insert_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), java.lang.Object(PartitionList(EOC, o2872, o2873))) → f6868_0_insert_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), o2873)
f6868_0_insert_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), o2873) → f6875_0_insert_Load(EOS, o2873, o2873)
f6868_0_insert_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), o2873) → f6875_1_insert_Load(EOS, java.lang.Object(PartitionList(EOC, o2872, o2873)), o2873, o2873)
f6875_0_insert_Load(EOS, o2873, o2873) → f6881_0_insert_Load(EOS, o2873, o2873)
f6881_0_insert_Load(EOS, o2873, o2873) → f6442_0_insert_Load(EOS, o2873, o2873)
f6442_0_insert_Load(EOS, o2673, o2673) → f6455_0_insert_NONNULL(EOS, o2673, o2673, o2673)

Combined rules. Obtained 2 IRules

P rules:
f6455_0_insert_NONNULL(EOS, java.lang.Object(PartitionList(EOC, x0, x1)), java.lang.Object(PartitionList(EOC, x0, x1)), java.lang.Object(PartitionList(EOC, x0, x1))) → f6875_1_insert_Load(EOS, java.lang.Object(PartitionList(EOC, x0, x1)), x1, x1)
f6455_0_insert_NONNULL(EOS, java.lang.Object(PartitionList(EOC, x0, x1)), java.lang.Object(PartitionList(EOC, x0, x1)), java.lang.Object(PartitionList(EOC, x0, x1))) → f6455_0_insert_NONNULL(EOS, x1, x1, x1)

Filtered ground terms:


f6455_0_insert_NONNULL(x1, x2, x3, x4) → f6455_0_insert_NONNULL(x2, x3, x4)
f6875_1_insert_Load(x1, x2, x3, x4) → f6875_1_insert_Load(x2, x3, x4)
PartitionList(x1, x2, x3) → PartitionList(x2, x3)

Filtered duplicate terms:


f6455_0_insert_NONNULL(x1, x2, x3) → f6455_0_insert_NONNULL(x3)
f6875_1_insert_Load(x1, x2, x3) → f6875_1_insert_Load(x1)

Filtered unneeded terms:


PartitionList(x1, x2) → PartitionList(x2)

Prepared 2 rules for path length conversion:

P rules:
f6455_0_insert_NONNULL(java.lang.Object(PartitionList(x1))) → f6875_1_insert_Load(java.lang.Object(PartitionList(x1)))
f6455_0_insert_NONNULL(java.lang.Object(PartitionList(x1))) → f6455_0_insert_NONNULL(x1)

Finished conversion. Obtained 1 rules.

P rules:
f6455_0_insert_NONNULL(v3) → f6455_0_insert_NONNULL(v4) | &&(&&(>(+(v4, 1), 0), <=(+(v4, 1), v3)), >(+(v3, 1), 1))

(34) Obligation:

Rules:
f6455_0_insert_NONNULL(v3) → f6455_0_insert_NONNULL(v4) | &&(&&(>(+(v4, 1), 0), <=(+(v4, 1), v3)), >(+(v3, 1), 1))

(35) LinearRankingProcessor (EQUIVALENT transformation)

Linear ranking:


[f6455_0_insert_NONNULL(x)] = 1·x1

where x = (x1, ... ,xn).



Therefore the following rule(s) have been dropped:


f6455_0_insert_NONNULL(x0) → f6455_0_insert_NONNULL(x1) | &&(&&(>(+(x1, 1), 0), <=(+(x1, 1), x0)), >(+(x0, 1), 1))

(36) YES

(37) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: PartitionList.union(LPartitionList;LPartitionList;)LPartitionList;
SCC calls the following helper methods: PartitionList.union(LPartitionList;LPartitionList;)LPartitionList;
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
    • PartitionList: [next, first]
  • Marker field analysis yielded the following relations that could be markers:

(38) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 29 IRules

P rules:
f4576_0_union_NONNULL(EOS, java.lang.Object(o1250sub), java.lang.Object(o1250sub), java.lang.Object(o1250sub)) → f4579_0_union_NONNULL(EOS, java.lang.Object(o1250sub), java.lang.Object(o1250sub), java.lang.Object(o1250sub))
f4579_0_union_NONNULL(EOS, java.lang.Object(o1250sub), java.lang.Object(o1250sub), java.lang.Object(o1250sub)) → f4582_0_union_Load(EOS, java.lang.Object(o1250sub), java.lang.Object(o1250sub))
f4582_0_union_Load(EOS, java.lang.Object(o1250sub), java.lang.Object(o1250sub)) → f4586_0_union_FieldAccess(EOS, java.lang.Object(o1250sub), java.lang.Object(o1250sub), java.lang.Object(o1250sub))
f4586_0_union_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255))) → f4591_0_union_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)))
f4591_0_union_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255))) → f4595_0_union_New(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4595_0_union_New(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4637_0_union_Duplicate(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4637_0_union_Duplicate(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4647_0_union_Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4647_0_union_Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4650_0_union_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256, java.lang.Object(PartitionList(EOC, o1256, o1255)))
f4650_0_union_FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256, java.lang.Object(PartitionList(EOC, o1256, o1255))) → f4652_0_union_Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4652_0_union_Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4654_0_union_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4654_0_union_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4656_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4656_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4659_0__init__InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4659_0__init__InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4661_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4661_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4663_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4663_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4666_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4666_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4670_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4670_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4671_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4671_0__init__Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4674_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4674_0__init__FieldAccess(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4681_0__init__Return(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4681_0__init__Return(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4683_0_union_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4683_0_union_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4685_0_union_Load(EOS, o1256, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4683_0_union_InvokeMethod(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4685_1_union_Load(EOS, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256, o1256)
f4685_0_union_Load(EOS, o1256, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4689_0_union_Load(EOS, o1256, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4689_0_union_Load(EOS, o1256, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256) → f4696_0_union_Load(EOS, o1256, java.lang.Object(PartitionList(EOC, o1256, o1255)), o1256)
f4696_0_union_Load(EOS, o1283, o1290, o1283) → f4708_0_union_Load(EOS, o1283, o1283)
f4708_0_union_Load(EOS, o1283, o1283) → f4719_0_union_Load(EOS, o1283, o1283)
f4719_0_union_Load(EOS, o1283, o1283) → f4728_0_union_Load(EOS, o1283, o1283)
f4728_0_union_Load(EOS, o1283, o1283) → f4572_0_union_Load(EOS, o1283, o1283)
f4572_0_union_Load(EOS, o1191, o1191) → f4576_0_union_NONNULL(EOS, o1191, o1191, o1191)

Combined rules. Obtained 2 IRules

P rules:
f4576_0_union_NONNULL(EOS, java.lang.Object(PartitionList(EOC, x0, x1)), java.lang.Object(PartitionList(EOC, x0, x1)), java.lang.Object(PartitionList(EOC, x0, x1))) → f4685_1_union_Load(EOS, java.lang.Object(PartitionList(EOC, x0, x1)), x0, x0)
f4576_0_union_NONNULL(EOS, java.lang.Object(PartitionList(EOC, x0, x1)), java.lang.Object(PartitionList(EOC, x0, x1)), java.lang.Object(PartitionList(EOC, x0, x1))) → f4576_0_union_NONNULL(EOS, x0, x0, x0)

Filtered ground terms:


f4576_0_union_NONNULL(x1, x2, x3, x4) → f4576_0_union_NONNULL(x2, x3, x4)
f4685_1_union_Load(x1, x2, x3, x4) → f4685_1_union_Load(x2, x3, x4)
PartitionList(x1, x2, x3) → PartitionList(x2, x3)

Filtered duplicate terms:


f4576_0_union_NONNULL(x1, x2, x3) → f4576_0_union_NONNULL(x3)
f4685_1_union_Load(x1, x2, x3) → f4685_1_union_Load(x1)

Filtered unneeded terms:


PartitionList(x1, x2) → PartitionList(x1)

Prepared 2 rules for path length conversion:

P rules:
f4576_0_union_NONNULL(java.lang.Object(PartitionList(x0))) → f4685_1_union_Load(java.lang.Object(PartitionList(x0)))
f4576_0_union_NONNULL(java.lang.Object(PartitionList(x0))) → f4576_0_union_NONNULL(x0)

Finished conversion. Obtained 1 rules.

P rules:
f4576_0_union_NONNULL(v3) → f4576_0_union_NONNULL(v4) | &&(&&(>(+(v4, 1), 0), <=(+(v4, 1), v3)), >(+(v3, 1), 1))

(39) Obligation:

Rules:
f4576_0_union_NONNULL(v3) → f4576_0_union_NONNULL(v4) | &&(&&(>(+(v4, 1), 0), <=(+(v4, 1), v3)), >(+(v3, 1), 1))

(40) PolynomialOrderProcessor (EQUIVALENT transformation)

Found the following polynomial interpretation:


[f4576_0_union_NONNULL(x3)] = x3

Therefore the following rule(s) have been dropped:


f4576_0_union_NONNULL(x0) → f4576_0_union_NONNULL(x1) | &&(&&(>(+(x1, 1), 0), <=(+(x1, 1), x0)), >(+(x0, 1), 1))

(41) YES

(42) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: PartitionList.generation(ILIntList;)LPartitionList;
SCC calls the following helper methods: PartitionList.generation(ILIntList;)LPartitionList;, PartitionList.insert(ILPartitionList;)LPartitionList;, PartitionList.union(LPartitionList;LPartitionList;)LPartitionList;
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
    • IntList: [first, next]
  • Marker field analysis yielded the following relations that could be markers:

(43) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 124 IRules

P rules:
f2544_0_generation_NONNULL(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), java.lang.Object(o292sub)) → f2545_0_generation_NONNULL(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), java.lang.Object(o292sub))
f2545_0_generation_NONNULL(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), java.lang.Object(o292sub)) → f2547_0_generation_ConstantStackPush(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub))
f2547_0_generation_ConstantStackPush(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub)) → f2550_0_generation_Store(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL)
f2550_0_generation_Store(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL) → f2552_0_generation_Load(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL)
f2552_0_generation_Load(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL) → f2556_0_generation_InvokeMethod(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL, java.lang.Object(o292sub))
f2556_0_generation_InvokeMethod(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL, java.lang.Object(o292sub)) → f2568_0_getFirst_Load(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL, java.lang.Object(o292sub), java.lang.Object(o292sub))
f2568_0_getFirst_Load(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL, java.lang.Object(o292sub), java.lang.Object(o292sub)) → f2571_0_getFirst_FieldAccess(EOS, i134, java.lang.Object(o292sub), i134, java.lang.Object(o292sub), NULL, java.lang.Object(o292sub), java.lang.Object(o292sub))
f2571_0_getFirst_FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(IntList(EOC, i153, o299))) → f2573_0_getFirst_FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(IntList(EOC, i153, o299)))
f2573_0_getFirst_FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(IntList(EOC, i153, o299))) → f2574_0_getFirst_Return(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, java.lang.Object(IntList(EOC, i153, o299)), i153)
f2574_0_getFirst_Return(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, java.lang.Object(IntList(EOC, i153, o299)), i153) → f2576_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153)
f2576_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153) → f2578_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153)
f2578_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153) → f2579_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134)
f2579_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134) → f2581_0_generation_IntArithmetic(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134, i153)
f2581_0_generation_IntArithmetic(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134, i153) → f2584_0_generation_LE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, -(i134, i153))
f2584_0_generation_LE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i158) → f2585_0_generation_LE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i158)
f2584_0_generation_LE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i159) → f2586_0_generation_LE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i159)
f2585_0_generation_LE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i158) → f2588_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153) | <=(i158, 0)
f2588_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153) → f2616_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153)
f2616_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153) → f2620_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134)
f2620_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134) → f2623_0_generation_IntArithmetic(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134, i153)
f2623_0_generation_IntArithmetic(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134, i153) → f2627_0_generation_NE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, -(i134, i153))
f2627_0_generation_NE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i167) → f2629_0_generation_NE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i167)
f2627_0_generation_NE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, matching1) → f2630_0_generation_NE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, 0) | =(matching1, 0)
f2629_0_generation_NE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i167) → f2633_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL) | !(=(i167, 0))
f2633_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL) → f3124_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL)
f3124_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i282, o438)), i134, java.lang.Object(IntList(EOC, i282, o438)), NULL) → f6845_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i282, o438)), i134, java.lang.Object(IntList(EOC, i282, o438)), NULL)
f6845_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL) → f6857_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134)
f6857_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134) → f6866_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, java.lang.Object(IntList(EOC, i662, o1777)))
f6866_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, java.lang.Object(IntList(EOC, i662, o1777))) → f6874_0_getNext_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, java.lang.Object(IntList(EOC, i662, o1777)), java.lang.Object(IntList(EOC, i662, o1777)))
f6874_0_getNext_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, java.lang.Object(IntList(EOC, i662, o1777)), java.lang.Object(IntList(EOC, i662, o1777))) → f6888_0_getNext_FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, java.lang.Object(IntList(EOC, i662, o1777)), java.lang.Object(IntList(EOC, i662, o1777)))
f6888_0_getNext_FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, java.lang.Object(IntList(EOC, i662, o1777)), java.lang.Object(IntList(EOC, i662, o1777))) → f6896_0_getNext_Return(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, java.lang.Object(IntList(EOC, i662, o1777)), o1777)
f6896_0_getNext_Return(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, java.lang.Object(IntList(EOC, i662, o1777)), o1777) → f6921_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, o1777)
f6921_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, o1777) → f6934_0_generation_Load(EOS, i134, o1777, i134, o1777)
f6921_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, o1777) → f6934_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, o1777, i134, o1777)
f6934_0_generation_Load(EOS, i134, o1777, i134, o1777) → f6944_0_generation_Load(EOS, i134, o1777, i134, o1777)
f6944_0_generation_Load(EOS, i134, o1777, i134, o1777) → f2541_0_generation_Load(EOS, i134, o1777, i134, o1777)
f2541_0_generation_Load(EOS, i134, o290, i134, o290) → f2544_0_generation_NONNULL(EOS, i134, o290, i134, o290, o290)
f2630_0_generation_NE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, matching1) → f2634_0_generation_New(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153) | =(matching1, 0)
f2634_0_generation_New(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153) → f2638_0_generation_Duplicate(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)))
f2638_0_generation_Duplicate(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC))) → f2644_0_generation_New(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)))
f2644_0_generation_New(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC))) → f2647_0_generation_New(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)))
f2647_0_generation_New(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC))) → f2656_0_generation_Duplicate(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)))
f2656_0_generation_Duplicate(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC))) → f2660_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)))
f2660_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC))) → f2663_0_generation_ConstantStackPush(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153)
f2663_0_generation_ConstantStackPush(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153) → f2665_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL)
f2665_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL) → f2668_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), i153, NULL)
f2668_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), i153, NULL) → f2671_0__init__InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)))
f2671_0__init__InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC))) → f2682_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), i153, NULL)
f2682_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), i153, NULL) → f2685_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)))
f2685_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC))) → f2689_0__init__FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), NULL, java.lang.Object(Partition(EOC)), i153)
f2689_0__init__FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), NULL, java.lang.Object(Partition(EOC)), i153) → f2694_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), NULL)
f2694_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), NULL) → f2696_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, NULL, java.lang.Object(Partition(EOC)))
f2696_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, NULL, java.lang.Object(Partition(EOC))) → f2698_0__init__FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), NULL)
f2698_0__init__FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL, java.lang.Object(Partition(EOC)), NULL) → f2700_0__init__Return(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL)
f2700_0__init__Return(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), java.lang.Object(Partition(EOC)), i153, NULL) → f2704_0_generation_ConstantStackPush(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)))
f2704_0_generation_ConstantStackPush(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC))) → f2705_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL)
f2705_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL) → f2708_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL)
f2708_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL) → f2712_0__init__InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)))
f2712_0__init__InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC))) → f2715_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL)
f2715_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL) → f2718_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)))
f2718_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC))) → f2727_0__init__FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)))
f2727_0__init__FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), NULL, java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC))) → f2731_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), NULL)
f2731_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), NULL) → f2734_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, NULL, java.lang.Object(PartitionList(EOC)))
f2734_0__init__Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, NULL, java.lang.Object(PartitionList(EOC))) → f2737_0__init__FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), NULL)
f2737_0__init__FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL, java.lang.Object(PartitionList(EOC)), NULL) → f2760_0__init__Return(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL)
f2760_0__init__Return(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)), java.lang.Object(Partition(EOC)), NULL) → f2769_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)))
f2769_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC))) → f2779_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)))
f2779_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC))) → f7365_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), java.lang.Object(PartitionList(EOC)))
f7365_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i801, o1777)), i134, java.lang.Object(IntList(EOC, i801, o1777)), java.lang.Object(PartitionList(EOC))) → f7962_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i801, o1777)), i134, java.lang.Object(IntList(EOC, i801, o1777)), java.lang.Object(PartitionList(EOC)))
f7962_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC))) → f8051_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134)
f8051_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134) → f8198_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, java.lang.Object(IntList(EOC, i870, o3522)))
f8198_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, java.lang.Object(IntList(EOC, i870, o3522))) → f8329_0_getNext_Load(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(IntList(EOC, i870, o3522)))
f8329_0_getNext_Load(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(IntList(EOC, i870, o3522))) → f8393_0_getNext_FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(IntList(EOC, i870, o3522)))
f8393_0_getNext_FieldAccess(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(IntList(EOC, i870, o3522))) → f8407_0_getNext_Return(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, java.lang.Object(IntList(EOC, i870, o3522)), o3522)
f8407_0_getNext_Return(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, java.lang.Object(IntList(EOC, i870, o3522)), o3522) → f8419_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, o3522)
f8419_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, o3522) → f8426_0_generation_Load(EOS, i134, o3522, i134, o3522)
f8419_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, o3522) → f8426_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, o3522, i134, o3522)
f8426_0_generation_Load(EOS, i134, o3522, i134, o3522) → f8449_0_generation_Load(EOS, i134, o3522, i134, o3522)
f8449_0_generation_Load(EOS, i134, o3522, i134, o3522) → f2541_0_generation_Load(EOS, i134, o3522, i134, o3522)
f2586_0_generation_LE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i159) → f2589_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153) | >(i159, 0)
f2589_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153) → f2593_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134)
f2593_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134) → f2596_0_generation_IntArithmetic(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134, i153)
f2596_0_generation_IntArithmetic(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i134, i153) → f2598_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, -(i134, i153))
f2598_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i162) → f2602_0_generation_GE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i162, i134)
f2602_0_generation_GE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i162, i134) → f2606_0_generation_GE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i162, i134)
f2602_0_generation_GE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i162, i134) → f2607_0_generation_GE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i162, i134)
f2606_0_generation_GE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i162, i134) → f2616_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153) | >=(i162, i134)
f2607_0_generation_GE(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), NULL, i153, i162, i134) → f2618_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153) | <(i162, i134)
f2618_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153) → f2621_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i134)
f2621_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i134) → f2624_0_generation_IntArithmetic(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i134, i153)
f2624_0_generation_IntArithmetic(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i134, i153) → f2628_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, -(i134, i153))
f2628_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i166) → f2632_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i166, java.lang.Object(IntList(EOC, i153, o299)))
f2632_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i166, java.lang.Object(IntList(EOC, i153, o299))) → f2636_0_generation_Load(EOS, i166, java.lang.Object(IntList(EOC, i153, o299)), i166, java.lang.Object(IntList(EOC, i153, o299)))
f2632_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i166, java.lang.Object(IntList(EOC, i153, o299))) → f2636_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i153, o299)), i134, java.lang.Object(IntList(EOC, i153, o299)), i153, i166, java.lang.Object(IntList(EOC, i153, o299)), i166, java.lang.Object(IntList(EOC, i153, o299)))
f2636_0_generation_Load(EOS, i166, java.lang.Object(IntList(EOC, i153, o299)), i166, java.lang.Object(IntList(EOC, i153, o299))) → f2641_0_generation_Load(EOS, i166, java.lang.Object(IntList(EOC, i153, o299)), i166, java.lang.Object(IntList(EOC, i153, o299)))
f2641_0_generation_Load(EOS, i166, java.lang.Object(IntList(EOC, i153, o299)), i166, java.lang.Object(IntList(EOC, i153, o299))) → f2541_0_generation_Load(EOS, i166, java.lang.Object(IntList(EOC, i153, o299)), i166, java.lang.Object(IntList(EOC, i153, o299)))
f8274_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i941, NULL)), i134, java.lang.Object(IntList(EOC, i941, NULL)), i941, i943, java.lang.Object(IntList(EOC, i941, NULL)), NULL) → f5350_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i941, NULL)), i134, java.lang.Object(IntList(EOC, i941, NULL)), i941, i943, java.lang.Object(IntList(EOC, i941, NULL)), NULL)
f5350_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), i530, i531, java.lang.Object(IntList(EOC, i530, o1777)), o1775) → f5867_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), i530, o1775)
f5867_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), i530, o1775) → f6180_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), o1775, i530)
f6180_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), o1775, i530) → f6324_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), o1775, i530)
f6324_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), o1775, i530) → f6380_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), i530, o1775)
f6380_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), i530, o1775) → f6403_0_insert_Load(EOS, i530, o1775, i530, o1775)
f6380_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), i530, o1775) → f6403_1_insert_Load(EOS, i134, java.lang.Object(IntList(EOC, i530, o1777)), i134, java.lang.Object(IntList(EOC, i530, o1777)), i530, o1775, i530, o1775)
f6403_0_insert_Load(EOS, i530, o1775, i530, o1775) → f6416_0_insert_Load(EOS, i530, o1775, i530, o1775)
f6669_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), i662, NULL, i662, NULL, NULL) → f6709_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL)
f6709_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL) → f6791_0_generation_JMP(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL)
f6791_0_generation_JMP(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL) → f6845_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL)
f7252_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i801, o1777)), i134, java.lang.Object(IntList(EOC, i801, o1777)), i801, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC))) → f7531_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i801, o1777)), i134, java.lang.Object(IntList(EOC, i801, o1777)), i801, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)))
f7531_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), i134, java.lang.Object(IntList(EOC, i870, o3522)), i870, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC))) → f7662_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)))
f7662_0_generation_Store(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC))) → f7818_0_generation_JMP(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)))
f7818_0_generation_JMP(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC))) → f7962_0_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)))
f7995_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i911, o1777)), i134, java.lang.Object(IntList(EOC, i911, o1777)), i911, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC))) → f7531_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i911, o1777)), i134, java.lang.Object(IntList(EOC, i911, o1777)), i911, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)))
f8309_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i963, NULL)), i134, java.lang.Object(IntList(EOC, i963, NULL)), i963, i965, java.lang.Object(IntList(EOC, i963, NULL)), java.lang.Object(PartitionList(EOC))) → f5350_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i963, NULL)), i134, java.lang.Object(IntList(EOC, i963, NULL)), i963, i965, java.lang.Object(IntList(EOC, i963, NULL)), java.lang.Object(PartitionList(EOC)))
f8344_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i134, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i990, i992, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), o4060) → f5350_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i134, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i990, i992, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), o4060)
f9576_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i1279, NULL)), i134, java.lang.Object(IntList(EOC, i1279, NULL)), i1279, i1281, java.lang.Object(IntList(EOC, i1279, NULL)), java.lang.Object(PartitionList(EOC))) → f5350_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i1279, NULL)), i134, java.lang.Object(IntList(EOC, i1279, NULL)), i1279, i1281, java.lang.Object(IntList(EOC, i1279, NULL)), java.lang.Object(PartitionList(EOC)))
f9635_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i134, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i1317, i1319, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), java.lang.Object(PartitionList(EOC))) → f5350_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i134, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i1317, i1319, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), java.lang.Object(PartitionList(EOC)))
f2636_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i941, NULL)), i134, java.lang.Object(IntList(EOC, i941, NULL)), i941, i943, java.lang.Object(IntList(EOC, i941, NULL)), i943, java.lang.Object(IntList(EOC, i941, NULL))) → f8274_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i941, NULL)), i134, java.lang.Object(IntList(EOC, i941, NULL)), i941, i943, java.lang.Object(IntList(EOC, i941, NULL)), NULL)
f2636_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i963, NULL)), i134, java.lang.Object(IntList(EOC, i963, NULL)), i963, i965, java.lang.Object(IntList(EOC, i963, NULL)), i965, java.lang.Object(IntList(EOC, i963, NULL))) → f8309_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i963, NULL)), i134, java.lang.Object(IntList(EOC, i963, NULL)), i963, i965, java.lang.Object(IntList(EOC, i963, NULL)), java.lang.Object(PartitionList(EOC)))
f2636_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i134, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i990, i992, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i992, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063))))) → f8344_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i134, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), i990, i992, java.lang.Object(IntList(EOC, i990, java.lang.Object(IntList(EOC, i988, o4063)))), o4060)
f2636_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i1279, NULL)), i134, java.lang.Object(IntList(EOC, i1279, NULL)), i1279, i1281, java.lang.Object(IntList(EOC, i1279, NULL)), i1281, java.lang.Object(IntList(EOC, i1279, NULL))) → f9576_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i1279, NULL)), i134, java.lang.Object(IntList(EOC, i1279, NULL)), i1279, i1281, java.lang.Object(IntList(EOC, i1279, NULL)), java.lang.Object(PartitionList(EOC)))
f2636_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i134, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i1317, i1319, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i1319, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285))))) → f9635_0_generation_Return(EOS, i134, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i134, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), i1317, i1319, java.lang.Object(IntList(EOC, i1317, java.lang.Object(IntList(EOC, i1315, o5285)))), java.lang.Object(PartitionList(EOC)))
f6403_1_insert_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), i662, NULL, i662, NULL) → f6669_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), i134, java.lang.Object(IntList(EOC, i662, o1777)), i662, NULL, i662, NULL, NULL)
f6403_1_insert_Load(EOS, i134, java.lang.Object(IntList(EOC, i801, o1777)), i134, java.lang.Object(IntList(EOC, i801, o1777)), i801, java.lang.Object(PartitionList(EOC)), i801, java.lang.Object(PartitionList(EOC))) → f7252_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i801, o1777)), i134, java.lang.Object(IntList(EOC, i801, o1777)), i801, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)))
f6403_1_insert_Load(EOS, i134, java.lang.Object(IntList(EOC, i911, o1777)), i134, java.lang.Object(IntList(EOC, i911, o1777)), i911, java.lang.Object(PartitionList(EOC)), i911, java.lang.Object(PartitionList(EOC))) → f7995_0_insert_Return(EOS, i134, java.lang.Object(IntList(EOC, i911, o1777)), i134, java.lang.Object(IntList(EOC, i911, o1777)), i911, java.lang.Object(PartitionList(EOC)), java.lang.Object(PartitionList(EOC)))

Combined rules. Obtained 16 IRules

P rules:
f6921_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, o1777) → f6934_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i662, o1777)), NULL, i134, o1777, i134, o1777)
f8419_0_generation_InvokeMethod(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, o3522) → f8426_1_generation_Load(EOS, i134, java.lang.Object(IntList(EOC, i870, o3522)), java.lang.Object(PartitionList(EOC)), i134, o3522, i134, o3522)
f2544_0_generation_NONNULL(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), java.lang.Object(IntList(EOC, x1, x2))) → f2627_0_generation_NE(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), NULL, x1, -(x0, x1)) | <=(-(x0, x1), 0)
f2627_0_generation_NE(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), NULL, x1, x3) → f6921_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), NULL, x0, x2) | !(=(x3, 0))
f6921_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), NULL, x0, x2) → f2544_0_generation_NONNULL(EOS, x0, x2, x0, x2, x2)
f2627_0_generation_NE(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), NULL, x1, 0) → f8419_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), java.lang.Object(PartitionList(EOC)), x0, x2)
f8419_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), java.lang.Object(PartitionList(EOC)), x0, x2) → f2544_0_generation_NONNULL(EOS, x0, x2, x0, x2, x2)
f2544_0_generation_NONNULL(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), java.lang.Object(IntList(EOC, x1, x2))) → f2627_0_generation_NE(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), NULL, x1, -(x0, x1)) | &&(>(-(x0, x1), 0), >=(-(x0, x1), x0))
f2544_0_generation_NONNULL(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), java.lang.Object(IntList(EOC, x1, x2))) → f2544_0_generation_NONNULL(EOS, -(x0, x1), java.lang.Object(IntList(EOC, x1, x2)), -(x0, x1), java.lang.Object(IntList(EOC, x1, x2)), java.lang.Object(IntList(EOC, x1, x2))) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f6380_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), x1, x3) → f6416_0_insert_Load(EOS, x1, x3, x1, x3)
f2544_0_generation_NONNULL(EOS, x0, java.lang.Object(IntList(EOC, x1, NULL)), x0, java.lang.Object(IntList(EOC, x1, NULL)), java.lang.Object(IntList(EOC, x1, NULL))) → f6380_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, NULL)), x0, java.lang.Object(IntList(EOC, x1, NULL)), x1, NULL) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f2544_0_generation_NONNULL(EOS, x0, java.lang.Object(IntList(EOC, x1, NULL)), x0, java.lang.Object(IntList(EOC, x1, NULL)), java.lang.Object(IntList(EOC, x1, NULL))) → f6380_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, NULL)), x0, java.lang.Object(IntList(EOC, x1, NULL)), x1, java.lang.Object(PartitionList(EOC))) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f2544_0_generation_NONNULL(EOS, x0, java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3)))), x0, java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3)))), java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3))))) → f6380_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3)))), x0, java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3)))), x1, x4) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f2544_0_generation_NONNULL(EOS, x0, java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3)))), x0, java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3)))), java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3))))) → f6380_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3)))), x0, java.lang.Object(IntList(EOC, x1, java.lang.Object(IntList(EOC, x2, x3)))), x1, java.lang.Object(PartitionList(EOC))) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f6380_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), x1, NULL) → f6921_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), NULL, x0, x2)
f6380_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), x0, java.lang.Object(IntList(EOC, x1, x2)), x1, java.lang.Object(PartitionList(EOC))) → f8419_0_generation_InvokeMethod(EOS, x0, java.lang.Object(IntList(EOC, x1, x2)), java.lang.Object(PartitionList(EOC)), x0, x2)

Filtered ground terms:


f6921_0_generation_InvokeMethod(x1, x2, x3, x4, x5, x6) → f6921_0_generation_InvokeMethod(x2, x3, x5, x6)
f6934_1_generation_Load(x1, x2, x3, x4, x5, x6, x7, x8) → f6934_1_generation_Load(x2, x3, x5, x6, x7, x8)
f8419_0_generation_InvokeMethod(x1, x2, x3, x4, x5, x6) → f8419_0_generation_InvokeMethod(x2, x3, x5, x6)
f8426_1_generation_Load(x1, x2, x3, x4, x5, x6, x7, x8) → f8426_1_generation_Load(x2, x3, x5, x6, x7, x8)
f2544_0_generation_NONNULL(x1, x2, x3, x4, x5, x6) → f2544_0_generation_NONNULL(x2, x3, x4, x5, x6)
Cond_f2544_0_generation_NONNULL(x1, x2, x3, x4, x5, x6, x7) → Cond_f2544_0_generation_NONNULL(x1, x3, x4, x5, x6, x7)
f2627_0_generation_NE(x1, x2, x3, x4, x5, x6, x7, x8) → f2627_0_generation_NE(x2, x3, x4, x5, x7, x8)
Cond_f2627_0_generation_NE(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_f2627_0_generation_NE(x1, x3, x4, x5, x6, x8, x9)
Cond_f2544_0_generation_NONNULL1(x1, x2, x3, x4, x5, x6, x7) → Cond_f2544_0_generation_NONNULL1(x1, x3, x4, x5, x6, x7)
Cond_f2544_0_generation_NONNULL2(x1, x2, x3, x4, x5, x6, x7) → Cond_f2544_0_generation_NONNULL2(x1, x3, x4, x5, x6, x7)
f6380_0_generation_InvokeMethod(x1, x2, x3, x4, x5, x6, x7) → f6380_0_generation_InvokeMethod(x2, x3, x4, x5, x6, x7)
f6416_0_insert_Load(x1, x2, x3, x4, x5) → f6416_0_insert_Load(x2, x3, x4, x5)
Cond_f2544_0_generation_NONNULL3(x1, x2, x3, x4, x5, x6, x7) → Cond_f2544_0_generation_NONNULL3(x1, x3, x4, x5, x6, x7)
Cond_f2544_0_generation_NONNULL4(x1, x2, x3, x4, x5, x6, x7) → Cond_f2544_0_generation_NONNULL4(x1, x3, x4, x5, x6, x7)
Cond_f2544_0_generation_NONNULL5(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_f2544_0_generation_NONNULL5(x1, x3, x4, x5, x6, x7, x8)
Cond_f2544_0_generation_NONNULL6(x1, x2, x3, x4, x5, x6, x7) → Cond_f2544_0_generation_NONNULL6(x1, x3, x4, x5, x6, x7)
IntList(x1, x2, x3) → IntList(x2, x3)
PartitionList(x1) → PartitionList

Filtered duplicate terms:


f6921_0_generation_InvokeMethod(x1, x2, x3, x4) → f6921_0_generation_InvokeMethod(x2, x3)
f6934_1_generation_Load(x1, x2, x3, x4, x5, x6) → f6934_1_generation_Load(x2, x5)
f8419_0_generation_InvokeMethod(x1, x2, x3, x4) → f8419_0_generation_InvokeMethod(x2, x3)
f8426_1_generation_Load(x1, x2, x3, x4, x5, x6) → f8426_1_generation_Load(x2, x5)
f2544_0_generation_NONNULL(x1, x2, x3, x4, x5) → f2544_0_generation_NONNULL(x3, x5)
Cond_f2544_0_generation_NONNULL(x1, x2, x3, x4, x5, x6) → Cond_f2544_0_generation_NONNULL(x1, x4, x6)
f2627_0_generation_NE(x1, x2, x3, x4, x5, x6) → f2627_0_generation_NE(x3, x4, x6)
Cond_f2627_0_generation_NE(x1, x2, x3, x4, x5, x6, x7) → Cond_f2627_0_generation_NE(x1, x4, x5, x7)
Cond_f2544_0_generation_NONNULL1(x1, x2, x3, x4, x5, x6) → Cond_f2544_0_generation_NONNULL1(x1, x4, x6)
Cond_f2544_0_generation_NONNULL2(x1, x2, x3, x4, x5, x6) → Cond_f2544_0_generation_NONNULL2(x1, x4, x6)
f6380_0_generation_InvokeMethod(x1, x2, x3, x4, x5, x6) → f6380_0_generation_InvokeMethod(x3, x4, x6)
f6416_0_insert_Load(x1, x2, x3, x4) → f6416_0_insert_Load(x3, x4)
Cond_f2544_0_generation_NONNULL3(x1, x2, x3, x4, x5, x6) → Cond_f2544_0_generation_NONNULL3(x1, x4, x6)
Cond_f2544_0_generation_NONNULL4(x1, x2, x3, x4, x5, x6) → Cond_f2544_0_generation_NONNULL4(x1, x4, x6)
Cond_f2544_0_generation_NONNULL5(x1, x2, x3, x4, x5, x6, x7) → Cond_f2544_0_generation_NONNULL5(x1, x4, x6, x7)
Cond_f2544_0_generation_NONNULL6(x1, x2, x3, x4, x5, x6) → Cond_f2544_0_generation_NONNULL6(x1, x4, x6)

Filtered unneeded terms:


Cond_f2627_0_generation_NE(x1, x2, x3, x4) → Cond_f2627_0_generation_NE(x1, x2, x3)

Prepared 16 rules for path length conversion:

P rules:
f6921_0_generation_InvokeMethod(java.lang.Object(IntList(i662, o1777)), i134, i662, o1777) → f6934_1_generation_Load(java.lang.Object(IntList(i662, o1777)), i134)
f8419_0_generation_InvokeMethod(java.lang.Object(IntList(i870, o3522)), i134, i870, o3522) → f8426_1_generation_Load(java.lang.Object(IntList(i870, o3522)), i134)
f2544_0_generation_NONNULL(x0, java.lang.Object(IntList(x1, x2))) → f2627_0_generation_NE(x0, java.lang.Object(IntList(x1, x2)), -(x0, x1), x1, x2) | <=(-(x0, x1), 0)
f2627_0_generation_NE(x0, java.lang.Object(IntList(x1, x2)), x3, x1, x2) → f6921_0_generation_InvokeMethod(java.lang.Object(IntList(x1, x2)), x0, x1, x2) | !(=(x3, 0))
f6921_0_generation_InvokeMethod(java.lang.Object(IntList(x1, x2)), x0, x1, x2) → f2544_0_generation_NONNULL(x0, x2)
f2627_0_generation_NE(x0, java.lang.Object(IntList(x1, x2)), 0, x1, x2) → f8419_0_generation_InvokeMethod(java.lang.Object(IntList(x1, x2)), x0, x1, x2)
f8419_0_generation_InvokeMethod(java.lang.Object(IntList(x1, x2)), x0, x1, x2) → f2544_0_generation_NONNULL(x0, x2)
f2544_0_generation_NONNULL(x0, java.lang.Object(IntList(x1, x2))) → f2627_0_generation_NE(x0, java.lang.Object(IntList(x1, x2)), -(x0, x1), x1, x2) | &&(>(-(x0, x1), 0), >=(-(x0, x1), x0))
f2544_0_generation_NONNULL(x0, java.lang.Object(IntList(x1, x2))) → f2544_0_generation_NONNULL(-(x0, x1), java.lang.Object(IntList(x1, x2))) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f6380_0_generation_InvokeMethod(x0, java.lang.Object(IntList(x1, x2)), x3, x1) → f6416_0_insert_Load(x1, x3)
f2544_0_generation_NONNULL(x0, java.lang.Object(IntList(x1, NULL))) → f6380_0_generation_InvokeMethod(x0, java.lang.Object(IntList(x1, NULL)), NULL, x1) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f2544_0_generation_NONNULL(x0, java.lang.Object(IntList(x1, NULL))) → f6380_0_generation_InvokeMethod(x0, java.lang.Object(IntList(x1, NULL)), java.lang.Object(PartitionList), x1) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f2544_0_generation_NONNULL(x0, java.lang.Object(IntList(x1, java.lang.Object(IntList(x2, x3))))) → f6380_0_generation_InvokeMethod(x0, java.lang.Object(IntList(x1, java.lang.Object(IntList(x2, x3)))), x4, x1) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f2544_0_generation_NONNULL(x0, java.lang.Object(IntList(x1, java.lang.Object(IntList(x2, x3))))) → f6380_0_generation_InvokeMethod(x0, java.lang.Object(IntList(x1, java.lang.Object(IntList(x2, x3)))), java.lang.Object(PartitionList), x1) | &&(<(-(x0, x1), x0), >(-(x0, x1), 0))
f6380_0_generation_InvokeMethod(x0, java.lang.Object(IntList(x1, x2)), NULL, x1) → f6921_0_generation_InvokeMethod(java.lang.Object(IntList(x1, x2)), x0, x1, x2)
f6380_0_generation_InvokeMethod(x0, java.lang.Object(IntList(x1, x2)), java.lang.Object(PartitionList), x1) → f8419_0_generation_InvokeMethod(java.lang.Object(IntList(x1, x2)), x0, x1, x2)

Finished conversion. Obtained 14 rules.

P rules:
f2544_0_generation_NONNULL(x6, v70) → f2627_0_generation_NE(x6, v71, -(x6, x7), x7, v72) | &&(&&(&&(&&(&&(&&(<=(+(x7, 2), v70), <=(-(x6, x7), 0)), >(+(v72, 1), 0)), <=(+(v72, 1), v70)), >(+(v71, 1), 1)), <=(v71, v70)), >(+(v70, 1), 1))
f2627_0_generation_NE(x9, v73, x12, x10, v74) → f6921_0_generation_InvokeMethod(v75, x9, x10, v76) | &&(&&(&&(&&(&&(&&(&&(&&(<(x12, 0), <=(+(x10, 2), v73)), >(+(v76, 1), 0)), <=(v76, v74)), <=(+(v76, 1), v73)), >(+(v75, 1), 1)), <=(v75, v73)), >(+(v74, 1), 0)), >(+(v73, 1), 1))
f2627_0_generation_NE(x9, v73, x12, x10, v74) → f6921_0_generation_InvokeMethod(v75, x9, x10, v76) | &&(&&(&&(&&(&&(&&(&&(&&(>(x12, 0), <=(+(x10, 2), v73)), >(+(v76, 1), 0)), <=(v76, v74)), <=(+(v76, 1), v73)), >(+(v75, 1), 1)), <=(v75, v73)), >(+(v74, 1), 0)), >(+(v73, 1), 1))
f6921_0_generation_InvokeMethod(v77, x15, x13, v78) → f2544_0_generation_NONNULL(x15, v79) | &&(&&(&&(&&(&&(<=(+(x13, 2), v77), >(+(v79, 1), 0)), <=(v79, v78)), <=(+(v79, 1), v77)), >(+(v78, 1), 0)), >(+(v77, 1), 1))
f2627_0_generation_NE(x16, v80, c0, x17, v81) → f8419_0_generation_InvokeMethod(v82, x16, x17, v83) | &&(&&(&&(&&(&&(&&(&&(&&(<=(+(x17, 2), v80), >(+(v83, 1), 0)), <=(v83, v81)), <=(+(v83, 1), v80)), >(+(v82, 1), 1)), <=(v82, v80)), >(+(v81, 1), 0)), >(+(v80, 1), 1)), =(0, c0))
f8419_0_generation_InvokeMethod(v84, x21, x19, v85) → f2544_0_generation_NONNULL(x21, v86) | &&(&&(&&(&&(&&(<=(+(x19, 2), v84), >(+(v86, 1), 0)), <=(v86, v85)), <=(+(v86, 1), v84)), >(+(v85, 1), 0)), >(+(v84, 1), 1))
f2544_0_generation_NONNULL(x22, v87) → f2627_0_generation_NE(x22, v88, -(x22, x23), x23, v89) | &&(&&(&&(&&(&&(&&(&&(<=(+(x23, 2), v87), >=(-(x22, x23), x22)), >(-(x22, x23), 0)), >(+(v89, 1), 0)), <=(+(v89, 1), v87)), >(+(v88, 1), 1)), <=(v88, v87)), >(+(v87, 1), 1))
f2544_0_generation_NONNULL(x25, v90) → f2544_0_generation_NONNULL(-(x25, x26), v91) | &&(&&(&&(&&(&&(<=(+(x26, 2), v90), >(-(x25, x26), 0)), <(-(x25, x26), x25)), >(+(v91, 1), 1)), <=(v91, v90)), >(+(v90, 1), 1))
f2544_0_generation_NONNULL(x32, v92) → f6380_0_generation_InvokeMethod(x32, v93, v94, x33) | &&(&&(&&(&&(&&(&&(&&(<=(+(x33, 2), v92), >(-(x32, x33), 0)), <(-(x32, x33), x32)), >(+(v94, 1), 0)), <=(+(v94, 2), v92)), >(+(v93, 1), 2)), <=(v93, v92)), >(+(v92, 1), 2))
f2544_0_generation_NONNULL(x34, v95) → f6380_0_generation_InvokeMethod(x34, v96, v97, x35) | &&(&&(&&(&&(&&(&&(&&(<=(+(x35, 2), v95), >(-(x34, x35), 0)), <(-(x34, x35), x34)), >(+(v97, 1), 1)), <=(+(v97, 1), v95)), >(+(v96, 1), 2)), <=(v96, v95)), >(+(v95, 1), 2))
f2544_0_generation_NONNULL(x36, v98) → f6380_0_generation_InvokeMethod(x36, v99, v100, x37) | &&(&&(&&(&&(&&(&&(<=(+(x37, 2), v98), >(-(x36, x37), 0)), <(-(x36, x37), x36)), >(+(v99, 1), 3)), <=(v99, v98)), >(+(v98, 1), 3)), >(+(v100, 1), 0))
f2544_0_generation_NONNULL(x41, v101) → f6380_0_generation_InvokeMethod(x41, v102, v103, x42) | &&(&&(&&(&&(&&(&&(&&(<=(+(x42, 2), v101), >(-(x41, x42), 0)), <(-(x41, x42), x41)), >(+(v103, 1), 1)), <=(+(v103, 2), v101)), >(+(v102, 1), 3)), <=(v102, v101)), >(+(v101, 1), 3))
f6380_0_generation_InvokeMethod(x45, v104, v105, x46) → f6921_0_generation_InvokeMethod(v106, x45, x46, v107) | &&(&&(&&(&&(&&(&&(<=(+(x46, 2), v104), >(+(v107, 1), 0)), <=(+(v107, 1), v104)), >(+(v106, 1), 1)), <=(v106, v104)), >(+(v105, 1), 0)), >(+(v104, 1), 1))
f6380_0_generation_InvokeMethod(x48, v108, v109, x49) → f8419_0_generation_InvokeMethod(v110, x48, x49, v111) | &&(&&(&&(&&(&&(&&(<=(+(x49, 2), v108), >(+(v111, 1), 0)), <=(+(v111, 1), v108)), >(+(v110, 1), 1)), <=(v110, v108)), >(+(v109, 1), 1)), >(+(v108, 1), 1))

(44) Obligation:

Rules:
f2544_0_generation_NONNULL(x6, v70) → f2627_0_generation_NE(x6, v71, -(x6, x7), x7, v72) | &&(&&(&&(&&(&&(&&(<=(+(x7, 2), v70), <=(-(x6, x7), 0)), >(+(v72, 1), 0)), <=(+(v72, 1), v70)), >(+(v71, 1), 1)), <=(v71, v70)), >(+(v70, 1), 1))
f2627_0_generation_NE(x9, v73, x12, x10, v74) → f6921_0_generation_InvokeMethod(v75, x9, x10, v76) | &&(&&(&&(&&(&&(&&(&&(&&(<(x12, 0), <=(+(x10, 2), v73)), >(+(v76, 1), 0)), <=(v76, v74)), <=(+(v76, 1), v73)), >(+(v75, 1), 1)), <=(v75, v73)), >(+(v74, 1), 0)), >(+(v73, 1), 1))
f2627_0_generation_NE(x9, v73, x12, x10, v74) → f6921_0_generation_InvokeMethod(v75, x9, x10, v76) | &&(&&(&&(&&(&&(&&(&&(&&(>(x12, 0), <=(+(x10, 2), v73)), >(+(v76, 1), 0)), <=(v76, v74)), <=(+(v76, 1), v73)), >(+(v75, 1), 1)), <=(v75, v73)), >(+(v74, 1), 0)), >(+(v73, 1), 1))
f6921_0_generation_InvokeMethod(v77, x15, x13, v78) → f2544_0_generation_NONNULL(x15, v79) | &&(&&(&&(&&(&&(<=(+(x13, 2), v77), >(+(v79, 1), 0)), <=(v79, v78)), <=(+(v79, 1), v77)), >(+(v78, 1), 0)), >(+(v77, 1), 1))
f2627_0_generation_NE(x16, v80, c0, x17, v81) → f8419_0_generation_InvokeMethod(v82, x16, x17, v83) | &&(&&(&&(&&(&&(&&(&&(&&(<=(+(x17, 2), v80), >(+(v83, 1), 0)), <=(v83, v81)), <=(+(v83, 1), v80)), >(+(v82, 1), 1)), <=(v82, v80)), >(+(v81, 1), 0)), >(+(v80, 1), 1)), =(0, c0))
f8419_0_generation_InvokeMethod(v84, x21, x19, v85) → f2544_0_generation_NONNULL(x21, v86) | &&(&&(&&(&&(&&(<=(+(x19, 2), v84), >(+(v86, 1), 0)), <=(v86, v85)), <=(+(v86, 1), v84)), >(+(v85, 1), 0)), >(+(v84, 1), 1))
f2544_0_generation_NONNULL(x22, v87) → f2627_0_generation_NE(x22, v88, -(x22, x23), x23, v89) | &&(&&(&&(&&(&&(&&(&&(<=(+(x23, 2), v87), >=(-(x22, x23), x22)), >(-(x22, x23), 0)), >(+(v89, 1), 0)), <=(+(v89, 1), v87)), >(+(v88, 1), 1)), <=(v88, v87)), >(+(v87, 1), 1))
f2544_0_generation_NONNULL(x25, v90) → f2544_0_generation_NONNULL(-(x25, x26), v91) | &&(&&(&&(&&(&&(<=(+(x26, 2), v90), >(-(x25, x26), 0)), <(-(x25, x26), x25)), >(+(v91, 1), 1)), <=(v91, v90)), >(+(v90, 1), 1))
f2544_0_generation_NONNULL(x32, v92) → f6380_0_generation_InvokeMethod(x32, v93, v94, x33) | &&(&&(&&(&&(&&(&&(&&(<=(+(x33, 2), v92), >(-(x32, x33), 0)), <(-(x32, x33), x32)), >(+(v94, 1), 0)), <=(+(v94, 2), v92)), >(+(v93, 1), 2)), <=(v93, v92)), >(+(v92, 1), 2))
f2544_0_generation_NONNULL(x34, v95) → f6380_0_generation_InvokeMethod(x34, v96, v97, x35) | &&(&&(&&(&&(&&(&&(&&(<=(+(x35, 2), v95), >(-(x34, x35), 0)), <(-(x34, x35), x34)), >(+(v97, 1), 1)), <=(+(v97, 1), v95)), >(+(v96, 1), 2)), <=(v96, v95)), >(+(v95, 1), 2))
f2544_0_generation_NONNULL(x36, v98) → f6380_0_generation_InvokeMethod(x36, v99, v100, x37) | &&(&&(&&(&&(&&(&&(<=(+(x37, 2), v98), >(-(x36, x37), 0)), <(-(x36, x37), x36)), >(+(v99, 1), 3)), <=(v99, v98)), >(+(v98, 1), 3)), >(+(v100, 1), 0))
f2544_0_generation_NONNULL(x41, v101) → f6380_0_generation_InvokeMethod(x41, v102, v103, x42) | &&(&&(&&(&&(&&(&&(&&(<=(+(x42, 2), v101), >(-(x41, x42), 0)), <(-(x41, x42), x41)), >(+(v103, 1), 1)), <=(+(v103, 2), v101)), >(+(v102, 1), 3)), <=(v102, v101)), >(+(v101, 1), 3))
f6380_0_generation_InvokeMethod(x45, v104, v105, x46) → f6921_0_generation_InvokeMethod(v106, x45, x46, v107) | &&(&&(&&(&&(&&(&&(<=(+(x46, 2), v104), >(+(v107, 1), 0)), <=(+(v107, 1), v104)), >(+(v106, 1), 1)), <=(v106, v104)), >(+(v105, 1), 0)), >(+(v104, 1), 1))
f6380_0_generation_InvokeMethod(x48, v108, v109, x49) → f8419_0_generation_InvokeMethod(v110, x48, x49, v111) | &&(&&(&&(&&(&&(&&(<=(+(x49, 2), v108), >(+(v111, 1), 0)), <=(+(v111, 1), v108)), >(+(v110, 1), 1)), <=(v110, v108)), >(+(v109, 1), 1)), >(+(v108, 1), 1))

(45) PolynomialOrderProcessor (SOUND transformation)

Found the following polynomial interpretation:


[f2544_0_generation_NONNULL(x78, x80)] = 1 + 3·x80
[f2627_0_generation_NE(x83, x85, x87, x89, x91)] = 3·x85
[f6921_0_generation_InvokeMethod(x94, x96, x98, x100)] = -1 + 3·x94
[f8419_0_generation_InvokeMethod(x103, x105, x107, x109)] = -1 + 3·x103
[f6380_0_generation_InvokeMethod(x112, x114, x116, x118)] = 3·x114

Therefore the following rule(s) have been dropped:


f2544_0_generation_NONNULL(x0, x1) → f2627_0_generation_NE(x0, x2, -(x0, x3), x3, x4) | &&(&&(&&(&&(&&(&&(<=(+(x3, 2), x1), <=(-(x0, x3), 0)), >(+(x4, 1), 0)), <=(+(x4, 1), x1)), >(+(x2, 1), 1)), <=(x2, x1)), >(+(x1, 1), 1))
f2627_0_generation_NE(x5, x6, x7, x8, x9) → f6921_0_generation_InvokeMethod(x10, x5, x8, x11) | &&(&&(&&(&&(&&(&&(&&(&&(<(x7, 0), <=(+(x8, 2), x6)), >(+(x11, 1), 0)), <=(x11, x9)), <=(+(x11, 1), x6)), >(+(x10, 1), 1)), <=(x10, x6)), >(+(x9, 1), 0)), >(+(x6, 1), 1))
f2627_0_generation_NE(x12, x13, x14, x15, x16) → f6921_0_generation_InvokeMethod(x17, x12, x15, x18) | &&(&&(&&(&&(&&(&&(&&(&&(>(x14, 0), <=(+(x15, 2), x13)), >(+(x18, 1), 0)), <=(x18, x16)), <=(+(x18, 1), x13)), >(+(x17, 1), 1)), <=(x17, x13)), >(+(x16, 1), 0)), >(+(x13, 1), 1))
f6921_0_generation_InvokeMethod(x19, x20, x21, x22) → f2544_0_generation_NONNULL(x20, x23) | &&(&&(&&(&&(&&(<=(+(x21, 2), x19), >(+(x23, 1), 0)), <=(x23, x22)), <=(+(x23, 1), x19)), >(+(x22, 1), 0)), >(+(x19, 1), 1))
f2627_0_generation_NE(x24, x25, x26, x27, x28) → f8419_0_generation_InvokeMethod(x29, x24, x27, x30) | &&(&&(&&(&&(&&(&&(&&(&&(<=(+(x27, 2), x25), >(+(x30, 1), 0)), <=(x30, x28)), <=(+(x30, 1), x25)), >(+(x29, 1), 1)), <=(x29, x25)), >(+(x28, 1), 0)), >(+(x25, 1), 1)), =(0, x26))
f8419_0_generation_InvokeMethod(x31, x32, x33, x34) → f2544_0_generation_NONNULL(x32, x35) | &&(&&(&&(&&(&&(<=(+(x33, 2), x31), >(+(x35, 1), 0)), <=(x35, x34)), <=(+(x35, 1), x31)), >(+(x34, 1), 0)), >(+(x31, 1), 1))
f2544_0_generation_NONNULL(x36, x37) → f2627_0_generation_NE(x36, x38, -(x36, x39), x39, x40) | &&(&&(&&(&&(&&(&&(&&(<=(+(x39, 2), x37), >=(-(x36, x39), x36)), >(-(x36, x39), 0)), >(+(x40, 1), 0)), <=(+(x40, 1), x37)), >(+(x38, 1), 1)), <=(x38, x37)), >(+(x37, 1), 1))
f2544_0_generation_NONNULL(x45, x46) → f6380_0_generation_InvokeMethod(x45, x47, x48, x49) | &&(&&(&&(&&(&&(&&(&&(<=(+(x49, 2), x46), >(-(x45, x49), 0)), <(-(x45, x49), x45)), >(+(x48, 1), 0)), <=(+(x48, 2), x46)), >(+(x47, 1), 2)), <=(x47, x46)), >(+(x46, 1), 2))
f2544_0_generation_NONNULL(x50, x51) → f6380_0_generation_InvokeMethod(x50, x52, x53, x54) | &&(&&(&&(&&(&&(&&(&&(<=(+(x54, 2), x51), >(-(x50, x54), 0)), <(-(x50, x54), x50)), >(+(x53, 1), 1)), <=(+(x53, 1), x51)), >(+(x52, 1), 2)), <=(x52, x51)), >(+(x51, 1), 2))
f2544_0_generation_NONNULL(x55, x56) → f6380_0_generation_InvokeMethod(x55, x57, x58, x59) | &&(&&(&&(&&(&&(&&(<=(+(x59, 2), x56), >(-(x55, x59), 0)), <(-(x55, x59), x55)), >(+(x57, 1), 3)), <=(x57, x56)), >(+(x56, 1), 3)), >(+(x58, 1), 0))
f2544_0_generation_NONNULL(x60, x61) → f6380_0_generation_InvokeMethod(x60, x62, x63, x64) | &&(&&(&&(&&(&&(&&(&&(<=(+(x64, 2), x61), >(-(x60, x64), 0)), <(-(x60, x64), x60)), >(+(x63, 1), 1)), <=(+(x63, 2), x61)), >(+(x62, 1), 3)), <=(x62, x61)), >(+(x61, 1), 3))
f6380_0_generation_InvokeMethod(x65, x66, x67, x68) → f6921_0_generation_InvokeMethod(x69, x65, x68, x70) | &&(&&(&&(&&(&&(&&(<=(+(x68, 2), x66), >(+(x70, 1), 0)), <=(+(x70, 1), x66)), >(+(x69, 1), 1)), <=(x69, x66)), >(+(x67, 1), 0)), >(+(x66, 1), 1))
f6380_0_generation_InvokeMethod(x71, x72, x73, x74) → f8419_0_generation_InvokeMethod(x75, x71, x74, x76) | &&(&&(&&(&&(&&(&&(<=(+(x74, 2), x72), >(+(x76, 1), 0)), <=(+(x76, 1), x72)), >(+(x75, 1), 1)), <=(x75, x72)), >(+(x73, 1), 1)), >(+(x72, 1), 1))

(46) Obligation:

Rules:
f2544_0_generation_NONNULL(x41, x42) → f2544_0_generation_NONNULL(-(x41, x43), x44) | &&(&&(&&(&&(&&(<=(+(x43, 2), x42), >(-(x41, x43), 0)), <(-(x41, x43), x41)), >(+(x44, 1), 1)), <=(x44, x42)), >(+(x42, 1), 1))

(47) LinearRankingProcessor (EQUIVALENT transformation)

Linear ranking:


[f2544_0_generation_NONNULL(x)] = 1·x1

where x = (x1, ... ,xn).



Therefore the following rule(s) have been dropped:


f2544_0_generation_NONNULL(x0, x1) → f2544_0_generation_NONNULL(-(x0, x2), x3) | &&(&&(&&(&&(&&(<=(+(x2, 2), x1), >(-(x0, x2), 0)), <(-(x0, x2), x0)), >(+(x3, 1), 1)), <=(x3, x1)), >(+(x1, 1), 1))

(48) YES

(49) Obligation:

SCC of termination graph based on JBC Program.
SCC contains nodes from the following methods: PartitionList.main([Ljava/lang/String;)V
SCC calls the following helper methods:
Performed SCC analyses:
  • Used field analysis yielded the following read fields:
  • Marker field analysis yielded the following relations that could be markers:

(50) SCCToIntTRSProof (SOUND transformation)

Transformed FIGraph SCCs to intTRSs. Log:

Generated rules. Obtained 22 IRules

P rules:
f626_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58) → f630_0_partitionOf_GT(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i11)
f630_0_partitionOf_GT(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i11) → f635_0_partitionOf_GT(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i11)
f635_0_partitionOf_GT(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i11) → f645_0_partitionOf_New(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58) | <=(i58, i11)
f645_0_partitionOf_New(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58) → f653_0_partitionOf_Duplicate(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58)
f653_0_partitionOf_Duplicate(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58) → f661_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58)
f661_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58) → f668_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58)
f668_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58) → f674_0_partitionOf_InvokeMethod(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58)
f674_0_partitionOf_InvokeMethod(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58) → f682_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58)
f682_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58) → f697_0__init__InvokeMethod(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58)
f697_0__init__InvokeMethod(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58) → f702_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58)
f702_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58) → f707_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58)
f707_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58) → f715_0__init__FieldAccess(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58)
f715_0__init__FieldAccess(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58, i58) → f721_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58)
f721_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58) → f724_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58)
f724_0__init__Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58) → f726_0__init__FieldAccess(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58)
f726_0__init__FieldAccess(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58) → f734_0__init__Return(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58)
f734_0__init__Return(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58) → f737_0_partitionOf_Store(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58)
f737_0_partitionOf_Store(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58) → f741_0_partitionOf_Inc(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58)
f741_0_partitionOf_Inc(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58) → f745_0_partitionOf_JMP(EOS, java.lang.Object(ARRAY(i11)), i11, i11, +(i58, 1)) | >(i58, 0)
f745_0_partitionOf_JMP(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i73) → f798_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i73)
f798_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i73) → f620_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i73)
f620_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58) → f626_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(i11)), i11, i11, i58, i58)

Combined rules. Obtained 1 IRules

P rules:
f626_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(x0)), x0, x0, x1, x1) → f626_0_partitionOf_Load(EOS, java.lang.Object(ARRAY(x0)), x0, x0, +(x1, 1), +(x1, 1)) | &&(<=(x1, x0), >(x1, 0))

Filtered ground terms:


f626_0_partitionOf_Load(x1, x2, x3, x4, x5, x6) → f626_0_partitionOf_Load(x2, x3, x4, x5, x6)
Cond_f626_0_partitionOf_Load(x1, x2, x3, x4, x5, x6, x7) → Cond_f626_0_partitionOf_Load(x1, x3, x4, x5, x6, x7)

Filtered duplicate terms:


f626_0_partitionOf_Load(x1, x2, x3, x4, x5) → f626_0_partitionOf_Load(x1, x5)
Cond_f626_0_partitionOf_Load(x1, x2, x3, x4, x5, x6) → Cond_f626_0_partitionOf_Load(x1, x2, x6)

Prepared 1 rules for path length conversion:

P rules:
f626_0_partitionOf_Load(java.lang.Object(ARRAY(x0)), x1, x0) → f626_0_partitionOf_Load(java.lang.Object(ARRAY(x0)), +(x1, 1), x0) | &&(<=(x1, x0), >(x1, 0))

Finished conversion. Obtained 1 rules.

P rules:
f626_0_partitionOf_Load(v5, x1, x0) → f626_0_partitionOf_Load(v6, +(x1, 1), x0) | &&(&&(&&(&&(>(x1, 0), <=(x1, x0)), >(+(v6, 1), 1)), <=(v6, v5)), >(+(v5, 1), 1))

(51) Obligation:

Rules:
f626_0_partitionOf_Load(v5, x1, x0) → f626_0_partitionOf_Load(v6, +(x1, 1), x0) | &&(&&(&&(&&(>(x1, 0), <=(x1, x0)), >(+(v6, 1), 1)), <=(v6, v5)), >(+(v5, 1), 1))

(52) LinearRankingProcessor (EQUIVALENT transformation)

Linear ranking:


[f626_0_partitionOf_Load(x)] = (-1)·x2 + 1·x3

where x = (x1, ... ,xn).



Therefore the following rule(s) have been dropped:


f626_0_partitionOf_Load(x0, x1, x2) → f626_0_partitionOf_Load(x3, +(x1, 1), x2) | &&(&&(&&(&&(>(x1, 0), <=(x1, x2)), >(+(x3, 1), 1)), <=(x3, x0)), >(+(x0, 1), 1))

(53) YES