/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.jar /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/benchmark/theBenchmark.jar # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty termination of the given Bare JBC problem could be proven: (0) Bare JBC problem (1) BareJBCToJBCProof [EQUIVALENT, 97 ms] (2) JBC problem (3) JBCToGraph [EQUIVALENT, 1526 ms] (4) JBCTerminationGraph (5) TerminationGraphToSCCProof [SOUND, 0 ms] (6) AND (7) JBCTerminationSCC (8) SCCToQDPProof [SOUND, 339 ms] (9) QDP (10) UsableRulesReductionPairsProof [EQUIVALENT, 4 ms] (11) QDP (12) MRRProof [EQUIVALENT, 0 ms] (13) QDP (14) PisEmptyProof [EQUIVALENT, 0 ms] (15) YES (16) JBCTerminationSCC (17) SCCToIRSProof [SOUND, 138 ms] (18) IRSwT (19) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (20) IRSwT (21) IRSwTTerminationDigraphProof [EQUIVALENT, 32 ms] (22) IRSwT (23) IntTRSCompressionProof [EQUIVALENT, 0 ms] (24) IRSwT (25) TempFilterProof [SOUND, 53 ms] (26) IntTRS (27) PolynomialOrderProcessor [EQUIVALENT, 15 ms] (28) IntTRS (29) RankingReductionPairProof [EQUIVALENT, 0 ms] (30) YES ---------------------------------------- (0) Obligation: need to prove termination of the following program: public class CountMetaListRec { public static void main(String[] args) { Random.args = args; List l = createMetaList(); int count = countMetaList(l); } public static int countMetaList(List cur) { if (cur == null) { return 0; } else { if (cur.value instanceof List) { List inner = (List) cur.value; cur.value = inner.next; cur = new List(inner.value, cur); } return 1 + countMetaList(cur.next); } } public static List createMetaList() { int count = Random.random(); List cur = null; for (int i = 0; i < count; i++) { int innerCount = Random.random(); List innerList = null; for (int j = innerCount; j > 0; j--) { innerList = new List(null, innerList); } cur = new List(innerList, cur); } return cur; } } class List { Object value; List next; public List(Object v, List n) { this.value = v; this.next = n; } } public class Random { static String[] args; static int index = 0; public static int random() { String string = args[index]; index++; return string.length(); } } ---------------------------------------- (1) BareJBCToJBCProof (EQUIVALENT) initialized classpath ---------------------------------------- (2) Obligation: need to prove termination of the following program: public class CountMetaListRec { public static void main(String[] args) { Random.args = args; List l = createMetaList(); int count = countMetaList(l); } public static int countMetaList(List cur) { if (cur == null) { return 0; } else { if (cur.value instanceof List) { List inner = (List) cur.value; cur.value = inner.next; cur = new List(inner.value, cur); } return 1 + countMetaList(cur.next); } } public static List createMetaList() { int count = Random.random(); List cur = null; for (int i = 0; i < count; i++) { int innerCount = Random.random(); List innerList = null; for (int j = innerCount; j > 0; j--) { innerList = new List(null, innerList); } cur = new List(innerList, cur); } return cur; } } class List { Object value; List next; public List(Object v, List n) { this.value = v; this.next = n; } } public class Random { static String[] args; static int index = 0; public static int random() { String string = args[index]; index++; return string.length(); } } ---------------------------------------- (3) JBCToGraph (EQUIVALENT) Constructed TerminationGraph. ---------------------------------------- (4) Obligation: Termination Graph based on JBC Program: CountMetaListRec.main([Ljava/lang/String;)V: Graph of 36 nodes with 0 SCCs. CountMetaListRec.createMetaList()LList;: Graph of 247 nodes with 1 SCC. CountMetaListRec.countMetaList(LList;)I: Graph of 73 nodes with 0 SCCs. ---------------------------------------- (5) TerminationGraphToSCCProof (SOUND) Splitted TerminationGraph to 2 SCCss. ---------------------------------------- (6) Complex Obligation (AND) ---------------------------------------- (7) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: CountMetaListRec.countMetaList(LList;)I SCC calls the following helper methods: CountMetaListRec.countMetaList(LList;)I Performed SCC analyses: *Used field analysis yielded the following read fields: *List: [value, next] *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (8) SCCToQDPProof (SOUND) Transformed TerminationGraph SCC to QDP. Log: Generated 59 rules for P and 77 rules for R.P rules: f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(o3300sub), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) -> f5829_0_countMetaList_NONNULL(EOS(STATIC_5829), java.lang.Object(o3300sub), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) :|: TRUE f5829_0_countMetaList_NONNULL(EOS(STATIC_5829), java.lang.Object(o3300sub), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) -> f5834_0_countMetaList_Load(EOS(STATIC_5834), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) :|: TRUE f5834_0_countMetaList_Load(EOS(STATIC_5834), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) -> f5840_0_countMetaList_FieldAccess(EOS(STATIC_5840), java.lang.Object(o3300sub), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) :|: TRUE f5840_0_countMetaList_FieldAccess(EOS(STATIC_5840), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308))) -> f5844_0_countMetaList_FieldAccess(EOS(STATIC_5844), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308))) :|: TRUE f5844_0_countMetaList_FieldAccess(EOS(STATIC_5844), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308))) -> f5848_0_countMetaList_CheckCast(EOS(STATIC_5848), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308)), o3307) :|: TRUE f5848_0_countMetaList_CheckCast(EOS(STATIC_5848), java.lang.Object(List(EOC, java.lang.Object(o3319sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3319sub), o3308)), java.lang.Object(o3319sub)) -> f5853_0_countMetaList_CheckCast(EOS(STATIC_5853), java.lang.Object(List(EOC, java.lang.Object(o3319sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3319sub), o3308)), java.lang.Object(o3319sub)) :|: TRUE f5848_0_countMetaList_CheckCast(EOS(STATIC_5848), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), NULL) -> f5854_0_countMetaList_CheckCast(EOS(STATIC_5854), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), NULL) :|: TRUE f5853_0_countMetaList_CheckCast(EOS(STATIC_5853), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5858_0_countMetaList_CheckCast(EOS(STATIC_5858), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5853_0_countMetaList_CheckCast(EOS(STATIC_5853), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(EOC)) -> f5859_0_countMetaList_CheckCast(EOS(STATIC_5859), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(EOC)) :|: TRUE f5858_0_countMetaList_CheckCast(EOS(STATIC_5858), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5865_0_countMetaList_EQ(EOS(STATIC_5865), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), 1) :|: TRUE f5865_0_countMetaList_EQ(EOS(STATIC_5865), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), matching1) -> f5873_0_countMetaList_Load(EOS(STATIC_5873), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) :|: 1 > 0 && matching1 = 1 f5873_0_countMetaList_Load(EOS(STATIC_5873), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) -> f5880_0_countMetaList_FieldAccess(EOS(STATIC_5880), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) :|: TRUE f5880_0_countMetaList_FieldAccess(EOS(STATIC_5880), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) -> f5887_0_countMetaList_CheckCast(EOS(STATIC_5887), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5887_0_countMetaList_CheckCast(EOS(STATIC_5887), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5894_0_countMetaList_Store(EOS(STATIC_5894), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5894_0_countMetaList_Store(EOS(STATIC_5894), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5900_0_countMetaList_Load(EOS(STATIC_5900), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5900_0_countMetaList_Load(EOS(STATIC_5900), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5907_0_countMetaList_Load(EOS(STATIC_5907), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) :|: TRUE f5907_0_countMetaList_Load(EOS(STATIC_5907), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) -> f5913_0_countMetaList_FieldAccess(EOS(STATIC_5913), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5913_0_countMetaList_FieldAccess(EOS(STATIC_5913), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375))) -> f5918_0_countMetaList_FieldAccess(EOS(STATIC_5918), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375))) :|: TRUE f5918_0_countMetaList_FieldAccess(EOS(STATIC_5918), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375))) -> f5924_0_countMetaList_FieldAccess(EOS(STATIC_5924), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), o3375) :|: TRUE f5924_0_countMetaList_FieldAccess(EOS(STATIC_5924), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), o3375) -> f5931_0_countMetaList_New(EOS(STATIC_5931), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375))) :|: TRUE f5931_0_countMetaList_New(EOS(STATIC_5931), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375))) -> f5939_0_countMetaList_Duplicate(EOS(STATIC_5939), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5939_0_countMetaList_Duplicate(EOS(STATIC_5939), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, NULL, NULL))) -> f5947_0_countMetaList_Load(EOS(STATIC_5947), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5947_0_countMetaList_Load(EOS(STATIC_5947), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL))) -> f5955_0_countMetaList_FieldAccess(EOS(STATIC_5955), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, o3374, o3375))) :|: TRUE f5955_0_countMetaList_FieldAccess(EOS(STATIC_5955), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, o3374, o3375))) -> f5962_0_countMetaList_Load(EOS(STATIC_5962), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374) :|: TRUE f5962_0_countMetaList_Load(EOS(STATIC_5962), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374) -> f5970_0_countMetaList_InvokeMethod(EOS(STATIC_5970), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f5970_0_countMetaList_InvokeMethod(EOS(STATIC_5970), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) -> f5979_0__init__Load(EOS(STATIC_5979), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f5979_0__init__Load(EOS(STATIC_5979), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) -> f5992_0__init__InvokeMethod(EOS(STATIC_5992), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5992_0__init__InvokeMethod(EOS(STATIC_5992), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL))) -> f5998_0__init__Load(EOS(STATIC_5998), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f5998_0__init__Load(EOS(STATIC_5998), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) -> f6001_0__init__Load(EOS(STATIC_6001), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f6001_0__init__Load(EOS(STATIC_6001), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL))) -> f6014_0__init__FieldAccess(EOS(STATIC_6014), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), o3374) :|: TRUE f6014_0__init__FieldAccess(EOS(STATIC_6014), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), o3374) -> f6020_0__init__Load(EOS(STATIC_6020), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6020_0__init__Load(EOS(STATIC_6020), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308))) -> f6026_0__init__Load(EOS(STATIC_6026), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL))) :|: TRUE f6026_0__init__Load(EOS(STATIC_6026), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL))) -> f6031_0__init__FieldAccess(EOS(STATIC_6031), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6031_0__init__FieldAccess(EOS(STATIC_6031), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308))) -> f6034_0__init__Return(EOS(STATIC_6034), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6034_0__init__Return(EOS(STATIC_6034), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6046_0_countMetaList_Store(EOS(STATIC_6046), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6046_0_countMetaList_Store(EOS(STATIC_6046), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6052_0_countMetaList_ConstantStackPush(EOS(STATIC_6052), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6052_0_countMetaList_ConstantStackPush(EOS(STATIC_6052), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6058_0_countMetaList_Load(EOS(STATIC_6058), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6058_0_countMetaList_Load(EOS(STATIC_6058), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6062_0_countMetaList_FieldAccess(EOS(STATIC_6062), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6062_0_countMetaList_FieldAccess(EOS(STATIC_6062), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6065_0_countMetaList_InvokeMethod(EOS(STATIC_6065), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6065_0_countMetaList_InvokeMethod(EOS(STATIC_6065), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) -> f6077_1_countMetaList_InvokeMethod(f6077_0_countMetaList_Load(EOS(STATIC_6077), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6077_0_countMetaList_Load(EOS(STATIC_6077), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) -> f6083_0_countMetaList_Load(EOS(STATIC_6083), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6083_0_countMetaList_Load(EOS(STATIC_6083), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) -> f5821_0_countMetaList_Load(EOS(STATIC_5821), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f5821_0_countMetaList_Load(EOS(STATIC_5821), o3292, o3292) -> f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), o3292, o3292, o3292) :|: TRUE f5859_0_countMetaList_CheckCast(EOS(STATIC_5859), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(EOC)) -> f5866_0_countMetaList_EQ(EOS(STATIC_5866), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), 0) :|: TRUE f5866_0_countMetaList_EQ(EOS(STATIC_5866), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), matching1) -> f5874_0_countMetaList_ConstantStackPush(EOS(STATIC_5874), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) :|: TRUE && matching1 = 0 f5874_0_countMetaList_ConstantStackPush(EOS(STATIC_5874), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) -> f5881_0_countMetaList_Load(EOS(STATIC_5881), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) :|: TRUE f5881_0_countMetaList_Load(EOS(STATIC_5881), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) -> f5888_0_countMetaList_FieldAccess(EOS(STATIC_5888), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) :|: TRUE f5888_0_countMetaList_FieldAccess(EOS(STATIC_5888), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) -> f5895_0_countMetaList_InvokeMethod(EOS(STATIC_5895), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), o3308) :|: TRUE f5895_0_countMetaList_InvokeMethod(EOS(STATIC_5895), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), o3308) -> f5901_1_countMetaList_InvokeMethod(f5901_0_countMetaList_Load(EOS(STATIC_5901), o3308, o3308), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) :|: TRUE f5901_0_countMetaList_Load(EOS(STATIC_5901), o3308, o3308) -> f5908_0_countMetaList_Load(EOS(STATIC_5908), o3308, o3308) :|: TRUE f5908_0_countMetaList_Load(EOS(STATIC_5908), o3308, o3308) -> f5821_0_countMetaList_Load(EOS(STATIC_5821), o3308, o3308) :|: TRUE f5854_0_countMetaList_CheckCast(EOS(STATIC_5854), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), NULL) -> f5860_0_countMetaList_EQ(EOS(STATIC_5860), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), 0) :|: TRUE f5860_0_countMetaList_EQ(EOS(STATIC_5860), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), matching1) -> f5867_0_countMetaList_ConstantStackPush(EOS(STATIC_5867), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) :|: TRUE && matching1 = 0 f5867_0_countMetaList_ConstantStackPush(EOS(STATIC_5867), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) -> f5875_0_countMetaList_Load(EOS(STATIC_5875), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) :|: TRUE f5875_0_countMetaList_Load(EOS(STATIC_5875), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) -> f5882_0_countMetaList_FieldAccess(EOS(STATIC_5882), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) :|: TRUE f5882_0_countMetaList_FieldAccess(EOS(STATIC_5882), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) -> f5889_0_countMetaList_InvokeMethod(EOS(STATIC_5889), java.lang.Object(List(EOC, NULL, o3308)), o3308) :|: TRUE f5889_0_countMetaList_InvokeMethod(EOS(STATIC_5889), java.lang.Object(List(EOC, NULL, o3308)), o3308) -> f5896_1_countMetaList_InvokeMethod(f5896_0_countMetaList_Load(EOS(STATIC_5896), o3308, o3308), java.lang.Object(List(EOC, NULL, o3308))) :|: TRUE f5896_0_countMetaList_Load(EOS(STATIC_5896), o3308, o3308) -> f5902_0_countMetaList_Load(EOS(STATIC_5902), o3308, o3308) :|: TRUE f5902_0_countMetaList_Load(EOS(STATIC_5902), o3308, o3308) -> f5821_0_countMetaList_Load(EOS(STATIC_5821), o3308, o3308) :|: TRUE R rules: f5821_0_countMetaList_Load(EOS(STATIC_5821), o3292, o3292) -> f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), o3292, o3292, o3292) :|: TRUE f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(o3300sub), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) -> f5829_0_countMetaList_NONNULL(EOS(STATIC_5829), java.lang.Object(o3300sub), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) :|: TRUE f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), NULL, NULL, NULL) -> f5830_0_countMetaList_NONNULL(EOS(STATIC_5830), NULL, NULL, NULL) :|: TRUE f5829_0_countMetaList_NONNULL(EOS(STATIC_5829), java.lang.Object(o3300sub), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) -> f5834_0_countMetaList_Load(EOS(STATIC_5834), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) :|: TRUE f5830_0_countMetaList_NONNULL(EOS(STATIC_5830), NULL, NULL, NULL) -> f5835_0_countMetaList_ConstantStackPush(EOS(STATIC_5835), NULL) :|: TRUE f5834_0_countMetaList_Load(EOS(STATIC_5834), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) -> f5840_0_countMetaList_FieldAccess(EOS(STATIC_5840), java.lang.Object(o3300sub), java.lang.Object(o3300sub), java.lang.Object(o3300sub)) :|: TRUE f5835_0_countMetaList_ConstantStackPush(EOS(STATIC_5835), NULL) -> f5841_0_countMetaList_Return(EOS(STATIC_5841), NULL) :|: TRUE f5840_0_countMetaList_FieldAccess(EOS(STATIC_5840), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308))) -> f5844_0_countMetaList_FieldAccess(EOS(STATIC_5844), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308))) :|: TRUE f5844_0_countMetaList_FieldAccess(EOS(STATIC_5844), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308))) -> f5848_0_countMetaList_CheckCast(EOS(STATIC_5848), java.lang.Object(List(EOC, o3307, o3308)), java.lang.Object(List(EOC, o3307, o3308)), o3307) :|: TRUE f5848_0_countMetaList_CheckCast(EOS(STATIC_5848), java.lang.Object(List(EOC, java.lang.Object(o3319sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3319sub), o3308)), java.lang.Object(o3319sub)) -> f5853_0_countMetaList_CheckCast(EOS(STATIC_5853), java.lang.Object(List(EOC, java.lang.Object(o3319sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3319sub), o3308)), java.lang.Object(o3319sub)) :|: TRUE f5848_0_countMetaList_CheckCast(EOS(STATIC_5848), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), NULL) -> f5854_0_countMetaList_CheckCast(EOS(STATIC_5854), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), NULL) :|: TRUE f5853_0_countMetaList_CheckCast(EOS(STATIC_5853), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5858_0_countMetaList_CheckCast(EOS(STATIC_5858), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5853_0_countMetaList_CheckCast(EOS(STATIC_5853), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(EOC)) -> f5859_0_countMetaList_CheckCast(EOS(STATIC_5859), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(EOC)) :|: TRUE f5854_0_countMetaList_CheckCast(EOS(STATIC_5854), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), NULL) -> f5860_0_countMetaList_EQ(EOS(STATIC_5860), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), 0) :|: TRUE f5858_0_countMetaList_CheckCast(EOS(STATIC_5858), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5865_0_countMetaList_EQ(EOS(STATIC_5865), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), 1) :|: TRUE f5859_0_countMetaList_CheckCast(EOS(STATIC_5859), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(EOC)) -> f5866_0_countMetaList_EQ(EOS(STATIC_5866), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), 0) :|: TRUE f5860_0_countMetaList_EQ(EOS(STATIC_5860), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308)), matching1) -> f5867_0_countMetaList_ConstantStackPush(EOS(STATIC_5867), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) :|: TRUE && matching1 = 0 f5865_0_countMetaList_EQ(EOS(STATIC_5865), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), matching1) -> f5873_0_countMetaList_Load(EOS(STATIC_5873), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) :|: 1 > 0 && matching1 = 1 f5866_0_countMetaList_EQ(EOS(STATIC_5866), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), matching1) -> f5874_0_countMetaList_ConstantStackPush(EOS(STATIC_5874), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) :|: TRUE && matching1 = 0 f5867_0_countMetaList_ConstantStackPush(EOS(STATIC_5867), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) -> f5875_0_countMetaList_Load(EOS(STATIC_5875), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) :|: TRUE f5873_0_countMetaList_Load(EOS(STATIC_5873), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) -> f5880_0_countMetaList_FieldAccess(EOS(STATIC_5880), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) :|: TRUE f5874_0_countMetaList_ConstantStackPush(EOS(STATIC_5874), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) -> f5881_0_countMetaList_Load(EOS(STATIC_5881), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) :|: TRUE f5875_0_countMetaList_Load(EOS(STATIC_5875), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) -> f5882_0_countMetaList_FieldAccess(EOS(STATIC_5882), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) :|: TRUE f5880_0_countMetaList_FieldAccess(EOS(STATIC_5880), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) -> f5887_0_countMetaList_CheckCast(EOS(STATIC_5887), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5881_0_countMetaList_Load(EOS(STATIC_5881), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) -> f5888_0_countMetaList_FieldAccess(EOS(STATIC_5888), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) :|: TRUE f5882_0_countMetaList_FieldAccess(EOS(STATIC_5882), java.lang.Object(List(EOC, NULL, o3308)), java.lang.Object(List(EOC, NULL, o3308))) -> f5889_0_countMetaList_InvokeMethod(EOS(STATIC_5889), java.lang.Object(List(EOC, NULL, o3308)), o3308) :|: TRUE f5887_0_countMetaList_CheckCast(EOS(STATIC_5887), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5894_0_countMetaList_Store(EOS(STATIC_5894), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5888_0_countMetaList_FieldAccess(EOS(STATIC_5888), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) -> f5895_0_countMetaList_InvokeMethod(EOS(STATIC_5895), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), o3308) :|: TRUE f5889_0_countMetaList_InvokeMethod(EOS(STATIC_5889), java.lang.Object(List(EOC, NULL, o3308)), o3308) -> f5896_1_countMetaList_InvokeMethod(f5896_0_countMetaList_Load(EOS(STATIC_5896), o3308, o3308), java.lang.Object(List(EOC, NULL, o3308))) :|: TRUE f5894_0_countMetaList_Store(EOS(STATIC_5894), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5900_0_countMetaList_Load(EOS(STATIC_5900), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5895_0_countMetaList_InvokeMethod(EOS(STATIC_5895), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308)), o3308) -> f5901_1_countMetaList_InvokeMethod(f5901_0_countMetaList_Load(EOS(STATIC_5901), o3308, o3308), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) :|: TRUE f5896_0_countMetaList_Load(EOS(STATIC_5896), o3308, o3308) -> f5902_0_countMetaList_Load(EOS(STATIC_5902), o3308, o3308) :|: TRUE f5900_0_countMetaList_Load(EOS(STATIC_5900), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) -> f5907_0_countMetaList_Load(EOS(STATIC_5907), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) :|: TRUE f5901_0_countMetaList_Load(EOS(STATIC_5901), o3308, o3308) -> f5908_0_countMetaList_Load(EOS(STATIC_5908), o3308, o3308) :|: TRUE f5907_0_countMetaList_Load(EOS(STATIC_5907), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308))) -> f5913_0_countMetaList_FieldAccess(EOS(STATIC_5913), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub), java.lang.Object(List(EOC, java.lang.Object(o3322sub), o3308)), java.lang.Object(o3322sub)) :|: TRUE f5913_0_countMetaList_FieldAccess(EOS(STATIC_5913), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375))) -> f5918_0_countMetaList_FieldAccess(EOS(STATIC_5918), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375))) :|: TRUE f5918_0_countMetaList_FieldAccess(EOS(STATIC_5918), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375))) -> f5924_0_countMetaList_FieldAccess(EOS(STATIC_5924), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), o3375) :|: TRUE f5924_0_countMetaList_FieldAccess(EOS(STATIC_5924), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374, o3375)), o3308)), o3375) -> f5931_0_countMetaList_New(EOS(STATIC_5931), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375))) :|: TRUE f5925_0_countMetaList_Return(EOS(STATIC_5925), java.lang.Object(List(EOC, NULL, NULL))) -> f5933_0_countMetaList_IntArithmetic(EOS(STATIC_5933), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5931_0_countMetaList_New(EOS(STATIC_5931), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375))) -> f5939_0_countMetaList_Duplicate(EOS(STATIC_5939), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5932_0_countMetaList_Return(EOS(STATIC_5932), java.lang.Object(List(EOC, java.lang.Object(EOC), NULL))) -> f5940_0_countMetaList_IntArithmetic(EOS(STATIC_5940), java.lang.Object(List(EOC, java.lang.Object(EOC), NULL))) :|: TRUE f5933_0_countMetaList_IntArithmetic(EOS(STATIC_5933), java.lang.Object(List(EOC, NULL, NULL))) -> f6110_0_countMetaList_IntArithmetic(EOS(STATIC_6110), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5939_0_countMetaList_Duplicate(EOS(STATIC_5939), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, NULL, NULL))) -> f5947_0_countMetaList_Load(EOS(STATIC_5947), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5940_0_countMetaList_IntArithmetic(EOS(STATIC_5940), java.lang.Object(List(EOC, java.lang.Object(EOC), NULL))) -> f6146_0_countMetaList_IntArithmetic(EOS(STATIC_6146), java.lang.Object(List(EOC, java.lang.Object(EOC), NULL))) :|: TRUE f5947_0_countMetaList_Load(EOS(STATIC_5947), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, o3375)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL))) -> f5955_0_countMetaList_FieldAccess(EOS(STATIC_5955), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, o3374, o3375))) :|: TRUE f5955_0_countMetaList_FieldAccess(EOS(STATIC_5955), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, o3374, o3375))) -> f5962_0_countMetaList_Load(EOS(STATIC_5962), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374) :|: TRUE f5962_0_countMetaList_Load(EOS(STATIC_5962), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374) -> f5970_0_countMetaList_InvokeMethod(EOS(STATIC_5970), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f5970_0_countMetaList_InvokeMethod(EOS(STATIC_5970), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) -> f5979_0__init__Load(EOS(STATIC_5979), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f5979_0__init__Load(EOS(STATIC_5979), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) -> f5992_0__init__InvokeMethod(EOS(STATIC_5992), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5992_0__init__InvokeMethod(EOS(STATIC_5992), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL))) -> f5998_0__init__Load(EOS(STATIC_5998), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f5998_0__init__Load(EOS(STATIC_5998), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308))) -> f6001_0__init__Load(EOS(STATIC_6001), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f6001_0__init__Load(EOS(STATIC_6001), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), o3374, java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL))) -> f6014_0__init__FieldAccess(EOS(STATIC_6014), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), o3374) :|: TRUE f6014_0__init__FieldAccess(EOS(STATIC_6014), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, NULL, NULL)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, NULL, NULL)), o3374) -> f6020_0__init__Load(EOS(STATIC_6020), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6020_0__init__Load(EOS(STATIC_6020), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308))) -> f6026_0__init__Load(EOS(STATIC_6026), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL))) :|: TRUE f6026_0__init__Load(EOS(STATIC_6026), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL))) -> f6031_0__init__FieldAccess(EOS(STATIC_6031), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6031_0__init__FieldAccess(EOS(STATIC_6031), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3374, NULL)), java.lang.Object(List(EOC, o3375, o3308))) -> f6034_0__init__Return(EOS(STATIC_6034), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6034_0__init__Return(EOS(STATIC_6034), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6046_0_countMetaList_Store(EOS(STATIC_6046), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6046_0_countMetaList_Store(EOS(STATIC_6046), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6052_0_countMetaList_ConstantStackPush(EOS(STATIC_6052), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6052_0_countMetaList_ConstantStackPush(EOS(STATIC_6052), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6058_0_countMetaList_Load(EOS(STATIC_6058), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6058_0_countMetaList_Load(EOS(STATIC_6058), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6062_0_countMetaList_FieldAccess(EOS(STATIC_6062), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) :|: TRUE f6062_0_countMetaList_FieldAccess(EOS(STATIC_6062), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3374, java.lang.Object(List(EOC, o3375, o3308))))) -> f6065_0_countMetaList_InvokeMethod(EOS(STATIC_6065), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6065_0_countMetaList_InvokeMethod(EOS(STATIC_6065), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) -> f6077_1_countMetaList_InvokeMethod(f6077_0_countMetaList_Load(EOS(STATIC_6077), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6077_0_countMetaList_Load(EOS(STATIC_6077), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) -> f6083_0_countMetaList_Load(EOS(STATIC_6083), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f6110_0_countMetaList_IntArithmetic(EOS(STATIC_6110), java.lang.Object(List(EOC, NULL, o4297))) -> f6146_0_countMetaList_IntArithmetic(EOS(STATIC_6146), java.lang.Object(List(EOC, NULL, o4297))) :|: TRUE f6143_0_countMetaList_Return(EOS(STATIC_6143), java.lang.Object(List(EOC, o4550, o4549))) -> f6146_0_countMetaList_IntArithmetic(EOS(STATIC_6146), java.lang.Object(List(EOC, o4550, o4549))) :|: TRUE f6146_0_countMetaList_IntArithmetic(EOS(STATIC_6146), java.lang.Object(List(EOC, o4550, o4549))) -> f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, o4550, o4549))) :|: TRUE f6158_0_countMetaList_Return(EOS(STATIC_6158), java.lang.Object(List(EOC, NULL, java.lang.Object(List(EOC, o4630, o4629))))) -> f6143_0_countMetaList_Return(EOS(STATIC_6143), java.lang.Object(List(EOC, NULL, java.lang.Object(List(EOC, o4630, o4629))))) :|: TRUE f6159_0_countMetaList_Return(EOS(STATIC_6159), java.lang.Object(List(EOC, java.lang.Object(EOC), java.lang.Object(List(EOC, o4639, o4638))))) -> f6143_0_countMetaList_Return(EOS(STATIC_6143), java.lang.Object(List(EOC, java.lang.Object(EOC), java.lang.Object(List(EOC, o4639, o4638))))) :|: TRUE f6160_0_countMetaList_Return(EOS(STATIC_6160), java.lang.Object(List(EOC, o4648, o4647))) -> f6143_0_countMetaList_Return(EOS(STATIC_6143), java.lang.Object(List(EOC, o4648, o4647))) :|: TRUE f5902_0_countMetaList_Load(EOS(STATIC_5902), o3308, o3308) -> f5821_0_countMetaList_Load(EOS(STATIC_5821), o3308, o3308) :|: TRUE f5908_0_countMetaList_Load(EOS(STATIC_5908), o3308, o3308) -> f5821_0_countMetaList_Load(EOS(STATIC_5821), o3308, o3308) :|: TRUE f6083_0_countMetaList_Load(EOS(STATIC_6083), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) -> f5821_0_countMetaList_Load(EOS(STATIC_5821), java.lang.Object(List(EOC, o3375, o3308)), java.lang.Object(List(EOC, o3375, o3308))) :|: TRUE f5896_1_countMetaList_InvokeMethod(f5841_0_countMetaList_Return(EOS(STATIC_5841), NULL), java.lang.Object(List(EOC, NULL, NULL))) -> f5925_0_countMetaList_Return(EOS(STATIC_5925), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5896_1_countMetaList_InvokeMethod(f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, o4630, o4629))), java.lang.Object(List(EOC, NULL, o3308))) -> f6158_0_countMetaList_Return(EOS(STATIC_6158), java.lang.Object(List(EOC, NULL, java.lang.Object(List(EOC, o4630, o4629))))) :|: TRUE f5901_1_countMetaList_InvokeMethod(f5841_0_countMetaList_Return(EOS(STATIC_5841), NULL), java.lang.Object(List(EOC, java.lang.Object(EOC), NULL))) -> f5932_0_countMetaList_Return(EOS(STATIC_5932), java.lang.Object(List(EOC, java.lang.Object(EOC), NULL))) :|: TRUE f5901_1_countMetaList_InvokeMethod(f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, o4639, o4638))), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308))) -> f6159_0_countMetaList_Return(EOS(STATIC_6159), java.lang.Object(List(EOC, java.lang.Object(EOC), java.lang.Object(List(EOC, o4639, o4638))))) :|: TRUE f6077_1_countMetaList_InvokeMethod(f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, o4648, o4647))), java.lang.Object(List(EOC, o3375, o3308))) -> f6160_0_countMetaList_Return(EOS(STATIC_6160), java.lang.Object(List(EOC, o4648, o4647))) :|: TRUE Combined rules. Obtained 3 conditional rules for P and 9 conditional rules for R.P rules: f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(List(EOC, NULL, o3308:0)), java.lang.Object(List(EOC, NULL, o3308:0)), java.lang.Object(List(EOC, NULL, o3308:0))) -> f5896_1_countMetaList_InvokeMethod(f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), o3308:0, o3308:0, o3308:0), java.lang.Object(List(EOC, NULL, o3308:0))) :|: TRUE f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0))) -> f5901_1_countMetaList_InvokeMethod(f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), o3308:0, o3308:0, o3308:0), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0))) :|: TRUE f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374:0, o3375:0)), o3308:0)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374:0, o3375:0)), o3308:0)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374:0, o3375:0)), o3308:0))) -> f6077_1_countMetaList_InvokeMethod(f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(List(EOC, o3375:0, o3308:0)), java.lang.Object(List(EOC, o3375:0, o3308:0)), java.lang.Object(List(EOC, o3375:0, o3308:0))), java.lang.Object(List(EOC, o3375:0, o3308:0))) :|: TRUE R rules: f5901_1_countMetaList_InvokeMethod(f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, o4639:0, o4638:0))), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0))) -> f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, java.lang.Object(EOC), java.lang.Object(List(EOC, o4639:0, o4638:0))))) :|: TRUE f6077_1_countMetaList_InvokeMethod(f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, o4648:0, o4647:0))), java.lang.Object(List(EOC, o3375:0, o3308:0))) -> f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, o4648:0, o4647:0))) :|: TRUE f5896_1_countMetaList_InvokeMethod(f5841_0_countMetaList_Return(EOS(STATIC_5841), NULL), java.lang.Object(List(EOC, NULL, NULL))) -> f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, NULL, NULL))) :|: TRUE f5896_1_countMetaList_InvokeMethod(f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, o4630:0, o4629:0))), java.lang.Object(List(EOC, NULL, o3308:0))) -> f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, NULL, java.lang.Object(List(EOC, o4630:0, o4629:0))))) :|: TRUE f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374:0, o3375:0)), o3308:0)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374:0, o3375:0)), o3308:0)), java.lang.Object(List(EOC, java.lang.Object(List(EOC, o3374:0, o3375:0)), o3308:0))) -> f6077_1_countMetaList_InvokeMethod(f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(List(EOC, o3375:0, o3308:0)), java.lang.Object(List(EOC, o3375:0, o3308:0)), java.lang.Object(List(EOC, o3375:0, o3308:0))), java.lang.Object(List(EOC, o3375:0, o3308:0))) :|: TRUE f5901_1_countMetaList_InvokeMethod(f5841_0_countMetaList_Return(EOS(STATIC_5841), NULL), java.lang.Object(List(EOC, java.lang.Object(EOC), NULL))) -> f6149_0_countMetaList_Return(EOS(STATIC_6149), java.lang.Object(List(EOC, java.lang.Object(EOC), NULL))) :|: TRUE f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(List(EOC, NULL, o3308:0)), java.lang.Object(List(EOC, NULL, o3308:0)), java.lang.Object(List(EOC, NULL, o3308:0))) -> f5896_1_countMetaList_InvokeMethod(f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), o3308:0, o3308:0, o3308:0), java.lang.Object(List(EOC, NULL, o3308:0))) :|: TRUE f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), NULL, NULL, NULL) -> f5841_0_countMetaList_Return(EOS(STATIC_5841), NULL) :|: TRUE f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0)), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0))) -> f5901_1_countMetaList_InvokeMethod(f5826_0_countMetaList_NONNULL(EOS(STATIC_5826), o3308:0, o3308:0, o3308:0), java.lang.Object(List(EOC, java.lang.Object(EOC), o3308:0))) :|: TRUE Filtered ground terms: f5826_0_countMetaList_NONNULL(x1, x2, x3, x4) -> f5826_0_countMetaList_NONNULL(x2, x3, x4) List(x1, x2, x3) -> List(x2, x3) f6149_0_countMetaList_Return(x1, x2) -> f6149_0_countMetaList_Return(x2) f5841_0_countMetaList_Return(x1, x2) -> f5841_0_countMetaList_Return Filtered unneeded arguments: f6077_1_countMetaList_InvokeMethod(x1, x2) -> f6077_1_countMetaList_InvokeMethod(x1) Filtered duplicate args: f5826_0_countMetaList_NONNULL(x1, x2, x3) -> f5826_0_countMetaList_NONNULL(x3) Combined rules. Obtained 3 conditional rules for P and 0 conditional rules for R.P rules: F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(java.lang.Object(EOC), o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(o3308:0:0) :|: TRUE F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(NULL, o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(o3308:0:0) :|: TRUE F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(java.lang.Object(List(o3374:0:0, o3375:0:0)), o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(o3375:0:0, o3308:0:0))) :|: TRUE R rules: ---------------------------------------- (9) Obligation: Q DP problem: The TRS P consists of the following rules: F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(java.lang.Object(EOC), o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(o3308:0:0) F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(NULL, o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(o3308:0:0) F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(java.lang.Object(List(o3374:0:0, o3375:0:0)), o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(o3375:0:0, o3308:0:0))) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (10) UsableRulesReductionPairsProof (EQUIVALENT) By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well. The following dependency pairs can be deleted: F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(java.lang.Object(EOC), o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(o3308:0:0) F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(NULL, o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(o3308:0:0) No rules are removed from R. Used ordering: POLO with Polynomial interpretation [POLO]: POL(EOC) = 0 POL(F5826_0_COUNTMETALIST_NONNULL(x_1)) = 2*x_1 POL(List(x_1, x_2)) = x_1 + 2*x_2 POL(NULL) = 0 POL(java.lang.Object(x_1)) = x_1 ---------------------------------------- (11) Obligation: Q DP problem: The TRS P consists of the following rules: F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(java.lang.Object(List(o3374:0:0, o3375:0:0)), o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(o3375:0:0, o3308:0:0))) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (12) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(java.lang.Object(List(o3374:0:0, o3375:0:0)), o3308:0:0))) -> F5826_0_COUNTMETALIST_NONNULL(java.lang.Object(List(o3375:0:0, o3308:0:0))) Used ordering: Knuth-Bendix order [KBO] with precedence:List_2 > java.lang.Object_1 > F5826_0_COUNTMETALIST_NONNULL_1 and weight map: F5826_0_COUNTMETALIST_NONNULL_1=1 java.lang.Object_1=1 List_2=0 The variable weight is 1 ---------------------------------------- (13) Obligation: Q DP problem: P is empty. R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (14) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (15) YES ---------------------------------------- (16) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: CountMetaListRec.createMetaList()LList; SCC calls the following helper methods: Performed SCC analyses: *Used field analysis yielded the following read fields: *java.lang.String: [count] *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (17) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 71 IRulesP rules: f5785_0_createMetaList_Load(EOS(STATIC_5785(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1718) -> f5786_0_createMetaList_GE(EOS(STATIC_5786(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1718, i1717) :|: TRUE f5786_0_createMetaList_GE(EOS(STATIC_5786(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1718, i1717) -> f5788_0_createMetaList_GE(EOS(STATIC_5788(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1718, i1717) :|: i1718 < i1717 f5788_0_createMetaList_GE(EOS(STATIC_5788(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1718, i1717) -> f5790_0_createMetaList_InvokeMethod(EOS(STATIC_5790(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: i1718 < i1717 f5790_0_createMetaList_InvokeMethod(EOS(STATIC_5790(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f5792_0_random_FieldAccess(EOS(STATIC_5792(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f5792_0_random_FieldAccess(EOS(STATIC_5792(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f5794_0_random_FieldAccess(EOS(STATIC_5794(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(ARRAY(i6))) :|: TRUE f5794_0_random_FieldAccess(EOS(STATIC_5794(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(ARRAY(i6))) -> f5797_0_random_ArrayAccess(EOS(STATIC_5797(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(ARRAY(i6))) :|: TRUE f5797_0_random_ArrayAccess(EOS(STATIC_5797(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(ARRAY(i6))) -> f5800_0_random_ArrayAccess(EOS(STATIC_5800(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(ARRAY(i6))) :|: TRUE f5800_0_random_ArrayAccess(EOS(STATIC_5800(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(ARRAY(i6))) -> f5803_0_random_ArrayAccess(EOS(STATIC_5803(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(ARRAY(i6))) :|: TRUE f5803_0_random_ArrayAccess(EOS(STATIC_5803(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(ARRAY(i6))) -> f5806_0_random_Store(EOS(STATIC_5806(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) :|: TRUE f5806_0_random_Store(EOS(STATIC_5806(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) -> f5810_0_random_FieldAccess(EOS(STATIC_5810(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) :|: TRUE f5810_0_random_FieldAccess(EOS(STATIC_5810(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) -> f5813_0_random_ConstantStackPush(EOS(STATIC_5813(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) :|: TRUE f5813_0_random_ConstantStackPush(EOS(STATIC_5813(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) -> f5816_0_random_IntArithmetic(EOS(STATIC_5816(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) :|: TRUE f5816_0_random_IntArithmetic(EOS(STATIC_5816(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) -> f5820_0_random_FieldAccess(EOS(STATIC_5820(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) :|: TRUE f5820_0_random_FieldAccess(EOS(STATIC_5820(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) -> f5823_0_random_Load(EOS(STATIC_5823(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) :|: TRUE f5823_0_random_Load(EOS(STATIC_5823(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) -> f5827_0_random_InvokeMethod(EOS(STATIC_5827(java.lang.Object(ARRAY(i6)))), i1717, i1718, o3274) :|: TRUE f5827_0_random_InvokeMethod(EOS(STATIC_5827(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(o3302sub)) -> f5832_0_random_InvokeMethod(EOS(STATIC_5832(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(o3302sub)) :|: TRUE f5832_0_random_InvokeMethod(EOS(STATIC_5832(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(o3303sub)) -> f5837_0_random_InvokeMethod(EOS(STATIC_5837(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(o3303sub)) :|: TRUE f5837_0_random_InvokeMethod(EOS(STATIC_5837(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(o3303sub)) -> f5842_0_length_Load(EOS(STATIC_5842(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(o3303sub)) :|: TRUE f5842_0_length_Load(EOS(STATIC_5842(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(o3303sub)) -> f5850_0_length_FieldAccess(EOS(STATIC_5850(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(o3303sub)) :|: TRUE f5850_0_length_FieldAccess(EOS(STATIC_5850(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(java.lang.String(EOC, i1774))) -> f5856_0_length_FieldAccess(EOS(STATIC_5856(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(java.lang.String(EOC, i1774))) :|: i1774 >= 0 f5856_0_length_FieldAccess(EOS(STATIC_5856(java.lang.Object(ARRAY(i6)))), i1717, i1718, java.lang.Object(java.lang.String(EOC, i1774))) -> f5863_0_length_Return(EOS(STATIC_5863(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f5863_0_length_Return(EOS(STATIC_5863(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) -> f5870_0_random_Return(EOS(STATIC_5870(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f5870_0_random_Return(EOS(STATIC_5870(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) -> f5878_0_createMetaList_Store(EOS(STATIC_5878(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f5878_0_createMetaList_Store(EOS(STATIC_5878(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) -> f5884_0_createMetaList_ConstantStackPush(EOS(STATIC_5884(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f5884_0_createMetaList_ConstantStackPush(EOS(STATIC_5884(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) -> f5891_0_createMetaList_Store(EOS(STATIC_5891(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f5891_0_createMetaList_Store(EOS(STATIC_5891(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) -> f5898_0_createMetaList_Load(EOS(STATIC_5898(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f5898_0_createMetaList_Load(EOS(STATIC_5898(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) -> f5904_0_createMetaList_Store(EOS(STATIC_5904(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f5904_0_createMetaList_Store(EOS(STATIC_5904(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) -> f5910_0_createMetaList_Load(EOS(STATIC_5910(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f5910_0_createMetaList_Load(EOS(STATIC_5910(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) -> f6152_0_createMetaList_Load(EOS(STATIC_6152(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1774) :|: TRUE f6152_0_createMetaList_Load(EOS(STATIC_6152(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2295) -> f6154_0_createMetaList_LE(EOS(STATIC_6154(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2295, i2295) :|: TRUE f6154_0_createMetaList_LE(EOS(STATIC_6154(java.lang.Object(ARRAY(i6)))), i1717, i1718, matching1, matching2) -> f6155_0_createMetaList_LE(EOS(STATIC_6155(java.lang.Object(ARRAY(i6)))), i1717, i1718, 0, 0) :|: TRUE && matching1 = 0 && matching2 = 0 f6154_0_createMetaList_LE(EOS(STATIC_6154(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315, i2315) -> f6156_0_createMetaList_LE(EOS(STATIC_6156(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315, i2315) :|: TRUE f6155_0_createMetaList_LE(EOS(STATIC_6155(java.lang.Object(ARRAY(i6)))), i1717, i1718, matching1, matching2) -> f6161_0_createMetaList_New(EOS(STATIC_6161(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: 0 <= 0 && matching1 = 0 && matching2 = 0 f6161_0_createMetaList_New(EOS(STATIC_6161(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6163_0_createMetaList_Duplicate(EOS(STATIC_6163(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6163_0_createMetaList_Duplicate(EOS(STATIC_6163(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6165_0_createMetaList_Load(EOS(STATIC_6165(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6165_0_createMetaList_Load(EOS(STATIC_6165(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6167_0_createMetaList_Load(EOS(STATIC_6167(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6167_0_createMetaList_Load(EOS(STATIC_6167(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6169_0_createMetaList_InvokeMethod(EOS(STATIC_6169(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6169_0_createMetaList_InvokeMethod(EOS(STATIC_6169(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6171_0__init__Load(EOS(STATIC_6171(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6171_0__init__Load(EOS(STATIC_6171(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6173_0__init__InvokeMethod(EOS(STATIC_6173(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6173_0__init__InvokeMethod(EOS(STATIC_6173(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6175_0__init__Load(EOS(STATIC_6175(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6175_0__init__Load(EOS(STATIC_6175(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6177_0__init__Load(EOS(STATIC_6177(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6177_0__init__Load(EOS(STATIC_6177(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6179_0__init__FieldAccess(EOS(STATIC_6179(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6179_0__init__FieldAccess(EOS(STATIC_6179(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6181_0__init__Load(EOS(STATIC_6181(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6181_0__init__Load(EOS(STATIC_6181(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6183_0__init__Load(EOS(STATIC_6183(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6183_0__init__Load(EOS(STATIC_6183(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6185_0__init__FieldAccess(EOS(STATIC_6185(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6185_0__init__FieldAccess(EOS(STATIC_6185(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6187_0__init__Return(EOS(STATIC_6187(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6187_0__init__Return(EOS(STATIC_6187(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6189_0_createMetaList_Store(EOS(STATIC_6189(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6189_0_createMetaList_Store(EOS(STATIC_6189(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6191_0_createMetaList_Inc(EOS(STATIC_6191(java.lang.Object(ARRAY(i6)))), i1717, i1718) :|: TRUE f6191_0_createMetaList_Inc(EOS(STATIC_6191(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f6193_0_createMetaList_JMP(EOS(STATIC_6193(java.lang.Object(ARRAY(i6)))), i1717, i1718 + 1) :|: TRUE f6193_0_createMetaList_JMP(EOS(STATIC_6193(java.lang.Object(ARRAY(i6)))), i1717, i2324) -> f6195_0_createMetaList_Load(EOS(STATIC_6195(java.lang.Object(ARRAY(i6)))), i1717, i2324) :|: TRUE f6195_0_createMetaList_Load(EOS(STATIC_6195(java.lang.Object(ARRAY(i6)))), i1717, i2324) -> f5784_0_createMetaList_Load(EOS(STATIC_5784(java.lang.Object(ARRAY(i6)))), i1717, i2324) :|: TRUE f5784_0_createMetaList_Load(EOS(STATIC_5784(java.lang.Object(ARRAY(i6)))), i1717, i1718) -> f5785_0_createMetaList_Load(EOS(STATIC_5785(java.lang.Object(ARRAY(i6)))), i1717, i1718, i1718) :|: TRUE f6156_0_createMetaList_LE(EOS(STATIC_6156(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315, i2315) -> f6162_0_createMetaList_New(EOS(STATIC_6162(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: i2315 > 0 f6162_0_createMetaList_New(EOS(STATIC_6162(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6164_0_createMetaList_Duplicate(EOS(STATIC_6164(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6164_0_createMetaList_Duplicate(EOS(STATIC_6164(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6166_0_createMetaList_ConstantStackPush(EOS(STATIC_6166(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6166_0_createMetaList_ConstantStackPush(EOS(STATIC_6166(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6168_0_createMetaList_Load(EOS(STATIC_6168(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6168_0_createMetaList_Load(EOS(STATIC_6168(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6170_0_createMetaList_InvokeMethod(EOS(STATIC_6170(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6170_0_createMetaList_InvokeMethod(EOS(STATIC_6170(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6172_0__init__Load(EOS(STATIC_6172(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6172_0__init__Load(EOS(STATIC_6172(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6174_0__init__InvokeMethod(EOS(STATIC_6174(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6174_0__init__InvokeMethod(EOS(STATIC_6174(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6176_0__init__Load(EOS(STATIC_6176(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6176_0__init__Load(EOS(STATIC_6176(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6178_0__init__Load(EOS(STATIC_6178(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6178_0__init__Load(EOS(STATIC_6178(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6180_0__init__FieldAccess(EOS(STATIC_6180(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6180_0__init__FieldAccess(EOS(STATIC_6180(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6182_0__init__Load(EOS(STATIC_6182(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6182_0__init__Load(EOS(STATIC_6182(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6184_0__init__Load(EOS(STATIC_6184(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6184_0__init__Load(EOS(STATIC_6184(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6186_0__init__FieldAccess(EOS(STATIC_6186(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6186_0__init__FieldAccess(EOS(STATIC_6186(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6188_0__init__Return(EOS(STATIC_6188(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6188_0__init__Return(EOS(STATIC_6188(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6190_0_createMetaList_Store(EOS(STATIC_6190(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6190_0_createMetaList_Store(EOS(STATIC_6190(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6192_0_createMetaList_Inc(EOS(STATIC_6192(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) :|: TRUE f6192_0_createMetaList_Inc(EOS(STATIC_6192(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315) -> f6194_0_createMetaList_JMP(EOS(STATIC_6194(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2315 + -1) :|: TRUE f6194_0_createMetaList_JMP(EOS(STATIC_6194(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2325) -> f6196_0_createMetaList_Load(EOS(STATIC_6196(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2325) :|: TRUE f6196_0_createMetaList_Load(EOS(STATIC_6196(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2325) -> f6152_0_createMetaList_Load(EOS(STATIC_6152(java.lang.Object(ARRAY(i6)))), i1717, i1718, i2325) :|: TRUE Combined rules. Obtained 2 IRulesP rules: f6154_0_createMetaList_LE(EOS(STATIC_6154(java.lang.Object(ARRAY(i6:0)))), i1717:0, i1718:0, i2315:0, i2315:0) -> f6154_0_createMetaList_LE(EOS(STATIC_6154(java.lang.Object(ARRAY(i6:0)))), i1717:0, i1718:0, i2315:0 - 1, i2315:0 - 1) :|: i2315:0 > 0 f6154_0_createMetaList_LE(EOS(STATIC_6154(java.lang.Object(ARRAY(i6:0)))), i1717:0, i1718:0, 0, 0) -> f6154_0_createMetaList_LE(EOS(STATIC_6154(java.lang.Object(ARRAY(i6:0)))), i1717:0, i1718:0 + 1, i1774:0, i1774:0) :|: i1718:0 + 1 < i1717:0 && i1774:0 > -1 Filtered duplicate arguments: f6154_0_createMetaList_LE(x1, x2, x3, x4, x5) -> f6154_0_createMetaList_LE(x1, x2, x3, x5) Filtered unneeded arguments: f6154_0_createMetaList_LE(x1, x2, x3, x4) -> f6154_0_createMetaList_LE(x2, x3, x4) Finished conversion. Obtained 2 rules.P rules: f6154_0_createMetaList_LE(i1717:0, i1718:0, i2315:0) -> f6154_0_createMetaList_LE(i1717:0, i1718:0, i2315:0 - 1) :|: i2315:0 > 0 f6154_0_createMetaList_LE(i1717:0, i1718:0, cons_0) -> f6154_0_createMetaList_LE(i1717:0, i1718:0 + 1, i1774:0) :|: i1718:0 + 1 < i1717:0 && i1774:0 > -1 && cons_0 = 0 ---------------------------------------- (18) Obligation: Rules: f6154_0_createMetaList_LE(i1717:0, i1718:0, i2315:0) -> f6154_0_createMetaList_LE(i1717:0, i1718:0, i2315:0 - 1) :|: i2315:0 > 0 f6154_0_createMetaList_LE(x, x1, x2) -> f6154_0_createMetaList_LE(x, x1 + 1, x3) :|: x1 + 1 < x && x3 > -1 && x2 = 0 ---------------------------------------- (19) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (20) Obligation: Rules: f6154_0_createMetaList_LE(i1717:0, i1718:0, i2315:0) -> f6154_0_createMetaList_LE(i1717:0, i1718:0, arith) :|: i2315:0 > 0 && arith = i2315:0 - 1 f6154_0_createMetaList_LE(x4, x5, x6) -> f6154_0_createMetaList_LE(x4, x7, x8) :|: x5 + 1 < x4 && x8 > -1 && x6 = 0 && x7 = x5 + 1 ---------------------------------------- (21) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f6154_0_createMetaList_LE(i1717:0, i1718:0, i2315:0) -> f6154_0_createMetaList_LE(i1717:0, i1718:0, arith) :|: i2315:0 > 0 && arith = i2315:0 - 1 (2) f6154_0_createMetaList_LE(x4, x5, x6) -> f6154_0_createMetaList_LE(x4, x7, x8) :|: x5 + 1 < x4 && x8 > -1 && x6 = 0 && x7 = x5 + 1 Arcs: (1) -> (1), (2) (2) -> (1), (2) This digraph is fully evaluated! ---------------------------------------- (22) Obligation: Termination digraph: Nodes: (1) f6154_0_createMetaList_LE(i1717:0, i1718:0, i2315:0) -> f6154_0_createMetaList_LE(i1717:0, i1718:0, arith) :|: i2315:0 > 0 && arith = i2315:0 - 1 (2) f6154_0_createMetaList_LE(x4, x5, x6) -> f6154_0_createMetaList_LE(x4, x7, x8) :|: x5 + 1 < x4 && x8 > -1 && x6 = 0 && x7 = x5 + 1 Arcs: (1) -> (1), (2) (2) -> (1), (2) This digraph is fully evaluated! ---------------------------------------- (23) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (24) Obligation: Rules: f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, i2315:0:0) -> f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, i2315:0:0 - 1) :|: i2315:0:0 > 0 f6154_0_createMetaList_LE(x4:0, x5:0, cons_0) -> f6154_0_createMetaList_LE(x4:0, x5:0 + 1, x8:0) :|: x5:0 + 1 < x4:0 && x8:0 > -1 && cons_0 = 0 ---------------------------------------- (25) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f6154_0_createMetaList_LE(VARIABLE, VARIABLE, INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (26) Obligation: Rules: f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, i2315:0:0) -> f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, c) :|: c = i2315:0:0 - 1 && i2315:0:0 > 0 f6154_0_createMetaList_LE(x4:0, x5:0, c1) -> f6154_0_createMetaList_LE(x4:0, c2, x8:0) :|: c2 = x5:0 + 1 && c1 = 0 && (x5:0 + 1 < x4:0 && x8:0 > -1 && cons_0 = 0) ---------------------------------------- (27) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6154_0_createMetaList_LE(x, x1, x2)] = -1 + x - x1 The following rules are decreasing: f6154_0_createMetaList_LE(x4:0, x5:0, c1) -> f6154_0_createMetaList_LE(x4:0, c2, x8:0) :|: c2 = x5:0 + 1 && c1 = 0 && (x5:0 + 1 < x4:0 && x8:0 > -1 && cons_0 = 0) The following rules are bounded: f6154_0_createMetaList_LE(x4:0, x5:0, c1) -> f6154_0_createMetaList_LE(x4:0, c2, x8:0) :|: c2 = x5:0 + 1 && c1 = 0 && (x5:0 + 1 < x4:0 && x8:0 > -1 && cons_0 = 0) ---------------------------------------- (28) Obligation: Rules: f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, i2315:0:0) -> f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, c) :|: c = i2315:0:0 - 1 && i2315:0:0 > 0 ---------------------------------------- (29) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f6154_0_createMetaList_LE ] = f6154_0_createMetaList_LE_3 The following rules are decreasing: f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, i2315:0:0) -> f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, c) :|: c = i2315:0:0 - 1 && i2315:0:0 > 0 The following rules are bounded: f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, i2315:0:0) -> f6154_0_createMetaList_LE(i1717:0:0, i1718:0:0, c) :|: c = i2315:0:0 - 1 && i2315:0:0 > 0 ---------------------------------------- (30) YES