/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.jar /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/benchmark/theBenchmark.jar # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty termination of the given Bare JBC problem could be proven: (0) Bare JBC problem (1) BareJBCToJBCProof [EQUIVALENT, 95 ms] (2) JBC problem (3) JBCToGraph [EQUIVALENT, 738 ms] (4) JBCTerminationGraph (5) TerminationGraphToSCCProof [SOUND, 9 ms] (6) AND (7) JBCTerminationSCC (8) SCCToIRSProof [SOUND, 0 ms] (9) IRSwT (10) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (11) IRSwT (12) IRSwTTerminationDigraphProof [EQUIVALENT, 0 ms] (13) IRSwT (14) IntTRSCompressionProof [EQUIVALENT, 0 ms] (15) IRSwT (16) TempFilterProof [SOUND, 36 ms] (17) IntTRS (18) RankingReductionPairProof [EQUIVALENT, 0 ms] (19) YES (20) JBCTerminationSCC (21) SCCToIRSProof [SOUND, 316 ms] (22) IRSwT (23) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (24) IRSwT (25) IRSwTTerminationDigraphProof [EQUIVALENT, 898 ms] (26) IRSwT (27) IntTRSCompressionProof [EQUIVALENT, 0 ms] (28) IRSwT (29) TempFilterProof [SOUND, 279 ms] (30) IntTRS (31) PolynomialOrderProcessor [EQUIVALENT, 31 ms] (32) IntTRS (33) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (34) IntTRS (35) PolynomialOrderProcessor [EQUIVALENT, 6 ms] (36) IntTRS (37) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (38) IntTRS (39) RankingReductionPairProof [EQUIVALENT, 0 ms] (40) YES ---------------------------------------- (0) Obligation: need to prove termination of the following program: public class Binomial { public static int fact(int n) { if (n <= 0) return 1; else return n * fact(n - 1); } public static int binomialCoefficient(int n, int k) { return fact(n) / (fact(k) * fact(n - k)); } public static void main(String args[]) { for (int n = 0; n <= args.length; n++) for (int k = 0; k <= args.length; k++) if (k <= n) binomialCoefficient(n, k); else binomialCoefficient(k, n); } } ---------------------------------------- (1) BareJBCToJBCProof (EQUIVALENT) initialized classpath ---------------------------------------- (2) Obligation: need to prove termination of the following program: public class Binomial { public static int fact(int n) { if (n <= 0) return 1; else return n * fact(n - 1); } public static int binomialCoefficient(int n, int k) { return fact(n) / (fact(k) * fact(n - k)); } public static void main(String args[]) { for (int n = 0; n <= args.length; n++) for (int k = 0; k <= args.length; k++) if (k <= n) binomialCoefficient(n, k); else binomialCoefficient(k, n); } } ---------------------------------------- (3) JBCToGraph (EQUIVALENT) Constructed TerminationGraph. ---------------------------------------- (4) Obligation: Termination Graph based on JBC Program: Binomial.main([Ljava/lang/String;)V: Graph of 156 nodes with 1 SCC. Binomial.fact(I)I: Graph of 21 nodes with 0 SCCs. ---------------------------------------- (5) TerminationGraphToSCCProof (SOUND) Splitted TerminationGraph to 2 SCCss. ---------------------------------------- (6) Complex Obligation (AND) ---------------------------------------- (7) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: Binomial.fact(I)I SCC calls the following helper methods: Binomial.fact(I)I Performed SCC analyses: *Used field analysis yielded the following read fields: *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (8) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 11 IRulesP rules: f4166_0_fact_GT(EOS(STATIC_4166), i176, i176, i176) -> f4172_0_fact_GT(EOS(STATIC_4172), i176, i176, i176) :|: TRUE f4172_0_fact_GT(EOS(STATIC_4172), i176, i176, i176) -> f4177_0_fact_Load(EOS(STATIC_4177), i176, i176) :|: i176 > 0 f4177_0_fact_Load(EOS(STATIC_4177), i176, i176) -> f4186_0_fact_Load(EOS(STATIC_4186), i176, i176, i176) :|: TRUE f4186_0_fact_Load(EOS(STATIC_4186), i176, i176, i176) -> f4201_0_fact_ConstantStackPush(EOS(STATIC_4201), i176, i176, i176) :|: TRUE f4201_0_fact_ConstantStackPush(EOS(STATIC_4201), i176, i176, i176) -> f4319_0_fact_IntArithmetic(EOS(STATIC_4319), i176, i176, i176, 1) :|: TRUE f4319_0_fact_IntArithmetic(EOS(STATIC_4319), i176, i176, i176, matching1) -> f4411_0_fact_InvokeMethod(EOS(STATIC_4411), i176, i176, i176 - 1) :|: i176 > 0 && matching1 = 1 f4411_0_fact_InvokeMethod(EOS(STATIC_4411), i176, i176, i207) -> f4571_0_fact_Load(EOS(STATIC_4571), i207, i207) :|: i176 >= 1 && i207 < i176 f4411_0_fact_InvokeMethod(EOS(STATIC_4411), i176, i176, i207) -> f4571_1_fact_Load(EOS(STATIC_4571), i176, i176, i207) :|: i176 >= 1 && i207 < i176 f4571_0_fact_Load(EOS(STATIC_4571), i207, i207) -> f4577_0_fact_Load(EOS(STATIC_4577), i207, i207) :|: TRUE f4577_0_fact_Load(EOS(STATIC_4577), i207, i207) -> f4149_0_fact_Load(EOS(STATIC_4149), i207, i207) :|: TRUE f4149_0_fact_Load(EOS(STATIC_4149), i166, i166) -> f4166_0_fact_GT(EOS(STATIC_4166), i166, i166, i166) :|: TRUE Combined rules. Obtained 2 IRulesP rules: f4166_0_fact_GT(EOS(STATIC_4166), i176:0, i176:0, i176:0) -> f4166_0_fact_GT(EOS(STATIC_4166), i176:0 - 1, i176:0 - 1, i176:0 - 1) :|: i176:0 > 0 && i176:0 - 1 < i176:0 Removed following non-SCC rules: f4166_0_fact_GT(EOS(STATIC_4166), i176:0, i176:0, i176:0) -> f4571_1_fact_Load(EOS(STATIC_4571), i176:0, i176:0, i176:0 - 1) :|: i176:0 > 0 && i176:0 - 1 < i176:0 Filtered constant ground arguments: f4166_0_fact_GT(x1, x2, x3, x4) -> f4166_0_fact_GT(x2, x3, x4) EOS(x1) -> EOS Filtered duplicate arguments: f4166_0_fact_GT(x1, x2, x3) -> f4166_0_fact_GT(x3) Finished conversion. Obtained 1 rules.P rules: f4166_0_fact_GT(i176:0) -> f4166_0_fact_GT(i176:0 - 1) :|: i176:0 > 0 && i176:0 - 1 < i176:0 ---------------------------------------- (9) Obligation: Rules: f4166_0_fact_GT(i176:0) -> f4166_0_fact_GT(i176:0 - 1) :|: i176:0 > 0 && i176:0 - 1 < i176:0 ---------------------------------------- (10) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (11) Obligation: Rules: f4166_0_fact_GT(i176:0) -> f4166_0_fact_GT(arith) :|: i176:0 > 0 && i176:0 - 1 < i176:0 && arith = i176:0 - 1 ---------------------------------------- (12) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f4166_0_fact_GT(i176:0) -> f4166_0_fact_GT(arith) :|: i176:0 > 0 && i176:0 - 1 < i176:0 && arith = i176:0 - 1 Arcs: (1) -> (1) This digraph is fully evaluated! ---------------------------------------- (13) Obligation: Termination digraph: Nodes: (1) f4166_0_fact_GT(i176:0) -> f4166_0_fact_GT(arith) :|: i176:0 > 0 && i176:0 - 1 < i176:0 && arith = i176:0 - 1 Arcs: (1) -> (1) This digraph is fully evaluated! ---------------------------------------- (14) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (15) Obligation: Rules: f4166_0_fact_GT(i176:0:0) -> f4166_0_fact_GT(i176:0:0 - 1) :|: i176:0:0 > 0 && i176:0:0 - 1 < i176:0:0 ---------------------------------------- (16) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f4166_0_fact_GT(INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (17) Obligation: Rules: f4166_0_fact_GT(i176:0:0) -> f4166_0_fact_GT(c) :|: c = i176:0:0 - 1 && (i176:0:0 > 0 && i176:0:0 - 1 < i176:0:0) ---------------------------------------- (18) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f4166_0_fact_GT ] = f4166_0_fact_GT_1 The following rules are decreasing: f4166_0_fact_GT(i176:0:0) -> f4166_0_fact_GT(c) :|: c = i176:0:0 - 1 && (i176:0:0 > 0 && i176:0:0 - 1 < i176:0:0) The following rules are bounded: f4166_0_fact_GT(i176:0:0) -> f4166_0_fact_GT(c) :|: c = i176:0:0 - 1 && (i176:0:0 > 0 && i176:0:0 - 1 < i176:0:0) ---------------------------------------- (19) YES ---------------------------------------- (20) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: Binomial.main([Ljava/lang/String;)V SCC calls the following helper methods: Binomial.fact(I)I Performed SCC analyses: *Used field analysis yielded the following read fields: *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (21) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 168 IRulesP rules: f2734_0_main_Load(EOS(STATIC_2734), java.lang.Object(o8sub), java.lang.Object(o8sub), i32, i32) -> f2737_0_main_ArrayLength(EOS(STATIC_2737), java.lang.Object(o8sub), java.lang.Object(o8sub), i32, i32, java.lang.Object(o8sub)) :|: TRUE f2737_0_main_ArrayLength(EOS(STATIC_2737), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, i32, java.lang.Object(ARRAY(i34))) -> f2740_0_main_ArrayLength(EOS(STATIC_2740), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, i32, java.lang.Object(ARRAY(i34))) :|: i34 >= 0 f2740_0_main_ArrayLength(EOS(STATIC_2740), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, i32, java.lang.Object(ARRAY(i34))) -> f2742_0_main_GT(EOS(STATIC_2742), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, i32, i34) :|: i34 >= 0 f2742_0_main_GT(EOS(STATIC_2742), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, i32, i34) -> f2764_0_main_GT(EOS(STATIC_2764), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, i32, i34) :|: i32 <= i34 f2764_0_main_GT(EOS(STATIC_2764), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, i32, i34) -> f2786_0_main_ConstantStackPush(EOS(STATIC_2786), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32) :|: i32 <= i34 f2786_0_main_ConstantStackPush(EOS(STATIC_2786), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32) -> f2792_0_main_Store(EOS(STATIC_2792), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, 0) :|: TRUE f2792_0_main_Store(EOS(STATIC_2792), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, matching1) -> f2795_0_main_Load(EOS(STATIC_2795), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, 0) :|: TRUE && matching1 = 0 f2795_0_main_Load(EOS(STATIC_2795), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, matching1) -> f3560_0_main_Load(EOS(STATIC_3560), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i32, 0) :|: TRUE && matching1 = 0 f3560_0_main_Load(EOS(STATIC_3560), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i100, i101) -> f4554_0_main_Load(EOS(STATIC_4554), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i100, i101) :|: TRUE f4554_0_main_Load(EOS(STATIC_4554), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i209, i210) -> f6356_0_main_Load(EOS(STATIC_6356), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i209, i210) :|: TRUE f6356_0_main_Load(EOS(STATIC_6356), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446) -> f6374_0_main_Load(EOS(STATIC_6374), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446) :|: TRUE f6374_0_main_Load(EOS(STATIC_6374), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446) -> f6376_0_main_ArrayLength(EOS(STATIC_6376), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, java.lang.Object(ARRAY(i34))) :|: TRUE f6376_0_main_ArrayLength(EOS(STATIC_6376), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, java.lang.Object(ARRAY(i34))) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i34) :|: i34 >= 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i34) -> f6396_0_main_GT(EOS(STATIC_6396), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i34) :|: i446 > i34 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i34) -> f6397_0_main_GT(EOS(STATIC_6397), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i34) :|: i446 <= i34 f6396_0_main_GT(EOS(STATIC_6396), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i34) -> f6405_0_main_Inc(EOS(STATIC_6405), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445) :|: i446 > i34 f6405_0_main_Inc(EOS(STATIC_6405), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445) -> f6505_0_main_JMP(EOS(STATIC_6505), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445 + 1) :|: TRUE f6505_0_main_JMP(EOS(STATIC_6505), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i450) -> f6514_0_main_Load(EOS(STATIC_6514), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i450) :|: TRUE f6514_0_main_Load(EOS(STATIC_6514), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i450) -> f2729_0_main_Load(EOS(STATIC_2729), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i450) :|: TRUE f2729_0_main_Load(EOS(STATIC_2729), java.lang.Object(o8sub), java.lang.Object(o8sub), i32) -> f2734_0_main_Load(EOS(STATIC_2734), java.lang.Object(o8sub), java.lang.Object(o8sub), i32, i32) :|: TRUE f6397_0_main_GT(EOS(STATIC_6397), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i34) -> f6501_0_main_Load(EOS(STATIC_6501), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446) :|: i446 <= i34 f6501_0_main_Load(EOS(STATIC_6501), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446) -> f6508_0_main_Load(EOS(STATIC_6508), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446) :|: TRUE f6508_0_main_Load(EOS(STATIC_6508), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446) -> f6516_0_main_GT(EOS(STATIC_6516), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) :|: TRUE f6516_0_main_GT(EOS(STATIC_6516), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) -> f6545_0_main_GT(EOS(STATIC_6545), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) :|: i446 > i445 f6516_0_main_GT(EOS(STATIC_6516), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) -> f6546_0_main_GT(EOS(STATIC_6546), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) :|: i446 <= i445 f6545_0_main_GT(EOS(STATIC_6545), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) -> f6554_0_main_Load(EOS(STATIC_6554), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446) :|: i446 > i445 f6554_0_main_Load(EOS(STATIC_6554), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446) -> f6569_0_main_Load(EOS(STATIC_6569), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446) :|: TRUE f6569_0_main_Load(EOS(STATIC_6569), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446) -> f6574_0_main_InvokeMethod(EOS(STATIC_6574), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) :|: TRUE f6574_0_main_InvokeMethod(EOS(STATIC_6574), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) -> f6578_0_binomialCoefficient_Load(EOS(STATIC_6578), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) :|: TRUE f6578_0_binomialCoefficient_Load(EOS(STATIC_6578), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) -> f6584_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6584), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445, i446) :|: TRUE f6584_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6584), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445, i446) -> f6590_0_fact_Load(EOS(STATIC_6590), i446, i446) :|: i446 >= 1 && i34 >= i445 && i446 <= i34 && i446 > i445 f6584_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6584), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445, i446) -> f6590_1_fact_Load(EOS(STATIC_6590), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445, i446) :|: i446 >= 1 && i34 >= i445 && i446 <= i34 && i446 > i445 f6590_0_fact_Load(EOS(STATIC_6590), i446, i446) -> f8335_0_fact_Load(EOS(STATIC_8335), i446, i446) :|: TRUE f6735_0_fact_Return(EOS(STATIC_6735), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445) -> f6741_0_binomialCoefficient_Load(EOS(STATIC_6741), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445) :|: TRUE f6741_0_binomialCoefficient_Load(EOS(STATIC_6741), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445) -> f6752_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6752), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445, i445) :|: TRUE f6752_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6752), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445, i445) -> f6762_0_fact_Load(EOS(STATIC_6762), i445, i445) :|: i460 >= 1 && i462 >= 1 && i445 <= i34 && i462 <= i34 && i462 > i445 f6752_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6752), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445, i445) -> f6762_1_fact_Load(EOS(STATIC_6762), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445, i445) :|: i460 >= 1 && i462 >= 1 && i445 <= i34 && i462 <= i34 && i462 > i445 f6762_0_fact_Load(EOS(STATIC_6762), i445, i445) -> f8351_0_fact_Load(EOS(STATIC_8351), i445, i445) :|: TRUE f6990_0_fact_Return(EOS(STATIC_6990), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i462, i462, matching2) -> f7000_0_binomialCoefficient_Load(EOS(STATIC_7000), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i462, i462, 0) :|: TRUE && matching1 = 0 && matching2 = 0 f7000_0_binomialCoefficient_Load(EOS(STATIC_7000), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i462, i462, matching2) -> f7023_0_binomialCoefficient_Load(EOS(STATIC_7023), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i462, 0, i462) :|: TRUE && matching1 = 0 && matching2 = 0 f7023_0_binomialCoefficient_Load(EOS(STATIC_7023), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i462, matching2, i462) -> f7047_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7047), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i462, i462, 0) :|: TRUE && matching1 = 0 && matching2 = 0 f7047_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7047), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i462, i462, matching2) -> f7072_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7072), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i462 - 0, i462 - 0) :|: i462 > 0 && matching1 = 0 && matching2 = 0 f7072_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7072), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i462, i462) -> f7131_0_fact_Load(EOS(STATIC_7131), i462, i462) :|: i460 >= 1 && i462 >= 1 && i462 <= i34 && matching1 = 0 f7072_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7072), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i462, i462) -> f7131_1_fact_Load(EOS(STATIC_7131), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i462, i462) :|: i460 >= 1 && i462 >= 1 && i462 <= i34 && matching1 = 0 f7131_0_fact_Load(EOS(STATIC_7131), i462, i462) -> f8375_0_fact_Load(EOS(STATIC_8375), i462, i462) :|: TRUE f7459_0_fact_Return(EOS(STATIC_7459), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i567) -> f7477_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7477), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i567) :|: TRUE && matching1 = 0 f7477_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7477), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i567) -> f7729_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7729), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i567) :|: TRUE && matching1 = 0 f7729_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7729), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i567) -> f7760_0_binomialCoefficient_Return(EOS(STATIC_7760), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i567) :|: i670 = i460 / i642 && matching1 = 0 f7760_0_binomialCoefficient_Return(EOS(STATIC_7760), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i567) -> f7788_0_main_StackPop(EOS(STATIC_7788), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i567) :|: TRUE && matching1 = 0 f7788_0_main_StackPop(EOS(STATIC_7788), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i567) -> f7809_0_main_Inc(EOS(STATIC_7809), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i567) :|: TRUE && matching1 = 0 f7809_0_main_Inc(EOS(STATIC_7809), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i567) -> f7832_0_main_JMP(EOS(STATIC_7832), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i567 + 1) :|: TRUE && matching1 = 0 f7832_0_main_JMP(EOS(STATIC_7832), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i687) -> f8066_0_main_Load(EOS(STATIC_8066), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i687) :|: TRUE && matching1 = 0 f8066_0_main_Load(EOS(STATIC_8066), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i687) -> f6356_0_main_Load(EOS(STATIC_6356), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i687) :|: TRUE && matching1 = 0 f6992_0_fact_Return(EOS(STATIC_6992), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i462, i486) -> f7006_0_binomialCoefficient_Load(EOS(STATIC_7006), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i462, i486) :|: TRUE f7006_0_binomialCoefficient_Load(EOS(STATIC_7006), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i462, i486) -> f7026_0_binomialCoefficient_Load(EOS(STATIC_7026), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i486, i462) :|: TRUE f7026_0_binomialCoefficient_Load(EOS(STATIC_7026), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i486, i462) -> f7050_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7050), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i462, i486) :|: TRUE f7050_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7050), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i462, i486) -> f7084_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7084), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i462 - i486) :|: i462 > 0 && i486 > 0 f7084_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7084), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i536) -> f7133_0_fact_Load(EOS(STATIC_7133), i536, i536) :|: i460 >= 1 && i484 >= 1 && i536 >= 1 && i486 >= 1 && i462 >= 1 && i486 <= i34 && i462 <= i34 && i462 > i486 f7084_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7084), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i536) -> f7133_1_fact_Load(EOS(STATIC_7133), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i536) :|: i460 >= 1 && i484 >= 1 && i536 >= 1 && i486 >= 1 && i462 >= 1 && i486 <= i34 && i462 <= i34 && i462 > i486 f7133_0_fact_Load(EOS(STATIC_7133), i536, i536) -> f8411_0_fact_Load(EOS(STATIC_8411), i536, i536) :|: TRUE f7462_0_fact_Return(EOS(STATIC_7462), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) -> f7483_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7483), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) :|: TRUE f7483_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7483), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) -> f7733_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7733), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) :|: TRUE f7733_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7733), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) -> f7763_0_binomialCoefficient_Return(EOS(STATIC_7763), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) :|: i671 = i460 / i643 f7763_0_binomialCoefficient_Return(EOS(STATIC_7763), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) -> f7791_0_main_StackPop(EOS(STATIC_7791), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) :|: TRUE f7791_0_main_StackPop(EOS(STATIC_7791), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) -> f7813_0_main_Inc(EOS(STATIC_7813), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) :|: TRUE f7813_0_main_Inc(EOS(STATIC_7813), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) -> f7915_0_main_JMP(EOS(STATIC_7915), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462 + 1) :|: TRUE f7915_0_main_JMP(EOS(STATIC_7915), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i688) -> f8180_0_main_JMP(EOS(STATIC_8180), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i688) :|: TRUE f8180_0_main_JMP(EOS(STATIC_8180), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i700) -> f8219_0_main_Load(EOS(STATIC_8219), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i700) :|: TRUE f8219_0_main_Load(EOS(STATIC_8219), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i700) -> f6356_0_main_Load(EOS(STATIC_6356), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i700) :|: TRUE f6546_0_main_GT(EOS(STATIC_6546), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i446, i445) -> f6566_0_main_Load(EOS(STATIC_6566), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446) :|: i446 <= i445 f6566_0_main_Load(EOS(STATIC_6566), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446) -> f6571_0_main_Load(EOS(STATIC_6571), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445) :|: TRUE f6571_0_main_Load(EOS(STATIC_6571), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445) -> f6576_0_main_InvokeMethod(EOS(STATIC_6576), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445, i446) :|: TRUE f6576_0_main_InvokeMethod(EOS(STATIC_6576), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445, i446) -> f6580_0_binomialCoefficient_Load(EOS(STATIC_6580), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445, i446) :|: TRUE f6580_0_binomialCoefficient_Load(EOS(STATIC_6580), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445, i446) -> f6588_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6588), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445, i446, i445) :|: TRUE f6588_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6588), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445, i446, i445) -> f6592_0_fact_Load(EOS(STATIC_6592), i445, i445) :|: i34 >= i445 && i446 <= i34 && i446 <= i445 f6588_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6588), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445, i446, i445) -> f6592_1_fact_Load(EOS(STATIC_6592), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i446, i445, i446, i445) :|: i34 >= i445 && i446 <= i34 && i446 <= i445 f6592_0_fact_Load(EOS(STATIC_6592), i445, i445) -> f8451_0_fact_Load(EOS(STATIC_8451), i445, i445) :|: TRUE f6737_0_fact_Return(EOS(STATIC_6737), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i446, matching2, i446) -> f6744_0_binomialCoefficient_Load(EOS(STATIC_6744), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i446, 0, i446) :|: TRUE && matching1 = 0 && matching2 = 0 f6744_0_binomialCoefficient_Load(EOS(STATIC_6744), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i446, matching2, i446) -> f6755_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6755), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i446, 0, i446, i446) :|: TRUE && matching1 = 0 && matching2 = 0 f6755_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6755), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i446, matching2, i446, i446) -> f6764_0_fact_Load(EOS(STATIC_6764), i446, i446) :|: i446 <= i34 && matching1 = 0 && matching2 = 0 f6755_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6755), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i446, matching2, i446, i446) -> f6764_1_fact_Load(EOS(STATIC_6764), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i446, 0, i446, i446) :|: i446 <= i34 && matching1 = 0 && matching2 = 0 f6764_0_fact_Load(EOS(STATIC_6764), i446, i446) -> f8471_0_fact_Load(EOS(STATIC_8471), i446, i446) :|: TRUE f6993_0_fact_Return(EOS(STATIC_6993), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, matching2, i491) -> f7010_0_binomialCoefficient_Load(EOS(STATIC_7010), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491, 0, i491) :|: TRUE && matching1 = 0 && matching2 = 0 f7010_0_binomialCoefficient_Load(EOS(STATIC_7010), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, matching2, i491) -> f7030_0_binomialCoefficient_Load(EOS(STATIC_7030), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491, i491, 0) :|: TRUE && matching1 = 0 && matching2 = 0 f7030_0_binomialCoefficient_Load(EOS(STATIC_7030), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, i491, matching2) -> f7054_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7054), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491, 0, i491) :|: TRUE && matching1 = 0 && matching2 = 0 f7054_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7054), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, matching2, i491) -> f7089_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7089), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491, 0 - i491) :|: i491 <= 0 && matching1 = 0 && matching2 = 0 f7089_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7089), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, i539) -> f7135_0_fact_Load(EOS(STATIC_7135), i539, i539) :|: i491 < 1 && i491 <= i34 && matching1 = 0 f7089_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7089), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, i539) -> f7135_1_fact_Load(EOS(STATIC_7135), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491, i539) :|: i491 < 1 && i491 <= i34 && matching1 = 0 f7135_0_fact_Load(EOS(STATIC_7135), i539, i539) -> f8495_0_fact_Load(EOS(STATIC_8495), i539, i539) :|: TRUE f7463_0_fact_Return(EOS(STATIC_7463), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f7487_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7487), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 f7487_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7487), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f7501_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7501), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 f7501_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7501), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f7738_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7738), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 f7738_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7738), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f7767_0_binomialCoefficient_Return(EOS(STATIC_7767), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: i673 = 1 / i645 && matching1 = 0 f7767_0_binomialCoefficient_Return(EOS(STATIC_7767), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f7793_0_main_StackPop(EOS(STATIC_7793), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 f7793_0_main_StackPop(EOS(STATIC_7793), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f7815_0_main_JMP(EOS(STATIC_7815), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 f7815_0_main_JMP(EOS(STATIC_7815), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f7922_0_main_Inc(EOS(STATIC_7922), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 f7922_0_main_Inc(EOS(STATIC_7922), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f8144_0_main_JMP(EOS(STATIC_8144), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491 + 1) :|: TRUE && matching1 = 0 f8144_0_main_JMP(EOS(STATIC_8144), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i697) -> f8208_0_main_Load(EOS(STATIC_8208), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i697) :|: TRUE && matching1 = 0 f8208_0_main_Load(EOS(STATIC_8208), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i697) -> f6356_0_main_Load(EOS(STATIC_6356), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i697) :|: TRUE && matching1 = 0 f7465_0_fact_Return(EOS(STATIC_7465), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491) -> f7501_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7501), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 f6994_0_fact_Return(EOS(STATIC_6994), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495, matching2, i495) -> f7012_0_binomialCoefficient_Load(EOS(STATIC_7012), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495, 0, i495) :|: TRUE && matching1 = 0 && matching2 = 0 f7012_0_binomialCoefficient_Load(EOS(STATIC_7012), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495, matching2, i495) -> f7034_0_binomialCoefficient_Load(EOS(STATIC_7034), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495, i495, 0) :|: TRUE && matching1 = 0 && matching2 = 0 f7034_0_binomialCoefficient_Load(EOS(STATIC_7034), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495, i495, matching2) -> f7059_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7059), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495, 0, i495) :|: TRUE && matching1 = 0 && matching2 = 0 f7059_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7059), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495, matching2, i495) -> f7094_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7094), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495, 0 - i495) :|: i495 > 0 && matching1 = 0 && matching2 = 0 f7094_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7094), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495, i542) -> f7137_0_fact_Load(EOS(STATIC_7137), i542, i542) :|: i493 >= 1 && i542 < 1 && i495 >= 1 && i495 <= i34 && matching1 = 0 f7094_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7094), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495, i542) -> f7137_1_fact_Load(EOS(STATIC_7137), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495, i542) :|: i493 >= 1 && i542 < 1 && i495 >= 1 && i495 <= i34 && matching1 = 0 f7137_0_fact_Load(EOS(STATIC_7137), i542, i542) -> f8541_0_fact_Load(EOS(STATIC_8541), i542, i542) :|: TRUE f7466_0_fact_Return(EOS(STATIC_7466), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495) -> f7507_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7507), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495) :|: TRUE && matching1 = 0 f7507_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7507), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495) -> f7744_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7744), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495) :|: TRUE && matching1 = 0 f7744_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7744), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495) -> f7772_0_binomialCoefficient_Return(EOS(STATIC_7772), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495) :|: i674 = 1 / i493 && matching1 = 0 f7772_0_binomialCoefficient_Return(EOS(STATIC_7772), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495) -> f7797_0_main_StackPop(EOS(STATIC_7797), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495) :|: TRUE && matching1 = 0 f7797_0_main_StackPop(EOS(STATIC_7797), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495) -> f7819_0_main_JMP(EOS(STATIC_7819), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495) :|: TRUE && matching1 = 0 f7819_0_main_JMP(EOS(STATIC_7819), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495) -> f7952_0_main_Inc(EOS(STATIC_7952), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495) :|: TRUE && matching1 = 0 f7952_0_main_Inc(EOS(STATIC_7952), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495) -> f7809_0_main_Inc(EOS(STATIC_7809), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495) :|: TRUE && matching1 = 0 f6738_0_fact_Return(EOS(STATIC_6738), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446) -> f6749_0_binomialCoefficient_Load(EOS(STATIC_6749), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446) :|: TRUE f6749_0_binomialCoefficient_Load(EOS(STATIC_6749), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446) -> f6760_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6760), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446, i446) :|: TRUE f6760_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6760), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446, i446) -> f6766_0_fact_Load(EOS(STATIC_6766), i446, i446) :|: i469 >= 1 && i471 >= 1 && i471 <= i34 && i446 <= i34 && i446 <= i471 f6760_0_binomialCoefficient_InvokeMethod(EOS(STATIC_6760), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446, i446) -> f6766_1_fact_Load(EOS(STATIC_6766), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446, i446) :|: i469 >= 1 && i471 >= 1 && i471 <= i34 && i446 <= i34 && i446 <= i471 f6766_0_fact_Load(EOS(STATIC_6766), i446, i446) -> f8571_0_fact_Load(EOS(STATIC_8571), i446, i446) :|: TRUE f6996_0_fact_Return(EOS(STATIC_6996), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i471, i500) -> f7014_0_binomialCoefficient_Load(EOS(STATIC_7014), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i471, i500) :|: TRUE f7014_0_binomialCoefficient_Load(EOS(STATIC_7014), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i471, i500) -> f7040_0_binomialCoefficient_Load(EOS(STATIC_7040), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i500, i471) :|: TRUE f7040_0_binomialCoefficient_Load(EOS(STATIC_7040), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i500, i471) -> f7064_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7064), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i471, i500) :|: TRUE f7064_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7064), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i471, i500) -> f7109_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7109), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i471 - i500) :|: i471 > 0 && i500 <= 0 f7109_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7109), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i543) -> f7139_0_fact_Load(EOS(STATIC_7139), i543, i543) :|: i469 >= 1 && i543 >= 1 && i471 >= 1 && i500 < 1 && i471 <= i34 && i500 <= i34 && i471 >= i500 f7109_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7109), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i543) -> f7139_1_fact_Load(EOS(STATIC_7139), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i543) :|: i469 >= 1 && i543 >= 1 && i471 >= 1 && i500 < 1 && i471 <= i34 && i500 <= i34 && i471 >= i500 f7139_0_fact_Load(EOS(STATIC_7139), i543, i543) -> f8595_0_fact_Load(EOS(STATIC_8595), i543, i543) :|: TRUE f7471_0_fact_Return(EOS(STATIC_7471), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) -> f7513_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7513), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) :|: TRUE f7513_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7513), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) -> f7750_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7750), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) :|: TRUE f7750_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7750), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) -> f7778_0_binomialCoefficient_Return(EOS(STATIC_7778), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) :|: i676 = i469 / i651 f7778_0_binomialCoefficient_Return(EOS(STATIC_7778), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) -> f7801_0_main_StackPop(EOS(STATIC_7801), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) :|: TRUE f7801_0_main_StackPop(EOS(STATIC_7801), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) -> f7824_0_main_JMP(EOS(STATIC_7824), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) :|: TRUE f7824_0_main_JMP(EOS(STATIC_7824), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) -> f7958_0_main_Inc(EOS(STATIC_7958), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) :|: TRUE f7958_0_main_Inc(EOS(STATIC_7958), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) -> f8149_0_main_JMP(EOS(STATIC_8149), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500 + 1) :|: TRUE f8149_0_main_JMP(EOS(STATIC_8149), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i698) -> f8218_0_main_Load(EOS(STATIC_8218), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i698) :|: TRUE f8218_0_main_Load(EOS(STATIC_8218), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i698) -> f6356_0_main_Load(EOS(STATIC_6356), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i698) :|: TRUE f6997_0_fact_Return(EOS(STATIC_6997), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i471, i504) -> f7021_0_binomialCoefficient_Load(EOS(STATIC_7021), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i471, i504) :|: TRUE f7021_0_binomialCoefficient_Load(EOS(STATIC_7021), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i471, i504) -> f7045_0_binomialCoefficient_Load(EOS(STATIC_7045), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i504, i471) :|: TRUE f7045_0_binomialCoefficient_Load(EOS(STATIC_7045), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i504, i471) -> f7069_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7069), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i471, i504) :|: TRUE f7069_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7069), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i471, i504) -> f7129_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7129), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i471 - i504) :|: i471 > 0 && i504 > 0 f7129_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7129), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i547) -> f7141_0_fact_Load(EOS(STATIC_7141), i547, i547) :|: i469 >= 1 && i502 >= 1 && i471 >= 1 && i504 >= 1 && i471 <= i34 && i504 <= i34 && i471 >= i504 f7129_0_binomialCoefficient_InvokeMethod(EOS(STATIC_7129), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i547) -> f7141_1_fact_Load(EOS(STATIC_7141), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i547) :|: i469 >= 1 && i502 >= 1 && i471 >= 1 && i504 >= 1 && i471 <= i34 && i504 <= i34 && i471 >= i504 f7141_0_fact_Load(EOS(STATIC_7141), i547, i547) -> f8633_0_fact_Load(EOS(STATIC_8633), i547, i547) :|: TRUE f7472_0_fact_Return(EOS(STATIC_7472), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f7521_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7521), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE f7521_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7521), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f7724_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7724), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE f7724_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7724), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f7757_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7757), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE f7757_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7757), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f7785_0_binomialCoefficient_Return(EOS(STATIC_7785), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: i681 = i469 / i660 f7785_0_binomialCoefficient_Return(EOS(STATIC_7785), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f7807_0_main_StackPop(EOS(STATIC_7807), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE f7807_0_main_StackPop(EOS(STATIC_7807), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f7829_0_main_JMP(EOS(STATIC_7829), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE f7829_0_main_JMP(EOS(STATIC_7829), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f8038_0_main_Inc(EOS(STATIC_8038), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE f8038_0_main_Inc(EOS(STATIC_8038), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f8180_0_main_JMP(EOS(STATIC_8180), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504 + 1) :|: TRUE f7474_0_fact_Return(EOS(STATIC_7474), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) -> f7724_0_binomialCoefficient_IntArithmetic(EOS(STATIC_7724), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE f6590_1_fact_Load(EOS(STATIC_6590), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445, i462) -> f6735_0_fact_Return(EOS(STATIC_6735), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i445, i462, i462, i445) :|: TRUE f6762_1_fact_Load(EOS(STATIC_6762), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i462, i462, matching2, matching3) -> f6990_0_fact_Return(EOS(STATIC_6990), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i462, i462, 0) :|: TRUE && matching1 = 0 && matching2 = 0 && matching3 = 0 f6762_1_fact_Load(EOS(STATIC_6762), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i462, i486, i486) -> f6992_0_fact_Return(EOS(STATIC_6992), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i462, i486) :|: TRUE f7131_1_fact_Load(EOS(STATIC_7131), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i567, i567) -> f7459_0_fact_Return(EOS(STATIC_7459), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i567) :|: TRUE && matching1 = 0 f7133_1_fact_Load(EOS(STATIC_7133), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462, i536) -> f7462_0_fact_Return(EOS(STATIC_7462), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i486, i462) :|: TRUE f6592_1_fact_Load(EOS(STATIC_6592), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i446, matching2, i446, matching3) -> f6737_0_fact_Return(EOS(STATIC_6737), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i446, 0, i446) :|: TRUE && matching1 = 0 && matching2 = 0 && matching3 = 0 f6592_1_fact_Load(EOS(STATIC_6592), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446, i471) -> f6738_0_fact_Return(EOS(STATIC_6738), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i446, i471, i446) :|: TRUE f6764_1_fact_Load(EOS(STATIC_6764), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, matching2, i491, i491) -> f6993_0_fact_Return(EOS(STATIC_6993), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491, 0, i491) :|: TRUE && matching1 = 0 && matching2 = 0 f6764_1_fact_Load(EOS(STATIC_6764), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495, matching2, i495, i495) -> f6994_0_fact_Return(EOS(STATIC_6994), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495, 0, i495) :|: TRUE && matching1 = 0 && matching2 = 0 f7135_1_fact_Load(EOS(STATIC_7135), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, matching2) -> f7463_0_fact_Return(EOS(STATIC_7463), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 && matching2 = 0 f7135_1_fact_Load(EOS(STATIC_7135), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i491, i539) -> f7465_0_fact_Return(EOS(STATIC_7465), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i491) :|: TRUE && matching1 = 0 f7137_1_fact_Load(EOS(STATIC_7137), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), matching1, i495, i542) -> f7466_0_fact_Return(EOS(STATIC_7466), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), 0, i495) :|: TRUE && matching1 = 0 f6766_1_fact_Load(EOS(STATIC_6766), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i471, i500, i500) -> f6996_0_fact_Return(EOS(STATIC_6996), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i471, i500) :|: TRUE f6766_1_fact_Load(EOS(STATIC_6766), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i471, i504, i504) -> f6997_0_fact_Return(EOS(STATIC_6997), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i471, i504) :|: TRUE f7139_1_fact_Load(EOS(STATIC_7139), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500, i543) -> f7471_0_fact_Return(EOS(STATIC_7471), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i500) :|: TRUE f7141_1_fact_Load(EOS(STATIC_7141), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i547) -> f7472_0_fact_Return(EOS(STATIC_7472), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE f7141_1_fact_Load(EOS(STATIC_7141), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504, i547) -> f7474_0_fact_Return(EOS(STATIC_7474), java.lang.Object(ARRAY(i34)), java.lang.Object(ARRAY(i34)), i471, i504) :|: TRUE Combined rules. Obtained 26 IRulesP rules: f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) :|: i446:0 <= i34:0 && i446:0 < 1 && i34:0 > -1 f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0 + 1, i446:0 + 1, i34:0) :|: i446:0 <= i34:0 && i446:0 < 1 && i34:0 > -1 && i645:0 > 1 - i645:0 * div && 1 - i645:0 * div + i645:0 > 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0 + 1, 0, 0, i34:0) :|: i34:0 > -1 && i445:0 + 1 <= i34:0 && i446:0 > i34:0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) :|: i446:0 <= i34:0 && i484:0 > 0 && i460:1 > 0 && i446:0 > i445:0 && i446:0 - i445:0 >= 1 && i445:0 > 0 && i446:0 > 0 && i460:0 > 0 && i445:0 <= i34:0 && i34:0 > -1 f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0 + 1, i446:0 + 1, i34:0) :|: i446:0 <= i34:0 && i484:0 > 0 && i460:1 > 0 && i446:0 > i445:0 && i446:0 - i445:0 >= 1 && i445:0 > 0 && i446:0 > 0 && i460:0 > 0 && i445:0 <= i34:0 && i34:0 > -1 && i643:0 > i460:2 - i643:0 * div && i460:2 - i643:0 * div + i643:0 > 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) :|: i446:0 > 0 && i446:0 <= i34:0 && i446:0 < 1 && i493:0 > 0 && i34:0 > -1 f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0 + 1, i446:0 + 1, i34:0) :|: i446:0 > 0 && i446:0 <= i34:0 && i446:0 < 1 && i493:0 > 0 && i34:0 > -1 && i493:1 > 1 - i493:1 * div && 1 - i493:1 * div + i493:1 > 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) :|: i446:0 <= i34:0 && i446:0 <= i445:0 && i445:0 - i446:0 >= 1 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 < 1 && i445:0 <= i34:0 && i34:0 > -1 f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0 + 1, i446:0 + 1, i34:0) :|: i446:0 <= i34:0 && i446:0 <= i445:0 && i445:0 - i446:0 >= 1 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 < 1 && i445:0 <= i34:0 && i34:0 > -1 && i651:0 > i469:2 - i651:0 * div && i469:2 - i651:0 * div + i651:0 > 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) :|: i446:0 <= i34:0 && i446:0 > 0 && i460:0 > 0 && i34:0 > -1 && i460:1 > 0 f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0 + 1, i446:0 + 1, i34:0) :|: i446:0 <= i34:0 && i446:0 > 0 && i460:0 > 0 && i34:0 > -1 && i460:1 > 0 && i642:0 > i460:2 - i642:0 * div && i460:2 - i642:0 * div + i642:0 > 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) :|: i446:0 <= i34:0 && i446:0 <= i445:0 && i502:0 > 0 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 > 0 && i445:0 <= i34:0 && i34:0 > -1 f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0 + 1, i446:0 + 1, i34:0) :|: i446:0 <= i34:0 && i446:0 <= i445:0 && i502:0 > 0 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 > 0 && i445:0 <= i34:0 && i34:0 > -1 && i660:0 > i469:2 - i660:0 * div && i469:2 - i660:0 * div + i660:0 > 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, 0, 0, i34:0) -> f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, 0, 0, i34:0) :|: i34:0 > -1 f6378_0_main_GT'(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, 0, 0, i34:0) -> f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, 1, 1, i34:0) :|: i34:0 > -1 && i645:0 > 1 - i645:0 * div && 1 - i645:0 * div + i645:0 > 0 Removed following non-SCC rules: f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f8411_0_fact_Load(EOS(STATIC_8411), i446:0 - i445:0, i446:0 - i445:0) :|: i446:0 <= i34:0 && i484:0 > 0 && i460:1 > 0 && i446:0 > i445:0 && i446:0 - i445:0 >= 1 && i445:0 > 0 && i446:0 > 0 && i460:0 > 0 && i445:0 <= i34:0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f8335_0_fact_Load(EOS(STATIC_8335), i446:0, i446:0) :|: i446:0 <= i34:0 && i446:0 > i445:0 && i445:0 <= i34:0 && i446:0 > 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f8571_0_fact_Load(EOS(STATIC_8571), i446:0, i446:0) :|: i446:0 <= i34:0 && i446:0 <= i445:0 && i445:0 > 0 && i469:0 > 0 && i445:0 <= i34:0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, arith, arith, i34:0) -> f8375_0_fact_Load(EOS(STATIC_8375), arith, arith) :|: i34:0 >= arith && arith > 0 && i460:0 > 0 && i34:0 > -1 && i460:1 > 0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f8351_0_fact_Load(EOS(STATIC_8351), i445:0, i445:0) :|: i446:0 <= i34:0 && i446:0 > i445:0 && i446:0 > 0 && i460:0 > 0 && i445:0 <= i34:0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f8451_0_fact_Load(EOS(STATIC_8451), i445:0, i445:0) :|: i446:0 <= i34:0 && i446:0 <= i445:0 && i445:0 <= i34:0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f8633_0_fact_Load(EOS(STATIC_8633), i445:0 - i446:0, i445:0 - i446:0) :|: i446:0 <= i34:0 && i446:0 <= i445:0 && i502:0 > 0 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 > 0 && i445:0 <= i34:0 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f8495_0_fact_Load(EOS(STATIC_8495), 0 - i446:0, 0 - i446:0) :|: i446:0 <= i34:0 && i446:0 < 1 && i34:0 > -1 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f8541_0_fact_Load(EOS(STATIC_8541), 0 - i446:0, 0 - i446:0) :|: i446:0 > 0 && i446:0 <= i34:0 && i446:0 < 1 && i493:0 > 0 && i34:0 > -1 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), 0, i446:0, i446:0, i34:0) -> f8471_0_fact_Load(EOS(STATIC_8471), i446:0, i446:0) :|: i446:0 <= i34:0 && i446:0 < 1 && i34:0 > -1 f6378_0_main_GT(EOS(STATIC_6378), java.lang.Object(ARRAY(i34:0)), java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i446:0, i34:0) -> f8595_0_fact_Load(EOS(STATIC_8595), i445:0 - i446:0, i445:0 - i446:0) :|: i446:0 <= i34:0 && i446:0 <= i445:0 && i445:0 - i446:0 >= 1 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 < 1 && i445:0 <= i34:0 Filtered constant ground arguments: f6378_0_main_GT(x1, x2, x3, x4, x5, x6, x7) -> f6378_0_main_GT(x2, x3, x4, x5, x6, x7) f6378_0_main_GT'(x1, x2, x3, x4, x5, x6, x7) -> f6378_0_main_GT'(x2, x3, x4, x5, x6, x7) EOS(x1) -> EOS Filtered duplicate arguments: f6378_0_main_GT(x1, x2, x3, x4, x5, x6) -> f6378_0_main_GT(x2, x3, x5, x6) f6378_0_main_GT'(x1, x2, x3, x4, x5, x6) -> f6378_0_main_GT'(x2, x3, x5, x6) Finished conversion. Obtained 15 rules.P rules: f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), 0, i446:0, i34:0, i34:0) :|: i446:0 < 1 && i34:0 > -1 && i446:0 <= i34:0 && cons_0 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), 0, i446:0 + 1, i34:0, i34:0) :|: i446:0 < 1 && i446:0 <= i34:0 && i34:0 > -1 && 1 - i645:0 * div + i645:0 > 0 && i645:0 > 1 - i645:0 * div && cons_0 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), i445:0 + 1, 0, i34:0, i34:0) :|: i445:0 + 1 <= i34:0 && i446:0 > i34:0 && i34:0 > -1 f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) :|: i484:0 > 0 && i446:0 <= i34:0 && i460:1 > 0 && i446:0 > i445:0 && i446:0 - i445:0 >= 1 && i445:0 > 0 && i446:0 > 0 && i460:0 > 0 && i34:0 > -1 && i445:0 <= i34:0 f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0 + 1, i34:0, i34:0) :|: i484:0 > 0 && i446:0 <= i34:0 && i460:1 > 0 && i446:0 > i445:0 && i446:0 - i445:0 >= 1 && i445:0 > 0 && i446:0 > 0 && i460:0 > 0 && i445:0 <= i34:0 && i34:0 > -1 && i460:2 - i643:0 * div + i643:0 > 0 && i643:0 > i460:2 - i643:0 * div f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), 0, i446:0, i34:0, i34:0) :|: i446:0 <= i34:0 && i446:0 > 0 && i446:0 < 1 && i34:0 > -1 && i493:0 > 0 && cons_0 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), 0, i446:0 + 1, i34:0, i34:0) :|: i446:0 <= i34:0 && i446:0 > 0 && i446:0 < 1 && i493:0 > 0 && i34:0 > -1 && 1 - i493:1 * div + i493:1 > 0 && i493:1 > 1 - i493:1 * div && cons_0 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) :|: i446:0 <= i445:0 && i446:0 <= i34:0 && i445:0 - i446:0 >= 1 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 < 1 && i34:0 > -1 && i445:0 <= i34:0 f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0 + 1, i34:0, i34:0) :|: i446:0 <= i445:0 && i446:0 <= i34:0 && i445:0 - i446:0 >= 1 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 < 1 && i445:0 <= i34:0 && i34:0 > -1 && i469:2 - i651:0 * div + i651:0 > 0 && i651:0 > i469:2 - i651:0 * div f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), 0, i446:0, i34:0, i34:0) :|: i446:0 > 0 && i446:0 <= i34:0 && i460:0 > 0 && i460:1 > 0 && i34:0 > -1 && cons_0 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), 0, i446:0 + 1, i34:0, i34:0) :|: i446:0 > 0 && i446:0 <= i34:0 && i460:0 > 0 && i34:0 > -1 && i460:1 > 0 && i460:2 - i642:0 * div + i642:0 > 0 && i642:0 > i460:2 - i642:0 * div && cons_0 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) :|: i446:0 <= i445:0 && i446:0 <= i34:0 && i502:0 > 0 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 > 0 && i34:0 > -1 && i445:0 <= i34:0 f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0, i34:0, i34:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), i445:0, i446:0 + 1, i34:0, i34:0) :|: i446:0 <= i445:0 && i446:0 <= i34:0 && i502:0 > 0 && i469:1 > 0 && i445:0 > 0 && i469:0 > 0 && i446:0 > 0 && i445:0 <= i34:0 && i34:0 > -1 && i469:2 - i660:0 * div + i660:0 > 0 && i660:0 > i469:2 - i660:0 * div f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), cons_0, cons_01, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), 0, 0, i34:0, i34:0) :|: i34:0 > -1 && cons_0 = 0 && cons_01 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), cons_0, cons_01, i34:0, i34:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), 0, 1, i34:0, i34:0) :|: i645:0 > 1 - i645:0 * div && 1 - i645:0 * div + i645:0 > 0 && i34:0 > -1 && cons_0 = 0 && cons_01 = 0 ---------------------------------------- (22) Obligation: Rules: f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), 0, i446:0, i34:0, i34:0) :|: i446:0 < 1 && i34:0 > -1 && i446:0 <= i34:0 && cons_0 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x)), x1, x2, x, x) -> f6378_0_main_GT(java.lang.Object(ARRAY(x)), 0, x2 + 1, x, x) :|: x2 < 1 && x2 <= x && x > -1 && 1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x1 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(x5)), x6, x7, x5, x5) -> f6378_0_main_GT(java.lang.Object(ARRAY(x5)), x6 + 1, 0, x5, x5) :|: x6 + 1 <= x5 && x7 > x5 && x5 > -1 f6378_0_main_GT(java.lang.Object(ARRAY(x8)), x9, x10, x8, x8) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x8)), x9, x10, x8, x8) :|: x11 > 0 && x10 <= x8 && x12 > 0 && x10 > x9 && x10 - x9 >= 1 && x9 > 0 && x10 > 0 && x13 > 0 && x8 > -1 && x9 <= x8 f6378_0_main_GT'(java.lang.Object(ARRAY(x14)), x15, x16, x14, x14) -> f6378_0_main_GT(java.lang.Object(ARRAY(x14)), x15, x16 + 1, x14, x14) :|: x17 > 0 && x16 <= x14 && x18 > 0 && x16 > x15 && x16 - x15 >= 1 && x15 > 0 && x16 > 0 && x19 > 0 && x15 <= x14 && x14 > -1 && x20 - x21 * x22 + x21 > 0 && x21 > x20 - x21 * x22 f6378_0_main_GT(java.lang.Object(ARRAY(x23)), x24, x25, x23, x23) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x23)), 0, x25, x23, x23) :|: x25 <= x23 && x25 > 0 && x25 < 1 && x23 > -1 && x26 > 0 && x24 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x27)), x28, x29, x27, x27) -> f6378_0_main_GT(java.lang.Object(ARRAY(x27)), 0, x29 + 1, x27, x27) :|: x29 <= x27 && x29 > 0 && x29 < 1 && x30 > 0 && x27 > -1 && 1 - x31 * x32 + x31 > 0 && x31 > 1 - x31 * x32 && x28 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(x33)), x34, x35, x33, x33) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x33)), x34, x35, x33, x33) :|: x35 <= x34 && x35 <= x33 && x34 - x35 >= 1 && x36 > 0 && x34 > 0 && x37 > 0 && x35 < 1 && x33 > -1 && x34 <= x33 f6378_0_main_GT'(java.lang.Object(ARRAY(x38)), x39, x40, x38, x38) -> f6378_0_main_GT(java.lang.Object(ARRAY(x38)), x39, x40 + 1, x38, x38) :|: x40 <= x39 && x40 <= x38 && x39 - x40 >= 1 && x41 > 0 && x39 > 0 && x42 > 0 && x40 < 1 && x39 <= x38 && x38 > -1 && x43 - x44 * x45 + x44 > 0 && x44 > x43 - x44 * x45 f6378_0_main_GT(java.lang.Object(ARRAY(x46)), x47, x48, x46, x46) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x46)), 0, x48, x46, x46) :|: x48 > 0 && x48 <= x46 && x49 > 0 && x50 > 0 && x46 > -1 && x47 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x51)), x52, x53, x51, x51) -> f6378_0_main_GT(java.lang.Object(ARRAY(x51)), 0, x53 + 1, x51, x51) :|: x53 > 0 && x53 <= x51 && x54 > 0 && x51 > -1 && x55 > 0 && x56 - x57 * x58 + x57 > 0 && x57 > x56 - x57 * x58 && x52 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(x59)), x60, x61, x59, x59) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x59)), x60, x61, x59, x59) :|: x61 <= x60 && x61 <= x59 && x62 > 0 && x63 > 0 && x60 > 0 && x64 > 0 && x61 > 0 && x59 > -1 && x60 <= x59 f6378_0_main_GT'(java.lang.Object(ARRAY(x65)), x66, x67, x65, x65) -> f6378_0_main_GT(java.lang.Object(ARRAY(x65)), x66, x67 + 1, x65, x65) :|: x67 <= x66 && x67 <= x65 && x68 > 0 && x69 > 0 && x66 > 0 && x70 > 0 && x67 > 0 && x66 <= x65 && x65 > -1 && x71 - x72 * x73 + x72 > 0 && x72 > x71 - x72 * x73 f6378_0_main_GT(java.lang.Object(ARRAY(x74)), x75, x76, x74, x74) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x74)), 0, 0, x74, x74) :|: x74 > -1 && x75 = 0 && x76 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x77)), x78, x79, x77, x77) -> f6378_0_main_GT(java.lang.Object(ARRAY(x77)), 0, 1, x77, x77) :|: x80 > 1 - x80 * x81 && 1 - x80 * x81 + x80 > 0 && x77 > -1 && x78 = 0 && x79 = 0 ---------------------------------------- (23) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (24) Obligation: Rules: f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), 0, i446:0, i34:0, i34:0) :|: i446:0 < 1 && i34:0 > -1 && i446:0 <= i34:0 && cons_0 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x)), x1, x2, x, x) -> f6378_0_main_GT(java.lang.Object(ARRAY(x)), 0, arith, x, x) :|: x2 < 1 && x2 <= x && x > -1 && 1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x1 = 0 && arith = x2 + 1 f6378_0_main_GT(java.lang.Object(ARRAY(x82)), x83, x84, x82, x82) -> f6378_0_main_GT(java.lang.Object(ARRAY(x82)), x85, 0, x82, x82) :|: x83 + 1 <= x82 && x84 > x82 && x82 > -1 && x85 = x83 + 1 f6378_0_main_GT(java.lang.Object(ARRAY(x8)), x9, x10, x8, x8) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x8)), x9, x10, x8, x8) :|: x11 > 0 && x10 <= x8 && x12 > 0 && x10 > x9 && x10 - x9 >= 1 && x9 > 0 && x10 > 0 && x13 > 0 && x8 > -1 && x9 <= x8 f6378_0_main_GT'(java.lang.Object(ARRAY(x86)), x87, x88, x86, x86) -> f6378_0_main_GT(java.lang.Object(ARRAY(x86)), x87, x89, x86, x86) :|: x90 > 0 && x88 <= x86 && x91 > 0 && x88 > x87 && x88 - x87 >= 1 && x87 > 0 && x88 > 0 && x92 > 0 && x87 <= x86 && x86 > -1 && x93 - x94 * x95 + x94 > 0 && x94 > x93 - x94 * x95 && x89 = x88 + 1 f6378_0_main_GT(java.lang.Object(ARRAY(x23)), x24, x25, x23, x23) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x23)), 0, x25, x23, x23) :|: x25 <= x23 && x25 > 0 && x25 < 1 && x23 > -1 && x26 > 0 && x24 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x96)), x97, x98, x96, x96) -> f6378_0_main_GT(java.lang.Object(ARRAY(x96)), 0, x99, x96, x96) :|: x98 <= x96 && x98 > 0 && x98 < 1 && x100 > 0 && x96 > -1 && 1 - x101 * x102 + x101 > 0 && x101 > 1 - x101 * x102 && x97 = 0 && x99 = x98 + 1 f6378_0_main_GT(java.lang.Object(ARRAY(x33)), x34, x35, x33, x33) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x33)), x34, x35, x33, x33) :|: x35 <= x34 && x35 <= x33 && x34 - x35 >= 1 && x36 > 0 && x34 > 0 && x37 > 0 && x35 < 1 && x33 > -1 && x34 <= x33 f6378_0_main_GT'(java.lang.Object(ARRAY(x103)), x104, x105, x103, x103) -> f6378_0_main_GT(java.lang.Object(ARRAY(x103)), x104, x106, x103, x103) :|: x105 <= x104 && x105 <= x103 && x104 - x105 >= 1 && x107 > 0 && x104 > 0 && x108 > 0 && x105 < 1 && x104 <= x103 && x103 > -1 && x109 - x110 * x111 + x110 > 0 && x110 > x109 - x110 * x111 && x106 = x105 + 1 f6378_0_main_GT(java.lang.Object(ARRAY(x46)), x47, x48, x46, x46) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x46)), 0, x48, x46, x46) :|: x48 > 0 && x48 <= x46 && x49 > 0 && x50 > 0 && x46 > -1 && x47 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x112)), x113, x114, x112, x112) -> f6378_0_main_GT(java.lang.Object(ARRAY(x112)), 0, x115, x112, x112) :|: x114 > 0 && x114 <= x112 && x116 > 0 && x112 > -1 && x117 > 0 && x118 - x119 * x120 + x119 > 0 && x119 > x118 - x119 * x120 && x113 = 0 && x115 = x114 + 1 f6378_0_main_GT(java.lang.Object(ARRAY(x59)), x60, x61, x59, x59) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x59)), x60, x61, x59, x59) :|: x61 <= x60 && x61 <= x59 && x62 > 0 && x63 > 0 && x60 > 0 && x64 > 0 && x61 > 0 && x59 > -1 && x60 <= x59 f6378_0_main_GT'(java.lang.Object(ARRAY(x121)), x122, x123, x121, x121) -> f6378_0_main_GT(java.lang.Object(ARRAY(x121)), x122, x124, x121, x121) :|: x123 <= x122 && x123 <= x121 && x125 > 0 && x126 > 0 && x122 > 0 && x127 > 0 && x123 > 0 && x122 <= x121 && x121 > -1 && x128 - x129 * x130 + x129 > 0 && x129 > x128 - x129 * x130 && x124 = x123 + 1 f6378_0_main_GT(java.lang.Object(ARRAY(x74)), x75, x76, x74, x74) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x74)), 0, 0, x74, x74) :|: x74 > -1 && x75 = 0 && x76 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x77)), x78, x79, x77, x77) -> f6378_0_main_GT(java.lang.Object(ARRAY(x77)), 0, 1, x77, x77) :|: x80 > 1 - x80 * x81 && 1 - x80 * x81 + x80 > 0 && x77 > -1 && x78 = 0 && x79 = 0 ---------------------------------------- (25) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), 0, i446:0, i34:0, i34:0) :|: i446:0 < 1 && i34:0 > -1 && i446:0 <= i34:0 && cons_0 = 0 (2) f6378_0_main_GT'(java.lang.Object(ARRAY(x)), x1, x2, x, x) -> f6378_0_main_GT(java.lang.Object(ARRAY(x)), 0, arith, x, x) :|: x2 < 1 && x2 <= x && x > -1 && 1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x1 = 0 && arith = x2 + 1 (3) f6378_0_main_GT(java.lang.Object(ARRAY(x82)), x83, x84, x82, x82) -> f6378_0_main_GT(java.lang.Object(ARRAY(x82)), x85, 0, x82, x82) :|: x83 + 1 <= x82 && x84 > x82 && x82 > -1 && x85 = x83 + 1 (4) f6378_0_main_GT(java.lang.Object(ARRAY(x8)), x9, x10, x8, x8) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x8)), x9, x10, x8, x8) :|: x11 > 0 && x10 <= x8 && x12 > 0 && x10 > x9 && x10 - x9 >= 1 && x9 > 0 && x10 > 0 && x13 > 0 && x8 > -1 && x9 <= x8 (5) f6378_0_main_GT'(java.lang.Object(ARRAY(x86)), x87, x88, x86, x86) -> f6378_0_main_GT(java.lang.Object(ARRAY(x86)), x87, x89, x86, x86) :|: x90 > 0 && x88 <= x86 && x91 > 0 && x88 > x87 && x88 - x87 >= 1 && x87 > 0 && x88 > 0 && x92 > 0 && x87 <= x86 && x86 > -1 && x93 - x94 * x95 + x94 > 0 && x94 > x93 - x94 * x95 && x89 = x88 + 1 (6) f6378_0_main_GT(java.lang.Object(ARRAY(x23)), x24, x25, x23, x23) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x23)), 0, x25, x23, x23) :|: x25 <= x23 && x25 > 0 && x25 < 1 && x23 > -1 && x26 > 0 && x24 = 0 (7) f6378_0_main_GT'(java.lang.Object(ARRAY(x96)), x97, x98, x96, x96) -> f6378_0_main_GT(java.lang.Object(ARRAY(x96)), 0, x99, x96, x96) :|: x98 <= x96 && x98 > 0 && x98 < 1 && x100 > 0 && x96 > -1 && 1 - x101 * x102 + x101 > 0 && x101 > 1 - x101 * x102 && x97 = 0 && x99 = x98 + 1 (8) f6378_0_main_GT(java.lang.Object(ARRAY(x33)), x34, x35, x33, x33) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x33)), x34, x35, x33, x33) :|: x35 <= x34 && x35 <= x33 && x34 - x35 >= 1 && x36 > 0 && x34 > 0 && x37 > 0 && x35 < 1 && x33 > -1 && x34 <= x33 (9) f6378_0_main_GT'(java.lang.Object(ARRAY(x103)), x104, x105, x103, x103) -> f6378_0_main_GT(java.lang.Object(ARRAY(x103)), x104, x106, x103, x103) :|: x105 <= x104 && x105 <= x103 && x104 - x105 >= 1 && x107 > 0 && x104 > 0 && x108 > 0 && x105 < 1 && x104 <= x103 && x103 > -1 && x109 - x110 * x111 + x110 > 0 && x110 > x109 - x110 * x111 && x106 = x105 + 1 (10) f6378_0_main_GT(java.lang.Object(ARRAY(x46)), x47, x48, x46, x46) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x46)), 0, x48, x46, x46) :|: x48 > 0 && x48 <= x46 && x49 > 0 && x50 > 0 && x46 > -1 && x47 = 0 (11) f6378_0_main_GT'(java.lang.Object(ARRAY(x112)), x113, x114, x112, x112) -> f6378_0_main_GT(java.lang.Object(ARRAY(x112)), 0, x115, x112, x112) :|: x114 > 0 && x114 <= x112 && x116 > 0 && x112 > -1 && x117 > 0 && x118 - x119 * x120 + x119 > 0 && x119 > x118 - x119 * x120 && x113 = 0 && x115 = x114 + 1 (12) f6378_0_main_GT(java.lang.Object(ARRAY(x59)), x60, x61, x59, x59) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x59)), x60, x61, x59, x59) :|: x61 <= x60 && x61 <= x59 && x62 > 0 && x63 > 0 && x60 > 0 && x64 > 0 && x61 > 0 && x59 > -1 && x60 <= x59 (13) f6378_0_main_GT'(java.lang.Object(ARRAY(x121)), x122, x123, x121, x121) -> f6378_0_main_GT(java.lang.Object(ARRAY(x121)), x122, x124, x121, x121) :|: x123 <= x122 && x123 <= x121 && x125 > 0 && x126 > 0 && x122 > 0 && x127 > 0 && x123 > 0 && x122 <= x121 && x121 > -1 && x128 - x129 * x130 + x129 > 0 && x129 > x128 - x129 * x130 && x124 = x123 + 1 (14) f6378_0_main_GT(java.lang.Object(ARRAY(x74)), x75, x76, x74, x74) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x74)), 0, 0, x74, x74) :|: x74 > -1 && x75 = 0 && x76 = 0 (15) f6378_0_main_GT'(java.lang.Object(ARRAY(x77)), x78, x79, x77, x77) -> f6378_0_main_GT(java.lang.Object(ARRAY(x77)), 0, 1, x77, x77) :|: x80 > 1 - x80 * x81 && 1 - x80 * x81 + x80 > 0 && x77 > -1 && x78 = 0 && x79 = 0 Arcs: (1) -> (2), (15) (2) -> (1), (10), (14) (3) -> (1), (8), (14) (4) -> (5) (5) -> (3), (4) (8) -> (9) (9) -> (8), (12) (10) -> (11) (11) -> (3), (10) (12) -> (13) (13) -> (4), (12) (14) -> (2), (15) (15) -> (10) This digraph is fully evaluated! ---------------------------------------- (26) Obligation: Termination digraph: Nodes: (1) f6378_0_main_GT(java.lang.Object(ARRAY(i34:0)), cons_0, i446:0, i34:0, i34:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0)), 0, i446:0, i34:0, i34:0) :|: i446:0 < 1 && i34:0 > -1 && i446:0 <= i34:0 && cons_0 = 0 (2) f6378_0_main_GT'(java.lang.Object(ARRAY(x)), x1, x2, x, x) -> f6378_0_main_GT(java.lang.Object(ARRAY(x)), 0, arith, x, x) :|: x2 < 1 && x2 <= x && x > -1 && 1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x1 = 0 && arith = x2 + 1 (3) f6378_0_main_GT(java.lang.Object(ARRAY(x74)), x75, x76, x74, x74) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x74)), 0, 0, x74, x74) :|: x74 > -1 && x75 = 0 && x76 = 0 (4) f6378_0_main_GT(java.lang.Object(ARRAY(x82)), x83, x84, x82, x82) -> f6378_0_main_GT(java.lang.Object(ARRAY(x82)), x85, 0, x82, x82) :|: x83 + 1 <= x82 && x84 > x82 && x82 > -1 && x85 = x83 + 1 (5) f6378_0_main_GT'(java.lang.Object(ARRAY(x112)), x113, x114, x112, x112) -> f6378_0_main_GT(java.lang.Object(ARRAY(x112)), 0, x115, x112, x112) :|: x114 > 0 && x114 <= x112 && x116 > 0 && x112 > -1 && x117 > 0 && x118 - x119 * x120 + x119 > 0 && x119 > x118 - x119 * x120 && x113 = 0 && x115 = x114 + 1 (6) f6378_0_main_GT(java.lang.Object(ARRAY(x46)), x47, x48, x46, x46) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x46)), 0, x48, x46, x46) :|: x48 > 0 && x48 <= x46 && x49 > 0 && x50 > 0 && x46 > -1 && x47 = 0 (7) f6378_0_main_GT'(java.lang.Object(ARRAY(x77)), x78, x79, x77, x77) -> f6378_0_main_GT(java.lang.Object(ARRAY(x77)), 0, 1, x77, x77) :|: x80 > 1 - x80 * x81 && 1 - x80 * x81 + x80 > 0 && x77 > -1 && x78 = 0 && x79 = 0 (8) f6378_0_main_GT'(java.lang.Object(ARRAY(x86)), x87, x88, x86, x86) -> f6378_0_main_GT(java.lang.Object(ARRAY(x86)), x87, x89, x86, x86) :|: x90 > 0 && x88 <= x86 && x91 > 0 && x88 > x87 && x88 - x87 >= 1 && x87 > 0 && x88 > 0 && x92 > 0 && x87 <= x86 && x86 > -1 && x93 - x94 * x95 + x94 > 0 && x94 > x93 - x94 * x95 && x89 = x88 + 1 (9) f6378_0_main_GT(java.lang.Object(ARRAY(x8)), x9, x10, x8, x8) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x8)), x9, x10, x8, x8) :|: x11 > 0 && x10 <= x8 && x12 > 0 && x10 > x9 && x10 - x9 >= 1 && x9 > 0 && x10 > 0 && x13 > 0 && x8 > -1 && x9 <= x8 (10) f6378_0_main_GT'(java.lang.Object(ARRAY(x121)), x122, x123, x121, x121) -> f6378_0_main_GT(java.lang.Object(ARRAY(x121)), x122, x124, x121, x121) :|: x123 <= x122 && x123 <= x121 && x125 > 0 && x126 > 0 && x122 > 0 && x127 > 0 && x123 > 0 && x122 <= x121 && x121 > -1 && x128 - x129 * x130 + x129 > 0 && x129 > x128 - x129 * x130 && x124 = x123 + 1 (11) f6378_0_main_GT(java.lang.Object(ARRAY(x59)), x60, x61, x59, x59) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x59)), x60, x61, x59, x59) :|: x61 <= x60 && x61 <= x59 && x62 > 0 && x63 > 0 && x60 > 0 && x64 > 0 && x61 > 0 && x59 > -1 && x60 <= x59 (12) f6378_0_main_GT'(java.lang.Object(ARRAY(x103)), x104, x105, x103, x103) -> f6378_0_main_GT(java.lang.Object(ARRAY(x103)), x104, x106, x103, x103) :|: x105 <= x104 && x105 <= x103 && x104 - x105 >= 1 && x107 > 0 && x104 > 0 && x108 > 0 && x105 < 1 && x104 <= x103 && x103 > -1 && x109 - x110 * x111 + x110 > 0 && x110 > x109 - x110 * x111 && x106 = x105 + 1 (13) f6378_0_main_GT(java.lang.Object(ARRAY(x33)), x34, x35, x33, x33) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x33)), x34, x35, x33, x33) :|: x35 <= x34 && x35 <= x33 && x34 - x35 >= 1 && x36 > 0 && x34 > 0 && x37 > 0 && x35 < 1 && x33 > -1 && x34 <= x33 Arcs: (1) -> (2), (7) (2) -> (1), (3), (6) (3) -> (2), (7) (4) -> (1), (3), (13) (5) -> (4), (6) (6) -> (5) (7) -> (6) (8) -> (4), (9) (9) -> (8) (10) -> (9), (11) (11) -> (10) (12) -> (11), (13) (13) -> (12) This digraph is fully evaluated! ---------------------------------------- (27) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (28) Obligation: Rules: f6378_0_main_GT(java.lang.Object(ARRAY(x8:0)), x9:0, x10:0, x8:0, x8:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x8:0)), x9:0, x10:0, x8:0, x8:0) :|: x8:0 > -1 && x9:0 <= x8:0 && x13:0 > 0 && x10:0 > 0 && x9:0 > 0 && x10:0 - x9:0 >= 1 && x9:0 < x10:0 && x12:0 > 0 && x8:0 >= x10:0 && x11:0 > 0 f6378_0_main_GT(java.lang.Object(ARRAY(x33:0)), x34:0, x35:0, x33:0, x33:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x33:0)), x34:0, x35:0, x33:0, x33:0) :|: x33:0 > -1 && x34:0 <= x33:0 && x35:0 < 1 && x37:0 > 0 && x34:0 > 0 && x36:0 > 0 && x34:0 - x35:0 >= 1 && x35:0 <= x33:0 && x35:0 <= x34:0 f6378_0_main_GT(java.lang.Object(ARRAY(i34:0:0)), cons_0, i446:0:0, i34:0:0, i34:0:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(i34:0:0)), 0, i446:0:0, i34:0:0, i34:0:0) :|: i446:0:0 < 1 && i34:0:0 > -1 && i446:0:0 <= i34:0:0 && cons_0 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x)), x1, x2, x, x) -> f6378_0_main_GT(java.lang.Object(ARRAY(x)), 0, x2 + 1, x, x) :|: 1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x > -1 && x >= x2 && x2 < 1 && x1 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(x59:0)), x60:0, x61:0, x59:0, x59:0) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x59:0)), x60:0, x61:0, x59:0, x59:0) :|: x59:0 > -1 && x60:0 <= x59:0 && x61:0 > 0 && x64:0 > 0 && x60:0 > 0 && x63:0 > 0 && x62:0 > 0 && x61:0 <= x59:0 && x61:0 <= x60:0 f6378_0_main_GT'(java.lang.Object(ARRAY(x5)), x6, x7, x5, x5) -> f6378_0_main_GT(java.lang.Object(ARRAY(x5)), 0, 1, x5, x5) :|: x8 > 1 - x8 * x9 && 1 - x8 * x9 + x8 > 0 && x5 > -1 && x6 = 0 && x7 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x86:0)), x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(x86:0)), x87:0, x88:0 + 1, x86:0, x86:0) :|: x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0 f6378_0_main_GT(java.lang.Object(ARRAY(x82:0)), x83:0, x84:0, x82:0, x82:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(x82:0)), x83:0 + 1, 0, x82:0, x82:0) :|: x83:0 + 1 <= x82:0 && x84:0 > x82:0 && x82:0 > -1 f6378_0_main_GT'(java.lang.Object(ARRAY(x121:0)), x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(x121:0)), x122:0, x123:0 + 1, x121:0, x121:0) :|: x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0 f6378_0_main_GT'(java.lang.Object(ARRAY(x10)), x11, x12, x10, x10) -> f6378_0_main_GT(java.lang.Object(ARRAY(x10)), 0, x12 + 1, x10, x10) :|: x13 - x14 * x15 + x14 > 0 && x14 > x13 - x14 * x15 && x16 > 0 && x10 > -1 && x17 > 0 && x12 <= x10 && x12 > 0 && x11 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(x18)), x19, x20, x18, x18) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x18)), 0, 0, x18, x18) :|: x18 > -1 && x19 = 0 && x20 = 0 f6378_0_main_GT(java.lang.Object(ARRAY(x21)), x22, x23, x21, x21) -> f6378_0_main_GT'(java.lang.Object(ARRAY(x21)), 0, x23, x21, x21) :|: x24 > 0 && x21 > -1 && x25 > 0 && x23 <= x21 && x23 > 0 && x22 = 0 f6378_0_main_GT'(java.lang.Object(ARRAY(x103:0)), x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(java.lang.Object(ARRAY(x103:0)), x104:0, x105:0 + 1, x103:0, x103:0) :|: x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0 ---------------------------------------- (29) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f6378_0_main_GT(VARIABLE, VARIABLE, VARIABLE, INTEGER, INTEGER) java.lang.Object(VARIABLE) ARRAY(INTEGER) f6378_0_main_GT'(VARIABLE, VARIABLE, VARIABLE, INTEGER, INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (30) Obligation: Rules: f6378_0_main_GT(c, x9:0, x10:0, x8:0, x8:0) -> f6378_0_main_GT'(c1, x9:0, x10:0, x8:0, x8:0) :|: c1 = 0 && c = 0 && (x8:0 > -1 && x9:0 <= x8:0 && x13:0 > 0 && x10:0 > 0 && x9:0 > 0 && x10:0 - x9:0 >= 1 && x9:0 < x10:0 && x12:0 > 0 && x8:0 >= x10:0 && x11:0 > 0) f6378_0_main_GT(c2, x34:0, x35:0, x33:0, x33:0) -> f6378_0_main_GT'(c3, x34:0, x35:0, x33:0, x33:0) :|: c3 = 0 && c2 = 0 && (x33:0 > -1 && x34:0 <= x33:0 && x35:0 < 1 && x37:0 > 0 && x34:0 > 0 && x36:0 > 0 && x34:0 - x35:0 >= 1 && x35:0 <= x33:0 && x35:0 <= x34:0) f6378_0_main_GT(c4, c5, i446:0:0, i34:0:0, i34:0:0) -> f6378_0_main_GT'(c6, c7, i446:0:0, i34:0:0, i34:0:0) :|: c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)) && (i446:0:0 < 1 && i34:0:0 > -1 && i446:0:0 <= i34:0:0 && cons_0 = 0) f6378_0_main_GT'(c8, c9, x2, x, x) -> f6378_0_main_GT(c10, c11, c12, x, x) :|: c12 = x2 + 1 && (c11 = 0 && (c10 = 0 && (c9 = 0 && c8 = 0))) && (1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x > -1 && x >= x2 && x2 < 1 && x1 = 0) f6378_0_main_GT(c13, x60:0, x61:0, x59:0, x59:0) -> f6378_0_main_GT'(c14, x60:0, x61:0, x59:0, x59:0) :|: c14 = 0 && c13 = 0 && (x59:0 > -1 && x60:0 <= x59:0 && x61:0 > 0 && x64:0 > 0 && x60:0 > 0 && x63:0 > 0 && x62:0 > 0 && x61:0 <= x59:0 && x61:0 <= x60:0) f6378_0_main_GT'(c15, c16, c17, x5, x5) -> f6378_0_main_GT(c18, c19, c20, x5, x5) :|: c20 = 1 && (c19 = 0 && (c18 = 0 && (c17 = 0 && (c16 = 0 && c15 = 0)))) && (x8 > 1 - x8 * x9 && 1 - x8 * x9 + x8 > 0 && x5 > -1 && x6 = 0 && x7 = 0) f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) f6378_0_main_GT(c24, x83:0, x84:0, x82:0, x82:0) -> f6378_0_main_GT(c25, c26, c27, x82:0, x82:0) :|: c27 = 0 && (c26 = x83:0 + 1 && (c25 = 0 && c24 = 0)) && (x83:0 + 1 <= x82:0 && x84:0 > x82:0 && x82:0 > -1) f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c31, c32, x12, x10, x10) -> f6378_0_main_GT(c33, c34, c35, x10, x10) :|: c35 = x12 + 1 && (c34 = 0 && (c33 = 0 && (c32 = 0 && c31 = 0))) && (x13 - x14 * x15 + x14 > 0 && x14 > x13 - x14 * x15 && x16 > 0 && x10 > -1 && x17 > 0 && x12 <= x10 && x12 > 0 && x11 = 0) f6378_0_main_GT(c36, c37, c38, x18, x18) -> f6378_0_main_GT'(c39, c40, c41, x18, x18) :|: c41 = 0 && (c40 = 0 && (c39 = 0 && (c38 = 0 && (c37 = 0 && c36 = 0)))) && (x18 > -1 && x19 = 0 && x20 = 0) f6378_0_main_GT(c42, c43, x23, x21, x21) -> f6378_0_main_GT'(c44, c45, x23, x21, x21) :|: c45 = 0 && (c44 = 0 && (c43 = 0 && c42 = 0)) && (x24 > 0 && x21 > -1 && x25 > 0 && x23 <= x21 && x23 > 0 && x22 = 0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) ---------------------------------------- (31) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6378_0_main_GT(x, x1, x2, x3, x4)] = c*x - x1 + x3 [f6378_0_main_GT'(x5, x6, x7, x8, x9)] = c5*x5 - x6 + x9 The following rules are decreasing: f6378_0_main_GT(c24, x83:0, x84:0, x82:0, x82:0) -> f6378_0_main_GT(c25, c26, c27, x82:0, x82:0) :|: c27 = 0 && (c26 = x83:0 + 1 && (c25 = 0 && c24 = 0)) && (x83:0 + 1 <= x82:0 && x84:0 > x82:0 && x82:0 > -1) The following rules are bounded: f6378_0_main_GT(c, x9:0, x10:0, x8:0, x8:0) -> f6378_0_main_GT'(c1, x9:0, x10:0, x8:0, x8:0) :|: c1 = 0 && c = 0 && (x8:0 > -1 && x9:0 <= x8:0 && x13:0 > 0 && x10:0 > 0 && x9:0 > 0 && x10:0 - x9:0 >= 1 && x9:0 < x10:0 && x12:0 > 0 && x8:0 >= x10:0 && x11:0 > 0) f6378_0_main_GT(c4, c5, i446:0:0, i34:0:0, i34:0:0) -> f6378_0_main_GT'(c6, c7, i446:0:0, i34:0:0, i34:0:0) :|: c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)) && (i446:0:0 < 1 && i34:0:0 > -1 && i446:0:0 <= i34:0:0 && cons_0 = 0) f6378_0_main_GT(c13, x60:0, x61:0, x59:0, x59:0) -> f6378_0_main_GT'(c14, x60:0, x61:0, x59:0, x59:0) :|: c14 = 0 && c13 = 0 && (x59:0 > -1 && x60:0 <= x59:0 && x61:0 > 0 && x64:0 > 0 && x60:0 > 0 && x63:0 > 0 && x62:0 > 0 && x61:0 <= x59:0 && x61:0 <= x60:0) f6378_0_main_GT'(c15, c16, c17, x5, x5) -> f6378_0_main_GT(c18, c19, c20, x5, x5) :|: c20 = 1 && (c19 = 0 && (c18 = 0 && (c17 = 0 && (c16 = 0 && c15 = 0)))) && (x8 > 1 - x8 * x9 && 1 - x8 * x9 + x8 > 0 && x5 > -1 && x6 = 0 && x7 = 0) f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) f6378_0_main_GT(c24, x83:0, x84:0, x82:0, x82:0) -> f6378_0_main_GT(c25, c26, c27, x82:0, x82:0) :|: c27 = 0 && (c26 = x83:0 + 1 && (c25 = 0 && c24 = 0)) && (x83:0 + 1 <= x82:0 && x84:0 > x82:0 && x82:0 > -1) f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c31, c32, x12, x10, x10) -> f6378_0_main_GT(c33, c34, c35, x10, x10) :|: c35 = x12 + 1 && (c34 = 0 && (c33 = 0 && (c32 = 0 && c31 = 0))) && (x13 - x14 * x15 + x14 > 0 && x14 > x13 - x14 * x15 && x16 > 0 && x10 > -1 && x17 > 0 && x12 <= x10 && x12 > 0 && x11 = 0) f6378_0_main_GT(c36, c37, c38, x18, x18) -> f6378_0_main_GT'(c39, c40, c41, x18, x18) :|: c41 = 0 && (c40 = 0 && (c39 = 0 && (c38 = 0 && (c37 = 0 && c36 = 0)))) && (x18 > -1 && x19 = 0 && x20 = 0) f6378_0_main_GT(c42, c43, x23, x21, x21) -> f6378_0_main_GT'(c44, c45, x23, x21, x21) :|: c45 = 0 && (c44 = 0 && (c43 = 0 && c42 = 0)) && (x24 > 0 && x21 > -1 && x25 > 0 && x23 <= x21 && x23 > 0 && x22 = 0) ---------------------------------------- (32) Obligation: Rules: f6378_0_main_GT(c, x9:0, x10:0, x8:0, x8:0) -> f6378_0_main_GT'(c1, x9:0, x10:0, x8:0, x8:0) :|: c1 = 0 && c = 0 && (x8:0 > -1 && x9:0 <= x8:0 && x13:0 > 0 && x10:0 > 0 && x9:0 > 0 && x10:0 - x9:0 >= 1 && x9:0 < x10:0 && x12:0 > 0 && x8:0 >= x10:0 && x11:0 > 0) f6378_0_main_GT(c2, x34:0, x35:0, x33:0, x33:0) -> f6378_0_main_GT'(c3, x34:0, x35:0, x33:0, x33:0) :|: c3 = 0 && c2 = 0 && (x33:0 > -1 && x34:0 <= x33:0 && x35:0 < 1 && x37:0 > 0 && x34:0 > 0 && x36:0 > 0 && x34:0 - x35:0 >= 1 && x35:0 <= x33:0 && x35:0 <= x34:0) f6378_0_main_GT(c4, c5, i446:0:0, i34:0:0, i34:0:0) -> f6378_0_main_GT'(c6, c7, i446:0:0, i34:0:0, i34:0:0) :|: c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)) && (i446:0:0 < 1 && i34:0:0 > -1 && i446:0:0 <= i34:0:0 && cons_0 = 0) f6378_0_main_GT'(c8, c9, x2, x, x) -> f6378_0_main_GT(c10, c11, c12, x, x) :|: c12 = x2 + 1 && (c11 = 0 && (c10 = 0 && (c9 = 0 && c8 = 0))) && (1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x > -1 && x >= x2 && x2 < 1 && x1 = 0) f6378_0_main_GT(c13, x60:0, x61:0, x59:0, x59:0) -> f6378_0_main_GT'(c14, x60:0, x61:0, x59:0, x59:0) :|: c14 = 0 && c13 = 0 && (x59:0 > -1 && x60:0 <= x59:0 && x61:0 > 0 && x64:0 > 0 && x60:0 > 0 && x63:0 > 0 && x62:0 > 0 && x61:0 <= x59:0 && x61:0 <= x60:0) f6378_0_main_GT'(c15, c16, c17, x5, x5) -> f6378_0_main_GT(c18, c19, c20, x5, x5) :|: c20 = 1 && (c19 = 0 && (c18 = 0 && (c17 = 0 && (c16 = 0 && c15 = 0)))) && (x8 > 1 - x8 * x9 && 1 - x8 * x9 + x8 > 0 && x5 > -1 && x6 = 0 && x7 = 0) f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c31, c32, x12, x10, x10) -> f6378_0_main_GT(c33, c34, c35, x10, x10) :|: c35 = x12 + 1 && (c34 = 0 && (c33 = 0 && (c32 = 0 && c31 = 0))) && (x13 - x14 * x15 + x14 > 0 && x14 > x13 - x14 * x15 && x16 > 0 && x10 > -1 && x17 > 0 && x12 <= x10 && x12 > 0 && x11 = 0) f6378_0_main_GT(c36, c37, c38, x18, x18) -> f6378_0_main_GT'(c39, c40, c41, x18, x18) :|: c41 = 0 && (c40 = 0 && (c39 = 0 && (c38 = 0 && (c37 = 0 && c36 = 0)))) && (x18 > -1 && x19 = 0 && x20 = 0) f6378_0_main_GT(c42, c43, x23, x21, x21) -> f6378_0_main_GT'(c44, c45, x23, x21, x21) :|: c45 = 0 && (c44 = 0 && (c43 = 0 && c42 = 0)) && (x24 > 0 && x21 > -1 && x25 > 0 && x23 <= x21 && x23 > 0 && x22 = 0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) ---------------------------------------- (33) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6378_0_main_GT(x, x1, x2, x3, x4)] = 1 + c*x - x2 + x3 [f6378_0_main_GT'(x5, x6, x7, x8, x9)] = c5*x5 - x7 + x8 The following rules are decreasing: f6378_0_main_GT(c, x9:0, x10:0, x8:0, x8:0) -> f6378_0_main_GT'(c1, x9:0, x10:0, x8:0, x8:0) :|: c1 = 0 && c = 0 && (x8:0 > -1 && x9:0 <= x8:0 && x13:0 > 0 && x10:0 > 0 && x9:0 > 0 && x10:0 - x9:0 >= 1 && x9:0 < x10:0 && x12:0 > 0 && x8:0 >= x10:0 && x11:0 > 0) f6378_0_main_GT(c2, x34:0, x35:0, x33:0, x33:0) -> f6378_0_main_GT'(c3, x34:0, x35:0, x33:0, x33:0) :|: c3 = 0 && c2 = 0 && (x33:0 > -1 && x34:0 <= x33:0 && x35:0 < 1 && x37:0 > 0 && x34:0 > 0 && x36:0 > 0 && x34:0 - x35:0 >= 1 && x35:0 <= x33:0 && x35:0 <= x34:0) f6378_0_main_GT(c4, c5, i446:0:0, i34:0:0, i34:0:0) -> f6378_0_main_GT'(c6, c7, i446:0:0, i34:0:0, i34:0:0) :|: c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)) && (i446:0:0 < 1 && i34:0:0 > -1 && i446:0:0 <= i34:0:0 && cons_0 = 0) f6378_0_main_GT(c13, x60:0, x61:0, x59:0, x59:0) -> f6378_0_main_GT'(c14, x60:0, x61:0, x59:0, x59:0) :|: c14 = 0 && c13 = 0 && (x59:0 > -1 && x60:0 <= x59:0 && x61:0 > 0 && x64:0 > 0 && x60:0 > 0 && x63:0 > 0 && x62:0 > 0 && x61:0 <= x59:0 && x61:0 <= x60:0) f6378_0_main_GT(c36, c37, c38, x18, x18) -> f6378_0_main_GT'(c39, c40, c41, x18, x18) :|: c41 = 0 && (c40 = 0 && (c39 = 0 && (c38 = 0 && (c37 = 0 && c36 = 0)))) && (x18 > -1 && x19 = 0 && x20 = 0) f6378_0_main_GT(c42, c43, x23, x21, x21) -> f6378_0_main_GT'(c44, c45, x23, x21, x21) :|: c45 = 0 && (c44 = 0 && (c43 = 0 && c42 = 0)) && (x24 > 0 && x21 > -1 && x25 > 0 && x23 <= x21 && x23 > 0 && x22 = 0) The following rules are bounded: f6378_0_main_GT(c, x9:0, x10:0, x8:0, x8:0) -> f6378_0_main_GT'(c1, x9:0, x10:0, x8:0, x8:0) :|: c1 = 0 && c = 0 && (x8:0 > -1 && x9:0 <= x8:0 && x13:0 > 0 && x10:0 > 0 && x9:0 > 0 && x10:0 - x9:0 >= 1 && x9:0 < x10:0 && x12:0 > 0 && x8:0 >= x10:0 && x11:0 > 0) f6378_0_main_GT(c2, x34:0, x35:0, x33:0, x33:0) -> f6378_0_main_GT'(c3, x34:0, x35:0, x33:0, x33:0) :|: c3 = 0 && c2 = 0 && (x33:0 > -1 && x34:0 <= x33:0 && x35:0 < 1 && x37:0 > 0 && x34:0 > 0 && x36:0 > 0 && x34:0 - x35:0 >= 1 && x35:0 <= x33:0 && x35:0 <= x34:0) f6378_0_main_GT(c4, c5, i446:0:0, i34:0:0, i34:0:0) -> f6378_0_main_GT'(c6, c7, i446:0:0, i34:0:0, i34:0:0) :|: c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)) && (i446:0:0 < 1 && i34:0:0 > -1 && i446:0:0 <= i34:0:0 && cons_0 = 0) f6378_0_main_GT'(c8, c9, x2, x, x) -> f6378_0_main_GT(c10, c11, c12, x, x) :|: c12 = x2 + 1 && (c11 = 0 && (c10 = 0 && (c9 = 0 && c8 = 0))) && (1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x > -1 && x >= x2 && x2 < 1 && x1 = 0) f6378_0_main_GT(c13, x60:0, x61:0, x59:0, x59:0) -> f6378_0_main_GT'(c14, x60:0, x61:0, x59:0, x59:0) :|: c14 = 0 && c13 = 0 && (x59:0 > -1 && x60:0 <= x59:0 && x61:0 > 0 && x64:0 > 0 && x60:0 > 0 && x63:0 > 0 && x62:0 > 0 && x61:0 <= x59:0 && x61:0 <= x60:0) f6378_0_main_GT'(c15, c16, c17, x5, x5) -> f6378_0_main_GT(c18, c19, c20, x5, x5) :|: c20 = 1 && (c19 = 0 && (c18 = 0 && (c17 = 0 && (c16 = 0 && c15 = 0)))) && (x8 > 1 - x8 * x9 && 1 - x8 * x9 + x8 > 0 && x5 > -1 && x6 = 0 && x7 = 0) f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c31, c32, x12, x10, x10) -> f6378_0_main_GT(c33, c34, c35, x10, x10) :|: c35 = x12 + 1 && (c34 = 0 && (c33 = 0 && (c32 = 0 && c31 = 0))) && (x13 - x14 * x15 + x14 > 0 && x14 > x13 - x14 * x15 && x16 > 0 && x10 > -1 && x17 > 0 && x12 <= x10 && x12 > 0 && x11 = 0) f6378_0_main_GT(c36, c37, c38, x18, x18) -> f6378_0_main_GT'(c39, c40, c41, x18, x18) :|: c41 = 0 && (c40 = 0 && (c39 = 0 && (c38 = 0 && (c37 = 0 && c36 = 0)))) && (x18 > -1 && x19 = 0 && x20 = 0) f6378_0_main_GT(c42, c43, x23, x21, x21) -> f6378_0_main_GT'(c44, c45, x23, x21, x21) :|: c45 = 0 && (c44 = 0 && (c43 = 0 && c42 = 0)) && (x24 > 0 && x21 > -1 && x25 > 0 && x23 <= x21 && x23 > 0 && x22 = 0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) ---------------------------------------- (34) Obligation: Rules: f6378_0_main_GT'(c8, c9, x2, x, x) -> f6378_0_main_GT(c10, c11, c12, x, x) :|: c12 = x2 + 1 && (c11 = 0 && (c10 = 0 && (c9 = 0 && c8 = 0))) && (1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x > -1 && x >= x2 && x2 < 1 && x1 = 0) f6378_0_main_GT'(c15, c16, c17, x5, x5) -> f6378_0_main_GT(c18, c19, c20, x5, x5) :|: c20 = 1 && (c19 = 0 && (c18 = 0 && (c17 = 0 && (c16 = 0 && c15 = 0)))) && (x8 > 1 - x8 * x9 && 1 - x8 * x9 + x8 > 0 && x5 > -1 && x6 = 0 && x7 = 0) f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c31, c32, x12, x10, x10) -> f6378_0_main_GT(c33, c34, c35, x10, x10) :|: c35 = x12 + 1 && (c34 = 0 && (c33 = 0 && (c32 = 0 && c31 = 0))) && (x13 - x14 * x15 + x14 > 0 && x14 > x13 - x14 * x15 && x16 > 0 && x10 > -1 && x17 > 0 && x12 <= x10 && x12 > 0 && x11 = 0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) ---------------------------------------- (35) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6378_0_main_GT'(x, x1, x2, x3, x4)] = c*x + 2*x1 - x2 + x3 [f6378_0_main_GT(x5, x6, x7, x8, x9)] = c5*x5 + 2*x6 - x7 + x9 The following rules are decreasing: f6378_0_main_GT'(c8, c9, x2, x, x) -> f6378_0_main_GT(c10, c11, c12, x, x) :|: c12 = x2 + 1 && (c11 = 0 && (c10 = 0 && (c9 = 0 && c8 = 0))) && (1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x > -1 && x >= x2 && x2 < 1 && x1 = 0) f6378_0_main_GT'(c15, c16, c17, x5, x5) -> f6378_0_main_GT(c18, c19, c20, x5, x5) :|: c20 = 1 && (c19 = 0 && (c18 = 0 && (c17 = 0 && (c16 = 0 && c15 = 0)))) && (x8 > 1 - x8 * x9 && 1 - x8 * x9 + x8 > 0 && x5 > -1 && x6 = 0 && x7 = 0) f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c31, c32, x12, x10, x10) -> f6378_0_main_GT(c33, c34, c35, x10, x10) :|: c35 = x12 + 1 && (c34 = 0 && (c33 = 0 && (c32 = 0 && c31 = 0))) && (x13 - x14 * x15 + x14 > 0 && x14 > x13 - x14 * x15 && x16 > 0 && x10 > -1 && x17 > 0 && x12 <= x10 && x12 > 0 && x11 = 0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) The following rules are bounded: f6378_0_main_GT'(c8, c9, x2, x, x) -> f6378_0_main_GT(c10, c11, c12, x, x) :|: c12 = x2 + 1 && (c11 = 0 && (c10 = 0 && (c9 = 0 && c8 = 0))) && (1 - x3 * x4 + x3 > 0 && x3 > 1 - x3 * x4 && x > -1 && x >= x2 && x2 < 1 && x1 = 0) f6378_0_main_GT'(c15, c16, c17, x5, x5) -> f6378_0_main_GT(c18, c19, c20, x5, x5) :|: c20 = 1 && (c19 = 0 && (c18 = 0 && (c17 = 0 && (c16 = 0 && c15 = 0)))) && (x8 > 1 - x8 * x9 && 1 - x8 * x9 + x8 > 0 && x5 > -1 && x6 = 0 && x7 = 0) f6378_0_main_GT'(c31, c32, x12, x10, x10) -> f6378_0_main_GT(c33, c34, c35, x10, x10) :|: c35 = x12 + 1 && (c34 = 0 && (c33 = 0 && (c32 = 0 && c31 = 0))) && (x13 - x14 * x15 + x14 > 0 && x14 > x13 - x14 * x15 && x16 > 0 && x10 > -1 && x17 > 0 && x12 <= x10 && x12 > 0 && x11 = 0) ---------------------------------------- (36) Obligation: Rules: f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) ---------------------------------------- (37) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6378_0_main_GT'(x, x1, x2, x3, x4)] = -1 + c*x + x3 [f6378_0_main_GT(x5, x6, x7, x8, x9)] = c5*x5 The following rules are decreasing: f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) The following rules are bounded: f6378_0_main_GT'(c21, x87:0, x88:0, x86:0, x86:0) -> f6378_0_main_GT(c22, x87:0, c23, x86:0, x86:0) :|: c23 = x88:0 + 1 && (c22 = 0 && c21 = 0) && (x93:0 - x94:0 * x95:0 + x94:0 > 0 && x94:0 > x93:0 - x94:0 * x95:0 && x86:0 > -1 && x87:0 <= x86:0 && x92:0 > 0 && x88:0 > 0 && x87:0 > 0 && x88:0 - x87:0 >= 1 && x88:0 > x87:0 && x91:0 > 0 && x88:0 <= x86:0 && x90:0 > 0) f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) ---------------------------------------- (38) Obligation: Rules: f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) ---------------------------------------- (39) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f6378_0_main_GT' ] = 0 [ f6378_0_main_GT ] = -1 The following rules are decreasing: f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) The following rules are bounded: f6378_0_main_GT'(c28, x122:0, x123:0, x121:0, x121:0) -> f6378_0_main_GT(c29, x122:0, c30, x121:0, x121:0) :|: c30 = x123:0 + 1 && (c29 = 0 && c28 = 0) && (x128:0 - x129:0 * x130:0 + x129:0 > 0 && x129:0 > x128:0 - x129:0 * x130:0 && x121:0 > -1 && x122:0 <= x121:0 && x123:0 > 0 && x127:0 > 0 && x122:0 > 0 && x126:0 > 0 && x125:0 > 0 && x123:0 <= x121:0 && x123:0 <= x122:0) f6378_0_main_GT'(c46, x104:0, x105:0, x103:0, x103:0) -> f6378_0_main_GT(c47, x104:0, c48, x103:0, x103:0) :|: c48 = x105:0 + 1 && (c47 = 0 && c46 = 0) && (x109:0 - x110:0 * x111:0 + x110:0 > 0 && x110:0 > x109:0 - x110:0 * x111:0 && x103:0 > -1 && x104:0 <= x103:0 && x105:0 < 1 && x108:0 > 0 && x104:0 > 0 && x107:0 > 0 && x104:0 - x105:0 >= 1 && x105:0 <= x103:0 && x105:0 <= x104:0) ---------------------------------------- (40) YES