/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.jar /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- MAYBE proof of /export/starexec/sandbox/benchmark/theBenchmark.jar # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty termination of the given Bare JBC problem could not be shown: (0) Bare JBC problem (1) BareJBCToJBCProof [EQUIVALENT, 96 ms] (2) JBC problem (3) JBCToGraph [EQUIVALENT, 2105 ms] (4) JBCTerminationGraph (5) TerminationGraphToSCCProof [SOUND, 0 ms] (6) AND (7) JBCTerminationSCC (8) SCCToIRSProof [SOUND, 113 ms] (9) IRSwT (10) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (11) IRSwT (12) IRSwTTerminationDigraphProof [EQUIVALENT, 33 ms] (13) IRSwT (14) IntTRSCompressionProof [EQUIVALENT, 0 ms] (15) IRSwT (16) TempFilterProof [SOUND, 122 ms] (17) IRSwT (18) IRSwTTerminationDigraphProof [EQUIVALENT, 6 ms] (19) IRSwT (20) JBCTerminationSCC (21) SCCToIRSProof [SOUND, 156 ms] (22) IRSwT (23) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (24) IRSwT (25) IRSwTTerminationDigraphProof [EQUIVALENT, 51 ms] (26) IRSwT (27) IntTRSCompressionProof [EQUIVALENT, 0 ms] (28) IRSwT (29) TempFilterProof [SOUND, 366 ms] (30) IRSwT (31) IRSwTTerminationDigraphProof [EQUIVALENT, 0 ms] (32) IRSwT (33) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (34) IRSwT (35) JBCTerminationSCC (36) SCCToIRSProof [SOUND, 454 ms] (37) IRSwT (38) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (39) IRSwT (40) IRSwTTerminationDigraphProof [EQUIVALENT, 275 ms] (41) IRSwT (42) IntTRSCompressionProof [EQUIVALENT, 0 ms] (43) IRSwT (44) TempFilterProof [SOUND, 91 ms] (45) IntTRS (46) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (47) IntTRS (48) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (49) IntTRS (50) RankingReductionPairProof [EQUIVALENT, 0 ms] (51) YES (52) JBCTerminationSCC (53) SCCToIRSProof [SOUND, 206 ms] (54) IRSwT (55) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (56) IRSwT (57) IRSwTTerminationDigraphProof [EQUIVALENT, 12 ms] (58) IRSwT (59) IntTRSCompressionProof [EQUIVALENT, 0 ms] (60) IRSwT (61) TempFilterProof [SOUND, 34 ms] (62) IntTRS (63) PolynomialOrderProcessor [EQUIVALENT, 15 ms] (64) YES ---------------------------------------- (0) Obligation: need to prove termination of the following program: public class MarkingGraphVisitor { private int mark; private Object val; private List children; private static void visit(MarkingGraphVisitor node, int expectedMark) { if (node.mark == expectedMark) { node.mark = expectedMark + 1; List curChild = node.children; while (curChild != null) { MarkingGraphVisitor child = curChild.val; curChild = curChild.next; if (child != null) { visit(child, expectedMark); } } } } public MarkingGraphVisitor(Object v, List c) { this.mark = 0; this.val = v; this.children = c; } public static MarkingGraphVisitor createTree(int maxDepth) { if (maxDepth <= 0) { return null; } int numChildren = Random.random(); List children = null; for (int i = numChildren; i > 0; i--) { children = new List(createTree(maxDepth - 1), children); } return new MarkingGraphVisitor(null, children); } public MarkingGraphVisitor getRandom() { int depth = Random.random(); MarkingGraphVisitor curEle = this; while (depth-- >= 0 && curEle.children != null) { int childNum = Random.random(); List curChild = curEle.children; while (childNum-- >= 0 && curChild.next != null) { curChild = curChild.next; } curEle = curChild.val; } return curEle; } public static void main(String[] args) { Random.args = args; //Create graph as tree: MarkingGraphVisitor graph = createTree(Random.random()); int interconnections = Random.random(); while (interconnections-- > 0) { MarkingGraphVisitor rand1 = graph.getRandom(); MarkingGraphVisitor rand2 = graph.getRandom(); rand1.children = new List(rand2, rand1.children); } //Visit all elements: visit(graph, graph.mark); } } class List { public MarkingGraphVisitor val; public List next; public List(MarkingGraphVisitor v, List n) { this.val = v; this.next = n; } } public class Random { static String[] args; static int index = 0; public static int random() { final 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 MarkingGraphVisitor { private int mark; private Object val; private List children; private static void visit(MarkingGraphVisitor node, int expectedMark) { if (node.mark == expectedMark) { node.mark = expectedMark + 1; List curChild = node.children; while (curChild != null) { MarkingGraphVisitor child = curChild.val; curChild = curChild.next; if (child != null) { visit(child, expectedMark); } } } } public MarkingGraphVisitor(Object v, List c) { this.mark = 0; this.val = v; this.children = c; } public static MarkingGraphVisitor createTree(int maxDepth) { if (maxDepth <= 0) { return null; } int numChildren = Random.random(); List children = null; for (int i = numChildren; i > 0; i--) { children = new List(createTree(maxDepth - 1), children); } return new MarkingGraphVisitor(null, children); } public MarkingGraphVisitor getRandom() { int depth = Random.random(); MarkingGraphVisitor curEle = this; while (depth-- >= 0 && curEle.children != null) { int childNum = Random.random(); List curChild = curEle.children; while (childNum-- >= 0 && curChild.next != null) { curChild = curChild.next; } curEle = curChild.val; } return curEle; } public static void main(String[] args) { Random.args = args; //Create graph as tree: MarkingGraphVisitor graph = createTree(Random.random()); int interconnections = Random.random(); while (interconnections-- > 0) { MarkingGraphVisitor rand1 = graph.getRandom(); MarkingGraphVisitor rand2 = graph.getRandom(); rand1.children = new List(rand2, rand1.children); } //Visit all elements: visit(graph, graph.mark); } } class List { public MarkingGraphVisitor val; public List next; public List(MarkingGraphVisitor v, List n) { this.val = v; this.next = n; } } public class Random { static String[] args; static int index = 0; public static int random() { final String string = args[index]; index++; return string.length(); } } ---------------------------------------- (3) JBCToGraph (EQUIVALENT) Constructed TerminationGraph. ---------------------------------------- (4) Obligation: Termination Graph based on JBC Program: MarkingGraphVisitor.main([Ljava/lang/String;)V: Graph of 418 nodes with 1 SCC. MarkingGraphVisitor.createTree(I)LMarkingGraphVisitor;: Graph of 314 nodes with 1 SCC. MarkingGraphVisitor.getRandom()LMarkingGraphVisitor;: Graph of 262 nodes with 1 SCC. MarkingGraphVisitor.visit(LMarkingGraphVisitor;I)V: Graph of 44 nodes with 1 SCC. ---------------------------------------- (5) TerminationGraphToSCCProof (SOUND) Splitted TerminationGraph to 4 SCCss. ---------------------------------------- (6) Complex Obligation (AND) ---------------------------------------- (7) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: MarkingGraphVisitor.visit(LMarkingGraphVisitor;I)V SCC calls the following helper methods: MarkingGraphVisitor.visit(LMarkingGraphVisitor;I)V Performed SCC analyses: *Used field analysis yielded the following read fields: *MarkingGraphVisitor: [mark, children] *List: [val, next] *Marker field analysis yielded the following relations that could be markers: *MarkingGraphVisitor.mark = i6963 (Introduced counter i8486) *MarkingGraphVisitor.mark = i6978 (Introduced counter i8487) ---------------------------------------- (8) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 43 IRulesP rules: f7877_0_visit_FieldAccess(EOS(STATIC_7877), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i8486, i8487) -> f7884_0_visit_FieldAccess(EOS(STATIC_7884), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i8486, i8487) :|: TRUE f7884_0_visit_FieldAccess(EOS(STATIC_7884), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i8486, i8487) -> f7892_0_visit_Load(EOS(STATIC_7892), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i6963, i6978, i8486, i8487) :|: TRUE f7892_0_visit_Load(EOS(STATIC_7892), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i6963, i6978, i8486, i8487) -> f7901_0_visit_NE(EOS(STATIC_7901), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6978, o6171-599390761)), i6963, i6978, i6963, i8486, i8487) :|: TRUE f7901_0_visit_NE(EOS(STATIC_7901), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, i6963, i6963, i8486, i8487) -> f7907_0_visit_NE(EOS(STATIC_7907), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, i6963, i6963, i8486, i8487) :|: i6978 = i6963 f7907_0_visit_NE(EOS(STATIC_7907), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, i6963, i6963, i8486, i8487) -> f7913_0_visit_Load(EOS(STATIC_7913), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, i8486, i8487) :|: TRUE f7913_0_visit_Load(EOS(STATIC_7913), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, i8486, i8487) -> f7918_0_visit_Load(EOS(STATIC_7918), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i8486, i8487) :|: TRUE f7918_0_visit_Load(EOS(STATIC_7918), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i8486, i8487) -> f7928_0_visit_ConstantStackPush(EOS(STATIC_7928), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, i8486, i8487) :|: TRUE f7928_0_visit_ConstantStackPush(EOS(STATIC_7928), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, i8486, i8487) -> f7935_0_visit_IntArithmetic(EOS(STATIC_7935), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, 1, i8486, i8487) :|: TRUE f7935_0_visit_IntArithmetic(EOS(STATIC_7935), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, matching1, i8486, i8487) -> f7942_0_visit_FieldAccess(EOS(STATIC_7942), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963 + 1, i8486, i8487) :|: TRUE && matching1 = 1 f7942_0_visit_FieldAccess(EOS(STATIC_7942), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i6963, o6171-599390761)), i7185, i8486, i8487) -> f7949_0_visit_Load(EOS(STATIC_7949), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i7185, o6171put-599390761)), i6963, i8486 + -1, i8487 + -1) :|: i8486 >= 0 && i8487 >= 0 f7949_0_visit_Load(EOS(STATIC_7949), i6963, java.lang.Object(MarkingGraphVisitor(EOC, i7185, o6171-599390761)), i6963, i8486, i8487) -> f7954_0_visit_FieldAccess(EOS(STATIC_7954), i6963, i6963, java.lang.Object(MarkingGraphVisitor(EOC, i7185, o6171-599390761)), i8486, i8487) :|: TRUE f7954_0_visit_FieldAccess(EOS(STATIC_7954), i6963, i6963, java.lang.Object(MarkingGraphVisitor(EOC, i7185, o6171-599390761)), i8486, i8487) -> f7960_0_visit_Store(EOS(STATIC_7960), i6963, i6963, o61710, i8486, i8487) :|: TRUE f7960_0_visit_Store(EOS(STATIC_7960), i6963, i6963, o61710, i8486, i8487) -> f7967_0_visit_Load(EOS(STATIC_7967), i6963, i6963, o61710, i8486, i8487) :|: TRUE f7967_0_visit_Load(EOS(STATIC_7967), i6963, i6963, o61710, i8486, i8487) -> f7974_0_visit_NULL(EOS(STATIC_7974), i6963, i6963, o61710, o61710, i8486, i8487) :|: TRUE f7974_0_visit_NULL(EOS(STATIC_7974), i6963, i6963, java.lang.Object(o6284sub0), java.lang.Object(o6284sub0), i8486, i8487) -> f7980_0_visit_NULL(EOS(STATIC_7980), i6963, i6963, java.lang.Object(o6284sub0), java.lang.Object(o6284sub0), i8486, i8487) :|: TRUE f7980_0_visit_NULL(EOS(STATIC_7980), i6963, i6963, java.lang.Object(o6284sub0), java.lang.Object(o6284sub0), i8486, i8487) -> f7987_0_visit_Load(EOS(STATIC_7987), i6963, i6963, java.lang.Object(o6284sub0), i8486, i8487) :|: TRUE f7987_0_visit_Load(EOS(STATIC_7987), i6963, i6963, java.lang.Object(o6284sub0), i8486, i8487) -> f7993_0_visit_FieldAccess(EOS(STATIC_7993), i6963, i6963, java.lang.Object(o6284sub0), java.lang.Object(o6284sub0), i8486, i8487) :|: TRUE f7993_0_visit_FieldAccess(EOS(STATIC_7993), i6963, i6963, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), i8486, i8487) -> f7998_0_visit_FieldAccess(EOS(STATIC_7998), i6963, i6963, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), i8486, i8487) :|: TRUE f7998_0_visit_FieldAccess(EOS(STATIC_7998), i6963, i6963, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), i8486, i8487) -> f8003_0_visit_Store(EOS(STATIC_8003), i6963, i6963, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), o63030, i8486, i8487) :|: TRUE f8003_0_visit_Store(EOS(STATIC_8003), i6963, i6963, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), o63030, i8486, i8487) -> f8009_0_visit_Load(EOS(STATIC_8009), i6963, i6963, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), o63030, i8486, i8487) :|: TRUE f8009_0_visit_Load(EOS(STATIC_8009), i6963, i6963, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), o63030, i8486, i8487) -> f8020_0_visit_FieldAccess(EOS(STATIC_8020), i6963, i6963, o63030, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), i8486, i8487) :|: TRUE f8020_0_visit_FieldAccess(EOS(STATIC_8020), i6963, i6963, o63030, java.lang.Object(List(EOC, o6303-599337162, o6304-599337162)), i8486, i8487) -> f8026_0_visit_Store(EOS(STATIC_8026), i6963, i6963, o63030, o63040, i8486, i8487) :|: TRUE f8026_0_visit_Store(EOS(STATIC_8026), i6963, i6963, o63030, o63040, i8486, i8487) -> f8033_0_visit_Load(EOS(STATIC_8033), i6963, i6963, o63040, o63030, i8486, i8487) :|: TRUE f8033_0_visit_Load(EOS(STATIC_8033), i6963, i6963, o63040, o63030, i8486, i8487) -> f8038_0_visit_NULL(EOS(STATIC_8038), i6963, i6963, o63040, o63030, o63030, i8486, i8487) :|: TRUE f8038_0_visit_NULL(EOS(STATIC_8038), i6963, i6963, o63040, java.lang.Object(o6376sub0), java.lang.Object(o6376sub0), i8486, i8487) -> f8043_0_visit_NULL(EOS(STATIC_8043), i6963, i6963, o63040, java.lang.Object(o6376sub0), java.lang.Object(o6376sub0), i8486, i8487) :|: TRUE f8038_0_visit_NULL(EOS(STATIC_8038), i6963, i6963, o63040, NULL, NULL, i8486, i8487) -> f8044_0_visit_NULL(EOS(STATIC_8044), i6963, i6963, o63040, NULL, NULL, i8486, i8487) :|: TRUE f8043_0_visit_NULL(EOS(STATIC_8043), i6963, i6963, o63040, java.lang.Object(o6376sub0), java.lang.Object(o6376sub0), i8486, i8487) -> f8050_0_visit_Load(EOS(STATIC_8050), i6963, i6963, o63040, java.lang.Object(o6376sub0), i8486, i8487) :|: TRUE f8050_0_visit_Load(EOS(STATIC_8050), i6963, i6963, o63040, java.lang.Object(o6376sub0), i8486, i8487) -> f8056_0_visit_Load(EOS(STATIC_8056), i6963, i6963, o63040, java.lang.Object(o6376sub0), i8486, i8487) :|: TRUE f8056_0_visit_Load(EOS(STATIC_8056), i6963, i6963, o63040, java.lang.Object(o6376sub0), i8486, i8487) -> f8063_0_visit_InvokeMethod(EOS(STATIC_8063), i6963, i6963, o63040, java.lang.Object(o6376sub0), i6963, i8486, i8487) :|: TRUE f8063_0_visit_InvokeMethod(EOS(STATIC_8063), i6963, i6963, o63040, java.lang.Object(o6376sub0), i6963, i8486, i8487) -> f8071_0_visit_Load(EOS(STATIC_8071), i6963, o63040, java.lang.Object(o6376sub0), i6963, i8486, i8487) :|: TRUE f8063_0_visit_InvokeMethod(EOS(STATIC_8063), i6963, i6963, o63040, java.lang.Object(o6376sub0), i6963, i8486, i8487) -> f8071_1_visit_Load(EOS(STATIC_8071), i6963, i6963, o63040, java.lang.Object(o6376sub0), i6963, i8486, i8487) :|: TRUE f8071_0_visit_Load(EOS(STATIC_8071), i6963, o63040, java.lang.Object(o6376sub0), i6963, i8486, i8487) -> f8077_0_visit_Load(EOS(STATIC_8077), i6963, o63040, java.lang.Object(o6376sub0), i6963, i8486, i8487) :|: TRUE f8077_0_visit_Load(EOS(STATIC_8077), i6963, o63040, java.lang.Object(o6376sub0), i6963, i8486, i8487) -> f8098_0_visit_Load(EOS(STATIC_8098), i6963, java.lang.Object(o6376sub0), i6963, i8486, i8487) :|: TRUE f8098_0_visit_Load(EOS(STATIC_8098), i6963, java.lang.Object(o6376sub0), i6963, i8486, i8487) -> f7867_0_visit_Load(EOS(STATIC_7867), i6963, java.lang.Object(o6376sub0), i6963, i8486, i8487) :|: TRUE f7867_0_visit_Load(EOS(STATIC_7867), i6963, java.lang.Object(o6148sub0), i6963, i8486, i8487) -> f7877_0_visit_FieldAccess(EOS(STATIC_7877), i6963, java.lang.Object(o6148sub0), i6963, java.lang.Object(o6148sub0), i8486, i8487) :|: TRUE f8099_0_visit_Return(EOS(STATIC_8099), i7495, i7495, o63040, i8486, i8487) -> f8107_0_visit_JMP(EOS(STATIC_8107), i7495, i7495, o63040, i8486, i8487) :|: TRUE f8107_0_visit_JMP(EOS(STATIC_8107), i7495, i7495, o63040, i8486, i8487) -> f8051_0_visit_JMP(EOS(STATIC_8051), i7495, i7495, o63040, i8486, i8487) :|: TRUE f8051_0_visit_JMP(EOS(STATIC_8051), i6963, i6963, o63040, i8486, i8487) -> f8057_0_visit_Load(EOS(STATIC_8057), i6963, i6963, o63040, i8486, i8487) :|: TRUE f8057_0_visit_Load(EOS(STATIC_8057), i6963, i6963, o63040, i8486, i8487) -> f7967_0_visit_Load(EOS(STATIC_7967), i6963, i6963, o63040, i8486, i8487) :|: TRUE f8100_0_visit_Return(EOS(STATIC_8100), i7501, i7501, o63040, i8486, i8487) -> f8099_0_visit_Return(EOS(STATIC_8099), i7501, i7501, o63040, i8486, i8487) :|: TRUE f8044_0_visit_NULL(EOS(STATIC_8044), i6963, i6963, o63040, NULL, NULL, i8486, i8487) -> f8051_0_visit_JMP(EOS(STATIC_8051), i6963, i6963, o63040, i8486, i8487) :|: TRUE f8071_1_visit_Load(EOS(STATIC_8071), i7495, i7495, o63040, java.lang.Object(o6376sub0), i7495, i8486, i8487) -> f8099_0_visit_Return(EOS(STATIC_8099), i7495, i7495, o63040, i8486, i8487) :|: TRUE && (i8486_lC >= i8486 && i8487_lC >= i8487) f8071_1_visit_Load(EOS(STATIC_8071), i7501, i7501, o63040, java.lang.Object(o6376sub0), i7501, i8486, i8487) -> f8100_0_visit_Return(EOS(STATIC_8100), i7501, i7501, o63040, i8486, i8487) :|: TRUE && (i8486_lC >= i8486 && i8487_lC >= i8487) Combined rules. Obtained 3 IRulesP rules: f8038_0_visit_NULL(EOS(STATIC_8038), i6963:0, i6963:0, java.lang.Object(List(EOC, o6303-599337162:0, o6304-599337162:0)), java.lang.Object(o6376sub0:0), java.lang.Object(o6376sub0:0), i8486:0, i8487:0) -> f8038_0_visit_NULL(EOS(STATIC_8038), i6963:0, i6963:0, o63040:0, o63030:0, o63030:0, i8486:0, i8487:0) :|: i8486_lC:0 >= i8486:0 && i8487_lC:0 >= i8487:0 f8038_0_visit_NULL(EOS(STATIC_8038), i6963:0, i6963:0, o63040:0, java.lang.Object(MarkingGraphVisitor(EOC, i6963:0, o6171-599390761:0)), java.lang.Object(MarkingGraphVisitor(EOC, i6963:0, o6171-599390761:0)), i8486:0, i8487:0) -> f8038_0_visit_NULL(EOS(STATIC_8038), i6963:0, i6963:0, o63040:1, o63030:0, o63030:0, i8486:0 - 1, i8487:0 - 1) :|: i8486:0 > -1 && i8487:0 > -1 f8038_0_visit_NULL(EOS(STATIC_8038), i6963:0, i6963:0, java.lang.Object(List(EOC, o6303-599337162:0, o6304-599337162:0)), NULL, NULL, i8486:0, i8487:0) -> f8038_0_visit_NULL(EOS(STATIC_8038), i6963:0, i6963:0, o63040:0, o63030:0, o63030:0, i8486:0, i8487:0) :|: TRUE Filtered constant ground arguments: f8038_0_visit_NULL(x1, x2, x3, x4, x5, x6, x7, x8) -> f8038_0_visit_NULL(x2, x3, x4, x5, x6, x7, x8) EOS(x1) -> EOS List(x1, x2, x3) -> List(x2, x3) MarkingGraphVisitor(x1, x2, x3) -> MarkingGraphVisitor(x2, x3) Filtered duplicate arguments: f8038_0_visit_NULL(x1, x2, x3, x4, x5, x6, x7) -> f8038_0_visit_NULL(x2, x3, x5, x6, x7) Filtered unneeded arguments: f8038_0_visit_NULL(x1, x2, x3, x4, x5) -> f8038_0_visit_NULL(x2, x3, x4, x5) Finished conversion. Obtained 3 rules.P rules: f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0, o6304-599337162:0)), java.lang.Object(o6376sub0:0), i8486:0, i8487:0) -> f8038_0_visit_NULL(o63040:0, o63030:0, i8486:0, i8487:0) :|: i8486_lC:0 >= i8486:0 && i8487_lC:0 >= i8487:0 f8038_0_visit_NULL(o63040:0, java.lang.Object(MarkingGraphVisitor(i6963:0, o6171-599390761:0)), i8486:0, i8487:0) -> f8038_0_visit_NULL(o63040:1, o63030:0, i8486:0 - 1, i8487:0 - 1) :|: i8486:0 > -1 && i8487:0 > -1 f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0, o6304-599337162:0)), NULL, i8486:0, i8487:0) -> f8038_0_visit_NULL(o63040:0, o63030:0, i8486:0, i8487:0) :|: TRUE ---------------------------------------- (9) Obligation: Rules: f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0, o6304-599337162:0)), java.lang.Object(o6376sub0:0), i8486:0, i8487:0) -> f8038_0_visit_NULL(o63040:0, o63030:0, i8486:0, i8487:0) :|: i8486_lC:0 >= i8486:0 && i8487_lC:0 >= i8487:0 f8038_0_visit_NULL(x, java.lang.Object(MarkingGraphVisitor(x1, x2)), x3, x4) -> f8038_0_visit_NULL(x5, x6, x3 - 1, x4 - 1) :|: x3 > -1 && x4 > -1 f8038_0_visit_NULL(java.lang.Object(List(x7, x8)), NULL, x9, x10) -> f8038_0_visit_NULL(x11, x12, x9, x10) :|: TRUE ---------------------------------------- (10) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (11) Obligation: Rules: f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0, o6304-599337162:0)), java.lang.Object(o6376sub0:0), i8486:0, i8487:0) -> f8038_0_visit_NULL(o63040:0, o63030:0, i8486:0, i8487:0) :|: i8486_lC:0 >= i8486:0 && i8487_lC:0 >= i8487:0 f8038_0_visit_NULL(x, java.lang.Object(MarkingGraphVisitor(x1, x2)), x3, x4) -> f8038_0_visit_NULL(x5, x6, arith, arith1) :|: x3 > -1 && x4 > -1 && arith = x3 - 1 && arith1 = x4 - 1 f8038_0_visit_NULL(java.lang.Object(List(x7, x8)), NULL, x9, x10) -> f8038_0_visit_NULL(x11, x12, x9, x10) :|: TRUE ---------------------------------------- (12) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0, o6304-599337162:0)), java.lang.Object(o6376sub0:0), i8486:0, i8487:0) -> f8038_0_visit_NULL(o63040:0, o63030:0, i8486:0, i8487:0) :|: i8486_lC:0 >= i8486:0 && i8487_lC:0 >= i8487:0 (2) f8038_0_visit_NULL(x, java.lang.Object(MarkingGraphVisitor(x1, x2)), x3, x4) -> f8038_0_visit_NULL(x5, x6, arith, arith1) :|: x3 > -1 && x4 > -1 && arith = x3 - 1 && arith1 = x4 - 1 (3) f8038_0_visit_NULL(java.lang.Object(List(x7, x8)), NULL, x9, x10) -> f8038_0_visit_NULL(x11, x12, x9, x10) :|: TRUE Arcs: (1) -> (1), (2), (3) (2) -> (1), (2), (3) (3) -> (1), (2), (3) This digraph is fully evaluated! ---------------------------------------- (13) Obligation: Termination digraph: Nodes: (1) f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0, o6304-599337162:0)), java.lang.Object(o6376sub0:0), i8486:0, i8487:0) -> f8038_0_visit_NULL(o63040:0, o63030:0, i8486:0, i8487:0) :|: i8486_lC:0 >= i8486:0 && i8487_lC:0 >= i8487:0 (2) f8038_0_visit_NULL(x, java.lang.Object(MarkingGraphVisitor(x1, x2)), x3, x4) -> f8038_0_visit_NULL(x5, x6, arith, arith1) :|: x3 > -1 && x4 > -1 && arith = x3 - 1 && arith1 = x4 - 1 (3) f8038_0_visit_NULL(java.lang.Object(List(x7, x8)), NULL, x9, x10) -> f8038_0_visit_NULL(x11, x12, x9, x10) :|: TRUE Arcs: (1) -> (1), (2), (3) (2) -> (1), (2), (3) (3) -> (1), (2), (3) This digraph is fully evaluated! ---------------------------------------- (14) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (15) Obligation: Rules: f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0:0, o6304-599337162:0:0)), java.lang.Object(o6376sub0:0:0), i8486:0:0, i8487:0:0) -> f8038_0_visit_NULL(o63040:0:0, o63030:0:0, i8486:0:0, i8487:0:0) :|: i8486_lC:0:0 >= i8486:0:0 && i8487_lC:0:0 >= i8487:0:0 f8038_0_visit_NULL(java.lang.Object(List(x7:0, x8:0)), NULL, x9:0, x10:0) -> f8038_0_visit_NULL(x11:0, x12:0, x9:0, x10:0) :|: TRUE f8038_0_visit_NULL(x:0, java.lang.Object(MarkingGraphVisitor(x1:0, x2:0)), x3:0, x4:0) -> f8038_0_visit_NULL(x5:0, x6:0, x3:0 - 1, x4:0 - 1) :|: x3:0 > -1 && x4:0 > -1 ---------------------------------------- (16) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f8038_0_visit_NULL(VARIABLE, VARIABLE, VARIABLE, VARIABLE) java.lang.Object(VARIABLE) List(VARIABLE, VARIABLE) NULL() MarkingGraphVisitor(VARIABLE, VARIABLE) Replaced non-predefined constructor symbols by 0.The following proof was generated: # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination of the given IntTRS could not be shown: - IntTRS - PolynomialOrderProcessor Rules: f8038_0_visit_NULL(c, c1, i8486:0:0, i8487:0:0) -> f8038_0_visit_NULL(o63040:0:0, o63030:0:0, i8486:0:0, i8487:0:0) :|: c1 = 0 && c = 0 && (i8486_lC:0:0 >= i8486:0:0 && i8487_lC:0:0 >= i8487:0:0) f8038_0_visit_NULL(c2, c3, x9:0, x10:0) -> f8038_0_visit_NULL(x11:0, x12:0, x9:0, x10:0) :|: c3 = 0 && c2 = 0 && TRUE f8038_0_visit_NULL(x:0, c4, x3:0, x4:0) -> f8038_0_visit_NULL(x5:0, x6:0, c5, c6) :|: c6 = x4:0 - 1 && (c5 = x3:0 - 1 && c4 = 0) && (x3:0 > -1 && x4:0 > -1) Found the following polynomial interpretation: [f8038_0_visit_NULL(x, x1, x2, x3)] = x2 + x3 The following rules are decreasing: f8038_0_visit_NULL(x:0, c4, x3:0, x4:0) -> f8038_0_visit_NULL(x5:0, x6:0, c5, c6) :|: c6 = x4:0 - 1 && (c5 = x3:0 - 1 && c4 = 0) && (x3:0 > -1 && x4:0 > -1) The following rules are bounded: f8038_0_visit_NULL(x:0, c4, x3:0, x4:0) -> f8038_0_visit_NULL(x5:0, x6:0, c5, c6) :|: c6 = x4:0 - 1 && (c5 = x3:0 - 1 && c4 = 0) && (x3:0 > -1 && x4:0 > -1) - IntTRS - PolynomialOrderProcessor - IntTRS Rules: f8038_0_visit_NULL(c, c1, i8486:0:0, i8487:0:0) -> f8038_0_visit_NULL(o63040:0:0, o63030:0:0, i8486:0:0, i8487:0:0) :|: c1 = 0 && c = 0 && (i8486_lC:0:0 >= i8486:0:0 && i8487_lC:0:0 >= i8487:0:0) f8038_0_visit_NULL(c2, c3, x9:0, x10:0) -> f8038_0_visit_NULL(x11:0, x12:0, x9:0, x10:0) :|: c3 = 0 && c2 = 0 && TRUE ---------------------------------------- (17) Obligation: Rules: f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0:0, o6304-599337162:0:0)), java.lang.Object(o6376sub0:0:0), i8486:0:0, i8487:0:0) -> f8038_0_visit_NULL(o63040:0:0, o63030:0:0, i8486:0:0, i8487:0:0) :|: i8486_lC:0:0 >= i8486:0:0 && i8487_lC:0:0 >= i8487:0:0 f8038_0_visit_NULL(java.lang.Object(List(x7:0, x8:0)), NULL, x9:0, x10:0) -> f8038_0_visit_NULL(x11:0, x12:0, x9:0, x10:0) :|: TRUE ---------------------------------------- (18) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0:0, o6304-599337162:0:0)), java.lang.Object(o6376sub0:0:0), i8486:0:0, i8487:0:0) -> f8038_0_visit_NULL(o63040:0:0, o63030:0:0, i8486:0:0, i8487:0:0) :|: i8486_lC:0:0 >= i8486:0:0 && i8487_lC:0:0 >= i8487:0:0 (2) f8038_0_visit_NULL(java.lang.Object(List(x7:0, x8:0)), NULL, x9:0, x10:0) -> f8038_0_visit_NULL(x11:0, x12:0, x9:0, x10:0) :|: TRUE Arcs: (1) -> (1), (2) (2) -> (1), (2) This digraph is fully evaluated! ---------------------------------------- (19) Obligation: Termination digraph: Nodes: (1) f8038_0_visit_NULL(java.lang.Object(List(o6303-599337162:0:0, o6304-599337162:0:0)), java.lang.Object(o6376sub0:0:0), i8486:0:0, i8487:0:0) -> f8038_0_visit_NULL(o63040:0:0, o63030:0:0, i8486:0:0, i8487:0:0) :|: i8486_lC:0:0 >= i8486:0:0 && i8487_lC:0:0 >= i8487:0:0 (2) f8038_0_visit_NULL(java.lang.Object(List(x7:0, x8:0)), NULL, x9:0, x10:0) -> f8038_0_visit_NULL(x11:0, x12:0, x9:0, x10:0) :|: TRUE Arcs: (1) -> (1), (2) (2) -> (1), (2) This digraph is fully evaluated! ---------------------------------------- (20) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: MarkingGraphVisitor.getRandom()LMarkingGraphVisitor; SCC calls the following helper methods: Performed SCC analyses: *Used field analysis yielded the following read fields: *MarkingGraphVisitor: [children] *java.lang.String: [count] *List: [val, next] *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (21) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 64 IRulesP rules: f8428_0_getRandom_Inc(EOS(STATIC_8428(java.lang.Object(ARRAY(i6632)))), i8218, o69780, i8218) -> f8429_0_getRandom_LT(EOS(STATIC_8429(java.lang.Object(ARRAY(i6632)))), i8218 + -1, o69780, i8218) :|: TRUE f8429_0_getRandom_LT(EOS(STATIC_8429(java.lang.Object(ARRAY(i6632)))), i8222, o69780, i8225) -> f8431_0_getRandom_LT(EOS(STATIC_8431(java.lang.Object(ARRAY(i6632)))), i8222, o69780, i8225) :|: TRUE f8431_0_getRandom_LT(EOS(STATIC_8431(java.lang.Object(ARRAY(i6632)))), i8222, o69780, i8225) -> f8433_0_getRandom_Load(EOS(STATIC_8433(java.lang.Object(ARRAY(i6632)))), i8222, o69780) :|: i8225 >= 0 f8433_0_getRandom_Load(EOS(STATIC_8433(java.lang.Object(ARRAY(i6632)))), i8222, o69780) -> f8435_0_getRandom_FieldAccess(EOS(STATIC_8435(java.lang.Object(ARRAY(i6632)))), i8222, o69780, o69780) :|: TRUE f8435_0_getRandom_FieldAccess(EOS(STATIC_8435(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(o6988sub0), java.lang.Object(o6988sub0)) -> f8437_0_getRandom_FieldAccess(EOS(STATIC_8437(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(o6988sub0), java.lang.Object(o6988sub0)) :|: TRUE f8437_0_getRandom_FieldAccess(EOS(STATIC_8437(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, o7002-598503076)), java.lang.Object(MarkingGraphVisitor(EOC, o7002-598503076))) -> f8439_0_getRandom_FieldAccess(EOS(STATIC_8439(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, o7002-598503076)), java.lang.Object(MarkingGraphVisitor(EOC, o7002-598503076))) :|: TRUE f8439_0_getRandom_FieldAccess(EOS(STATIC_8439(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, o7002-598503076)), java.lang.Object(MarkingGraphVisitor(EOC, o7002-598503076))) -> f8443_0_getRandom_NULL(EOS(STATIC_8443(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, o7002-598503076)), o70020) :|: TRUE f8443_0_getRandom_NULL(EOS(STATIC_8443(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7009sub0)) -> f8444_0_getRandom_NULL(EOS(STATIC_8444(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7009sub0)) :|: TRUE f8444_0_getRandom_NULL(EOS(STATIC_8444(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7009sub0)) -> f8447_0_getRandom_InvokeMethod(EOS(STATIC_8447(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076)))) :|: TRUE f8447_0_getRandom_InvokeMethod(EOS(STATIC_8447(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076)))) -> f8450_0_random_FieldAccess(EOS(STATIC_8450(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076)))) :|: TRUE f8450_0_random_FieldAccess(EOS(STATIC_8450(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076)))) -> f8454_0_random_FieldAccess(EOS(STATIC_8454(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(ARRAY(i6632))) :|: TRUE f8454_0_random_FieldAccess(EOS(STATIC_8454(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(ARRAY(i6632))) -> f8456_0_random_ArrayAccess(EOS(STATIC_8456(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(ARRAY(i6632))) :|: TRUE f8456_0_random_ArrayAccess(EOS(STATIC_8456(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(ARRAY(i6632))) -> f8460_0_random_ArrayAccess(EOS(STATIC_8460(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(ARRAY(i6632))) :|: TRUE f8460_0_random_ArrayAccess(EOS(STATIC_8460(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(ARRAY(i6632))) -> f8463_0_random_ArrayAccess(EOS(STATIC_8463(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(ARRAY(i6632))) :|: TRUE f8463_0_random_ArrayAccess(EOS(STATIC_8463(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(ARRAY(i6632))) -> f8466_0_random_Store(EOS(STATIC_8466(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) :|: TRUE f8466_0_random_Store(EOS(STATIC_8466(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) -> f8469_0_random_FieldAccess(EOS(STATIC_8469(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) :|: TRUE f8469_0_random_FieldAccess(EOS(STATIC_8469(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) -> f8472_0_random_ConstantStackPush(EOS(STATIC_8472(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) :|: TRUE f8472_0_random_ConstantStackPush(EOS(STATIC_8472(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) -> f8475_0_random_IntArithmetic(EOS(STATIC_8475(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) :|: TRUE f8475_0_random_IntArithmetic(EOS(STATIC_8475(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) -> f8479_0_random_FieldAccess(EOS(STATIC_8479(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) :|: TRUE f8479_0_random_FieldAccess(EOS(STATIC_8479(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) -> f8482_0_random_Load(EOS(STATIC_8482(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) :|: TRUE f8482_0_random_Load(EOS(STATIC_8482(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) -> f8485_0_random_InvokeMethod(EOS(STATIC_8485(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), o7041) :|: TRUE f8485_0_random_InvokeMethod(EOS(STATIC_8485(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7058sub)) -> f8489_0_random_InvokeMethod(EOS(STATIC_8489(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7058sub)) :|: TRUE f8489_0_random_InvokeMethod(EOS(STATIC_8489(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7059sub)) -> f8493_0_random_InvokeMethod(EOS(STATIC_8493(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7059sub)) :|: TRUE f8493_0_random_InvokeMethod(EOS(STATIC_8493(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7059sub)) -> f8497_0_length_Load(EOS(STATIC_8497(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7059sub)) :|: TRUE f8497_0_length_Load(EOS(STATIC_8497(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7059sub)) -> f8504_0_length_FieldAccess(EOS(STATIC_8504(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(o7059sub)) :|: TRUE f8504_0_length_FieldAccess(EOS(STATIC_8504(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(java.lang.String(EOC, i8330))) -> f8508_0_length_FieldAccess(EOS(STATIC_8508(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(java.lang.String(EOC, i8330))) :|: i8330 >= 0 f8508_0_length_FieldAccess(EOS(STATIC_8508(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), java.lang.Object(java.lang.String(EOC, i8330))) -> f8512_0_length_Return(EOS(STATIC_8512(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), i8330) :|: TRUE f8512_0_length_Return(EOS(STATIC_8512(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), i8330) -> f8516_0_random_Return(EOS(STATIC_8516(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), i8330) :|: TRUE f8516_0_random_Return(EOS(STATIC_8516(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), i8330) -> f8520_0_getRandom_Store(EOS(STATIC_8520(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), i8330) :|: TRUE f8520_0_getRandom_Store(EOS(STATIC_8520(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), i8330) -> f8525_0_getRandom_Load(EOS(STATIC_8525(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), i8330) :|: TRUE f8525_0_getRandom_Load(EOS(STATIC_8525(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076))), i8330) -> f8529_0_getRandom_FieldAccess(EOS(STATIC_8529(java.lang.Object(ARRAY(i6632)))), i8222, i8330, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076)))) :|: TRUE f8529_0_getRandom_FieldAccess(EOS(STATIC_8529(java.lang.Object(ARRAY(i6632)))), i8222, i8330, java.lang.Object(MarkingGraphVisitor(EOC, java.lang.Object(o7009sub-598503076)))) -> f8533_0_getRandom_Store(EOS(STATIC_8533(java.lang.Object(ARRAY(i6632)))), i8222, i8330, java.lang.Object(o7009sub0)) :|: TRUE f8533_0_getRandom_Store(EOS(STATIC_8533(java.lang.Object(ARRAY(i6632)))), i8222, i8330, java.lang.Object(o7009sub0)) -> f8536_0_getRandom_Load(EOS(STATIC_8536(java.lang.Object(ARRAY(i6632)))), i8222, i8330, java.lang.Object(o7009sub0)) :|: TRUE f8536_0_getRandom_Load(EOS(STATIC_8536(java.lang.Object(ARRAY(i6632)))), i8222, i8330, java.lang.Object(o7009sub0)) -> f8588_0_getRandom_Load(EOS(STATIC_8588(java.lang.Object(ARRAY(i6632)))), i8222, i8330, java.lang.Object(o7009sub0)) :|: TRUE f8588_0_getRandom_Load(EOS(STATIC_8588(java.lang.Object(ARRAY(i6632)))), i8222, i8443, java.lang.Object(o7196sub0)) -> f8617_0_getRandom_Load(EOS(STATIC_8617(java.lang.Object(ARRAY(i6632)))), i8222, i8443, java.lang.Object(o7196sub0)) :|: TRUE f8617_0_getRandom_Load(EOS(STATIC_8617(java.lang.Object(ARRAY(i6632)))), i8222, i8469, java.lang.Object(o7267sub0)) -> f8642_0_getRandom_Load(EOS(STATIC_8642(java.lang.Object(ARRAY(i6632)))), i8222, i8469, java.lang.Object(o7267sub0)) :|: TRUE f8642_0_getRandom_Load(EOS(STATIC_8642(java.lang.Object(ARRAY(i6632)))), i8222, i8477, java.lang.Object(o7310sub0)) -> f8643_0_getRandom_Inc(EOS(STATIC_8643(java.lang.Object(ARRAY(i6632)))), i8222, i8477, java.lang.Object(o7310sub0), i8477) :|: TRUE f8643_0_getRandom_Inc(EOS(STATIC_8643(java.lang.Object(ARRAY(i6632)))), i8222, i8477, java.lang.Object(o7310sub0), i8477) -> f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632)))), i8222, i8477 + -1, java.lang.Object(o7310sub0), i8477) :|: TRUE f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632)))), i8222, i8481, java.lang.Object(o7310sub0), i8480) -> f8645_0_getRandom_LT(EOS(STATIC_8645(java.lang.Object(ARRAY(i6632)))), i8222, i8481, java.lang.Object(o7310sub0), i8480) :|: TRUE f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7310sub0), i8482) -> f8646_0_getRandom_LT(EOS(STATIC_8646(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7310sub0), i8482) :|: TRUE f8645_0_getRandom_LT(EOS(STATIC_8645(java.lang.Object(ARRAY(i6632)))), i8222, i8481, java.lang.Object(o7310sub0), i8480) -> f8647_0_getRandom_Load(EOS(STATIC_8647(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(o7310sub0)) :|: i8480 < 0 f8647_0_getRandom_Load(EOS(STATIC_8647(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(o7310sub0)) -> f8649_0_getRandom_FieldAccess(EOS(STATIC_8649(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(o7310sub0)) :|: TRUE f8649_0_getRandom_FieldAccess(EOS(STATIC_8649(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(List(EOC, o7321-598411781, o7322-598411781))) -> f8651_0_getRandom_FieldAccess(EOS(STATIC_8651(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(List(EOC, o7321-598411781, o7322-598411781))) :|: TRUE f8651_0_getRandom_FieldAccess(EOS(STATIC_8651(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(List(EOC, o7321-598411781, o7322-598411781))) -> f8653_0_getRandom_Store(EOS(STATIC_8653(java.lang.Object(ARRAY(i6632)))), i8222, o73210) :|: TRUE f8653_0_getRandom_Store(EOS(STATIC_8653(java.lang.Object(ARRAY(i6632)))), i8222, o73210) -> f8655_0_getRandom_JMP(EOS(STATIC_8655(java.lang.Object(ARRAY(i6632)))), i8222, o73210) :|: TRUE f8655_0_getRandom_JMP(EOS(STATIC_8655(java.lang.Object(ARRAY(i6632)))), i8222, o73210) -> f8658_0_getRandom_Load(EOS(STATIC_8658(java.lang.Object(ARRAY(i6632)))), i8222, o73210) :|: TRUE f8658_0_getRandom_Load(EOS(STATIC_8658(java.lang.Object(ARRAY(i6632)))), i8222, o73210) -> f8427_0_getRandom_Load(EOS(STATIC_8427(java.lang.Object(ARRAY(i6632)))), i8222, o73210) :|: TRUE f8427_0_getRandom_Load(EOS(STATIC_8427(java.lang.Object(ARRAY(i6632)))), i8218, o69780) -> f8428_0_getRandom_Inc(EOS(STATIC_8428(java.lang.Object(ARRAY(i6632)))), i8218, o69780, i8218) :|: TRUE f8646_0_getRandom_LT(EOS(STATIC_8646(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7310sub0), i8482) -> f8648_0_getRandom_Load(EOS(STATIC_8648(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7310sub0)) :|: i8482 >= 0 f8648_0_getRandom_Load(EOS(STATIC_8648(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7310sub0)) -> f8650_0_getRandom_FieldAccess(EOS(STATIC_8650(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7310sub0), java.lang.Object(o7310sub0)) :|: TRUE f8650_0_getRandom_FieldAccess(EOS(STATIC_8650(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, o7325-598411688)), java.lang.Object(List(EOC, o7324-598411688, o7325-598411688))) -> f8652_0_getRandom_FieldAccess(EOS(STATIC_8652(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, o7325-598411688)), java.lang.Object(List(EOC, o7324-598411688, o7325-598411688))) :|: TRUE f8652_0_getRandom_FieldAccess(EOS(STATIC_8652(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, o7325-598411688)), java.lang.Object(List(EOC, o7324-598411688, o7325-598411688))) -> f8654_0_getRandom_NULL(EOS(STATIC_8654(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, o7325-598411688)), o73250) :|: TRUE f8654_0_getRandom_NULL(EOS(STATIC_8654(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, java.lang.Object(o7326sub-598411688))), java.lang.Object(o7326sub0)) -> f8656_0_getRandom_NULL(EOS(STATIC_8656(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, java.lang.Object(o7326sub-598411688))), java.lang.Object(o7326sub0)) :|: TRUE f8654_0_getRandom_NULL(EOS(STATIC_8654(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, NULL)), NULL) -> f8657_0_getRandom_NULL(EOS(STATIC_8657(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, NULL)), NULL) :|: TRUE f8656_0_getRandom_NULL(EOS(STATIC_8656(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, java.lang.Object(o7326sub-598411688))), java.lang.Object(o7326sub0)) -> f8659_0_getRandom_Load(EOS(STATIC_8659(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, java.lang.Object(o7326sub-598411688)))) :|: TRUE f8659_0_getRandom_Load(EOS(STATIC_8659(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, java.lang.Object(o7326sub-598411688)))) -> f8661_0_getRandom_FieldAccess(EOS(STATIC_8661(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, java.lang.Object(o7326sub-598411688)))) :|: TRUE f8661_0_getRandom_FieldAccess(EOS(STATIC_8661(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, java.lang.Object(o7326sub-598411688)))) -> f8663_0_getRandom_Store(EOS(STATIC_8663(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7326sub0)) :|: TRUE f8663_0_getRandom_Store(EOS(STATIC_8663(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7326sub0)) -> f8665_0_getRandom_JMP(EOS(STATIC_8665(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7326sub0)) :|: TRUE f8665_0_getRandom_JMP(EOS(STATIC_8665(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7326sub0)) -> f8666_0_getRandom_Load(EOS(STATIC_8666(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7326sub0)) :|: TRUE f8666_0_getRandom_Load(EOS(STATIC_8666(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7326sub0)) -> f8642_0_getRandom_Load(EOS(STATIC_8642(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(o7326sub0)) :|: TRUE f8657_0_getRandom_NULL(EOS(STATIC_8657(java.lang.Object(ARRAY(i6632)))), i8222, i8479, java.lang.Object(List(EOC, o7324-598411688, NULL)), NULL) -> f8660_0_getRandom_Load(EOS(STATIC_8660(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(List(EOC, o7324-598411688, NULL))) :|: TRUE f8660_0_getRandom_Load(EOS(STATIC_8660(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(List(EOC, o7324-598411688, NULL))) -> f8662_0_getRandom_FieldAccess(EOS(STATIC_8662(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(List(EOC, o7324-598411688, NULL))) :|: TRUE f8662_0_getRandom_FieldAccess(EOS(STATIC_8662(java.lang.Object(ARRAY(i6632)))), i8222, java.lang.Object(List(EOC, o7324-598411688, NULL))) -> f8664_0_getRandom_Store(EOS(STATIC_8664(java.lang.Object(ARRAY(i6632)))), i8222, o73240) :|: TRUE f8664_0_getRandom_Store(EOS(STATIC_8664(java.lang.Object(ARRAY(i6632)))), i8222, o73240) -> f8653_0_getRandom_Store(EOS(STATIC_8653(java.lang.Object(ARRAY(i6632)))), i8222, o73240) :|: TRUE Combined rules. Obtained 3 IRulesP rules: f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632:0)))), i8222:0, i8481:0, java.lang.Object(List(EOC, o7321-598411781:0, o7322-598411781:0)), i8480:0) -> f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632:0)))), i8222:0 - 1, i8330:0 - 1, java.lang.Object(o7009sub0:0), i8330:0) :|: i8222:0 > -1 && i8480:0 < 0 && i8330:0 > -1 f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632:0)))), i8222:0, i8479:0, java.lang.Object(List(EOC, o7324-598411688:0, java.lang.Object(o7326sub-598411688:0))), i8482:0) -> f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632:0)))), i8222:0, i8479:0 - 1, java.lang.Object(o7326sub0:0), i8479:0) :|: i8482:0 > -1 f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632:0)))), i8222:0, i8479:0, java.lang.Object(List(EOC, o7324-598411688:0, NULL)), i8482:0) -> f8644_0_getRandom_LT(EOS(STATIC_8644(java.lang.Object(ARRAY(i6632:0)))), i8222:0 - 1, i8330:0 - 1, java.lang.Object(o7009sub0:0), i8330:0) :|: i8222:0 > -1 && i8482:0 > -1 && i8330:0 > -1 Filtered constant ground arguments: List(x1, x2, x3) -> List(x2, x3) Filtered unneeded arguments: f8644_0_getRandom_LT(x1, x2, x3, x4, x5) -> f8644_0_getRandom_LT(x2, x3, x4, x5) List(x1, x2) -> List(x2) Finished conversion. Obtained 3 rules.P rules: f8644_0_getRandom_LT(i8222:0, i8481:0, java.lang.Object(List(o7322-598411781:0)), i8480:0) -> f8644_0_getRandom_LT(i8222:0 - 1, i8330:0 - 1, java.lang.Object(o7009sub0:0), i8330:0) :|: i8480:0 < 0 && i8330:0 > -1 && i8222:0 > -1 f8644_0_getRandom_LT(i8222:0, i8479:0, java.lang.Object(List(java.lang.Object(o7326sub-598411688:0))), i8482:0) -> f8644_0_getRandom_LT(i8222:0, i8479:0 - 1, java.lang.Object(o7326sub0:0), i8479:0) :|: i8482:0 > -1 f8644_0_getRandom_LT(i8222:0, i8479:0, java.lang.Object(List(NULL)), i8482:0) -> f8644_0_getRandom_LT(i8222:0 - 1, i8330:0 - 1, java.lang.Object(o7009sub0:0), i8330:0) :|: i8482:0 > -1 && i8330:0 > -1 && i8222:0 > -1 ---------------------------------------- (22) Obligation: Rules: f8644_0_getRandom_LT(i8222:0, i8481:0, java.lang.Object(List(o7322-598411781:0)), i8480:0) -> f8644_0_getRandom_LT(i8222:0 - 1, i8330:0 - 1, java.lang.Object(o7009sub0:0), i8330:0) :|: i8480:0 < 0 && i8330:0 > -1 && i8222:0 > -1 f8644_0_getRandom_LT(x, x1, java.lang.Object(List(java.lang.Object(x2))), x3) -> f8644_0_getRandom_LT(x, x1 - 1, java.lang.Object(x4), x1) :|: x3 > -1 f8644_0_getRandom_LT(x5, x6, java.lang.Object(List(NULL)), x7) -> f8644_0_getRandom_LT(x5 - 1, x8 - 1, java.lang.Object(x9), x8) :|: x7 > -1 && x8 > -1 && x5 > -1 ---------------------------------------- (23) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (24) Obligation: Rules: f8644_0_getRandom_LT(i8222:0, i8481:0, java.lang.Object(List(o7322-598411781:0)), i8480:0) -> f8644_0_getRandom_LT(arith, arith1, java.lang.Object(o7009sub0:0), i8330:0) :|: i8480:0 < 0 && i8330:0 > -1 && i8222:0 > -1 && arith = i8222:0 - 1 && arith1 = i8330:0 - 1 f8644_0_getRandom_LT(x10, x11, java.lang.Object(List(java.lang.Object(x12))), x13) -> f8644_0_getRandom_LT(x10, x14, java.lang.Object(x15), x11) :|: x13 > -1 && x14 = x11 - 1 f8644_0_getRandom_LT(x16, x17, java.lang.Object(List(NULL)), x18) -> f8644_0_getRandom_LT(x19, x20, java.lang.Object(x21), x22) :|: x18 > -1 && x22 > -1 && x16 > -1 && x19 = x16 - 1 && x20 = x22 - 1 ---------------------------------------- (25) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f8644_0_getRandom_LT(i8222:0, i8481:0, java.lang.Object(List(o7322-598411781:0)), i8480:0) -> f8644_0_getRandom_LT(arith, arith1, java.lang.Object(o7009sub0:0), i8330:0) :|: i8480:0 < 0 && i8330:0 > -1 && i8222:0 > -1 && arith = i8222:0 - 1 && arith1 = i8330:0 - 1 (2) f8644_0_getRandom_LT(x10, x11, java.lang.Object(List(java.lang.Object(x12))), x13) -> f8644_0_getRandom_LT(x10, x14, java.lang.Object(x15), x11) :|: x13 > -1 && x14 = x11 - 1 (3) f8644_0_getRandom_LT(x16, x17, java.lang.Object(List(NULL)), x18) -> f8644_0_getRandom_LT(x19, x20, java.lang.Object(x21), x22) :|: x18 > -1 && x22 > -1 && x16 > -1 && x19 = x16 - 1 && x20 = x22 - 1 Arcs: (1) -> (2), (3) (2) -> (1), (2), (3) (3) -> (2), (3) This digraph is fully evaluated! ---------------------------------------- (26) Obligation: Termination digraph: Nodes: (1) f8644_0_getRandom_LT(i8222:0, i8481:0, java.lang.Object(List(o7322-598411781:0)), i8480:0) -> f8644_0_getRandom_LT(arith, arith1, java.lang.Object(o7009sub0:0), i8330:0) :|: i8480:0 < 0 && i8330:0 > -1 && i8222:0 > -1 && arith = i8222:0 - 1 && arith1 = i8330:0 - 1 (2) f8644_0_getRandom_LT(x10, x11, java.lang.Object(List(java.lang.Object(x12))), x13) -> f8644_0_getRandom_LT(x10, x14, java.lang.Object(x15), x11) :|: x13 > -1 && x14 = x11 - 1 (3) f8644_0_getRandom_LT(x16, x17, java.lang.Object(List(NULL)), x18) -> f8644_0_getRandom_LT(x19, x20, java.lang.Object(x21), x22) :|: x18 > -1 && x22 > -1 && x16 > -1 && x19 = x16 - 1 && x20 = x22 - 1 Arcs: (1) -> (2), (3) (2) -> (1), (2), (3) (3) -> (2), (3) This digraph is fully evaluated! ---------------------------------------- (27) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (28) Obligation: Rules: f8644_0_getRandom_LT(i8222:0:0, i8481:0:0, java.lang.Object(List(o7322-598411781:0:0)), i8480:0:0) -> f8644_0_getRandom_LT(i8222:0:0 - 1, i8330:0:0 - 1, java.lang.Object(o7009sub0:0:0), i8330:0:0) :|: i8480:0:0 < 0 && i8330:0:0 > -1 && i8222:0:0 > -1 f8644_0_getRandom_LT(x16:0, x17:0, java.lang.Object(List(NULL)), x18:0) -> f8644_0_getRandom_LT(x16:0 - 1, x22:0 - 1, java.lang.Object(x21:0), x22:0) :|: x18:0 > -1 && x22:0 > -1 && x16:0 > -1 f8644_0_getRandom_LT(x10:0, x11:0, java.lang.Object(List(java.lang.Object(x12:0))), x13:0) -> f8644_0_getRandom_LT(x10:0, x11:0 - 1, java.lang.Object(x15:0), x11:0) :|: x13:0 > -1 ---------------------------------------- (29) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f8644_0_getRandom_LT(VARIABLE, VARIABLE, VARIABLE, VARIABLE) java.lang.Object(VARIABLE) List(VARIABLE) NULL() Replaced non-predefined constructor symbols by 0.The following proof was generated: # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination of the given IntTRS could not be shown: - IntTRS - PolynomialOrderProcessor Rules: f8644_0_getRandom_LT(i8222:0:0, i8481:0:0, c, i8480:0:0) -> f8644_0_getRandom_LT(c1, c2, c3, i8330:0:0) :|: c3 = 0 && (c2 = i8330:0:0 - 1 && (c1 = i8222:0:0 - 1 && c = 0)) && (i8480:0:0 < 0 && i8330:0:0 > -1 && i8222:0:0 > -1) f8644_0_getRandom_LT(x16:0, x17:0, c4, x18:0) -> f8644_0_getRandom_LT(c5, c6, c7, x22:0) :|: c7 = 0 && (c6 = x22:0 - 1 && (c5 = x16:0 - 1 && c4 = 0)) && (x18:0 > -1 && x22:0 > -1 && x16:0 > -1) f8644_0_getRandom_LT(x10:0, x11:0, c8, x13:0) -> f8644_0_getRandom_LT(x10:0, c9, c10, x11:0) :|: c10 = 0 && (c9 = x11:0 - 1 && c8 = 0) && x13:0 > -1 Found the following polynomial interpretation: [f8644_0_getRandom_LT(x, x1, x2, x3)] = x + c2*x2 The following rules are decreasing: f8644_0_getRandom_LT(i8222:0:0, i8481:0:0, c, i8480:0:0) -> f8644_0_getRandom_LT(c1, c2, c3, i8330:0:0) :|: c3 = 0 && (c2 = i8330:0:0 - 1 && (c1 = i8222:0:0 - 1 && c = 0)) && (i8480:0:0 < 0 && i8330:0:0 > -1 && i8222:0:0 > -1) f8644_0_getRandom_LT(x16:0, x17:0, c4, x18:0) -> f8644_0_getRandom_LT(c5, c6, c7, x22:0) :|: c7 = 0 && (c6 = x22:0 - 1 && (c5 = x16:0 - 1 && c4 = 0)) && (x18:0 > -1 && x22:0 > -1 && x16:0 > -1) The following rules are bounded: f8644_0_getRandom_LT(i8222:0:0, i8481:0:0, c, i8480:0:0) -> f8644_0_getRandom_LT(c1, c2, c3, i8330:0:0) :|: c3 = 0 && (c2 = i8330:0:0 - 1 && (c1 = i8222:0:0 - 1 && c = 0)) && (i8480:0:0 < 0 && i8330:0:0 > -1 && i8222:0:0 > -1) f8644_0_getRandom_LT(x16:0, x17:0, c4, x18:0) -> f8644_0_getRandom_LT(c5, c6, c7, x22:0) :|: c7 = 0 && (c6 = x22:0 - 1 && (c5 = x16:0 - 1 && c4 = 0)) && (x18:0 > -1 && x22:0 > -1 && x16:0 > -1) - IntTRS - PolynomialOrderProcessor - IntTRS Rules: f8644_0_getRandom_LT(x10:0, x11:0, c8, x13:0) -> f8644_0_getRandom_LT(x10:0, c9, c10, x11:0) :|: c10 = 0 && (c9 = x11:0 - 1 && c8 = 0) && x13:0 > -1 ---------------------------------------- (30) Obligation: Rules: f8644_0_getRandom_LT(x10:0, x11:0, java.lang.Object(List(java.lang.Object(x12:0))), x13:0) -> f8644_0_getRandom_LT(x10:0, x11:0 - 1, java.lang.Object(x15:0), x11:0) :|: x13:0 > -1 ---------------------------------------- (31) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f8644_0_getRandom_LT(x10:0, x11:0, java.lang.Object(List(java.lang.Object(x12:0))), x13:0) -> f8644_0_getRandom_LT(x10:0, x11:0 - 1, java.lang.Object(x15:0), x11:0) :|: x13:0 > -1 Arcs: (1) -> (1) This digraph is fully evaluated! ---------------------------------------- (32) Obligation: Termination digraph: Nodes: (1) f8644_0_getRandom_LT(x10:0, x11:0, java.lang.Object(List(java.lang.Object(x12:0))), x13:0) -> f8644_0_getRandom_LT(x10:0, x11:0 - 1, java.lang.Object(x15:0), x11:0) :|: x13:0 > -1 Arcs: (1) -> (1) This digraph is fully evaluated! ---------------------------------------- (33) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: f8644_0_getRandom_LT(x1, x2, x3, x4) -> f8644_0_getRandom_LT(x2, x3, x4) ---------------------------------------- (34) Obligation: Rules: f8644_0_getRandom_LT(x11:0, java.lang.Object(List(java.lang.Object(x12:0))), x13:0) -> f8644_0_getRandom_LT(x11:0 - 1, java.lang.Object(x15:0), x11:0) :|: x13:0 > -1 ---------------------------------------- (35) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: MarkingGraphVisitor.createTree(I)LMarkingGraphVisitor; SCC calls the following helper methods: MarkingGraphVisitor.createTree(I)LMarkingGraphVisitor; 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: ---------------------------------------- (36) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 186 IRulesP rules: f172_0_createTree_GT(EOS(STATIC_172(java.lang.Object(o22sub), i10)), i22, i22, i22) -> f182_0_createTree_GT(EOS(STATIC_182(java.lang.Object(o22sub), i10)), i22, i22, i22) :|: TRUE f182_0_createTree_GT(EOS(STATIC_182(java.lang.Object(o22sub), i10)), i22, i22, i22) -> f187_0_createTree_InvokeMethod(EOS(STATIC_187(java.lang.Object(o22sub), i10)), i22, i22) :|: i22 > 0 f187_0_createTree_InvokeMethod(EOS(STATIC_187(java.lang.Object(o22sub), i10)), i22, i22) -> f204_0_random_FieldAccess(EOS(STATIC_204(java.lang.Object(o22sub), i10)), i22, i22) :|: TRUE f204_0_random_FieldAccess(EOS(STATIC_204(java.lang.Object(o22sub), i10)), i22, i22) -> f282_0_random_FieldAccess(EOS(STATIC_282(java.lang.Object(o22sub), i10)), i22, i22, java.lang.Object(o22sub)) :|: TRUE f282_0_random_FieldAccess(EOS(STATIC_282(java.lang.Object(o22sub), i10)), i22, i22, java.lang.Object(o22sub)) -> f292_0_random_ArrayAccess(EOS(STATIC_292(java.lang.Object(o22sub), i10)), i22, i22, java.lang.Object(o22sub), i10) :|: TRUE f292_0_random_ArrayAccess(EOS(STATIC_292(java.lang.Object(ARRAY(i38)), i10)), i22, i22, java.lang.Object(ARRAY(i38)), i10) -> f301_0_random_ArrayAccess(EOS(STATIC_301(java.lang.Object(ARRAY(i38)), i10)), i22, i22, java.lang.Object(ARRAY(i38)), i10) :|: i38 >= 0 f301_0_random_ArrayAccess(EOS(STATIC_301(java.lang.Object(ARRAY(i38)), i10)), i22, i22, java.lang.Object(ARRAY(i38)), i10) -> f311_0_random_ArrayAccess(EOS(STATIC_311(java.lang.Object(ARRAY(i38)), i10)), i22, i22, java.lang.Object(ARRAY(i38)), i10) :|: TRUE f311_0_random_ArrayAccess(EOS(STATIC_311(java.lang.Object(ARRAY(i38)), i10)), i22, i22, java.lang.Object(ARRAY(i38)), i10) -> f318_0_random_Store(EOS(STATIC_318(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40) :|: TRUE f318_0_random_Store(EOS(STATIC_318(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40) -> f324_0_random_FieldAccess(EOS(STATIC_324(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40) :|: TRUE f324_0_random_FieldAccess(EOS(STATIC_324(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40) -> f332_0_random_ConstantStackPush(EOS(STATIC_332(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40, i10) :|: TRUE f332_0_random_ConstantStackPush(EOS(STATIC_332(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40, i10) -> f345_0_random_IntArithmetic(EOS(STATIC_345(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40, i10, 1) :|: TRUE f345_0_random_IntArithmetic(EOS(STATIC_345(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40, i10, matching1) -> f350_0_random_FieldAccess(EOS(STATIC_350(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40, i10 + 1) :|: i10 > 0 && matching1 = 1 f350_0_random_FieldAccess(EOS(STATIC_350(java.lang.Object(ARRAY(i38)), i10)), i22, i22, o40, i44) -> f359_0_random_Load(EOS(STATIC_359(java.lang.Object(ARRAY(i38)), i44)), i22, i22, o40) :|: TRUE f359_0_random_Load(EOS(STATIC_359(java.lang.Object(ARRAY(i38)), i44)), i22, i22, o40) -> f364_0_random_InvokeMethod(EOS(STATIC_364(java.lang.Object(ARRAY(i38)), i44)), i22, i22, o40) :|: TRUE f364_0_random_InvokeMethod(EOS(STATIC_364(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(o49sub)) -> f375_0_random_InvokeMethod(EOS(STATIC_375(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(o49sub)) :|: TRUE f375_0_random_InvokeMethod(EOS(STATIC_375(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(o51sub)) -> f383_0_random_InvokeMethod(EOS(STATIC_383(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(o51sub)) :|: TRUE f383_0_random_InvokeMethod(EOS(STATIC_383(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(o51sub)) -> f391_0_length_Load(EOS(STATIC_391(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(o51sub)) :|: TRUE f391_0_length_Load(EOS(STATIC_391(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(o51sub)) -> f411_0_length_FieldAccess(EOS(STATIC_411(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(o51sub)) :|: TRUE f411_0_length_FieldAccess(EOS(STATIC_411(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(java.lang.String(EOC, i52))) -> f421_0_length_FieldAccess(EOS(STATIC_421(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(java.lang.String(EOC, i52))) :|: i52 >= 0 f421_0_length_FieldAccess(EOS(STATIC_421(java.lang.Object(ARRAY(i38)), i44)), i22, i22, java.lang.Object(java.lang.String(EOC, i52))) -> f435_0_length_Return(EOS(STATIC_435(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52) :|: TRUE f435_0_length_Return(EOS(STATIC_435(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52) -> f455_0_random_Return(EOS(STATIC_455(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52) :|: TRUE f455_0_random_Return(EOS(STATIC_455(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52) -> f467_0_createTree_Store(EOS(STATIC_467(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52) :|: TRUE f467_0_createTree_Store(EOS(STATIC_467(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52) -> f486_0_createTree_ConstantStackPush(EOS(STATIC_486(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52) :|: TRUE f486_0_createTree_ConstantStackPush(EOS(STATIC_486(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52) -> f500_0_createTree_Store(EOS(STATIC_500(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52, NULL) :|: TRUE f500_0_createTree_Store(EOS(STATIC_500(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52, NULL) -> f510_0_createTree_Load(EOS(STATIC_510(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52, NULL) :|: TRUE f510_0_createTree_Load(EOS(STATIC_510(java.lang.Object(ARRAY(i38)), i44)), i22, i22, i52, NULL) -> f523_0_createTree_Store(EOS(STATIC_523(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i52) :|: TRUE f523_0_createTree_Store(EOS(STATIC_523(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i52) -> f537_0_createTree_Load(EOS(STATIC_537(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i52) :|: TRUE f537_0_createTree_Load(EOS(STATIC_537(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i52) -> f556_0_createTree_LE(EOS(STATIC_556(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i52, i52) :|: TRUE f556_0_createTree_LE(EOS(STATIC_556(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, i75) -> f573_0_createTree_LE(EOS(STATIC_573(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, i75) :|: TRUE f573_0_createTree_LE(EOS(STATIC_573(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, i75) -> f593_0_createTree_New(EOS(STATIC_593(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75) :|: i75 > 0 f593_0_createTree_New(EOS(STATIC_593(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75) -> f619_0_createTree_Duplicate(EOS(STATIC_619(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC))) :|: TRUE f619_0_createTree_Duplicate(EOS(STATIC_619(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC))) -> f643_0_createTree_Load(EOS(STATIC_643(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f643_0_createTree_Load(EOS(STATIC_643(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f666_0_createTree_ConstantStackPush(EOS(STATIC_666(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22) :|: TRUE f666_0_createTree_ConstantStackPush(EOS(STATIC_666(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22) -> f683_0_createTree_IntArithmetic(EOS(STATIC_683(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22, 1) :|: TRUE f683_0_createTree_IntArithmetic(EOS(STATIC_683(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22, matching1) -> f703_0_createTree_InvokeMethod(EOS(STATIC_703(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22 - 1) :|: i22 > 0 && matching1 = 1 f703_0_createTree_InvokeMethod(EOS(STATIC_703(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i96) -> f719_0_createTree_Load(EOS(STATIC_719(java.lang.Object(ARRAY(i38)), i44)), i96, i96) :|: i22 >= 1 && i75 >= 1 && i44 > 1 && i96 < i22 f703_0_createTree_InvokeMethod(EOS(STATIC_703(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i96) -> f719_1_createTree_Load(EOS(STATIC_719(java.lang.Object(ARRAY(i38)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i96) :|: i22 >= 1 && i75 >= 1 && i44 > 1 && i96 < i22 f719_0_createTree_Load(EOS(STATIC_719(java.lang.Object(ARRAY(i38)), i44)), i96, i96) -> f760_0_createTree_Load(EOS(STATIC_760(java.lang.Object(ARRAY(i38)), i44)), i96, i96) :|: TRUE f760_0_createTree_Load(EOS(STATIC_760(java.lang.Object(ARRAY(i38)), i44)), i96, i96) -> f160_0_createTree_Load(EOS(STATIC_160(java.lang.Object(ARRAY(i38)), i44)), i96, i96) :|: TRUE f160_0_createTree_Load(EOS(STATIC_160(java.lang.Object(o22sub), i10)), i14, i14) -> f172_0_createTree_GT(EOS(STATIC_172(java.lang.Object(o22sub), i10)), i14, i14, i14) :|: TRUE f992_0_createTree_Return(EOS(STATIC_992(java.lang.Object(ARRAY(i38)), i120)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f1083_0_createTree_Load(EOS(STATIC_1083(java.lang.Object(ARRAY(i38)), i120)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f1083_0_createTree_Load(EOS(STATIC_1083(java.lang.Object(ARRAY(i38)), i120)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f1102_0_createTree_InvokeMethod(EOS(STATIC_1102(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL) :|: TRUE f1102_0_createTree_InvokeMethod(EOS(STATIC_1102(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL) -> f1115_0__init__Load(EOS(STATIC_1115(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL) :|: TRUE f1115_0__init__Load(EOS(STATIC_1115(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL) -> f1135_0__init__InvokeMethod(EOS(STATIC_1135(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL, java.lang.Object(List(EOC))) :|: TRUE f1135_0__init__InvokeMethod(EOS(STATIC_1135(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL, java.lang.Object(List(EOC))) -> f1149_0__init__Load(EOS(STATIC_1149(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL) :|: TRUE f1149_0__init__Load(EOS(STATIC_1149(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL) -> f1154_0__init__Load(EOS(STATIC_1154(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL, java.lang.Object(List(EOC))) :|: TRUE f1154_0__init__Load(EOS(STATIC_1154(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, NULL, java.lang.Object(List(EOC))) -> f1167_0__init__FieldAccess(EOS(STATIC_1167(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), NULL) :|: TRUE f1167_0__init__FieldAccess(EOS(STATIC_1167(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), NULL) -> f1215_0__init__Load(EOS(STATIC_1215(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f1215_0__init__Load(EOS(STATIC_1215(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f1229_0__init__Load(EOS(STATIC_1229(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f1229_0__init__Load(EOS(STATIC_1229(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) -> f1260_0__init__FieldAccess(EOS(STATIC_1260(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f1260_0__init__FieldAccess(EOS(STATIC_1260(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f1328_0__init__Return(EOS(STATIC_1328(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC))) :|: TRUE f1328_0__init__Return(EOS(STATIC_1328(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC))) -> f1344_0_createTree_Store(EOS(STATIC_1344(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC))) :|: TRUE f1344_0_createTree_Store(EOS(STATIC_1344(java.lang.Object(ARRAY(i38)), i120)), i22, i22, i75, java.lang.Object(List(EOC))) -> f1354_0_createTree_Inc(EOS(STATIC_1354(java.lang.Object(ARRAY(i38)), i120)), i22, i22, java.lang.Object(List(EOC)), i75) :|: TRUE f1354_0_createTree_Inc(EOS(STATIC_1354(java.lang.Object(ARRAY(i38)), i120)), i22, i22, java.lang.Object(List(EOC)), i75) -> f1365_0_createTree_JMP(EOS(STATIC_1365(java.lang.Object(ARRAY(i38)), i120)), i22, i22, java.lang.Object(List(EOC)), i75 + -1) :|: TRUE f1365_0_createTree_JMP(EOS(STATIC_1365(java.lang.Object(ARRAY(i38)), i120)), i22, i22, java.lang.Object(List(EOC)), i249) -> f1464_0_createTree_Load(EOS(STATIC_1464(java.lang.Object(ARRAY(i38)), i120)), i22, i22, java.lang.Object(List(EOC)), i249) :|: TRUE f1464_0_createTree_Load(EOS(STATIC_1464(java.lang.Object(ARRAY(i38)), i120)), i22, i22, java.lang.Object(List(EOC)), i249) -> f4858_0_createTree_Load(EOS(STATIC_4858(java.lang.Object(ARRAY(i38)), i120)), i22, i22, java.lang.Object(List(EOC)), i249) :|: TRUE f4858_0_createTree_Load(EOS(STATIC_4858(java.lang.Object(ARRAY(i38)), i1330)), i22, i22, java.lang.Object(List(EOC)), i1331) -> f5860_0_createTree_Load(EOS(STATIC_5860(java.lang.Object(ARRAY(i38)), i1330)), i22, i22, java.lang.Object(List(EOC)), i1331) :|: TRUE f5860_0_createTree_Load(EOS(STATIC_5860(java.lang.Object(ARRAY(i38)), i2196)), i22, i22, java.lang.Object(List(EOC)), i2197) -> f6461_0_createTree_Load(EOS(STATIC_6461(java.lang.Object(ARRAY(i38)), i2196)), i22, i22, java.lang.Object(List(EOC)), i2197) :|: TRUE f6461_0_createTree_Load(EOS(STATIC_6461(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4556) -> f6466_0_createTree_LE(EOS(STATIC_6466(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4556, i4556) :|: TRUE f6466_0_createTree_LE(EOS(STATIC_6466(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, i4595) -> f6472_0_createTree_LE(EOS(STATIC_6472(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, i4595) :|: TRUE f6472_0_createTree_LE(EOS(STATIC_6472(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, i4595) -> f6479_0_createTree_New(EOS(STATIC_6479(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595) :|: i4595 > 0 f6479_0_createTree_New(EOS(STATIC_6479(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595) -> f6486_0_createTree_Duplicate(EOS(STATIC_6486(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC))) :|: TRUE f6486_0_createTree_Duplicate(EOS(STATIC_6486(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC))) -> f6492_0_createTree_Load(EOS(STATIC_6492(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6492_0_createTree_Load(EOS(STATIC_6492(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6500_0_createTree_ConstantStackPush(EOS(STATIC_6500(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22) :|: TRUE f6500_0_createTree_ConstantStackPush(EOS(STATIC_6500(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22) -> f6506_0_createTree_IntArithmetic(EOS(STATIC_6506(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22, 1) :|: TRUE f6506_0_createTree_IntArithmetic(EOS(STATIC_6506(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22, matching1) -> f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22 - 1) :|: i22 > 0 && matching1 = 1 f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684) -> f6520_0_createTree_Load(EOS(STATIC_6520(java.lang.Object(ARRAY(i4554)), i4555)), i4684, i4684) :|: i22 >= 1 && i4595 >= 1 && i4555 > 1 && i4684 < i22 f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684) -> f6520_1_createTree_Load(EOS(STATIC_6520(java.lang.Object(ARRAY(i4554)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684) :|: i22 >= 1 && i4595 >= 1 && i4555 > 1 && i4684 < i22 f6520_0_createTree_Load(EOS(STATIC_6520(java.lang.Object(ARRAY(i4554)), i4555)), i4684, i4684) -> f6528_0_createTree_Load(EOS(STATIC_6528(java.lang.Object(ARRAY(i4554)), i4555)), i4684, i4684) :|: TRUE f6528_0_createTree_Load(EOS(STATIC_6528(java.lang.Object(ARRAY(i4554)), i4555)), i4684, i4684) -> f160_0_createTree_Load(EOS(STATIC_160(java.lang.Object(ARRAY(i4554)), i4555)), i4684, i4684) :|: TRUE f6556_0_createTree_Return(EOS(STATIC_6556(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f6570_0_createTree_Load(EOS(STATIC_6570(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f6570_0_createTree_Load(EOS(STATIC_6570(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f6582_0_createTree_InvokeMethod(EOS(STATIC_6582(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6582_0_createTree_InvokeMethod(EOS(STATIC_6582(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) -> f6592_0__init__Load(EOS(STATIC_6592(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6592_0__init__Load(EOS(STATIC_6592(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) -> f6612_0__init__InvokeMethod(EOS(STATIC_6612(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6612_0__init__InvokeMethod(EOS(STATIC_6612(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6622_0__init__Load(EOS(STATIC_6622(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6622_0__init__Load(EOS(STATIC_6622(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) -> f6630_0__init__Load(EOS(STATIC_6630(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6630_0__init__Load(EOS(STATIC_6630(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6638_0__init__FieldAccess(EOS(STATIC_6638(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f6638_0__init__FieldAccess(EOS(STATIC_6638(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f6645_0__init__Load(EOS(STATIC_6645(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6645_0__init__Load(EOS(STATIC_6645(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6666_0__init__Load(EOS(STATIC_6666(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6666_0__init__Load(EOS(STATIC_6666(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6679_0__init__FieldAccess(EOS(STATIC_6679(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6679_0__init__FieldAccess(EOS(STATIC_6679(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6691_0__init__Return(EOS(STATIC_6691(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC))) :|: TRUE f6691_0__init__Return(EOS(STATIC_6691(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC))) -> f6702_0_createTree_Store(EOS(STATIC_6702(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC))) :|: TRUE f6702_0_createTree_Store(EOS(STATIC_6702(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, i4595, java.lang.Object(List(EOC))) -> f6713_0_createTree_Inc(EOS(STATIC_6713(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i4595) :|: TRUE f6713_0_createTree_Inc(EOS(STATIC_6713(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i4595) -> f6725_0_createTree_JMP(EOS(STATIC_6725(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i4595 + -1) :|: TRUE f6725_0_createTree_JMP(EOS(STATIC_6725(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i5378) -> f6734_0_createTree_Load(EOS(STATIC_6734(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i5378) :|: TRUE f6734_0_createTree_Load(EOS(STATIC_6734(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i5378) -> f6461_0_createTree_Load(EOS(STATIC_6461(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i5378) :|: TRUE f6561_0_createTree_Return(EOS(STATIC_6561(java.lang.Object(ARRAY(i4785)), i4782)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6665_0_createTree_Return(EOS(STATIC_6665(java.lang.Object(ARRAY(i4785)), i4782)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6665_0_createTree_Return(EOS(STATIC_6665(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6678_0_createTree_Load(EOS(STATIC_6678(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6678_0_createTree_Load(EOS(STATIC_6678(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6690_0_createTree_InvokeMethod(EOS(STATIC_6690(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6690_0_createTree_InvokeMethod(EOS(STATIC_6690(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) -> f6701_0__init__Load(EOS(STATIC_6701(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6701_0__init__Load(EOS(STATIC_6701(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) -> f6724_0__init__InvokeMethod(EOS(STATIC_6724(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6724_0__init__InvokeMethod(EOS(STATIC_6724(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6733_0__init__Load(EOS(STATIC_6733(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6733_0__init__Load(EOS(STATIC_6733(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) -> f6744_0__init__Load(EOS(STATIC_6744(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6744_0__init__Load(EOS(STATIC_6744(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6752_0__init__FieldAccess(EOS(STATIC_6752(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6752_0__init__FieldAccess(EOS(STATIC_6752(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6758_0__init__Load(EOS(STATIC_6758(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6758_0__init__Load(EOS(STATIC_6758(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6766_0__init__Load(EOS(STATIC_6766(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6766_0__init__Load(EOS(STATIC_6766(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6771_0__init__FieldAccess(EOS(STATIC_6771(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6771_0__init__FieldAccess(EOS(STATIC_6771(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6776_0__init__Return(EOS(STATIC_6776(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC))) :|: TRUE f6776_0__init__Return(EOS(STATIC_6776(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC))) -> f6781_0_createTree_Store(EOS(STATIC_6781(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC))) :|: TRUE f6781_0_createTree_Store(EOS(STATIC_6781(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, i4595, java.lang.Object(List(EOC))) -> f6788_0_createTree_Inc(EOS(STATIC_6788(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i4595) :|: TRUE f6788_0_createTree_Inc(EOS(STATIC_6788(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i4595) -> f6795_0_createTree_JMP(EOS(STATIC_6795(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i4595 + -1) :|: TRUE f6795_0_createTree_JMP(EOS(STATIC_6795(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i5700) -> f6800_0_createTree_Load(EOS(STATIC_6800(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i5700) :|: TRUE f6800_0_createTree_Load(EOS(STATIC_6800(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i5700) -> f6526_0_createTree_Load(EOS(STATIC_6526(java.lang.Object(ARRAY(i5160)), i5161)), i22, i22, java.lang.Object(List(EOC)), i5700) :|: TRUE f6526_0_createTree_Load(EOS(STATIC_6526(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4705) -> f6533_0_createTree_LE(EOS(STATIC_6533(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4705, i4705) :|: TRUE f6533_0_createTree_LE(EOS(STATIC_6533(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, i4737) -> f6540_0_createTree_LE(EOS(STATIC_6540(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, i4737) :|: TRUE f6540_0_createTree_LE(EOS(STATIC_6540(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, i4737) -> f6546_0_createTree_New(EOS(STATIC_6546(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737) :|: i4737 > 0 f6546_0_createTree_New(EOS(STATIC_6546(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737) -> f6554_0_createTree_Duplicate(EOS(STATIC_6554(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC))) :|: TRUE f6554_0_createTree_Duplicate(EOS(STATIC_6554(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC))) -> f6568_0_createTree_Load(EOS(STATIC_6568(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6568_0_createTree_Load(EOS(STATIC_6568(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6580_0_createTree_ConstantStackPush(EOS(STATIC_6580(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22) :|: TRUE f6580_0_createTree_ConstantStackPush(EOS(STATIC_6580(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22) -> f6590_0_createTree_IntArithmetic(EOS(STATIC_6590(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22, 1) :|: TRUE f6590_0_createTree_IntArithmetic(EOS(STATIC_6590(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22, matching1) -> f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22 - 1) :|: i22 > 0 && matching1 = 1 f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4900) -> f6610_0_createTree_Load(EOS(STATIC_6610(java.lang.Object(ARRAY(i4703)), i4704)), i4900, i4900) :|: i22 >= 1 && i4737 >= 1 && i4704 > 1 && i4900 < i22 f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4900) -> f6610_1_createTree_Load(EOS(STATIC_6610(java.lang.Object(ARRAY(i4703)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4900) :|: i22 >= 1 && i4737 >= 1 && i4704 > 1 && i4900 < i22 f6610_0_createTree_Load(EOS(STATIC_6610(java.lang.Object(ARRAY(i4703)), i4704)), i4900, i4900) -> f6620_0_createTree_Load(EOS(STATIC_6620(java.lang.Object(ARRAY(i4703)), i4704)), i4900, i4900) :|: TRUE f6620_0_createTree_Load(EOS(STATIC_6620(java.lang.Object(ARRAY(i4703)), i4704)), i4900, i4900) -> f160_0_createTree_Load(EOS(STATIC_160(java.lang.Object(ARRAY(i4703)), i4704)), i4900, i4900) :|: TRUE f6652_0_createTree_Return(EOS(STATIC_6652(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f6674_0_createTree_Load(EOS(STATIC_6674(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f6674_0_createTree_Load(EOS(STATIC_6674(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f6687_0_createTree_InvokeMethod(EOS(STATIC_6687(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6687_0_createTree_InvokeMethod(EOS(STATIC_6687(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) -> f6699_0__init__Load(EOS(STATIC_6699(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6699_0__init__Load(EOS(STATIC_6699(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) -> f6722_0__init__InvokeMethod(EOS(STATIC_6722(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6722_0__init__InvokeMethod(EOS(STATIC_6722(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6731_0__init__Load(EOS(STATIC_6731(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6731_0__init__Load(EOS(STATIC_6731(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) -> f6742_0__init__Load(EOS(STATIC_6742(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6742_0__init__Load(EOS(STATIC_6742(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6750_0__init__FieldAccess(EOS(STATIC_6750(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f6750_0__init__FieldAccess(EOS(STATIC_6750(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f6756_0__init__Load(EOS(STATIC_6756(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6756_0__init__Load(EOS(STATIC_6756(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6764_0__init__Load(EOS(STATIC_6764(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6764_0__init__Load(EOS(STATIC_6764(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6769_0__init__FieldAccess(EOS(STATIC_6769(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6769_0__init__FieldAccess(EOS(STATIC_6769(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6774_0__init__Return(EOS(STATIC_6774(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC))) :|: TRUE f6774_0__init__Return(EOS(STATIC_6774(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC))) -> f6779_0_createTree_Store(EOS(STATIC_6779(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC))) :|: TRUE f6779_0_createTree_Store(EOS(STATIC_6779(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, i4737, java.lang.Object(List(EOC))) -> f6786_0_createTree_Inc(EOS(STATIC_6786(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i4737) :|: TRUE f6786_0_createTree_Inc(EOS(STATIC_6786(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i4737) -> f6793_0_createTree_JMP(EOS(STATIC_6793(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i4737 + -1) :|: TRUE f6793_0_createTree_JMP(EOS(STATIC_6793(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i5684) -> f6798_0_createTree_Load(EOS(STATIC_6798(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i5684) :|: TRUE f6798_0_createTree_Load(EOS(STATIC_6798(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i5684) -> f6461_0_createTree_Load(EOS(STATIC_6461(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i5684) :|: TRUE f6657_0_createTree_Return(EOS(STATIC_6657(java.lang.Object(ARRAY(i5042)), i5039)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6661_0_createTree_Return(EOS(STATIC_6661(java.lang.Object(ARRAY(i5042)), i5039)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6661_0_createTree_Return(EOS(STATIC_6661(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6677_0_createTree_Load(EOS(STATIC_6677(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6677_0_createTree_Load(EOS(STATIC_6677(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6689_0_createTree_InvokeMethod(EOS(STATIC_6689(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6689_0_createTree_InvokeMethod(EOS(STATIC_6689(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) -> f6700_0__init__Load(EOS(STATIC_6700(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6700_0__init__Load(EOS(STATIC_6700(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) -> f6723_0__init__InvokeMethod(EOS(STATIC_6723(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6723_0__init__InvokeMethod(EOS(STATIC_6723(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6732_0__init__Load(EOS(STATIC_6732(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6732_0__init__Load(EOS(STATIC_6732(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC))) -> f6743_0__init__Load(EOS(STATIC_6743(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6743_0__init__Load(EOS(STATIC_6743(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6751_0__init__FieldAccess(EOS(STATIC_6751(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6751_0__init__FieldAccess(EOS(STATIC_6751(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6757_0__init__Load(EOS(STATIC_6757(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6757_0__init__Load(EOS(STATIC_6757(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6765_0__init__Load(EOS(STATIC_6765(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6765_0__init__Load(EOS(STATIC_6765(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6770_0__init__FieldAccess(EOS(STATIC_6770(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) :|: TRUE f6770_0__init__FieldAccess(EOS(STATIC_6770(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(List(EOC))) -> f6775_0__init__Return(EOS(STATIC_6775(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC))) :|: TRUE f6775_0__init__Return(EOS(STATIC_6775(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC))) -> f6780_0_createTree_Store(EOS(STATIC_6780(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC))) :|: TRUE f6780_0_createTree_Store(EOS(STATIC_6780(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, i4737, java.lang.Object(List(EOC))) -> f6787_0_createTree_Inc(EOS(STATIC_6787(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i4737) :|: TRUE f6787_0_createTree_Inc(EOS(STATIC_6787(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i4737) -> f6794_0_createTree_JMP(EOS(STATIC_6794(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i4737 + -1) :|: TRUE f6794_0_createTree_JMP(EOS(STATIC_6794(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i5691) -> f6799_0_createTree_Load(EOS(STATIC_6799(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i5691) :|: TRUE f6799_0_createTree_Load(EOS(STATIC_6799(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i5691) -> f6526_0_createTree_Load(EOS(STATIC_6526(java.lang.Object(ARRAY(i5144)), i5145)), i22, i22, java.lang.Object(List(EOC)), i5691) :|: TRUE f6660_0_createTree_Return(EOS(STATIC_6660(java.lang.Object(ARRAY(i5057)), i5054)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6661_0_createTree_Return(EOS(STATIC_6661(java.lang.Object(ARRAY(i5057)), i5054)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6763_0_createTree_Return(EOS(STATIC_6763(java.lang.Object(ARRAY(i5508)), i5505)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6661_0_createTree_Return(EOS(STATIC_6661(java.lang.Object(ARRAY(i5508)), i5505)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6664_0_createTree_Return(EOS(STATIC_6664(java.lang.Object(ARRAY(i5078)), i5075)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6665_0_createTree_Return(EOS(STATIC_6665(java.lang.Object(ARRAY(i5078)), i5075)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6762_0_createTree_Return(EOS(STATIC_6762(java.lang.Object(ARRAY(i5501)), i5498)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6665_0_createTree_Return(EOS(STATIC_6665(java.lang.Object(ARRAY(i5501)), i5498)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f1227_0_createTree_Return(EOS(STATIC_1227(java.lang.Object(ARRAY(i225)), i222)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f4725_0_createTree_Return(EOS(STATIC_4725(java.lang.Object(ARRAY(i225)), i222)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f4725_0_createTree_Return(EOS(STATIC_4725(java.lang.Object(ARRAY(i1239)), i1240)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f5835_0_createTree_Return(EOS(STATIC_5835(java.lang.Object(ARRAY(i1239)), i1240)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f5835_0_createTree_Return(EOS(STATIC_5835(java.lang.Object(ARRAY(i2105)), i2106)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6119_0_createTree_Return(EOS(STATIC_6119(java.lang.Object(ARRAY(i2105)), i2106)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6119_0_createTree_Return(EOS(STATIC_6119(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6126_0_createTree_Load(EOS(STATIC_6126(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6126_0_createTree_Load(EOS(STATIC_6126(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6131_0_createTree_InvokeMethod(EOS(STATIC_6131(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL) :|: TRUE f6131_0_createTree_InvokeMethod(EOS(STATIC_6131(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL) -> f6137_0__init__Load(EOS(STATIC_6137(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL) :|: TRUE f6137_0__init__Load(EOS(STATIC_6137(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL) -> f6145_0__init__InvokeMethod(EOS(STATIC_6145(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6145_0__init__InvokeMethod(EOS(STATIC_6145(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL, java.lang.Object(List(EOC))) -> f6151_0__init__Load(EOS(STATIC_6151(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL) :|: TRUE f6151_0__init__Load(EOS(STATIC_6151(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL) -> f6158_0__init__Load(EOS(STATIC_6158(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6158_0__init__Load(EOS(STATIC_6158(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC)), NULL, java.lang.Object(List(EOC))) -> f6165_0__init__FieldAccess(EOS(STATIC_6165(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6165_0__init__FieldAccess(EOS(STATIC_6165(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6172_0__init__Load(EOS(STATIC_6172(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f6172_0__init__Load(EOS(STATIC_6172(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f6180_0__init__Load(EOS(STATIC_6180(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) :|: TRUE f6180_0__init__Load(EOS(STATIC_6180(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), NULL, java.lang.Object(List(EOC))) -> f6187_0__init__FieldAccess(EOS(STATIC_6187(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f6187_0__init__FieldAccess(EOS(STATIC_6187(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) -> f6195_0__init__Return(EOS(STATIC_6195(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC))) :|: TRUE f6195_0__init__Return(EOS(STATIC_6195(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC))) -> f6202_0_createTree_Store(EOS(STATIC_6202(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC))) :|: TRUE f6202_0_createTree_Store(EOS(STATIC_6202(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, i75, java.lang.Object(List(EOC))) -> f6209_0_createTree_Inc(EOS(STATIC_6209(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, java.lang.Object(List(EOC)), i75) :|: TRUE f6209_0_createTree_Inc(EOS(STATIC_6209(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, java.lang.Object(List(EOC)), i75) -> f6217_0_createTree_JMP(EOS(STATIC_6217(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, java.lang.Object(List(EOC)), i75 + -1) :|: TRUE f6217_0_createTree_JMP(EOS(STATIC_6217(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, java.lang.Object(List(EOC)), i3621) -> f6225_0_createTree_Load(EOS(STATIC_6225(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, java.lang.Object(List(EOC)), i3621) :|: TRUE f6225_0_createTree_Load(EOS(STATIC_6225(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, java.lang.Object(List(EOC)), i3621) -> f6227_0_createTree_Load(EOS(STATIC_6227(java.lang.Object(ARRAY(i3417)), i3418)), i22, i22, java.lang.Object(List(EOC)), i3621) :|: TRUE f6227_0_createTree_Load(EOS(STATIC_6227(java.lang.Object(ARRAY(i3653)), i3654)), i22, i22, java.lang.Object(List(EOC)), i3655) -> f6526_0_createTree_Load(EOS(STATIC_6526(java.lang.Object(ARRAY(i3653)), i3654)), i22, i22, java.lang.Object(List(EOC)), i3655) :|: TRUE f6663_0_createTree_Return(EOS(STATIC_6663(java.lang.Object(ARRAY(i5071)), i5068)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6119_0_createTree_Return(EOS(STATIC_6119(java.lang.Object(ARRAY(i5071)), i5068)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6761_0_createTree_Return(EOS(STATIC_6761(java.lang.Object(ARRAY(i5494)), i5491)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) -> f6119_0_createTree_Return(EOS(STATIC_6119(java.lang.Object(ARRAY(i5494)), i5491)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f719_1_createTree_Load(EOS(STATIC_719(java.lang.Object(ARRAY(i38)), i120)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i96) -> f992_0_createTree_Return(EOS(STATIC_992(java.lang.Object(ARRAY(i38)), i120)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f719_1_createTree_Load(EOS(STATIC_719(java.lang.Object(ARRAY(i225)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i96) -> f1227_0_createTree_Return(EOS(STATIC_1227(java.lang.Object(ARRAY(i225)), i222)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f719_1_createTree_Load(EOS(STATIC_719(java.lang.Object(ARRAY(i5071)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i96) -> f6663_0_createTree_Return(EOS(STATIC_6663(java.lang.Object(ARRAY(i5071)), i5068)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f719_1_createTree_Load(EOS(STATIC_719(java.lang.Object(ARRAY(i5494)), i44)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i96) -> f6761_0_createTree_Return(EOS(STATIC_6761(java.lang.Object(ARRAY(i5494)), i5491)), i22, i22, NULL, i75, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6520_1_createTree_Load(EOS(STATIC_6520(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684) -> f6556_0_createTree_Return(EOS(STATIC_6556(java.lang.Object(ARRAY(i4554)), i4756)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE f6520_1_createTree_Load(EOS(STATIC_6520(java.lang.Object(ARRAY(i4785)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684) -> f6561_0_createTree_Return(EOS(STATIC_6561(java.lang.Object(ARRAY(i4785)), i4782)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6520_1_createTree_Load(EOS(STATIC_6520(java.lang.Object(ARRAY(i5078)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684) -> f6664_0_createTree_Return(EOS(STATIC_6664(java.lang.Object(ARRAY(i5078)), i5075)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6520_1_createTree_Load(EOS(STATIC_6520(java.lang.Object(ARRAY(i5501)), i4555)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684) -> f6762_0_createTree_Return(EOS(STATIC_6762(java.lang.Object(ARRAY(i5501)), i5498)), i22, i22, java.lang.Object(List(EOC)), i4595, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6610_1_createTree_Load(EOS(STATIC_6610(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), matching1) -> f6652_0_createTree_Return(EOS(STATIC_6652(java.lang.Object(ARRAY(i4703)), i5013)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), NULL) :|: TRUE && matching1 = 0 f6610_1_createTree_Load(EOS(STATIC_6610(java.lang.Object(ARRAY(i5042)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4900) -> f6657_0_createTree_Return(EOS(STATIC_6657(java.lang.Object(ARRAY(i5042)), i5039)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6610_1_createTree_Load(EOS(STATIC_6610(java.lang.Object(ARRAY(i5057)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4900) -> f6660_0_createTree_Return(EOS(STATIC_6660(java.lang.Object(ARRAY(i5057)), i5054)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE f6610_1_createTree_Load(EOS(STATIC_6610(java.lang.Object(ARRAY(i5508)), i4704)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4900) -> f6763_0_createTree_Return(EOS(STATIC_6763(java.lang.Object(ARRAY(i5508)), i5505)), i22, i22, java.lang.Object(List(EOC)), i4737, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), java.lang.Object(MarkingGraphVisitor(EOC))) :|: TRUE Combined rules. Obtained 9 IRulesP rules: f172_0_createTree_GT(EOS(STATIC_172(java.lang.Object(ARRAY(i38:0)), i10:0)), i22:0, i22:0, i22:0) -> f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i38:0)), i10:0 + 1)), i22:0, i22:0, java.lang.Object(List(EOC)), i52:0 - 1, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22:0 - 1) :|: i52:0 > 1 && i22:0 > 0 && i38:0 > -1 && i10:0 > 0 && i22:0 - 1 < i22:0 f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i4554:0)), i4555:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4595:0, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684:0) -> f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i4554:0)), i4782:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4595:0 - 1, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22:0 - 1) :|: i4595:0 > 1 && i22:0 > 0 && i4555:0 > 1 && i4684:0 < i22:0 f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i4703:0)), i4704:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4737:0, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4900:0) -> f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i4703:0)), i5039:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4737:0 - 1, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22:0 - 1) :|: i4737:0 > 1 && i22:0 > 0 && i4900:0 < i22:0 && i4704:0 > 1 f172_0_createTree_GT(EOS(STATIC_172(java.lang.Object(ARRAY(i38:0)), i10:0)), i22:0, i22:0, i22:0) -> f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i38:0)), i222:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i52:0 - 1, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22:0 - 1) :|: i52:0 > 1 && i22:0 > 0 && i38:0 > -1 && i10:0 > 0 && i22:0 - 1 < i22:0 f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i4703:0)), i4704:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4737:0, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), 0) -> f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i4703:0)), i4704:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4737:0 - 1, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22:0 - 1) :|: i4737:0 > 1 && i22:0 > 0 && i4704:0 > 1 f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i4554:0)), i4555:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4595:0, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684:0) -> f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i4554:0)), i4555:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4595:0 - 1, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i22:0 - 1) :|: i4595:0 > 1 && i22:0 > 0 && i4684:0 < i22:0 && i4555:0 > 1 f172_0_createTree_GT(EOS(STATIC_172(java.lang.Object(ARRAY(i38:0)), i10:0)), i22:0, i22:0, i22:0) -> f172_0_createTree_GT(EOS(STATIC_172(java.lang.Object(ARRAY(i38:0)), i10:0 + 1)), i22:0 - 1, i22:0 - 1, i22:0 - 1) :|: i52:0 > 0 && i22:0 > 0 && i38:0 > -1 && i10:0 > 0 && i22:0 - 1 < i22:0 f6513_0_createTree_InvokeMethod(EOS(STATIC_6513(java.lang.Object(ARRAY(i4554:0)), i4555:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4595:0, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4684:0) -> f172_0_createTree_GT(EOS(STATIC_172(java.lang.Object(ARRAY(i4554:0)), i4555:0)), i4684:0, i4684:0, i4684:0) :|: i4595:0 > 0 && i22:0 > 0 && i4684:0 < i22:0 && i4555:0 > 1 f6599_0_createTree_InvokeMethod(EOS(STATIC_6599(java.lang.Object(ARRAY(i4703:0)), i4704:0)), i22:0, i22:0, java.lang.Object(List(EOC)), i4737:0, java.lang.Object(List(EOC)), java.lang.Object(List(EOC)), i4900:0) -> f172_0_createTree_GT(EOS(STATIC_172(java.lang.Object(ARRAY(i4703:0)), i4704:0)), i4900:0, i4900:0, i4900:0) :|: i4737:0 > 0 && i22:0 > 0 && i4900:0 < i22:0 && i4704:0 > 1 Filtered constant ground arguments: f6513_0_createTree_InvokeMethod(x1, x2, x3, x4, x5, x6, x7, x8) -> f6513_0_createTree_InvokeMethod(x1, x2, x3, x5, x8) f6599_0_createTree_InvokeMethod(x1, x2, x3, x4, x5, x6, x7, x8) -> f6599_0_createTree_InvokeMethod(x1, x2, x3, x5, x8) List(x1) -> List Filtered duplicate arguments: f172_0_createTree_GT(x1, x2, x3, x4) -> f172_0_createTree_GT(x1, x4) f6513_0_createTree_InvokeMethod(x1, x2, x3, x4, x5) -> f6513_0_createTree_InvokeMethod(x1, x3, x4, x5) f6599_0_createTree_InvokeMethod(x1, x2, x3, x4, x5) -> f6599_0_createTree_InvokeMethod(x1, x3, x4, x5) Finished conversion. Obtained 9 rules.P rules: f172_0_createTree_GT(i22:0, i38:0, i10:0) -> f6513_0_createTree_InvokeMethod(i22:0, i52:0 - 1, i22:0 - 1, i38:0, i10:0 + 1) :|: i22:0 > 0 && i52:0 > 1 && i38:0 > -1 && i22:0 - 1 < i22:0 && i10:0 > 0 f6513_0_createTree_InvokeMethod(i22:0, i4595:0, i4684:0, i4554:0, i4555:0) -> f6599_0_createTree_InvokeMethod(i22:0, i4595:0 - 1, i22:0 - 1, i4554:0, i4782:0) :|: i22:0 > 0 && i4595:0 > 1 && i4684:0 < i22:0 && i4555:0 > 1 f6599_0_createTree_InvokeMethod(i22:0, i4737:0, i4900:0, i4703:0, i4704:0) -> f6599_0_createTree_InvokeMethod(i22:0, i4737:0 - 1, i22:0 - 1, i4703:0, i5039:0) :|: i22:0 > 0 && i4737:0 > 1 && i4704:0 > 1 && i4900:0 < i22:0 f172_0_createTree_GT(i22:0, i38:0, i10:0) -> f6599_0_createTree_InvokeMethod(i22:0, i52:0 - 1, i22:0 - 1, i38:0, i222:0) :|: i22:0 > 0 && i52:0 > 1 && i38:0 > -1 && i22:0 - 1 < i22:0 && i10:0 > 0 f6599_0_createTree_InvokeMethod(i22:0, i4737:0, cons_0, i4703:0, i4704:0) -> f6513_0_createTree_InvokeMethod(i22:0, i4737:0 - 1, i22:0 - 1, i4703:0, i4704:0) :|: i22:0 > 0 && i4704:0 > 1 && i4737:0 > 1 && cons_0 = 0 f6513_0_createTree_InvokeMethod(i22:0, i4595:0, i4684:0, i4554:0, i4555:0) -> f6513_0_createTree_InvokeMethod(i22:0, i4595:0 - 1, i22:0 - 1, i4554:0, i4555:0) :|: i22:0 > 0 && i4595:0 > 1 && i4555:0 > 1 && i4684:0 < i22:0 f172_0_createTree_GT(i22:0, i38:0, i10:0) -> f172_0_createTree_GT(i22:0 - 1, i38:0, i10:0 + 1) :|: i22:0 > 0 && i52:0 > 0 && i38:0 > -1 && i22:0 - 1 < i22:0 && i10:0 > 0 f6513_0_createTree_InvokeMethod(i22:0, i4595:0, i4684:0, i4554:0, i4555:0) -> f172_0_createTree_GT(i4684:0, i4554:0, i4555:0) :|: i22:0 > 0 && i4595:0 > 0 && i4555:0 > 1 && i4684:0 < i22:0 f6599_0_createTree_InvokeMethod(i22:0, i4737:0, i4900:0, i4703:0, i4704:0) -> f172_0_createTree_GT(i4900:0, i4703:0, i4704:0) :|: i22:0 > 0 && i4737:0 > 0 && i4704:0 > 1 && i4900:0 < i22:0 ---------------------------------------- (37) Obligation: Rules: f172_0_createTree_GT(i22:0, i38:0, i10:0) -> f6513_0_createTree_InvokeMethod(i22:0, i52:0 - 1, i22:0 - 1, i38:0, i10:0 + 1) :|: i22:0 > 0 && i52:0 > 1 && i38:0 > -1 && i22:0 - 1 < i22:0 && i10:0 > 0 f6513_0_createTree_InvokeMethod(x, x1, x2, x3, x4) -> f6599_0_createTree_InvokeMethod(x, x1 - 1, x - 1, x3, x5) :|: x > 0 && x1 > 1 && x2 < x && x4 > 1 f6599_0_createTree_InvokeMethod(x6, x7, x8, x9, x10) -> f6599_0_createTree_InvokeMethod(x6, x7 - 1, x6 - 1, x9, x11) :|: x6 > 0 && x7 > 1 && x10 > 1 && x8 < x6 f172_0_createTree_GT(x12, x13, x14) -> f6599_0_createTree_InvokeMethod(x12, x15 - 1, x12 - 1, x13, x16) :|: x12 > 0 && x15 > 1 && x13 > -1 && x12 - 1 < x12 && x14 > 0 f6599_0_createTree_InvokeMethod(x17, x18, x19, x20, x21) -> f6513_0_createTree_InvokeMethod(x17, x18 - 1, x17 - 1, x20, x21) :|: x17 > 0 && x21 > 1 && x18 > 1 && x19 = 0 f6513_0_createTree_InvokeMethod(x22, x23, x24, x25, x26) -> f6513_0_createTree_InvokeMethod(x22, x23 - 1, x22 - 1, x25, x26) :|: x22 > 0 && x23 > 1 && x26 > 1 && x24 < x22 f172_0_createTree_GT(x27, x28, x29) -> f172_0_createTree_GT(x27 - 1, x28, x29 + 1) :|: x27 > 0 && x30 > 0 && x28 > -1 && x27 - 1 < x27 && x29 > 0 f6513_0_createTree_InvokeMethod(x31, x32, x33, x34, x35) -> f172_0_createTree_GT(x33, x34, x35) :|: x31 > 0 && x32 > 0 && x35 > 1 && x33 < x31 f6599_0_createTree_InvokeMethod(x36, x37, x38, x39, x40) -> f172_0_createTree_GT(x38, x39, x40) :|: x36 > 0 && x37 > 0 && x40 > 1 && x38 < x36 ---------------------------------------- (38) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (39) Obligation: Rules: f172_0_createTree_GT(i22:0, i38:0, i10:0) -> f6513_0_createTree_InvokeMethod(i22:0, arith, arith1, i38:0, arith2) :|: i22:0 > 0 && i52:0 > 1 && i38:0 > -1 && i22:0 - 1 < i22:0 && i10:0 > 0 && arith = i52:0 - 1 && arith1 = i22:0 - 1 && arith2 = i10:0 + 1 f6513_0_createTree_InvokeMethod(x41, x42, x43, x44, x45) -> f6599_0_createTree_InvokeMethod(x41, x46, x47, x44, x48) :|: x41 > 0 && x42 > 1 && x43 < x41 && x45 > 1 && x46 = x42 - 1 && x47 = x41 - 1 f6599_0_createTree_InvokeMethod(x49, x50, x51, x52, x53) -> f6599_0_createTree_InvokeMethod(x49, x54, x55, x52, x56) :|: x49 > 0 && x50 > 1 && x53 > 1 && x51 < x49 && x54 = x50 - 1 && x55 = x49 - 1 f172_0_createTree_GT(x57, x58, x59) -> f6599_0_createTree_InvokeMethod(x57, x60, x61, x58, x62) :|: x57 > 0 && x63 > 1 && x58 > -1 && x57 - 1 < x57 && x59 > 0 && x60 = x63 - 1 && x61 = x57 - 1 f6599_0_createTree_InvokeMethod(x64, x65, x66, x67, x68) -> f6513_0_createTree_InvokeMethod(x64, x69, x70, x67, x68) :|: x64 > 0 && x68 > 1 && x65 > 1 && x66 = 0 && x69 = x65 - 1 && x70 = x64 - 1 f6513_0_createTree_InvokeMethod(x71, x72, x73, x74, x75) -> f6513_0_createTree_InvokeMethod(x71, x76, x77, x74, x75) :|: x71 > 0 && x72 > 1 && x75 > 1 && x73 < x71 && x76 = x72 - 1 && x77 = x71 - 1 f172_0_createTree_GT(x78, x79, x80) -> f172_0_createTree_GT(x81, x79, x82) :|: x78 > 0 && x83 > 0 && x79 > -1 && x78 - 1 < x78 && x80 > 0 && x81 = x78 - 1 && x82 = x80 + 1 f6513_0_createTree_InvokeMethod(x31, x32, x33, x34, x35) -> f172_0_createTree_GT(x33, x34, x35) :|: x31 > 0 && x32 > 0 && x35 > 1 && x33 < x31 f6599_0_createTree_InvokeMethod(x36, x37, x38, x39, x40) -> f172_0_createTree_GT(x38, x39, x40) :|: x36 > 0 && x37 > 0 && x40 > 1 && x38 < x36 ---------------------------------------- (40) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f172_0_createTree_GT(i22:0, i38:0, i10:0) -> f6513_0_createTree_InvokeMethod(i22:0, arith, arith1, i38:0, arith2) :|: i22:0 > 0 && i52:0 > 1 && i38:0 > -1 && i22:0 - 1 < i22:0 && i10:0 > 0 && arith = i52:0 - 1 && arith1 = i22:0 - 1 && arith2 = i10:0 + 1 (2) f6513_0_createTree_InvokeMethod(x41, x42, x43, x44, x45) -> f6599_0_createTree_InvokeMethod(x41, x46, x47, x44, x48) :|: x41 > 0 && x42 > 1 && x43 < x41 && x45 > 1 && x46 = x42 - 1 && x47 = x41 - 1 (3) f6599_0_createTree_InvokeMethod(x49, x50, x51, x52, x53) -> f6599_0_createTree_InvokeMethod(x49, x54, x55, x52, x56) :|: x49 > 0 && x50 > 1 && x53 > 1 && x51 < x49 && x54 = x50 - 1 && x55 = x49 - 1 (4) f172_0_createTree_GT(x57, x58, x59) -> f6599_0_createTree_InvokeMethod(x57, x60, x61, x58, x62) :|: x57 > 0 && x63 > 1 && x58 > -1 && x57 - 1 < x57 && x59 > 0 && x60 = x63 - 1 && x61 = x57 - 1 (5) f6599_0_createTree_InvokeMethod(x64, x65, x66, x67, x68) -> f6513_0_createTree_InvokeMethod(x64, x69, x70, x67, x68) :|: x64 > 0 && x68 > 1 && x65 > 1 && x66 = 0 && x69 = x65 - 1 && x70 = x64 - 1 (6) f6513_0_createTree_InvokeMethod(x71, x72, x73, x74, x75) -> f6513_0_createTree_InvokeMethod(x71, x76, x77, x74, x75) :|: x71 > 0 && x72 > 1 && x75 > 1 && x73 < x71 && x76 = x72 - 1 && x77 = x71 - 1 (7) f172_0_createTree_GT(x78, x79, x80) -> f172_0_createTree_GT(x81, x79, x82) :|: x78 > 0 && x83 > 0 && x79 > -1 && x78 - 1 < x78 && x80 > 0 && x81 = x78 - 1 && x82 = x80 + 1 (8) f6513_0_createTree_InvokeMethod(x31, x32, x33, x34, x35) -> f172_0_createTree_GT(x33, x34, x35) :|: x31 > 0 && x32 > 0 && x35 > 1 && x33 < x31 (9) f6599_0_createTree_InvokeMethod(x36, x37, x38, x39, x40) -> f172_0_createTree_GT(x38, x39, x40) :|: x36 > 0 && x37 > 0 && x40 > 1 && x38 < x36 Arcs: (1) -> (2), (6), (8) (2) -> (3), (5), (9) (3) -> (3), (5), (9) (4) -> (3), (5), (9) (5) -> (2), (6), (8) (6) -> (2), (6), (8) (7) -> (1), (4), (7) (8) -> (1), (4), (7) (9) -> (1), (4), (7) This digraph is fully evaluated! ---------------------------------------- (41) Obligation: Termination digraph: Nodes: (1) f172_0_createTree_GT(i22:0, i38:0, i10:0) -> f6513_0_createTree_InvokeMethod(i22:0, arith, arith1, i38:0, arith2) :|: i22:0 > 0 && i52:0 > 1 && i38:0 > -1 && i22:0 - 1 < i22:0 && i10:0 > 0 && arith = i52:0 - 1 && arith1 = i22:0 - 1 && arith2 = i10:0 + 1 (2) f172_0_createTree_GT(x78, x79, x80) -> f172_0_createTree_GT(x81, x79, x82) :|: x78 > 0 && x83 > 0 && x79 > -1 && x78 - 1 < x78 && x80 > 0 && x81 = x78 - 1 && x82 = x80 + 1 (3) f6513_0_createTree_InvokeMethod(x31, x32, x33, x34, x35) -> f172_0_createTree_GT(x33, x34, x35) :|: x31 > 0 && x32 > 0 && x35 > 1 && x33 < x31 (4) f6599_0_createTree_InvokeMethod(x64, x65, x66, x67, x68) -> f6513_0_createTree_InvokeMethod(x64, x69, x70, x67, x68) :|: x64 > 0 && x68 > 1 && x65 > 1 && x66 = 0 && x69 = x65 - 1 && x70 = x64 - 1 (5) f6599_0_createTree_InvokeMethod(x49, x50, x51, x52, x53) -> f6599_0_createTree_InvokeMethod(x49, x54, x55, x52, x56) :|: x49 > 0 && x50 > 1 && x53 > 1 && x51 < x49 && x54 = x50 - 1 && x55 = x49 - 1 (6) f172_0_createTree_GT(x57, x58, x59) -> f6599_0_createTree_InvokeMethod(x57, x60, x61, x58, x62) :|: x57 > 0 && x63 > 1 && x58 > -1 && x57 - 1 < x57 && x59 > 0 && x60 = x63 - 1 && x61 = x57 - 1 (7) f6599_0_createTree_InvokeMethod(x36, x37, x38, x39, x40) -> f172_0_createTree_GT(x38, x39, x40) :|: x36 > 0 && x37 > 0 && x40 > 1 && x38 < x36 (8) f6513_0_createTree_InvokeMethod(x41, x42, x43, x44, x45) -> f6599_0_createTree_InvokeMethod(x41, x46, x47, x44, x48) :|: x41 > 0 && x42 > 1 && x43 < x41 && x45 > 1 && x46 = x42 - 1 && x47 = x41 - 1 (9) f6513_0_createTree_InvokeMethod(x71, x72, x73, x74, x75) -> f6513_0_createTree_InvokeMethod(x71, x76, x77, x74, x75) :|: x71 > 0 && x72 > 1 && x75 > 1 && x73 < x71 && x76 = x72 - 1 && x77 = x71 - 1 Arcs: (1) -> (3), (8), (9) (2) -> (1), (2), (6) (3) -> (1), (2), (6) (4) -> (3), (8), (9) (5) -> (4), (5), (7) (6) -> (4), (5), (7) (7) -> (1), (2), (6) (8) -> (4), (5), (7) (9) -> (3), (8), (9) This digraph is fully evaluated! ---------------------------------------- (42) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (43) Obligation: Rules: f172_0_createTree_GT(i22:0:0, i38:0:0, i10:0:0) -> f6513_0_createTree_InvokeMethod(i22:0:0, i52:0:0 - 1, i22:0:0 - 1, i38:0:0, i10:0:0 + 1) :|: i22:0:0 - 1 < i22:0:0 && i10:0:0 > 0 && i38:0:0 > -1 && i52:0:0 > 1 && i22:0:0 > 0 f6599_0_createTree_InvokeMethod(x36:0, x37:0, x38:0, x39:0, x40:0) -> f172_0_createTree_GT(x38:0, x39:0, x40:0) :|: x40:0 > 1 && x38:0 < x36:0 && x37:0 > 0 && x36:0 > 0 f172_0_createTree_GT(x78:0, x79:0, x80:0) -> f172_0_createTree_GT(x78:0 - 1, x79:0, x80:0 + 1) :|: x78:0 - 1 < x78:0 && x80:0 > 0 && x79:0 > -1 && x83:0 > 0 && x78:0 > 0 f6599_0_createTree_InvokeMethod(x64:0, x65:0, cons_0, x67:0, x68:0) -> f6513_0_createTree_InvokeMethod(x64:0, x65:0 - 1, x64:0 - 1, x67:0, x68:0) :|: x64:0 > 0 && x68:0 > 1 && x65:0 > 1 && cons_0 = 0 f6513_0_createTree_InvokeMethod(x31:0, x32:0, x33:0, x34:0, x35:0) -> f172_0_createTree_GT(x33:0, x34:0, x35:0) :|: x35:0 > 1 && x33:0 < x31:0 && x32:0 > 0 && x31:0 > 0 f6513_0_createTree_InvokeMethod(x41:0, x42:0, x43:0, x44:0, x45:0) -> f6599_0_createTree_InvokeMethod(x41:0, x42:0 - 1, x41:0 - 1, x44:0, x48:0) :|: x43:0 < x41:0 && x45:0 > 1 && x42:0 > 1 && x41:0 > 0 f172_0_createTree_GT(x57:0, x58:0, x59:0) -> f6599_0_createTree_InvokeMethod(x57:0, x63:0 - 1, x57:0 - 1, x58:0, x62:0) :|: x57:0 - 1 < x57:0 && x59:0 > 0 && x58:0 > -1 && x63:0 > 1 && x57:0 > 0 f6513_0_createTree_InvokeMethod(x71:0, x72:0, x73:0, x74:0, x75:0) -> f6513_0_createTree_InvokeMethod(x71:0, x72:0 - 1, x71:0 - 1, x74:0, x75:0) :|: x75:0 > 1 && x73:0 < x71:0 && x72:0 > 1 && x71:0 > 0 f6599_0_createTree_InvokeMethod(x49:0, x50:0, x51:0, x52:0, x53:0) -> f6599_0_createTree_InvokeMethod(x49:0, x50:0 - 1, x49:0 - 1, x52:0, x56:0) :|: x53:0 > 1 && x51:0 < x49:0 && x50:0 > 1 && x49:0 > 0 ---------------------------------------- (44) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f172_0_createTree_GT(INTEGER, VARIABLE, INTEGER) f6513_0_createTree_InvokeMethod(INTEGER, INTEGER, INTEGER, VARIABLE, INTEGER) f6599_0_createTree_InvokeMethod(INTEGER, INTEGER, INTEGER, VARIABLE, VARIABLE) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (45) Obligation: Rules: f172_0_createTree_GT(i22:0:0, i38:0:0, i10:0:0) -> f6513_0_createTree_InvokeMethod(i22:0:0, c, c1, i38:0:0, c2) :|: c2 = i10:0:0 + 1 && (c1 = i22:0:0 - 1 && c = i52:0:0 - 1) && (i22:0:0 - 1 < i22:0:0 && i10:0:0 > 0 && i38:0:0 > -1 && i52:0:0 > 1 && i22:0:0 > 0) f6599_0_createTree_InvokeMethod(x36:0, x37:0, x38:0, x39:0, x40:0) -> f172_0_createTree_GT(x38:0, x39:0, x40:0) :|: x40:0 > 1 && x38:0 < x36:0 && x37:0 > 0 && x36:0 > 0 f172_0_createTree_GT(x78:0, x79:0, x80:0) -> f172_0_createTree_GT(c3, x79:0, c4) :|: c4 = x80:0 + 1 && c3 = x78:0 - 1 && (x78:0 - 1 < x78:0 && x80:0 > 0 && x79:0 > -1 && x83:0 > 0 && x78:0 > 0) f6599_0_createTree_InvokeMethod(x64:0, x65:0, c5, x67:0, x68:0) -> f6513_0_createTree_InvokeMethod(x64:0, c6, c7, x67:0, x68:0) :|: c7 = x64:0 - 1 && (c6 = x65:0 - 1 && c5 = 0) && (x64:0 > 0 && x68:0 > 1 && x65:0 > 1 && cons_0 = 0) f6513_0_createTree_InvokeMethod(x31:0, x32:0, x33:0, x34:0, x35:0) -> f172_0_createTree_GT(x33:0, x34:0, x35:0) :|: x35:0 > 1 && x33:0 < x31:0 && x32:0 > 0 && x31:0 > 0 f6513_0_createTree_InvokeMethod(x41:0, x42:0, x43:0, x44:0, x45:0) -> f6599_0_createTree_InvokeMethod(x41:0, c8, c9, x44:0, x48:0) :|: c9 = x41:0 - 1 && c8 = x42:0 - 1 && (x43:0 < x41:0 && x45:0 > 1 && x42:0 > 1 && x41:0 > 0) f172_0_createTree_GT(x57:0, x58:0, x59:0) -> f6599_0_createTree_InvokeMethod(x57:0, c10, c11, x58:0, x62:0) :|: c11 = x57:0 - 1 && c10 = x63:0 - 1 && (x57:0 - 1 < x57:0 && x59:0 > 0 && x58:0 > -1 && x63:0 > 1 && x57:0 > 0) f6513_0_createTree_InvokeMethod(x71:0, x72:0, x73:0, x74:0, x75:0) -> f6513_0_createTree_InvokeMethod(x71:0, c12, c13, x74:0, x75:0) :|: c13 = x71:0 - 1 && c12 = x72:0 - 1 && (x75:0 > 1 && x73:0 < x71:0 && x72:0 > 1 && x71:0 > 0) f6599_0_createTree_InvokeMethod(x49:0, x50:0, x51:0, x52:0, x53:0) -> f6599_0_createTree_InvokeMethod(x49:0, c14, c15, x52:0, x56:0) :|: c15 = x49:0 - 1 && c14 = x50:0 - 1 && (x53:0 > 1 && x51:0 < x49:0 && x50:0 > 1 && x49:0 > 0) ---------------------------------------- (46) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f172_0_createTree_GT(x, x1, x2)] = 1 + x [f6513_0_createTree_InvokeMethod(x3, x4, x5, x6, x7)] = x3 [f6599_0_createTree_InvokeMethod(x8, x9, x10, x11, x12)] = x8 The following rules are decreasing: f172_0_createTree_GT(i22:0:0, i38:0:0, i10:0:0) -> f6513_0_createTree_InvokeMethod(i22:0:0, c, c1, i38:0:0, c2) :|: c2 = i10:0:0 + 1 && (c1 = i22:0:0 - 1 && c = i52:0:0 - 1) && (i22:0:0 - 1 < i22:0:0 && i10:0:0 > 0 && i38:0:0 > -1 && i52:0:0 > 1 && i22:0:0 > 0) f172_0_createTree_GT(x78:0, x79:0, x80:0) -> f172_0_createTree_GT(c3, x79:0, c4) :|: c4 = x80:0 + 1 && c3 = x78:0 - 1 && (x78:0 - 1 < x78:0 && x80:0 > 0 && x79:0 > -1 && x83:0 > 0 && x78:0 > 0) f172_0_createTree_GT(x57:0, x58:0, x59:0) -> f6599_0_createTree_InvokeMethod(x57:0, c10, c11, x58:0, x62:0) :|: c11 = x57:0 - 1 && c10 = x63:0 - 1 && (x57:0 - 1 < x57:0 && x59:0 > 0 && x58:0 > -1 && x63:0 > 1 && x57:0 > 0) The following rules are bounded: f172_0_createTree_GT(i22:0:0, i38:0:0, i10:0:0) -> f6513_0_createTree_InvokeMethod(i22:0:0, c, c1, i38:0:0, c2) :|: c2 = i10:0:0 + 1 && (c1 = i22:0:0 - 1 && c = i52:0:0 - 1) && (i22:0:0 - 1 < i22:0:0 && i10:0:0 > 0 && i38:0:0 > -1 && i52:0:0 > 1 && i22:0:0 > 0) f6599_0_createTree_InvokeMethod(x36:0, x37:0, x38:0, x39:0, x40:0) -> f172_0_createTree_GT(x38:0, x39:0, x40:0) :|: x40:0 > 1 && x38:0 < x36:0 && x37:0 > 0 && x36:0 > 0 f172_0_createTree_GT(x78:0, x79:0, x80:0) -> f172_0_createTree_GT(c3, x79:0, c4) :|: c4 = x80:0 + 1 && c3 = x78:0 - 1 && (x78:0 - 1 < x78:0 && x80:0 > 0 && x79:0 > -1 && x83:0 > 0 && x78:0 > 0) f6599_0_createTree_InvokeMethod(x64:0, x65:0, c5, x67:0, x68:0) -> f6513_0_createTree_InvokeMethod(x64:0, c6, c7, x67:0, x68:0) :|: c7 = x64:0 - 1 && (c6 = x65:0 - 1 && c5 = 0) && (x64:0 > 0 && x68:0 > 1 && x65:0 > 1 && cons_0 = 0) f6513_0_createTree_InvokeMethod(x31:0, x32:0, x33:0, x34:0, x35:0) -> f172_0_createTree_GT(x33:0, x34:0, x35:0) :|: x35:0 > 1 && x33:0 < x31:0 && x32:0 > 0 && x31:0 > 0 f6513_0_createTree_InvokeMethod(x41:0, x42:0, x43:0, x44:0, x45:0) -> f6599_0_createTree_InvokeMethod(x41:0, c8, c9, x44:0, x48:0) :|: c9 = x41:0 - 1 && c8 = x42:0 - 1 && (x43:0 < x41:0 && x45:0 > 1 && x42:0 > 1 && x41:0 > 0) f172_0_createTree_GT(x57:0, x58:0, x59:0) -> f6599_0_createTree_InvokeMethod(x57:0, c10, c11, x58:0, x62:0) :|: c11 = x57:0 - 1 && c10 = x63:0 - 1 && (x57:0 - 1 < x57:0 && x59:0 > 0 && x58:0 > -1 && x63:0 > 1 && x57:0 > 0) f6513_0_createTree_InvokeMethod(x71:0, x72:0, x73:0, x74:0, x75:0) -> f6513_0_createTree_InvokeMethod(x71:0, c12, c13, x74:0, x75:0) :|: c13 = x71:0 - 1 && c12 = x72:0 - 1 && (x75:0 > 1 && x73:0 < x71:0 && x72:0 > 1 && x71:0 > 0) f6599_0_createTree_InvokeMethod(x49:0, x50:0, x51:0, x52:0, x53:0) -> f6599_0_createTree_InvokeMethod(x49:0, c14, c15, x52:0, x56:0) :|: c15 = x49:0 - 1 && c14 = x50:0 - 1 && (x53:0 > 1 && x51:0 < x49:0 && x50:0 > 1 && x49:0 > 0) ---------------------------------------- (47) Obligation: Rules: f6599_0_createTree_InvokeMethod(x36:0, x37:0, x38:0, x39:0, x40:0) -> f172_0_createTree_GT(x38:0, x39:0, x40:0) :|: x40:0 > 1 && x38:0 < x36:0 && x37:0 > 0 && x36:0 > 0 f6599_0_createTree_InvokeMethod(x64:0, x65:0, c5, x67:0, x68:0) -> f6513_0_createTree_InvokeMethod(x64:0, c6, c7, x67:0, x68:0) :|: c7 = x64:0 - 1 && (c6 = x65:0 - 1 && c5 = 0) && (x64:0 > 0 && x68:0 > 1 && x65:0 > 1 && cons_0 = 0) f6513_0_createTree_InvokeMethod(x31:0, x32:0, x33:0, x34:0, x35:0) -> f172_0_createTree_GT(x33:0, x34:0, x35:0) :|: x35:0 > 1 && x33:0 < x31:0 && x32:0 > 0 && x31:0 > 0 f6513_0_createTree_InvokeMethod(x41:0, x42:0, x43:0, x44:0, x45:0) -> f6599_0_createTree_InvokeMethod(x41:0, c8, c9, x44:0, x48:0) :|: c9 = x41:0 - 1 && c8 = x42:0 - 1 && (x43:0 < x41:0 && x45:0 > 1 && x42:0 > 1 && x41:0 > 0) f6513_0_createTree_InvokeMethod(x71:0, x72:0, x73:0, x74:0, x75:0) -> f6513_0_createTree_InvokeMethod(x71:0, c12, c13, x74:0, x75:0) :|: c13 = x71:0 - 1 && c12 = x72:0 - 1 && (x75:0 > 1 && x73:0 < x71:0 && x72:0 > 1 && x71:0 > 0) f6599_0_createTree_InvokeMethod(x49:0, x50:0, x51:0, x52:0, x53:0) -> f6599_0_createTree_InvokeMethod(x49:0, c14, c15, x52:0, x56:0) :|: c15 = x49:0 - 1 && c14 = x50:0 - 1 && (x53:0 > 1 && x51:0 < x49:0 && x50:0 > 1 && x49:0 > 0) ---------------------------------------- (48) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6599_0_createTree_InvokeMethod(x, x1, x2, x3, x4)] = 1 [f172_0_createTree_GT(x5, x6, x7)] = 0 [f6513_0_createTree_InvokeMethod(x8, x9, x10, x11, x12)] = 1 The following rules are decreasing: f6599_0_createTree_InvokeMethod(x36:0, x37:0, x38:0, x39:0, x40:0) -> f172_0_createTree_GT(x38:0, x39:0, x40:0) :|: x40:0 > 1 && x38:0 < x36:0 && x37:0 > 0 && x36:0 > 0 f6513_0_createTree_InvokeMethod(x31:0, x32:0, x33:0, x34:0, x35:0) -> f172_0_createTree_GT(x33:0, x34:0, x35:0) :|: x35:0 > 1 && x33:0 < x31:0 && x32:0 > 0 && x31:0 > 0 The following rules are bounded: f6599_0_createTree_InvokeMethod(x36:0, x37:0, x38:0, x39:0, x40:0) -> f172_0_createTree_GT(x38:0, x39:0, x40:0) :|: x40:0 > 1 && x38:0 < x36:0 && x37:0 > 0 && x36:0 > 0 f6599_0_createTree_InvokeMethod(x64:0, x65:0, c5, x67:0, x68:0) -> f6513_0_createTree_InvokeMethod(x64:0, c6, c7, x67:0, x68:0) :|: c7 = x64:0 - 1 && (c6 = x65:0 - 1 && c5 = 0) && (x64:0 > 0 && x68:0 > 1 && x65:0 > 1 && cons_0 = 0) f6513_0_createTree_InvokeMethod(x31:0, x32:0, x33:0, x34:0, x35:0) -> f172_0_createTree_GT(x33:0, x34:0, x35:0) :|: x35:0 > 1 && x33:0 < x31:0 && x32:0 > 0 && x31:0 > 0 f6513_0_createTree_InvokeMethod(x41:0, x42:0, x43:0, x44:0, x45:0) -> f6599_0_createTree_InvokeMethod(x41:0, c8, c9, x44:0, x48:0) :|: c9 = x41:0 - 1 && c8 = x42:0 - 1 && (x43:0 < x41:0 && x45:0 > 1 && x42:0 > 1 && x41:0 > 0) f6513_0_createTree_InvokeMethod(x71:0, x72:0, x73:0, x74:0, x75:0) -> f6513_0_createTree_InvokeMethod(x71:0, c12, c13, x74:0, x75:0) :|: c13 = x71:0 - 1 && c12 = x72:0 - 1 && (x75:0 > 1 && x73:0 < x71:0 && x72:0 > 1 && x71:0 > 0) f6599_0_createTree_InvokeMethod(x49:0, x50:0, x51:0, x52:0, x53:0) -> f6599_0_createTree_InvokeMethod(x49:0, c14, c15, x52:0, x56:0) :|: c15 = x49:0 - 1 && c14 = x50:0 - 1 && (x53:0 > 1 && x51:0 < x49:0 && x50:0 > 1 && x49:0 > 0) ---------------------------------------- (49) Obligation: Rules: f6599_0_createTree_InvokeMethod(x64:0, x65:0, c5, x67:0, x68:0) -> f6513_0_createTree_InvokeMethod(x64:0, c6, c7, x67:0, x68:0) :|: c7 = x64:0 - 1 && (c6 = x65:0 - 1 && c5 = 0) && (x64:0 > 0 && x68:0 > 1 && x65:0 > 1 && cons_0 = 0) f6513_0_createTree_InvokeMethod(x41:0, x42:0, x43:0, x44:0, x45:0) -> f6599_0_createTree_InvokeMethod(x41:0, c8, c9, x44:0, x48:0) :|: c9 = x41:0 - 1 && c8 = x42:0 - 1 && (x43:0 < x41:0 && x45:0 > 1 && x42:0 > 1 && x41:0 > 0) f6513_0_createTree_InvokeMethod(x71:0, x72:0, x73:0, x74:0, x75:0) -> f6513_0_createTree_InvokeMethod(x71:0, c12, c13, x74:0, x75:0) :|: c13 = x71:0 - 1 && c12 = x72:0 - 1 && (x75:0 > 1 && x73:0 < x71:0 && x72:0 > 1 && x71:0 > 0) f6599_0_createTree_InvokeMethod(x49:0, x50:0, x51:0, x52:0, x53:0) -> f6599_0_createTree_InvokeMethod(x49:0, c14, c15, x52:0, x56:0) :|: c15 = x49:0 - 1 && c14 = x50:0 - 1 && (x53:0 > 1 && x51:0 < x49:0 && x50:0 > 1 && x49:0 > 0) ---------------------------------------- (50) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f6599_0_createTree_InvokeMethod ] = f6599_0_createTree_InvokeMethod_2 [ f6513_0_createTree_InvokeMethod ] = f6513_0_createTree_InvokeMethod_2 The following rules are decreasing: f6599_0_createTree_InvokeMethod(x64:0, x65:0, c5, x67:0, x68:0) -> f6513_0_createTree_InvokeMethod(x64:0, c6, c7, x67:0, x68:0) :|: c7 = x64:0 - 1 && (c6 = x65:0 - 1 && c5 = 0) && (x64:0 > 0 && x68:0 > 1 && x65:0 > 1 && cons_0 = 0) f6513_0_createTree_InvokeMethod(x41:0, x42:0, x43:0, x44:0, x45:0) -> f6599_0_createTree_InvokeMethod(x41:0, c8, c9, x44:0, x48:0) :|: c9 = x41:0 - 1 && c8 = x42:0 - 1 && (x43:0 < x41:0 && x45:0 > 1 && x42:0 > 1 && x41:0 > 0) f6513_0_createTree_InvokeMethod(x71:0, x72:0, x73:0, x74:0, x75:0) -> f6513_0_createTree_InvokeMethod(x71:0, c12, c13, x74:0, x75:0) :|: c13 = x71:0 - 1 && c12 = x72:0 - 1 && (x75:0 > 1 && x73:0 < x71:0 && x72:0 > 1 && x71:0 > 0) f6599_0_createTree_InvokeMethod(x49:0, x50:0, x51:0, x52:0, x53:0) -> f6599_0_createTree_InvokeMethod(x49:0, c14, c15, x52:0, x56:0) :|: c15 = x49:0 - 1 && c14 = x50:0 - 1 && (x53:0 > 1 && x51:0 < x49:0 && x50:0 > 1 && x49:0 > 0) The following rules are bounded: f6599_0_createTree_InvokeMethod(x64:0, x65:0, c5, x67:0, x68:0) -> f6513_0_createTree_InvokeMethod(x64:0, c6, c7, x67:0, x68:0) :|: c7 = x64:0 - 1 && (c6 = x65:0 - 1 && c5 = 0) && (x64:0 > 0 && x68:0 > 1 && x65:0 > 1 && cons_0 = 0) f6513_0_createTree_InvokeMethod(x41:0, x42:0, x43:0, x44:0, x45:0) -> f6599_0_createTree_InvokeMethod(x41:0, c8, c9, x44:0, x48:0) :|: c9 = x41:0 - 1 && c8 = x42:0 - 1 && (x43:0 < x41:0 && x45:0 > 1 && x42:0 > 1 && x41:0 > 0) f6513_0_createTree_InvokeMethod(x71:0, x72:0, x73:0, x74:0, x75:0) -> f6513_0_createTree_InvokeMethod(x71:0, c12, c13, x74:0, x75:0) :|: c13 = x71:0 - 1 && c12 = x72:0 - 1 && (x75:0 > 1 && x73:0 < x71:0 && x72:0 > 1 && x71:0 > 0) f6599_0_createTree_InvokeMethod(x49:0, x50:0, x51:0, x52:0, x53:0) -> f6599_0_createTree_InvokeMethod(x49:0, c14, c15, x52:0, x56:0) :|: c15 = x49:0 - 1 && c14 = x50:0 - 1 && (x53:0 > 1 && x51:0 < x49:0 && x50:0 > 1 && x49:0 > 0) ---------------------------------------- (51) YES ---------------------------------------- (52) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: MarkingGraphVisitor.main([Ljava/lang/String;)V SCC calls the following helper methods: MarkingGraphVisitor.getRandom()LMarkingGraphVisitor; Performed SCC analyses: *Used field analysis yielded the following read fields: *MarkingGraphVisitor: [children] *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (53) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 46 IRulesP rules: f7786_0_main_Inc(EOS(STATIC_7786), java.lang.Object(ARRAY(i6846)), o6033, i6848, i6848) -> f7790_0_main_LE(EOS(STATIC_7790), java.lang.Object(ARRAY(i6846)), o6033, i6848 + -1, i6848) :|: TRUE f7790_0_main_LE(EOS(STATIC_7790), java.lang.Object(ARRAY(i6846)), o6033, i6853, i6856) -> f7795_0_main_LE(EOS(STATIC_7795), java.lang.Object(ARRAY(i6846)), o6033, i6853, i6856) :|: TRUE f7795_0_main_LE(EOS(STATIC_7795), java.lang.Object(ARRAY(i6846)), o6033, i6853, i6856) -> f7801_0_main_Load(EOS(STATIC_7801), java.lang.Object(ARRAY(i6846)), o6033, i6853) :|: i6856 > 0 f7801_0_main_Load(EOS(STATIC_7801), java.lang.Object(ARRAY(i6846)), o6033, i6853) -> f7807_0_main_InvokeMethod(EOS(STATIC_7807), java.lang.Object(ARRAY(i6846)), o6033, i6853, o6033) :|: TRUE f7807_0_main_InvokeMethod(EOS(STATIC_7807), java.lang.Object(ARRAY(i6846)), java.lang.Object(o6039sub), i6853, java.lang.Object(o6039sub)) -> f7813_0_main_InvokeMethod(EOS(STATIC_7813), java.lang.Object(ARRAY(i6846)), java.lang.Object(o6039sub), i6853, java.lang.Object(o6039sub)) :|: TRUE f7813_0_main_InvokeMethod(EOS(STATIC_7813), java.lang.Object(ARRAY(i6846)), java.lang.Object(o6039sub), i6853, java.lang.Object(o6039sub)) -> f7820_0_getRandom_InvokeMethod(EOS(STATIC_7820), java.lang.Object(o6039sub), java.lang.Object(ARRAY(i6846)), java.lang.Object(o6039sub)) :|: TRUE f7813_0_main_InvokeMethod(EOS(STATIC_7813), java.lang.Object(ARRAY(i6846)), java.lang.Object(o6039sub), i6853, java.lang.Object(o6039sub)) -> f7820_1_getRandom_InvokeMethod(EOS(STATIC_7820), java.lang.Object(ARRAY(i6846)), java.lang.Object(o6039sub), i6853, java.lang.Object(o6039sub)) :|: TRUE f7820_0_getRandom_InvokeMethod(EOS(STATIC_7820), java.lang.Object(o6039sub), java.lang.Object(ARRAY(i6846)), java.lang.Object(o6039sub)) -> f9646_0_getRandom_InvokeMethod(EOS(STATIC_9646), java.lang.Object(o6039sub), java.lang.Object(ARRAY(i6846)), java.lang.Object(o6039sub)) :|: TRUE f8441_0_getRandom_Return(EOS(STATIC_8441), java.lang.Object(ARRAY(i8229)), java.lang.Object(o6993sub), i6853, o6991) -> f7958_0_getRandom_Return(EOS(STATIC_7958), java.lang.Object(ARRAY(i8229)), java.lang.Object(o6993sub), i6853, o6991) :|: TRUE f7958_0_getRandom_Return(EOS(STATIC_7958), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269) -> f7963_0_main_Store(EOS(STATIC_7963), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269) :|: TRUE f7963_0_main_Store(EOS(STATIC_7963), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269) -> f7970_0_main_Load(EOS(STATIC_7970), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269) :|: TRUE f7970_0_main_Load(EOS(STATIC_7970), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269) -> f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269, java.lang.Object(o6270sub)) :|: TRUE f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269, java.lang.Object(o6270sub)) -> f7984_0_getRandom_InvokeMethod(EOS(STATIC_7984), java.lang.Object(o6270sub), o6269, java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub)) :|: TRUE f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269, java.lang.Object(o6270sub)) -> f7984_1_getRandom_InvokeMethod(EOS(STATIC_7984), java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub), i6853, o6269, java.lang.Object(o6270sub)) :|: TRUE f7984_0_getRandom_InvokeMethod(EOS(STATIC_7984), java.lang.Object(o6270sub), o6269, java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub)) -> f9676_0_getRandom_InvokeMethod(EOS(STATIC_9676), java.lang.Object(o6270sub), o6269, java.lang.Object(ARRAY(i7280)), java.lang.Object(o6270sub)) :|: TRUE f8442_0_getRandom_Return(EOS(STATIC_8442), java.lang.Object(ARRAY(i8233)), java.lang.Object(o6999sub), i6853, o6269, o6997) -> f8016_0_getRandom_Return(EOS(STATIC_8016), java.lang.Object(ARRAY(i8233)), java.lang.Object(o6999sub), i6853, o6269, o6997) :|: TRUE f8016_0_getRandom_Return(EOS(STATIC_8016), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338) -> f8022_0_main_Store(EOS(STATIC_8022), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338) :|: TRUE f8022_0_main_Store(EOS(STATIC_8022), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338) -> f8028_0_main_Load(EOS(STATIC_8028), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338) :|: TRUE f8028_0_main_Load(EOS(STATIC_8028), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338) -> f8034_0_main_New(EOS(STATIC_8034), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338, o6269) :|: TRUE f8034_0_main_New(EOS(STATIC_8034), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338, o6269) -> f8039_0_main_Duplicate(EOS(STATIC_8039), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338, o6269) :|: TRUE f8039_0_main_Duplicate(EOS(STATIC_8039), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338, o6269) -> f8045_0_main_Load(EOS(STATIC_8045), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338, o6269) :|: TRUE f8045_0_main_Load(EOS(STATIC_8045), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338, o6269) -> f8052_0_main_Load(EOS(STATIC_8052), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6269, o6338) :|: TRUE f8052_0_main_Load(EOS(STATIC_8052), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6269, o6338) -> f8058_0_main_FieldAccess(EOS(STATIC_8058), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, o6269, o6338, o6269) :|: TRUE f8058_0_main_FieldAccess(EOS(STATIC_8058), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(o6389sub), o6338, java.lang.Object(o6389sub)) -> f8064_0_main_FieldAccess(EOS(STATIC_8064), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(o6389sub), o6338, java.lang.Object(o6389sub)) :|: TRUE f8064_0_main_FieldAccess(EOS(STATIC_8064), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) -> f8072_0_main_FieldAccess(EOS(STATIC_8072), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) :|: TRUE f8072_0_main_FieldAccess(EOS(STATIC_8072), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) -> f8078_0_main_InvokeMethod(EOS(STATIC_8078), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) :|: TRUE f8078_0_main_InvokeMethod(EOS(STATIC_8078), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) -> f8082_0__init__Load(EOS(STATIC_8082), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) :|: TRUE f8082_0__init__Load(EOS(STATIC_8082), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) -> f8093_0__init__InvokeMethod(EOS(STATIC_8093), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) :|: TRUE f8093_0__init__InvokeMethod(EOS(STATIC_8093), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) -> f8101_0__init__Load(EOS(STATIC_8101), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) :|: TRUE f8101_0__init__Load(EOS(STATIC_8101), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) -> f8108_0__init__Load(EOS(STATIC_8108), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) :|: TRUE f8108_0__init__Load(EOS(STATIC_8108), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) -> f8115_0__init__FieldAccess(EOS(STATIC_8115), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) :|: TRUE f8115_0__init__FieldAccess(EOS(STATIC_8115), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395)), o6338) -> f8122_0__init__Load(EOS(STATIC_8122), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) :|: TRUE f8122_0__init__Load(EOS(STATIC_8122), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) -> f8130_0__init__Load(EOS(STATIC_8130), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) :|: TRUE f8130_0__init__Load(EOS(STATIC_8130), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) -> f8135_0__init__FieldAccess(EOS(STATIC_8135), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) :|: TRUE f8135_0__init__FieldAccess(EOS(STATIC_8135), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) -> f8140_0__init__Return(EOS(STATIC_8140), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) :|: TRUE f8140_0__init__Return(EOS(STATIC_8140), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) -> f8146_0_main_FieldAccess(EOS(STATIC_8146), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) :|: TRUE f8146_0_main_FieldAccess(EOS(STATIC_8146), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, o6395))) -> f8152_0_main_JMP(EOS(STATIC_8152), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340put), i6853) :|: TRUE f8152_0_main_JMP(EOS(STATIC_8152), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853) -> f8158_0_main_Load(EOS(STATIC_8158), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853) :|: TRUE f8158_0_main_Load(EOS(STATIC_8158), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853) -> f7782_0_main_Load(EOS(STATIC_7782), java.lang.Object(ARRAY(i7389)), java.lang.Object(o6340sub), i6853) :|: TRUE f7782_0_main_Load(EOS(STATIC_7782), java.lang.Object(ARRAY(i6846)), o6033, i6848) -> f7786_0_main_Inc(EOS(STATIC_7786), java.lang.Object(ARRAY(i6846)), o6033, i6848, i6848) :|: TRUE f8458_0_getRandom_Return(EOS(STATIC_8458), java.lang.Object(ARRAY(i8252)), java.lang.Object(o7032sub), i6853, o6269, java.lang.Object(MarkingGraphVisitor(EOC, NULL))) -> f8016_0_getRandom_Return(EOS(STATIC_8016), java.lang.Object(ARRAY(i8252)), java.lang.Object(o7032sub), i6853, o6269, java.lang.Object(MarkingGraphVisitor(EOC, NULL))) :|: TRUE f8457_0_getRandom_Return(EOS(STATIC_8457), java.lang.Object(ARRAY(i8247)), java.lang.Object(o7025sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, NULL))) -> f7958_0_getRandom_Return(EOS(STATIC_7958), java.lang.Object(ARRAY(i8247)), java.lang.Object(o7025sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, NULL))) :|: TRUE f7820_1_getRandom_InvokeMethod(EOS(STATIC_7820), java.lang.Object(ARRAY(i8229)), java.lang.Object(o6993sub), i6853, java.lang.Object(o6993sub)) -> f8441_0_getRandom_Return(EOS(STATIC_8441), java.lang.Object(ARRAY(i8229)), java.lang.Object(o6993sub), i6853, o6991) :|: TRUE f7820_1_getRandom_InvokeMethod(EOS(STATIC_7820), java.lang.Object(ARRAY(i8247)), java.lang.Object(o7025sub), i6853, java.lang.Object(o7025sub)) -> f8457_0_getRandom_Return(EOS(STATIC_8457), java.lang.Object(ARRAY(i8247)), java.lang.Object(o7025sub), i6853, java.lang.Object(MarkingGraphVisitor(EOC, NULL))) :|: TRUE f7984_1_getRandom_InvokeMethod(EOS(STATIC_7984), java.lang.Object(ARRAY(i8233)), java.lang.Object(o6999sub), i6853, o6269, java.lang.Object(o6999sub)) -> f8442_0_getRandom_Return(EOS(STATIC_8442), java.lang.Object(ARRAY(i8233)), java.lang.Object(o6999sub), i6853, o6269, o6997) :|: TRUE f7984_1_getRandom_InvokeMethod(EOS(STATIC_7984), java.lang.Object(ARRAY(i8252)), java.lang.Object(o7032sub), i6853, o6269, java.lang.Object(o7032sub)) -> f8458_0_getRandom_Return(EOS(STATIC_8458), java.lang.Object(ARRAY(i8252)), java.lang.Object(o7032sub), i6853, o6269, java.lang.Object(MarkingGraphVisitor(EOC, NULL))) :|: TRUE Combined rules. Obtained 4 IRulesP rules: f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280:0)), java.lang.Object(o6270sub:0), i6853:0, java.lang.Object(MarkingGraphVisitor(EOC, o6395:0)), java.lang.Object(o6270sub:0)) -> f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280:0)), java.lang.Object(o6340put:0), i6853:0 - 1, java.lang.Object(MarkingGraphVisitor(EOC, NULL)), java.lang.Object(o6340put:0)) :|: i6853:0 > 0 f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280:0)), java.lang.Object(o6270sub:0), i6853:0, java.lang.Object(MarkingGraphVisitor(EOC, o6395:0)), java.lang.Object(o6270sub:0)) -> f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280:0)), java.lang.Object(o6340put:0), i6853:0 - 1, o6991:0, java.lang.Object(o6340put:0)) :|: i6853:0 > 0 Removed following non-SCC rules: f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280:0)), java.lang.Object(o6270sub:0), i6853:0, o6269:0, java.lang.Object(o6270sub:0)) -> f9676_0_getRandom_InvokeMethod(EOS(STATIC_9676), java.lang.Object(o6270sub:0), o6269:0, java.lang.Object(ARRAY(i7280:0)), java.lang.Object(o6270sub:0)) :|: TRUE f7977_0_main_InvokeMethod(EOS(STATIC_7977), java.lang.Object(ARRAY(i7280:0)), java.lang.Object(o6270sub:0), i6853:0, java.lang.Object(MarkingGraphVisitor(EOC, o6395:0)), java.lang.Object(o6270sub:0)) -> f9646_0_getRandom_InvokeMethod(EOS(STATIC_9646), java.lang.Object(o6340put:0), java.lang.Object(ARRAY(i7280:0)), java.lang.Object(o6340put:0)) :|: i6853:0 > 0 Filtered constant ground arguments: f7977_0_main_InvokeMethod(x1, x2, x3, x4, x5, x6) -> f7977_0_main_InvokeMethod(x2, x3, x4, x5, x6) EOS(x1) -> EOS MarkingGraphVisitor(x1, x2) -> MarkingGraphVisitor(x2) Filtered duplicate arguments: f7977_0_main_InvokeMethod(x1, x2, x3, x4, x5) -> f7977_0_main_InvokeMethod(x1, x3, x4, x5) Filtered unneeded arguments: f7977_0_main_InvokeMethod(x1, x2, x3, x4) -> f7977_0_main_InvokeMethod(x2, x3) Finished conversion. Obtained 2 rules.P rules: f7977_0_main_InvokeMethod(i6853:0, java.lang.Object(MarkingGraphVisitor(o6395:0))) -> f7977_0_main_InvokeMethod(i6853:0 - 1, java.lang.Object(MarkingGraphVisitor(NULL))) :|: i6853:0 > 0 f7977_0_main_InvokeMethod(i6853:0, java.lang.Object(MarkingGraphVisitor(o6395:0))) -> f7977_0_main_InvokeMethod(i6853:0 - 1, o6991:0) :|: i6853:0 > 0 ---------------------------------------- (54) Obligation: Rules: f7977_0_main_InvokeMethod(i6853:0, java.lang.Object(MarkingGraphVisitor(o6395:0))) -> f7977_0_main_InvokeMethod(i6853:0 - 1, java.lang.Object(MarkingGraphVisitor(NULL))) :|: i6853:0 > 0 f7977_0_main_InvokeMethod(x, java.lang.Object(MarkingGraphVisitor(x1))) -> f7977_0_main_InvokeMethod(x - 1, x2) :|: x > 0 ---------------------------------------- (55) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (56) Obligation: Rules: f7977_0_main_InvokeMethod(i6853:0, java.lang.Object(MarkingGraphVisitor(o6395:0))) -> f7977_0_main_InvokeMethod(arith, java.lang.Object(MarkingGraphVisitor(NULL))) :|: i6853:0 > 0 && arith = i6853:0 - 1 f7977_0_main_InvokeMethod(x3, java.lang.Object(MarkingGraphVisitor(x4))) -> f7977_0_main_InvokeMethod(x5, x6) :|: x3 > 0 && x5 = x3 - 1 ---------------------------------------- (57) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f7977_0_main_InvokeMethod(i6853:0, java.lang.Object(MarkingGraphVisitor(o6395:0))) -> f7977_0_main_InvokeMethod(arith, java.lang.Object(MarkingGraphVisitor(NULL))) :|: i6853:0 > 0 && arith = i6853:0 - 1 (2) f7977_0_main_InvokeMethod(x3, java.lang.Object(MarkingGraphVisitor(x4))) -> f7977_0_main_InvokeMethod(x5, x6) :|: x3 > 0 && x5 = x3 - 1 Arcs: (1) -> (1), (2) (2) -> (1), (2) This digraph is fully evaluated! ---------------------------------------- (58) Obligation: Termination digraph: Nodes: (1) f7977_0_main_InvokeMethod(i6853:0, java.lang.Object(MarkingGraphVisitor(o6395:0))) -> f7977_0_main_InvokeMethod(arith, java.lang.Object(MarkingGraphVisitor(NULL))) :|: i6853:0 > 0 && arith = i6853:0 - 1 (2) f7977_0_main_InvokeMethod(x3, java.lang.Object(MarkingGraphVisitor(x4))) -> f7977_0_main_InvokeMethod(x5, x6) :|: x3 > 0 && x5 = x3 - 1 Arcs: (1) -> (1), (2) (2) -> (1), (2) This digraph is fully evaluated! ---------------------------------------- (59) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (60) Obligation: Rules: f7977_0_main_InvokeMethod(i6853:0:0, java.lang.Object(MarkingGraphVisitor(o6395:0:0))) -> f7977_0_main_InvokeMethod(i6853:0:0 - 1, java.lang.Object(MarkingGraphVisitor(NULL))) :|: i6853:0:0 > 0 f7977_0_main_InvokeMethod(x3:0, java.lang.Object(MarkingGraphVisitor(x4:0))) -> f7977_0_main_InvokeMethod(x3:0 - 1, x6:0) :|: x3:0 > 0 ---------------------------------------- (61) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f7977_0_main_InvokeMethod(INTEGER, VARIABLE) java.lang.Object(VARIABLE) MarkingGraphVisitor(VARIABLE) NULL() Replaced non-predefined constructor symbols by 0. ---------------------------------------- (62) Obligation: Rules: f7977_0_main_InvokeMethod(i6853:0:0, c) -> f7977_0_main_InvokeMethod(c1, c2) :|: c2 = 0 && (c1 = i6853:0:0 - 1 && c = 0) && i6853:0:0 > 0 f7977_0_main_InvokeMethod(x3:0, c3) -> f7977_0_main_InvokeMethod(c4, x6:0) :|: c4 = x3:0 - 1 && c3 = 0 && x3:0 > 0 ---------------------------------------- (63) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f7977_0_main_InvokeMethod(x, x1)] = x The following rules are decreasing: f7977_0_main_InvokeMethod(i6853:0:0, c) -> f7977_0_main_InvokeMethod(c1, c2) :|: c2 = 0 && (c1 = i6853:0:0 - 1 && c = 0) && i6853:0:0 > 0 f7977_0_main_InvokeMethod(x3:0, c3) -> f7977_0_main_InvokeMethod(c4, x6:0) :|: c4 = x3:0 - 1 && c3 = 0 && x3:0 > 0 The following rules are bounded: f7977_0_main_InvokeMethod(i6853:0:0, c) -> f7977_0_main_InvokeMethod(c1, c2) :|: c2 = 0 && (c1 = i6853:0:0 - 1 && c = 0) && i6853:0:0 > 0 f7977_0_main_InvokeMethod(x3:0, c3) -> f7977_0_main_InvokeMethod(c4, x6:0) :|: c4 = x3:0 - 1 && c3 = 0 && x3:0 > 0 ---------------------------------------- (64) YES