/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: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty termination of the given Bare JBC problem could be proven: (0) Bare JBC problem (1) BareJBCToJBCProof [EQUIVALENT, 96 ms] (2) JBC problem (3) JBCToGraph [EQUIVALENT, 1999 ms] (4) JBCTerminationGraph (5) TerminationGraphToSCCProof [SOUND, 23 ms] (6) AND (7) JBCTerminationSCC (8) SCCToIRSProof [SOUND, 181 ms] (9) IRSwT (10) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (11) IRSwT (12) IRSwTTerminationDigraphProof [EQUIVALENT, 173 ms] (13) IRSwT (14) IntTRSCompressionProof [EQUIVALENT, 0 ms] (15) IRSwT (16) TempFilterProof [SOUND, 12 ms] (17) IntTRS (18) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (19) YES (20) JBCTerminationSCC (21) SCCToIRSProof [SOUND, 104 ms] (22) IRSwT (23) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (24) IRSwT (25) IRSwTTerminationDigraphProof [EQUIVALENT, 47 ms] (26) IRSwT (27) IntTRSCompressionProof [EQUIVALENT, 0 ms] (28) IRSwT (29) TempFilterProof [SOUND, 36 ms] (30) IntTRS (31) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (32) IntTRS (33) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (34) YES (35) JBCTerminationSCC (36) SCCToIRSProof [SOUND, 271 ms] (37) IRSwT (38) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (39) IRSwT (40) IRSwTTerminationDigraphProof [EQUIVALENT, 392 ms] (41) IRSwT (42) IntTRSCompressionProof [EQUIVALENT, 1 ms] (43) IRSwT (44) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (45) IRSwT (46) TempFilterProof [SOUND, 349 ms] (47) IntTRS (48) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (49) AND (50) IntTRS (51) PolynomialOrderProcessor [EQUIVALENT, 28 ms] (52) AND (53) IntTRS (54) RankingReductionPairProof [EQUIVALENT, 0 ms] (55) YES (56) IntTRS (57) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (58) IntTRS (59) PolynomialOrderProcessor [EQUIVALENT, 7 ms] (60) YES (61) IntTRS (62) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (63) IntTRS (64) PolynomialOrderProcessor [EQUIVALENT, 9 ms] (65) IntTRS (66) RankingReductionPairProof [EQUIVALENT, 0 ms] (67) YES (68) JBCTerminationSCC (69) SCCToIRSProof [SOUND, 104 ms] (70) IRSwT (71) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (72) IRSwT (73) IRSwTTerminationDigraphProof [EQUIVALENT, 59 ms] (74) IRSwT (75) IntTRSCompressionProof [EQUIVALENT, 0 ms] (76) IRSwT (77) TempFilterProof [SOUND, 25 ms] (78) IntTRS (79) PolynomialOrderProcessor [EQUIVALENT, 17 ms] (80) YES ---------------------------------------- (0) Obligation: need to prove termination of the following program: class KnapsackDP { static int nbObjects; static int [] weight={2,3,5,2,4,6,3,1}; static int [] utility={5,8,14,6,13,17,10,4}; static int weightmax=12; static int [] [] array; // Display the table static void consoleDisplay() { int i,j; for(i=0;i=1;i--) { if (array[i][w]!=array[i-1][w]) { //System.out.print((i+1)+" "); w=w-weight[i]; u=u+utility[i]; } } if (array[0][w]!=0); { //System.out.println("1"); w=w-weight[0]; u=u+utility[0]; } //System.out.println("Cross check:"+u+" remaining weight "+w); } static int max(int a, int b) { //if (a>b) return a; else return b; return ( (a>b) ? (a) : (b) ); } static void SolveDP() { int i,j; array=new int[nbObjects][weightmax+1]; // initialize the first row for(j=0;j<=weightmax;j++) if (j=1;i--) { if (array[i][w]!=array[i-1][w]) { //System.out.print((i+1)+" "); w=w-weight[i]; u=u+utility[i]; } } if (array[0][w]!=0); { //System.out.println("1"); w=w-weight[0]; u=u+utility[0]; } //System.out.println("Cross check:"+u+" remaining weight "+w); } static int max(int a, int b) { //if (a>b) return a; else return b; return ( (a>b) ? (a) : (b) ); } static void SolveDP() { int i,j; array=new int[nbObjects][weightmax+1]; // initialize the first row for(j=0;j<=weightmax;j++) if (j f5678_0_InterpretArray_LT(EOS(STATIC_5678(o3990, o3991, java.lang.Object(ARRAY(i2687)))), java.lang.Object(ARRAY(i2687)), i2689, i2691, i2689, 1) :|: TRUE f5678_0_InterpretArray_LT(EOS(STATIC_5678(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, i2705, matching1) -> f5696_0_InterpretArray_LT(EOS(STATIC_5696(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, i2705, 1) :|: TRUE && matching1 = 1 f5696_0_InterpretArray_LT(EOS(STATIC_5696(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, i2705, matching1) -> f5712_0_InterpretArray_FieldAccess(EOS(STATIC_5712(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691) :|: i2705 >= 1 && matching1 = 1 f5712_0_InterpretArray_FieldAccess(EOS(STATIC_5712(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691) -> f5722_0_InterpretArray_Load(EOS(STATIC_5722(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(ARRAY(i2706))) :|: TRUE f5722_0_InterpretArray_Load(EOS(STATIC_5722(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(ARRAY(i2706))) -> f5740_0_InterpretArray_ArrayAccess(EOS(STATIC_5740(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(ARRAY(i2706)), i2705) :|: TRUE f5740_0_InterpretArray_ArrayAccess(EOS(STATIC_5740(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(ARRAY(i2706)), i2705) -> f5756_0_InterpretArray_ArrayAccess(EOS(STATIC_5756(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(ARRAY(i2706)), i2705) :|: TRUE f5756_0_InterpretArray_ArrayAccess(EOS(STATIC_5756(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(ARRAY(i2706)), i2705) -> f5768_0_InterpretArray_Load(EOS(STATIC_5768(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, o4149) :|: i2705 < i2706 f5768_0_InterpretArray_Load(EOS(STATIC_5768(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, o4149) -> f5784_0_InterpretArray_ArrayAccess(EOS(STATIC_5784(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, o4149, i2691) :|: TRUE f5784_0_InterpretArray_ArrayAccess(EOS(STATIC_5784(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(o4234put), i2691) -> f5801_0_InterpretArray_ArrayAccess(EOS(STATIC_5801(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(o4234put), i2691) :|: TRUE f5801_0_InterpretArray_ArrayAccess(EOS(STATIC_5801(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(ARRAY(i2748)), i2691) -> f5809_0_InterpretArray_ArrayAccess(EOS(STATIC_5809(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2691, java.lang.Object(ARRAY(i2748)), i2691) :|: i2748 >= 0 f5809_0_InterpretArray_ArrayAccess(EOS(STATIC_5809(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i2748)), i2752) -> f5816_0_InterpretArray_ArrayAccess(EOS(STATIC_5816(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i2748)), i2752) :|: TRUE f5816_0_InterpretArray_ArrayAccess(EOS(STATIC_5816(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i2748)), i2752) -> f5824_0_InterpretArray_ArrayAccess(EOS(STATIC_5824(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i2748)), i2752) :|: TRUE f5824_0_InterpretArray_ArrayAccess(EOS(STATIC_5824(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i2748)), i2752) -> f5834_0_InterpretArray_FieldAccess(EOS(STATIC_5834(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762) :|: i2752 < i2748 f5834_0_InterpretArray_FieldAccess(EOS(STATIC_5834(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762) -> f5844_0_InterpretArray_Load(EOS(STATIC_5844(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706))) :|: TRUE f5844_0_InterpretArray_Load(EOS(STATIC_5844(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706))) -> f5854_0_InterpretArray_ConstantStackPush(EOS(STATIC_5854(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706)), i2705) :|: TRUE f5854_0_InterpretArray_ConstantStackPush(EOS(STATIC_5854(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706)), i2705) -> f5864_0_InterpretArray_IntArithmetic(EOS(STATIC_5864(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706)), i2705, 1) :|: TRUE f5864_0_InterpretArray_IntArithmetic(EOS(STATIC_5864(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706)), i2705, matching1) -> f5872_0_InterpretArray_ArrayAccess(EOS(STATIC_5872(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706)), i2705 - 1) :|: i2705 > 0 && matching1 = 1 f5872_0_InterpretArray_ArrayAccess(EOS(STATIC_5872(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706)), i2804) -> f5881_0_InterpretArray_ArrayAccess(EOS(STATIC_5881(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706)), i2804) :|: TRUE f5881_0_InterpretArray_ArrayAccess(EOS(STATIC_5881(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2706)), i2804) -> f5893_0_InterpretArray_Load(EOS(STATIC_5893(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, o4419) :|: i2804 < i2706 f5893_0_InterpretArray_Load(EOS(STATIC_5893(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, o4419) -> f5904_0_InterpretArray_ArrayAccess(EOS(STATIC_5904(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, o4419, i2752) :|: TRUE f5904_0_InterpretArray_ArrayAccess(EOS(STATIC_5904(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(o4500put), i2752) -> f5915_0_InterpretArray_ArrayAccess(EOS(STATIC_5915(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(o4500put), i2752) :|: TRUE f5915_0_InterpretArray_ArrayAccess(EOS(STATIC_5915(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2897)), i2752) -> f5929_0_InterpretArray_ArrayAccess(EOS(STATIC_5929(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2897)), i2752) :|: i2897 >= 0 f5929_0_InterpretArray_ArrayAccess(EOS(STATIC_5929(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2897)), i2752) -> f5944_0_InterpretArray_ArrayAccess(EOS(STATIC_5944(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2897)), i2752) :|: TRUE f5944_0_InterpretArray_ArrayAccess(EOS(STATIC_5944(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, java.lang.Object(ARRAY(i2897)), i2752) -> f5959_0_InterpretArray_EQ(EOS(STATIC_5959(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, i2974) :|: i2752 < i2897 f5959_0_InterpretArray_EQ(EOS(STATIC_5959(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2974, i2974) -> f5975_0_InterpretArray_EQ(EOS(STATIC_5975(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2974, i2974) :|: i2762 = i2974 f5959_0_InterpretArray_EQ(EOS(STATIC_5959(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, i2974) -> f5976_0_InterpretArray_EQ(EOS(STATIC_5976(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, i2974) :|: !(i2762 = i2974) f5975_0_InterpretArray_EQ(EOS(STATIC_5975(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2974, i2974) -> f5991_0_InterpretArray_Inc(EOS(STATIC_5991(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752) :|: TRUE f5991_0_InterpretArray_Inc(EOS(STATIC_5991(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752) -> f6009_0_InterpretArray_JMP(EOS(STATIC_6009(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705 + -1, i2752) :|: TRUE f6009_0_InterpretArray_JMP(EOS(STATIC_6009(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i3092, i2752) -> f6031_0_InterpretArray_Load(EOS(STATIC_6031(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i3092, i2752) :|: TRUE f6031_0_InterpretArray_Load(EOS(STATIC_6031(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i3092, i2752) -> f5658_0_InterpretArray_Load(EOS(STATIC_5658(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i3092, i2752) :|: TRUE f5658_0_InterpretArray_Load(EOS(STATIC_5658(o3990, o3991, java.lang.Object(ARRAY(i2687)))), java.lang.Object(ARRAY(i2687)), i2689, i2691) -> f5669_0_InterpretArray_ConstantStackPush(EOS(STATIC_5669(o3990, o3991, java.lang.Object(ARRAY(i2687)))), java.lang.Object(ARRAY(i2687)), i2689, i2691, i2689) :|: TRUE f5976_0_InterpretArray_EQ(EOS(STATIC_5976(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i2762, i2974) -> f5992_0_InterpretArray_Load(EOS(STATIC_5992(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752) :|: !(i2762 = i2974) f5992_0_InterpretArray_Load(EOS(STATIC_5992(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752) -> f6010_0_InterpretArray_FieldAccess(EOS(STATIC_6010(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752) :|: TRUE f6010_0_InterpretArray_FieldAccess(EOS(STATIC_6010(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752) -> f6032_0_InterpretArray_Load(EOS(STATIC_6032(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, o3990) :|: TRUE f6032_0_InterpretArray_Load(EOS(STATIC_6032(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, o3990) -> f6049_0_InterpretArray_ArrayAccess(EOS(STATIC_6049(o3990, o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, o3990, i2705) :|: TRUE f6049_0_InterpretArray_ArrayAccess(EOS(STATIC_6049(java.lang.Object(o5212put), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(o5212put), i2705) -> f6068_0_InterpretArray_ArrayAccess(EOS(STATIC_6068(java.lang.Object(o5212put), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(o5212put), i2705) :|: TRUE f6068_0_InterpretArray_ArrayAccess(EOS(STATIC_6068(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i3347)), i2705) -> f6091_0_InterpretArray_ArrayAccess(EOS(STATIC_6091(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i3347)), i2705) :|: i3347 >= 0 f6091_0_InterpretArray_ArrayAccess(EOS(STATIC_6091(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i3347)), i2705) -> f6110_0_InterpretArray_ArrayAccess(EOS(STATIC_6110(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i3347)), i2705) :|: TRUE f6110_0_InterpretArray_ArrayAccess(EOS(STATIC_6110(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, java.lang.Object(ARRAY(i3347)), i2705) -> f6131_0_InterpretArray_IntArithmetic(EOS(STATIC_6131(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i3492) :|: i2705 < i3347 f6131_0_InterpretArray_IntArithmetic(EOS(STATIC_6131(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752, i3492) -> f6157_0_InterpretArray_Store(EOS(STATIC_6157(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i2752 - i3492) :|: i2752 >= 0 f6157_0_InterpretArray_Store(EOS(STATIC_6157(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) -> f6177_0_InterpretArray_Load(EOS(STATIC_6177(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) :|: TRUE f6177_0_InterpretArray_Load(EOS(STATIC_6177(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) -> f6196_0_InterpretArray_FieldAccess(EOS(STATIC_6196(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) :|: TRUE f6196_0_InterpretArray_FieldAccess(EOS(STATIC_6196(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) -> f6220_0_InterpretArray_Load(EOS(STATIC_6220(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, o3991) :|: TRUE f6220_0_InterpretArray_Load(EOS(STATIC_6220(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, o3991) -> f6241_0_InterpretArray_ArrayAccess(EOS(STATIC_6241(java.lang.Object(ARRAY(i3347)), o3991, java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, o3991, i2705) :|: TRUE f6241_0_InterpretArray_ArrayAccess(EOS(STATIC_6241(java.lang.Object(ARRAY(i3347)), java.lang.Object(o6264put), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, java.lang.Object(o6264put), i2705) -> f6261_0_InterpretArray_ArrayAccess(EOS(STATIC_6261(java.lang.Object(ARRAY(i3347)), java.lang.Object(o6264put), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, java.lang.Object(o6264put), i2705) :|: TRUE f6261_0_InterpretArray_ArrayAccess(EOS(STATIC_6261(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, java.lang.Object(ARRAY(i4058)), i2705) -> f6291_0_InterpretArray_ArrayAccess(EOS(STATIC_6291(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, java.lang.Object(ARRAY(i4058)), i2705) :|: i4058 >= 0 f6291_0_InterpretArray_ArrayAccess(EOS(STATIC_6291(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, java.lang.Object(ARRAY(i4058)), i2705) -> f6315_0_InterpretArray_ArrayAccess(EOS(STATIC_6315(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, java.lang.Object(ARRAY(i4058)), i2705) :|: TRUE f6315_0_InterpretArray_ArrayAccess(EOS(STATIC_6315(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566, java.lang.Object(ARRAY(i4058)), i2705) -> f6334_0_InterpretArray_IntArithmetic(EOS(STATIC_6334(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) :|: i2705 < i4058 f6334_0_InterpretArray_IntArithmetic(EOS(STATIC_6334(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) -> f6362_0_InterpretArray_Store(EOS(STATIC_6362(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) :|: TRUE f6362_0_InterpretArray_Store(EOS(STATIC_6362(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) -> f6384_0_InterpretArray_Inc(EOS(STATIC_6384(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) :|: TRUE f6384_0_InterpretArray_Inc(EOS(STATIC_6384(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705, i3566) -> f6402_0_InterpretArray_JMP(EOS(STATIC_6402(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i2705 + -1, i3566) :|: TRUE f6402_0_InterpretArray_JMP(EOS(STATIC_6402(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i4558, i3566) -> f6426_0_InterpretArray_Load(EOS(STATIC_6426(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i4558, i3566) :|: TRUE f6426_0_InterpretArray_Load(EOS(STATIC_6426(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i4558, i3566) -> f5658_0_InterpretArray_Load(EOS(STATIC_5658(java.lang.Object(ARRAY(i3347)), java.lang.Object(ARRAY(i4058)), java.lang.Object(ARRAY(i2706)))), java.lang.Object(ARRAY(i2706)), i4558, i3566) :|: TRUE Combined rules. Obtained 3 IRulesP rules: f5669_0_InterpretArray_ConstantStackPush(EOS(STATIC_5669(o3990:0, o3991:0, java.lang.Object(ARRAY(i2687:0)))), java.lang.Object(ARRAY(i2687:0)), i2689:0, i2691:0, i2689:0) -> f5669_0_InterpretArray_ConstantStackPush(EOS(STATIC_5669(o3990:0, o3991:0, java.lang.Object(ARRAY(i2687:0)))), java.lang.Object(ARRAY(i2687:0)), i2689:0 - 1, i2691:0, i2689:0 - 1) :|: i2689:0 > 0 && i2689:0 < i2687:0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > i2691:0 && i2897:0 > -1 f5669_0_InterpretArray_ConstantStackPush(EOS(STATIC_5669(java.lang.Object(ARRAY(i3347:0)), java.lang.Object(ARRAY(i4058:0)), java.lang.Object(ARRAY(i2687:0)))), java.lang.Object(ARRAY(i2687:0)), i2689:0, i2691:0, i2689:0) -> f5669_0_InterpretArray_ConstantStackPush(EOS(STATIC_5669(java.lang.Object(ARRAY(i3347:0)), java.lang.Object(ARRAY(i4058:0)), java.lang.Object(ARRAY(i2687:0)))), java.lang.Object(ARRAY(i2687:0)), i2689:0 - 1, i2691:0 - i3492:0, i2689:0 - 1) :|: i2689:0 > 0 && i2689:0 < i2687:0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 && i2974:0 > i2762:0 && i3347:0 > -1 && i3347:0 > i2689:0 && i2691:0 > -1 && i4058:0 > i2689:0 && i4058:0 > -1 f5669_0_InterpretArray_ConstantStackPush(EOS(STATIC_5669(java.lang.Object(ARRAY(i3347:0)), java.lang.Object(ARRAY(i4058:0)), java.lang.Object(ARRAY(i2687:0)))), java.lang.Object(ARRAY(i2687:0)), i2689:0, i2691:0, i2689:0) -> f5669_0_InterpretArray_ConstantStackPush(EOS(STATIC_5669(java.lang.Object(ARRAY(i3347:0)), java.lang.Object(ARRAY(i4058:0)), java.lang.Object(ARRAY(i2687:0)))), java.lang.Object(ARRAY(i2687:0)), i2689:0 - 1, i2691:0 - i3492:0, i2689:0 - 1) :|: i2689:0 > 0 && i2689:0 < i2687:0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 && i2974:0 < i2762:0 && i3347:0 > -1 && i3347:0 > i2689:0 && i2691:0 > -1 && i4058:0 > i2689:0 && i4058:0 > -1 Filtered duplicate arguments: f5669_0_InterpretArray_ConstantStackPush(x1, x2, x3, x4, x5) -> f5669_0_InterpretArray_ConstantStackPush(x1, x2, x4, x5) Finished conversion. Obtained 3 rules.P rules: f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0, i2687:0, i2687:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0 - 1, i2687:0, i2687:0) :|: i2689:0 < i2687:0 && i2689:0 > 0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0, i2687:0, i2687:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0 - i3492:0, i2689:0 - 1, i2687:0, i2687:0) :|: i2689:0 < i2687:0 && i2689:0 > 0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 && i2974:0 > i2762:0 && i3347:0 > -1 && i3347:0 > i2689:0 && i2691:0 > -1 && i4058:0 > -1 && i4058:0 > i2689:0 f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0, i2687:0, i2687:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0 - i3492:0, i2689:0 - 1, i2687:0, i2687:0) :|: i2689:0 < i2687:0 && i2689:0 > 0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 && i2974:0 < i2762:0 && i3347:0 > -1 && i3347:0 > i2689:0 && i2691:0 > -1 && i4058:0 > -1 && i4058:0 > i2689:0 ---------------------------------------- (9) Obligation: Rules: f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0, i2687:0, i2687:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0 - 1, i2687:0, i2687:0) :|: i2689:0 < i2687:0 && i2689:0 > 0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x)), x1, x2, x, x) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x)), x1 - x3, x2 - 1, x, x) :|: x2 < x && x2 > 0 && x4 > -1 && x4 > x1 && x2 - 1 < x && x5 > -1 && x5 > x1 && x6 > x7 && x8 > -1 && x8 > x2 && x1 > -1 && x9 > -1 && x9 > x2 f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x10)), x11, x12, x10, x10) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x10)), x11 - x13, x12 - 1, x10, x10) :|: x12 < x10 && x12 > 0 && x14 > -1 && x14 > x11 && x12 - 1 < x10 && x15 > -1 && x15 > x11 && x16 < x17 && x18 > -1 && x18 > x12 && x11 > -1 && x19 > -1 && x19 > x12 ---------------------------------------- (10) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (11) Obligation: Rules: f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0, i2687:0, i2687:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, arith, i2687:0, i2687:0) :|: i2689:0 < i2687:0 && i2689:0 > 0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 && arith = i2689:0 - 1 f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x21, x22, x20, x20) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x23, x24, x20, x20) :|: x22 < x20 && x22 > 0 && x25 > -1 && x25 > x21 && x22 - 1 < x20 && x26 > -1 && x26 > x21 && x27 > x28 && x29 > -1 && x29 > x22 && x21 > -1 && x30 > -1 && x30 > x22 && x23 = x21 - x31 && x24 = x22 - 1 f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x33, x34, x32, x32) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x35, x36, x32, x32) :|: x34 < x32 && x34 > 0 && x37 > -1 && x37 > x33 && x34 - 1 < x32 && x38 > -1 && x38 > x33 && x39 < x40 && x41 > -1 && x41 > x34 && x33 > -1 && x42 > -1 && x42 > x34 && x35 = x33 - x43 && x36 = x34 - 1 ---------------------------------------- (12) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0, i2687:0, i2687:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, arith, i2687:0, i2687:0) :|: i2689:0 < i2687:0 && i2689:0 > 0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 && arith = i2689:0 - 1 (2) f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x21, x22, x20, x20) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x23, x24, x20, x20) :|: x22 < x20 && x22 > 0 && x25 > -1 && x25 > x21 && x22 - 1 < x20 && x26 > -1 && x26 > x21 && x27 > x28 && x29 > -1 && x29 > x22 && x21 > -1 && x30 > -1 && x30 > x22 && x23 = x21 - x31 && x24 = x22 - 1 (3) f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x33, x34, x32, x32) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x35, x36, x32, x32) :|: x34 < x32 && x34 > 0 && x37 > -1 && x37 > x33 && x34 - 1 < x32 && x38 > -1 && x38 > x33 && x39 < x40 && x41 > -1 && x41 > x34 && x33 > -1 && x42 > -1 && x42 > x34 && x35 = x33 - x43 && x36 = x34 - 1 Arcs: (1) -> (1), (2), (3) (2) -> (1), (2), (3) (3) -> (1), (2), (3) This digraph is fully evaluated! ---------------------------------------- (13) Obligation: Termination digraph: Nodes: (1) f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, i2689:0, i2687:0, i2687:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0)), i2691:0, arith, i2687:0, i2687:0) :|: i2689:0 < i2687:0 && i2689:0 > 0 && i2748:0 > -1 && i2748:0 > i2691:0 && i2689:0 - 1 < i2687:0 && i2897:0 > -1 && i2897:0 > i2691:0 && arith = i2689:0 - 1 (2) f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x21, x22, x20, x20) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x23, x24, x20, x20) :|: x22 < x20 && x22 > 0 && x25 > -1 && x25 > x21 && x22 - 1 < x20 && x26 > -1 && x26 > x21 && x27 > x28 && x29 > -1 && x29 > x22 && x21 > -1 && x30 > -1 && x30 > x22 && x23 = x21 - x31 && x24 = x22 - 1 (3) f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x33, x34, x32, x32) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x35, x36, x32, x32) :|: x34 < x32 && x34 > 0 && x37 > -1 && x37 > x33 && x34 - 1 < x32 && x38 > -1 && x38 > x33 && x39 < x40 && x41 > -1 && x41 > x34 && x33 > -1 && x42 > -1 && x42 > x34 && x35 = x33 - x43 && x36 = x34 - 1 Arcs: (1) -> (1), (2), (3) (2) -> (1), (2), (3) (3) -> (1), (2), (3) This digraph is fully evaluated! ---------------------------------------- (14) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (15) Obligation: Rules: f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0:0)), i2691:0:0, i2689:0:0, i2687:0:0, i2687:0:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2687:0:0)), i2691:0:0, i2689:0:0 - 1, i2687:0:0, i2687:0:0) :|: i2897:0:0 > -1 && i2897:0:0 > i2691:0:0 && i2689:0:0 - 1 < i2687:0:0 && i2748:0:0 > i2691:0:0 && i2748:0:0 > -1 && i2689:0:0 > 0 && i2689:0:0 < i2687:0:0 f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32:0)), x33:0, x34:0, x32:0, x32:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32:0)), x33:0 - x43:0, x34:0 - 1, x32:0, x32:0) :|: x42:0 > -1 && x42:0 > x34:0 && x33:0 > -1 && x41:0 > x34:0 && x41:0 > -1 && x40:0 > x39:0 && x38:0 > x33:0 && x38:0 > -1 && x34:0 - 1 < x32:0 && x37:0 > x33:0 && x37:0 > -1 && x34:0 > 0 && x34:0 < x32:0 f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20:0)), x21:0, x22:0, x20:0, x20:0) -> f5669_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20:0)), x21:0 - x31:0, x22:0 - 1, x20:0, x20:0) :|: x30:0 > -1 && x30:0 > x22:0 && x21:0 > -1 && x29:0 > x22:0 && x29:0 > -1 && x28:0 < x27:0 && x26:0 > x21:0 && x26:0 > -1 && x22:0 - 1 < x20:0 && x25:0 > x21:0 && x25:0 > -1 && x22:0 > 0 && x22:0 < x20:0 ---------------------------------------- (16) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f5669_0_InterpretArray_ConstantStackPush(VARIABLE, INTEGER, INTEGER, INTEGER, INTEGER) java.lang.Object(VARIABLE) ARRAY(INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (17) Obligation: Rules: f5669_0_InterpretArray_ConstantStackPush(c, i2691:0:0, i2689:0:0, i2687:0:0, i2687:0:0) -> f5669_0_InterpretArray_ConstantStackPush(c1, i2691:0:0, c2, i2687:0:0, i2687:0:0) :|: c2 = i2689:0:0 - 1 && (c1 = 0 && c = 0) && (i2897:0:0 > -1 && i2897:0:0 > i2691:0:0 && i2689:0:0 - 1 < i2687:0:0 && i2748:0:0 > i2691:0:0 && i2748:0:0 > -1 && i2689:0:0 > 0 && i2689:0:0 < i2687:0:0) f5669_0_InterpretArray_ConstantStackPush(c3, x33:0, x34:0, x32:0, x32:0) -> f5669_0_InterpretArray_ConstantStackPush(c4, c5, c6, x32:0, x32:0) :|: c6 = x34:0 - 1 && (c5 = x33:0 - x43:0 && (c4 = 0 && c3 = 0)) && (x42:0 > -1 && x42:0 > x34:0 && x33:0 > -1 && x41:0 > x34:0 && x41:0 > -1 && x40:0 > x39:0 && x38:0 > x33:0 && x38:0 > -1 && x34:0 - 1 < x32:0 && x37:0 > x33:0 && x37:0 > -1 && x34:0 > 0 && x34:0 < x32:0) f5669_0_InterpretArray_ConstantStackPush(c7, x21:0, x22:0, x20:0, x20:0) -> f5669_0_InterpretArray_ConstantStackPush(c8, c9, c10, x20:0, x20:0) :|: c10 = x22:0 - 1 && (c9 = x21:0 - x31:0 && (c8 = 0 && c7 = 0)) && (x30:0 > -1 && x30:0 > x22:0 && x21:0 > -1 && x29:0 > x22:0 && x29:0 > -1 && x28:0 < x27:0 && x26:0 > x21:0 && x26:0 > -1 && x22:0 - 1 < x20:0 && x25:0 > x21:0 && x25:0 > -1 && x22:0 > 0 && x22:0 < x20:0) ---------------------------------------- (18) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f5669_0_InterpretArray_ConstantStackPush(x, x1, x2, x3, x4)] = c*x + x2 The following rules are decreasing: f5669_0_InterpretArray_ConstantStackPush(c, i2691:0:0, i2689:0:0, i2687:0:0, i2687:0:0) -> f5669_0_InterpretArray_ConstantStackPush(c1, i2691:0:0, c2, i2687:0:0, i2687:0:0) :|: c2 = i2689:0:0 - 1 && (c1 = 0 && c = 0) && (i2897:0:0 > -1 && i2897:0:0 > i2691:0:0 && i2689:0:0 - 1 < i2687:0:0 && i2748:0:0 > i2691:0:0 && i2748:0:0 > -1 && i2689:0:0 > 0 && i2689:0:0 < i2687:0:0) f5669_0_InterpretArray_ConstantStackPush(c3, x33:0, x34:0, x32:0, x32:0) -> f5669_0_InterpretArray_ConstantStackPush(c4, c5, c6, x32:0, x32:0) :|: c6 = x34:0 - 1 && (c5 = x33:0 - x43:0 && (c4 = 0 && c3 = 0)) && (x42:0 > -1 && x42:0 > x34:0 && x33:0 > -1 && x41:0 > x34:0 && x41:0 > -1 && x40:0 > x39:0 && x38:0 > x33:0 && x38:0 > -1 && x34:0 - 1 < x32:0 && x37:0 > x33:0 && x37:0 > -1 && x34:0 > 0 && x34:0 < x32:0) f5669_0_InterpretArray_ConstantStackPush(c7, x21:0, x22:0, x20:0, x20:0) -> f5669_0_InterpretArray_ConstantStackPush(c8, c9, c10, x20:0, x20:0) :|: c10 = x22:0 - 1 && (c9 = x21:0 - x31:0 && (c8 = 0 && c7 = 0)) && (x30:0 > -1 && x30:0 > x22:0 && x21:0 > -1 && x29:0 > x22:0 && x29:0 > -1 && x28:0 < x27:0 && x26:0 > x21:0 && x26:0 > -1 && x22:0 - 1 < x20:0 && x25:0 > x21:0 && x25:0 > -1 && x22:0 > 0 && x22:0 < x20:0) The following rules are bounded: f5669_0_InterpretArray_ConstantStackPush(c, i2691:0:0, i2689:0:0, i2687:0:0, i2687:0:0) -> f5669_0_InterpretArray_ConstantStackPush(c1, i2691:0:0, c2, i2687:0:0, i2687:0:0) :|: c2 = i2689:0:0 - 1 && (c1 = 0 && c = 0) && (i2897:0:0 > -1 && i2897:0:0 > i2691:0:0 && i2689:0:0 - 1 < i2687:0:0 && i2748:0:0 > i2691:0:0 && i2748:0:0 > -1 && i2689:0:0 > 0 && i2689:0:0 < i2687:0:0) f5669_0_InterpretArray_ConstantStackPush(c3, x33:0, x34:0, x32:0, x32:0) -> f5669_0_InterpretArray_ConstantStackPush(c4, c5, c6, x32:0, x32:0) :|: c6 = x34:0 - 1 && (c5 = x33:0 - x43:0 && (c4 = 0 && c3 = 0)) && (x42:0 > -1 && x42:0 > x34:0 && x33:0 > -1 && x41:0 > x34:0 && x41:0 > -1 && x40:0 > x39:0 && x38:0 > x33:0 && x38:0 > -1 && x34:0 - 1 < x32:0 && x37:0 > x33:0 && x37:0 > -1 && x34:0 > 0 && x34:0 < x32:0) f5669_0_InterpretArray_ConstantStackPush(c7, x21:0, x22:0, x20:0, x20:0) -> f5669_0_InterpretArray_ConstantStackPush(c8, c9, c10, x20:0, x20:0) :|: c10 = x22:0 - 1 && (c9 = x21:0 - x31:0 && (c8 = 0 && c7 = 0)) && (x30:0 > -1 && x30:0 > x22:0 && x21:0 > -1 && x29:0 > x22:0 && x29:0 > -1 && x28:0 < x27:0 && x26:0 > x21:0 && x26:0 > -1 && x22:0 - 1 < x20:0 && x25:0 > x21:0 && x25:0 > -1 && x22:0 > 0 && x22:0 < x20:0) ---------------------------------------- (19) YES ---------------------------------------- (20) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: KnapsackDP.main([Ljava/lang/String;)V SCC calls the following helper methods: Performed SCC analyses: *Used field analysis yielded the following read fields: *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (21) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 29 IRulesP rules: f4672_0_Display_FieldAccess(EOS(STATIC_4672(i954, i955)), java.lang.Object(ARRAY(i954)), i956, i956) -> f4675_0_Display_GE(EOS(STATIC_4675(i954, i955)), java.lang.Object(ARRAY(i954)), i956, i956, i954) :|: TRUE f4675_0_Display_GE(EOS(STATIC_4675(i954, i955)), java.lang.Object(ARRAY(i954)), i956, i956, i954) -> f4689_0_Display_GE(EOS(STATIC_4689(i954, i955)), java.lang.Object(ARRAY(i954)), i956, i956, i954) :|: i956 < i954 f4689_0_Display_GE(EOS(STATIC_4689(i954, i955)), java.lang.Object(ARRAY(i954)), i956, i956, i954) -> f4701_0_Display_ConstantStackPush(EOS(STATIC_4701(i954, i955)), java.lang.Object(ARRAY(i954)), i956) :|: i956 < i954 f4701_0_Display_ConstantStackPush(EOS(STATIC_4701(i954, i955)), java.lang.Object(ARRAY(i954)), i956) -> f4710_0_Display_Store(EOS(STATIC_4710(i954, i955)), java.lang.Object(ARRAY(i954)), i956, 0) :|: TRUE f4710_0_Display_Store(EOS(STATIC_4710(i954, i955)), java.lang.Object(ARRAY(i954)), i956, matching1) -> f4714_0_Display_Load(EOS(STATIC_4714(i954, i955)), java.lang.Object(ARRAY(i954)), i956, 0) :|: TRUE && matching1 = 0 f4714_0_Display_Load(EOS(STATIC_4714(i954, i955)), java.lang.Object(ARRAY(i954)), i956, matching1) -> f4899_0_Display_Load(EOS(STATIC_4899(i954, i955)), java.lang.Object(ARRAY(i954)), i956, 0) :|: TRUE && matching1 = 0 f4899_0_Display_Load(EOS(STATIC_4899(i954, i990)), java.lang.Object(ARRAY(i954)), i956, i991) -> f5025_0_Display_Load(EOS(STATIC_5025(i954, i990)), java.lang.Object(ARRAY(i954)), i956, i991) :|: TRUE f5025_0_Display_Load(EOS(STATIC_5025(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030) -> f5046_0_Display_FieldAccess(EOS(STATIC_5046(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030) :|: TRUE f5046_0_Display_FieldAccess(EOS(STATIC_5046(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030) -> f5071_0_Display_GT(EOS(STATIC_5071(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) :|: TRUE f5071_0_Display_GT(EOS(STATIC_5071(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) -> f5088_0_Display_GT(EOS(STATIC_5088(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) :|: i1030 > i1029 f5071_0_Display_GT(EOS(STATIC_5071(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) -> f5089_0_Display_GT(EOS(STATIC_5089(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) :|: i1030 <= i1029 f5088_0_Display_GT(EOS(STATIC_5088(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) -> f5111_0_Display_Inc(EOS(STATIC_5111(i954, i1029)), java.lang.Object(ARRAY(i954)), i956) :|: i1030 > i1029 f5111_0_Display_Inc(EOS(STATIC_5111(i954, i1029)), java.lang.Object(ARRAY(i954)), i956) -> f5137_0_Display_JMP(EOS(STATIC_5137(i954, i1029)), java.lang.Object(ARRAY(i954)), i956 + 1) :|: TRUE f5137_0_Display_JMP(EOS(STATIC_5137(i954, i1029)), java.lang.Object(ARRAY(i954)), i1201) -> f5155_0_Display_Load(EOS(STATIC_5155(i954, i1029)), java.lang.Object(ARRAY(i954)), i1201) :|: TRUE f5155_0_Display_Load(EOS(STATIC_5155(i954, i1029)), java.lang.Object(ARRAY(i954)), i1201) -> f4663_0_Display_Load(EOS(STATIC_4663(i954, i1029)), java.lang.Object(ARRAY(i954)), i1201) :|: TRUE f4663_0_Display_Load(EOS(STATIC_4663(i954, i955)), java.lang.Object(ARRAY(i954)), i956) -> f4672_0_Display_FieldAccess(EOS(STATIC_4672(i954, i955)), java.lang.Object(ARRAY(i954)), i956, i956) :|: TRUE f5089_0_Display_GT(EOS(STATIC_5089(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) -> f5112_0_Display_Load(EOS(STATIC_5112(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030) :|: i1030 <= i1029 f5112_0_Display_Load(EOS(STATIC_5112(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030) -> f5138_0_Display_FieldAccess(EOS(STATIC_5138(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030) :|: TRUE f5138_0_Display_FieldAccess(EOS(STATIC_5138(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030) -> f5156_0_Display_EQ(EOS(STATIC_5156(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) :|: TRUE f5156_0_Display_EQ(EOS(STATIC_5156(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1029, i1029, i1029) -> f5174_0_Display_EQ(EOS(STATIC_5174(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1029, i1029, i1029) :|: i1030 = i1029 f5156_0_Display_EQ(EOS(STATIC_5156(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) -> f5175_0_Display_EQ(EOS(STATIC_5175(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) :|: !(i1030 = i1029) f5174_0_Display_EQ(EOS(STATIC_5174(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1029, i1029, i1029) -> f5200_0_Display_Inc(EOS(STATIC_5200(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1029) :|: TRUE f5200_0_Display_Inc(EOS(STATIC_5200(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1029) -> f5214_0_Display_JMP(EOS(STATIC_5214(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1029 + 1) :|: TRUE f5214_0_Display_JMP(EOS(STATIC_5214(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1340) -> f5222_0_Display_Load(EOS(STATIC_5222(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1340) :|: TRUE f5222_0_Display_Load(EOS(STATIC_5222(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1340) -> f5025_0_Display_Load(EOS(STATIC_5025(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1340) :|: TRUE f5175_0_Display_EQ(EOS(STATIC_5175(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030, i1030, i1029) -> f5201_0_Display_Inc(EOS(STATIC_5201(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030) :|: i1030 < i1029 f5201_0_Display_Inc(EOS(STATIC_5201(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030) -> f5215_0_Display_JMP(EOS(STATIC_5215(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1030 + 1) :|: TRUE f5215_0_Display_JMP(EOS(STATIC_5215(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1341) -> f5223_0_Display_Load(EOS(STATIC_5223(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1341) :|: TRUE f5223_0_Display_Load(EOS(STATIC_5223(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1341) -> f5025_0_Display_Load(EOS(STATIC_5025(i954, i1029)), java.lang.Object(ARRAY(i954)), i956, i1341) :|: TRUE Combined rules. Obtained 3 IRulesP rules: f5071_0_Display_GT(EOS(STATIC_5071(i954:0, i1029:0)), java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0, i1029:0, i1029:0) -> f5071_0_Display_GT(EOS(STATIC_5071(i954:0, i1029:0)), java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0 + 1, i1029:0 + 1, i1029:0) :|: TRUE f5071_0_Display_GT(EOS(STATIC_5071(i954:0, i1029:0)), java.lang.Object(ARRAY(i954:0)), i956:0, i1030:0, i1030:0, i1029:0) -> f5071_0_Display_GT(EOS(STATIC_5071(i954:0, i1029:0)), java.lang.Object(ARRAY(i954:0)), i956:0, i1030:0 + 1, i1030:0 + 1, i1029:0) :|: i1030:0 < i1029:0 f5071_0_Display_GT(EOS(STATIC_5071(i954:0, i1029:0)), java.lang.Object(ARRAY(i954:0)), i956:0, i1030:0, i1030:0, i1029:0) -> f5071_0_Display_GT(EOS(STATIC_5071(i954:0, i1029:0)), java.lang.Object(ARRAY(i954:0)), i956:0 + 1, 0, 0, i1029:0) :|: i956:0 + 1 < i954:0 && i1030:0 > i1029:0 Filtered duplicate arguments: f5071_0_Display_GT(x1, x2, x3, x4, x5, x6) -> f5071_0_Display_GT(x1, x2, x3, x5, x6) Finished conversion. Obtained 3 rules.P rules: f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0, i1029:0, i954:0, i1029:0, i954:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0 + 1, i1029:0, i954:0, i1029:0, i954:0) :|: TRUE f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1030:0, i1029:0, i954:0, i1029:0, i954:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1030:0 + 1, i1029:0, i954:0, i1029:0, i954:0) :|: i1030:0 < i1029:0 f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1030:0, i1029:0, i954:0, i1029:0, i954:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0 + 1, 0, i1029:0, i954:0, i1029:0, i954:0) :|: i956:0 + 1 < i954:0 && i1030:0 > i1029:0 ---------------------------------------- (22) Obligation: Rules: f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0, i1029:0, i954:0, i1029:0, i954:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0 + 1, i1029:0, i954:0, i1029:0, i954:0) :|: TRUE f5071_0_Display_GT(java.lang.Object(ARRAY(x)), x1, x2, x3, x, x3, x) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x)), x1, x2 + 1, x3, x, x3, x) :|: x2 < x3 f5071_0_Display_GT(java.lang.Object(ARRAY(x4)), x5, x6, x7, x4, x7, x4) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x4)), x5 + 1, 0, x7, x4, x7, x4) :|: x5 + 1 < x4 && x6 > x7 ---------------------------------------- (23) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (24) Obligation: Rules: f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0, i1029:0, i954:0, i1029:0, i954:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, arith, i1029:0, i954:0, i1029:0, i954:0) :|: TRUE && arith = i1029:0 + 1 f5071_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x10, x11, x8, x11, x8) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x12, x11, x8, x11, x8) :|: x10 < x11 && x12 = x10 + 1 f5071_0_Display_GT(java.lang.Object(ARRAY(x13)), x14, x15, x16, x13, x16, x13) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x13)), x17, 0, x16, x13, x16, x13) :|: x14 + 1 < x13 && x15 > x16 && x17 = x14 + 1 ---------------------------------------- (25) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0, i1029:0, i954:0, i1029:0, i954:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, arith, i1029:0, i954:0, i1029:0, i954:0) :|: TRUE && arith = i1029:0 + 1 (2) f5071_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x10, x11, x8, x11, x8) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x12, x11, x8, x11, x8) :|: x10 < x11 && x12 = x10 + 1 (3) f5071_0_Display_GT(java.lang.Object(ARRAY(x13)), x14, x15, x16, x13, x16, x13) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x13)), x17, 0, x16, x13, x16, x13) :|: x14 + 1 < x13 && x15 > x16 && x17 = x14 + 1 Arcs: (1) -> (3) (2) -> (1), (2) (3) -> (1), (2), (3) This digraph is fully evaluated! ---------------------------------------- (26) Obligation: Termination digraph: Nodes: (1) f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, i1029:0, i1029:0, i954:0, i1029:0, i954:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0)), i956:0, arith, i1029:0, i954:0, i1029:0, i954:0) :|: TRUE && arith = i1029:0 + 1 (2) f5071_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x10, x11, x8, x11, x8) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x12, x11, x8, x11, x8) :|: x10 < x11 && x12 = x10 + 1 (3) f5071_0_Display_GT(java.lang.Object(ARRAY(x13)), x14, x15, x16, x13, x16, x13) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x13)), x17, 0, x16, x13, x16, x13) :|: x14 + 1 < x13 && x15 > x16 && x17 = x14 + 1 Arcs: (1) -> (3) (2) -> (1), (2) (3) -> (1), (2), (3) This digraph is fully evaluated! ---------------------------------------- (27) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (28) Obligation: Rules: f5071_0_Display_GT(java.lang.Object(ARRAY(x8:0)), x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x8:0)), x9:0, x10:0 + 1, x11:0, x8:0, x11:0, x8:0) :|: x11:0 > x10:0 f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0:0)), i956:0:0, i1029:0:0, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(i954:0:0)), i956:0:0, i1029:0:0 + 1, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) :|: TRUE f5071_0_Display_GT(java.lang.Object(ARRAY(x13:0)), x14:0, x15:0, x16:0, x13:0, x16:0, x13:0) -> f5071_0_Display_GT(java.lang.Object(ARRAY(x13:0)), x14:0 + 1, 0, x16:0, x13:0, x16:0, x13:0) :|: x14:0 + 1 < x13:0 && x16:0 < x15:0 ---------------------------------------- (29) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f5071_0_Display_GT(VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE) java.lang.Object(VARIABLE) ARRAY(VARIABLE) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (30) Obligation: Rules: f5071_0_Display_GT(c, x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f5071_0_Display_GT(c1, x9:0, c2, x11:0, x8:0, x11:0, x8:0) :|: c2 = x10:0 + 1 && (c1 = 0 && c = 0) && x11:0 > x10:0 f5071_0_Display_GT(c3, i956:0:0, i1029:0:0, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) -> f5071_0_Display_GT(c4, i956:0:0, c5, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) :|: c5 = i1029:0:0 + 1 && (c4 = 0 && c3 = 0) && TRUE f5071_0_Display_GT(c6, x14:0, x15:0, x16:0, x13:0, x16:0, x13:0) -> f5071_0_Display_GT(c7, c8, c9, x16:0, x13:0, x16:0, x13:0) :|: c9 = 0 && (c8 = x14:0 + 1 && (c7 = 0 && c6 = 0)) && (x14:0 + 1 < x13:0 && x16:0 < x15:0) ---------------------------------------- (31) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f5071_0_Display_GT(x, x1, x2, x3, x4, x5, x6)] = -1 + c*x - x1 + x6 The following rules are decreasing: f5071_0_Display_GT(c6, x14:0, x15:0, x16:0, x13:0, x16:0, x13:0) -> f5071_0_Display_GT(c7, c8, c9, x16:0, x13:0, x16:0, x13:0) :|: c9 = 0 && (c8 = x14:0 + 1 && (c7 = 0 && c6 = 0)) && (x14:0 + 1 < x13:0 && x16:0 < x15:0) The following rules are bounded: f5071_0_Display_GT(c6, x14:0, x15:0, x16:0, x13:0, x16:0, x13:0) -> f5071_0_Display_GT(c7, c8, c9, x16:0, x13:0, x16:0, x13:0) :|: c9 = 0 && (c8 = x14:0 + 1 && (c7 = 0 && c6 = 0)) && (x14:0 + 1 < x13:0 && x16:0 < x15:0) ---------------------------------------- (32) Obligation: Rules: f5071_0_Display_GT(c, x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f5071_0_Display_GT(c1, x9:0, c2, x11:0, x8:0, x11:0, x8:0) :|: c2 = x10:0 + 1 && (c1 = 0 && c = 0) && x11:0 > x10:0 f5071_0_Display_GT(c3, i956:0:0, i1029:0:0, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) -> f5071_0_Display_GT(c4, i956:0:0, c5, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) :|: c5 = i1029:0:0 + 1 && (c4 = 0 && c3 = 0) && TRUE ---------------------------------------- (33) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f5071_0_Display_GT(x, x1, x2, x3, x4, x5, x6)] = c*x - x2 + x5 The following rules are decreasing: f5071_0_Display_GT(c, x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f5071_0_Display_GT(c1, x9:0, c2, x11:0, x8:0, x11:0, x8:0) :|: c2 = x10:0 + 1 && (c1 = 0 && c = 0) && x11:0 > x10:0 f5071_0_Display_GT(c3, i956:0:0, i1029:0:0, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) -> f5071_0_Display_GT(c4, i956:0:0, c5, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) :|: c5 = i1029:0:0 + 1 && (c4 = 0 && c3 = 0) && TRUE The following rules are bounded: f5071_0_Display_GT(c, x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f5071_0_Display_GT(c1, x9:0, c2, x11:0, x8:0, x11:0, x8:0) :|: c2 = x10:0 + 1 && (c1 = 0 && c = 0) && x11:0 > x10:0 f5071_0_Display_GT(c3, i956:0:0, i1029:0:0, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) -> f5071_0_Display_GT(c4, i956:0:0, c5, i1029:0:0, i954:0:0, i1029:0:0, i954:0:0) :|: c5 = i1029:0:0 + 1 && (c4 = 0 && c3 = 0) && TRUE ---------------------------------------- (34) YES ---------------------------------------- (35) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: KnapsackDP.main([Ljava/lang/String;)V SCC calls the following helper methods: Performed SCC analyses: *Used field analysis yielded the following read fields: *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (36) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 138 IRulesP rules: f3234_0_SolveDP_FieldAccess(EOS(STATIC_3234(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i686) -> f3261_0_SolveDP_GE(EOS(STATIC_3261(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i686, i684) :|: TRUE f3261_0_SolveDP_GE(EOS(STATIC_3261(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i686, i684) -> f3347_0_SolveDP_GE(EOS(STATIC_3347(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i686, i684) :|: i686 < i684 f3347_0_SolveDP_GE(EOS(STATIC_3347(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i686, i684) -> f3437_0_SolveDP_ConstantStackPush(EOS(STATIC_3437(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686) :|: i686 < i684 f3437_0_SolveDP_ConstantStackPush(EOS(STATIC_3437(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686) -> f3462_0_SolveDP_Store(EOS(STATIC_3462(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, 0) :|: TRUE f3462_0_SolveDP_Store(EOS(STATIC_3462(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, matching1) -> f3482_0_SolveDP_Load(EOS(STATIC_3482(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, 0) :|: TRUE && matching1 = 0 f3482_0_SolveDP_Load(EOS(STATIC_3482(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, matching1) -> f4600_0_SolveDP_Load(EOS(STATIC_4600(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, 0) :|: TRUE && matching1 = 0 f4600_0_SolveDP_Load(EOS(STATIC_4600(i684, o1047, o1048, i935, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i936) -> f5203_0_SolveDP_Load(EOS(STATIC_5203(i684, o1047, o1048, i935, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i936) :|: TRUE f5203_0_SolveDP_Load(EOS(STATIC_5203(i684, o1833, o1834, i1335, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i1336) -> f5805_0_SolveDP_Load(EOS(STATIC_5805(i684, o1833, o1834, i1335, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i1336) :|: TRUE f5805_0_SolveDP_Load(EOS(STATIC_5805(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) -> f5812_0_SolveDP_FieldAccess(EOS(STATIC_5812(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743) :|: TRUE f5812_0_SolveDP_FieldAccess(EOS(STATIC_5812(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743) -> f5817_0_SolveDP_GT(EOS(STATIC_5817(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2742) :|: TRUE f5817_0_SolveDP_GT(EOS(STATIC_5817(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2742) -> f5828_0_SolveDP_GT(EOS(STATIC_5828(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2742) :|: i2743 > i2742 f5817_0_SolveDP_GT(EOS(STATIC_5817(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2742) -> f5829_0_SolveDP_GT(EOS(STATIC_5829(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2742) :|: i2743 <= i2742 f5828_0_SolveDP_GT(EOS(STATIC_5828(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2742) -> f5838_0_SolveDP_Inc(EOS(STATIC_5838(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686) :|: i2743 > i2742 f5838_0_SolveDP_Inc(EOS(STATIC_5838(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686) -> f5845_0_SolveDP_JMP(EOS(STATIC_5845(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686 + 1) :|: TRUE f5845_0_SolveDP_JMP(EOS(STATIC_5845(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i2771) -> f5858_0_SolveDP_Load(EOS(STATIC_5858(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i2771) :|: TRUE f5858_0_SolveDP_Load(EOS(STATIC_5858(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i2771) -> f3169_0_SolveDP_Load(EOS(STATIC_3169(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i2771) :|: TRUE f3169_0_SolveDP_Load(EOS(STATIC_3169(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686) -> f3234_0_SolveDP_FieldAccess(EOS(STATIC_3234(i684, o642, o643, i685, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i686) :|: TRUE f5829_0_SolveDP_GT(EOS(STATIC_5829(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2742) -> f5839_0_SolveDP_Load(EOS(STATIC_5839(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) :|: i2743 <= i2742 f5839_0_SolveDP_Load(EOS(STATIC_5839(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) -> f5846_0_SolveDP_FieldAccess(EOS(STATIC_5846(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743) :|: TRUE f5846_0_SolveDP_FieldAccess(EOS(STATIC_5846(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743) -> f5859_0_SolveDP_Load(EOS(STATIC_5859(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, o4261) :|: TRUE f5859_0_SolveDP_Load(EOS(STATIC_5859(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, o4261) -> f5868_0_SolveDP_ArrayAccess(EOS(STATIC_5868(i684, o4261, o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, o4261, i686) :|: TRUE f5868_0_SolveDP_ArrayAccess(EOS(STATIC_5868(i684, java.lang.Object(o4369put), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, java.lang.Object(o4369put), i686) -> f5873_0_SolveDP_ArrayAccess(EOS(STATIC_5873(i684, java.lang.Object(o4369put), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, java.lang.Object(o4369put), i686) :|: TRUE f5873_0_SolveDP_ArrayAccess(EOS(STATIC_5873(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, java.lang.Object(ARRAY(i2827)), i686) -> f5886_0_SolveDP_ArrayAccess(EOS(STATIC_5886(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, java.lang.Object(ARRAY(i2827)), i686) :|: i2827 >= 0 f5886_0_SolveDP_ArrayAccess(EOS(STATIC_5886(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, java.lang.Object(ARRAY(i2827)), i686) -> f5898_0_SolveDP_ArrayAccess(EOS(STATIC_5898(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, java.lang.Object(ARRAY(i2827)), i686) :|: TRUE f5898_0_SolveDP_ArrayAccess(EOS(STATIC_5898(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, java.lang.Object(ARRAY(i2827)), i686) -> f5905_0_SolveDP_IntArithmetic(EOS(STATIC_5905(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2843) :|: i686 < i2827 f5905_0_SolveDP_IntArithmetic(EOS(STATIC_5905(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743, i2843) -> f5921_0_SolveDP_GE(EOS(STATIC_5921(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2743 - i2843) :|: i2743 >= 0 f5921_0_SolveDP_GE(EOS(STATIC_5921(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2898) -> f5935_0_SolveDP_GE(EOS(STATIC_5935(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2898) :|: TRUE f5921_0_SolveDP_GE(EOS(STATIC_5921(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2899) -> f5936_0_SolveDP_GE(EOS(STATIC_5936(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2899) :|: TRUE f5935_0_SolveDP_GE(EOS(STATIC_5935(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2898) -> f5948_0_SolveDP_FieldAccess(EOS(STATIC_5948(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) :|: i2898 < 0 f5948_0_SolveDP_FieldAccess(EOS(STATIC_5948(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) -> f5966_0_SolveDP_Load(EOS(STATIC_5966(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684))) :|: TRUE f5966_0_SolveDP_Load(EOS(STATIC_5966(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684))) -> f5982_0_SolveDP_ArrayAccess(EOS(STATIC_5982(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684)), i686) :|: TRUE f5982_0_SolveDP_ArrayAccess(EOS(STATIC_5982(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684)), i686) -> f5996_0_SolveDP_ArrayAccess(EOS(STATIC_5996(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684)), i686) :|: TRUE f5996_0_SolveDP_ArrayAccess(EOS(STATIC_5996(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684)), i686) -> f6017_0_SolveDP_Load(EOS(STATIC_6017(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912) :|: i686 < i684 f6017_0_SolveDP_Load(EOS(STATIC_6017(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912) -> f6038_0_SolveDP_FieldAccess(EOS(STATIC_6038(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743) :|: TRUE f6038_0_SolveDP_FieldAccess(EOS(STATIC_6038(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743) -> f6054_0_SolveDP_Load(EOS(STATIC_6054(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684))) :|: TRUE f6054_0_SolveDP_Load(EOS(STATIC_6054(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684))) -> f6076_0_SolveDP_ConstantStackPush(EOS(STATIC_6076(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684)), i686) :|: TRUE f6076_0_SolveDP_ConstantStackPush(EOS(STATIC_6076(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684)), i686) -> f6098_0_SolveDP_IntArithmetic(EOS(STATIC_6098(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684)), i686, 1) :|: TRUE f6098_0_SolveDP_IntArithmetic(EOS(STATIC_6098(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684)), i686, matching1) -> f6116_0_SolveDP_ArrayAccess(EOS(STATIC_6116(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684)), i686 - 1) :|: i686 > 0 && matching1 = 1 f6116_0_SolveDP_ArrayAccess(EOS(STATIC_6116(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684)), i3406) -> f6140_0_SolveDP_ArrayAccess(EOS(STATIC_6140(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684)), i3406) :|: TRUE f6140_0_SolveDP_ArrayAccess(EOS(STATIC_6140(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i684)), i3406) -> f6164_0_SolveDP_Load(EOS(STATIC_6164(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, o5692) :|: i3406 < i684 f6164_0_SolveDP_Load(EOS(STATIC_6164(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, o5692) -> f6184_0_SolveDP_ArrayAccess(EOS(STATIC_6184(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, o5692, i2743) :|: TRUE f6184_0_SolveDP_ArrayAccess(EOS(STATIC_6184(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(o5955put), i2743) -> f6203_0_SolveDP_ArrayAccess(EOS(STATIC_6203(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(o5955put), i2743) :|: TRUE f6203_0_SolveDP_ArrayAccess(EOS(STATIC_6203(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(o5955put), i2743) -> f6225_0_SolveDP_ArrayAccess(EOS(STATIC_6225(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(o5955put), i2743) :|: TRUE f6203_0_SolveDP_ArrayAccess(EOS(STATIC_6203(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o6079put), i2743, java.lang.Object(o6079put), i2743) -> f6226_0_SolveDP_ArrayAccess(EOS(STATIC_6226(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o6079put), i2743, java.lang.Object(o6079put), i2743) :|: TRUE f6225_0_SolveDP_ArrayAccess(EOS(STATIC_6225(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i3887)), i2743) -> f6247_0_SolveDP_ArrayAccess(EOS(STATIC_6247(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i3887)), i2743) :|: i3887 >= 0 f6247_0_SolveDP_ArrayAccess(EOS(STATIC_6247(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i3887)), i2743) -> f6269_0_SolveDP_ArrayAccess(EOS(STATIC_6269(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i3887)), i2743) :|: TRUE f6269_0_SolveDP_ArrayAccess(EOS(STATIC_6269(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743, java.lang.Object(ARRAY(i3887)), i2743) -> f6298_0_SolveDP_ArrayAccess(EOS(STATIC_6298(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4912, i2743) :|: i2743 < i3887 f6298_0_SolveDP_ArrayAccess(EOS(STATIC_6298(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o6546put), i2743) -> f6322_0_SolveDP_ArrayAccess(EOS(STATIC_6322(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o6546put), i2743) :|: TRUE f6322_0_SolveDP_ArrayAccess(EOS(STATIC_6322(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i4240)), i2743) -> f6342_0_SolveDP_ArrayAccess(EOS(STATIC_6342(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i4240)), i2743) :|: i4240 >= 0 f6342_0_SolveDP_ArrayAccess(EOS(STATIC_6342(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i4240)), i2743) -> f6368_0_SolveDP_ArrayAccess(EOS(STATIC_6368(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i4240)), i2743) :|: TRUE f6368_0_SolveDP_ArrayAccess(EOS(STATIC_6368(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i4240)), i2743) -> f6391_0_SolveDP_JMP(EOS(STATIC_6391(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) :|: i2743 < i4240 f6391_0_SolveDP_JMP(EOS(STATIC_6391(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) -> f6410_0_SolveDP_Inc(EOS(STATIC_6410(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) :|: TRUE f6410_0_SolveDP_Inc(EOS(STATIC_6410(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) -> f6431_0_SolveDP_JMP(EOS(STATIC_6431(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743 + 1) :|: TRUE f6431_0_SolveDP_JMP(EOS(STATIC_6431(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i4723) -> f6451_0_SolveDP_Load(EOS(STATIC_6451(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i4723) :|: TRUE f6451_0_SolveDP_Load(EOS(STATIC_6451(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i4723) -> f5805_0_SolveDP_Load(EOS(STATIC_5805(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i4723) :|: TRUE f6226_0_SolveDP_ArrayAccess(EOS(STATIC_6226(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3888)), i2743, java.lang.Object(ARRAY(i3888)), i2743) -> f6248_0_SolveDP_ArrayAccess(EOS(STATIC_6248(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3888)), i2743, java.lang.Object(ARRAY(i3888)), i2743) :|: i3888 >= 0 f6248_0_SolveDP_ArrayAccess(EOS(STATIC_6248(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3888)), i2743, java.lang.Object(ARRAY(i3888)), i2743) -> f6271_0_SolveDP_ArrayAccess(EOS(STATIC_6271(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3888)), i2743, java.lang.Object(ARRAY(i3888)), i2743) :|: TRUE f6271_0_SolveDP_ArrayAccess(EOS(STATIC_6271(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3888)), i2743, java.lang.Object(ARRAY(i3888)), i2743) -> f6300_0_SolveDP_ArrayAccess(EOS(STATIC_6300(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3888)), i2743) :|: i2743 < i3888 f6300_0_SolveDP_ArrayAccess(EOS(STATIC_6300(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3888)), i2743) -> f6298_0_SolveDP_ArrayAccess(EOS(STATIC_6298(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3888)), i2743) :|: TRUE f5936_0_SolveDP_GE(EOS(STATIC_5936(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, i2899) -> f5949_0_SolveDP_FieldAccess(EOS(STATIC_5949(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) :|: i2899 >= 0 f5949_0_SolveDP_FieldAccess(EOS(STATIC_5949(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) -> f5967_0_SolveDP_Load(EOS(STATIC_5967(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684))) :|: TRUE f5967_0_SolveDP_Load(EOS(STATIC_5967(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684))) -> f5983_0_SolveDP_ArrayAccess(EOS(STATIC_5983(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684)), i686) :|: TRUE f5983_0_SolveDP_ArrayAccess(EOS(STATIC_5983(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684)), i686) -> f5998_0_SolveDP_ArrayAccess(EOS(STATIC_5998(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684)), i686) :|: TRUE f5998_0_SolveDP_ArrayAccess(EOS(STATIC_5998(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i684)), i686) -> f6019_0_SolveDP_Load(EOS(STATIC_6019(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914) :|: i686 < i684 f6019_0_SolveDP_Load(EOS(STATIC_6019(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914) -> f6039_0_SolveDP_FieldAccess(EOS(STATIC_6039(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743) :|: TRUE f6039_0_SolveDP_FieldAccess(EOS(STATIC_6039(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743) -> f6056_0_SolveDP_Load(EOS(STATIC_6056(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684))) :|: TRUE f6056_0_SolveDP_Load(EOS(STATIC_6056(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684))) -> f6078_0_SolveDP_ConstantStackPush(EOS(STATIC_6078(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684)), i686) :|: TRUE f6078_0_SolveDP_ConstantStackPush(EOS(STATIC_6078(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684)), i686) -> f6099_0_SolveDP_IntArithmetic(EOS(STATIC_6099(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684)), i686, 1) :|: TRUE f6099_0_SolveDP_IntArithmetic(EOS(STATIC_6099(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684)), i686, matching1) -> f6118_0_SolveDP_ArrayAccess(EOS(STATIC_6118(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684)), i686 - 1) :|: i686 > 0 && matching1 = 1 f6118_0_SolveDP_ArrayAccess(EOS(STATIC_6118(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684)), i3412) -> f6143_0_SolveDP_ArrayAccess(EOS(STATIC_6143(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684)), i3412) :|: TRUE f6143_0_SolveDP_ArrayAccess(EOS(STATIC_6143(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i684)), i3412) -> f6166_0_SolveDP_Load(EOS(STATIC_6166(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, o5694) :|: i3412 < i684 f6166_0_SolveDP_Load(EOS(STATIC_6166(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, o5694) -> f6186_0_SolveDP_ArrayAccess(EOS(STATIC_6186(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, o5694, i2743) :|: TRUE f6186_0_SolveDP_ArrayAccess(EOS(STATIC_6186(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(o5968put), i2743) -> f6207_0_SolveDP_ArrayAccess(EOS(STATIC_6207(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(o5968put), i2743) :|: TRUE f6207_0_SolveDP_ArrayAccess(EOS(STATIC_6207(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(o5968put), i2743) -> f6229_0_SolveDP_ArrayAccess(EOS(STATIC_6229(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(o5968put), i2743) :|: TRUE f6207_0_SolveDP_ArrayAccess(EOS(STATIC_6207(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o6083put), i2743, java.lang.Object(o6083put), i2743) -> f6230_0_SolveDP_ArrayAccess(EOS(STATIC_6230(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o6083put), i2743, java.lang.Object(o6083put), i2743) :|: TRUE f6229_0_SolveDP_ArrayAccess(EOS(STATIC_6229(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i3896)), i2743) -> f6250_0_SolveDP_ArrayAccess(EOS(STATIC_6250(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i3896)), i2743) :|: i3896 >= 0 f6250_0_SolveDP_ArrayAccess(EOS(STATIC_6250(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i3896)), i2743) -> f6276_0_SolveDP_ArrayAccess(EOS(STATIC_6276(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i3896)), i2743) :|: TRUE f6276_0_SolveDP_ArrayAccess(EOS(STATIC_6276(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, java.lang.Object(ARRAY(i3896)), i2743) -> f6304_0_SolveDP_FieldAccess(EOS(STATIC_6304(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) :|: i2743 < i3896 f6304_0_SolveDP_FieldAccess(EOS(STATIC_6304(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) -> f6325_0_SolveDP_Load(EOS(STATIC_6325(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684))) :|: TRUE f6325_0_SolveDP_Load(EOS(STATIC_6325(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684))) -> f6349_0_SolveDP_ConstantStackPush(EOS(STATIC_6349(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684)), i686) :|: TRUE f6349_0_SolveDP_ConstantStackPush(EOS(STATIC_6349(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684)), i686) -> f6374_0_SolveDP_IntArithmetic(EOS(STATIC_6374(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684)), i686, 1) :|: TRUE f6374_0_SolveDP_IntArithmetic(EOS(STATIC_6374(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684)), i686, matching1) -> f6395_0_SolveDP_ArrayAccess(EOS(STATIC_6395(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684)), i686 - 1) :|: i686 > 0 && matching1 = 1 f6395_0_SolveDP_ArrayAccess(EOS(STATIC_6395(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684)), i4482) -> f6416_0_SolveDP_ArrayAccess(EOS(STATIC_6416(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684)), i4482) :|: TRUE f6416_0_SolveDP_ArrayAccess(EOS(STATIC_6416(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i684)), i4482) -> f6437_0_SolveDP_Load(EOS(STATIC_6437(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330) :|: i4482 < i684 f6437_0_SolveDP_Load(EOS(STATIC_6437(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330) -> f6455_0_SolveDP_FieldAccess(EOS(STATIC_6455(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743) :|: TRUE f6455_0_SolveDP_FieldAccess(EOS(STATIC_6455(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743) -> f6471_0_SolveDP_Load(EOS(STATIC_6471(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743, java.lang.Object(ARRAY(i2827))) :|: TRUE f6471_0_SolveDP_Load(EOS(STATIC_6471(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743, java.lang.Object(ARRAY(i2827))) -> f6490_0_SolveDP_ArrayAccess(EOS(STATIC_6490(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743, java.lang.Object(ARRAY(i2827)), i686) :|: TRUE f6490_0_SolveDP_ArrayAccess(EOS(STATIC_6490(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743, java.lang.Object(ARRAY(i2827)), i686) -> f6508_0_SolveDP_ArrayAccess(EOS(STATIC_6508(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743, java.lang.Object(ARRAY(i2827)), i686) :|: TRUE f6508_0_SolveDP_ArrayAccess(EOS(STATIC_6508(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743, java.lang.Object(ARRAY(i2827)), i686) -> f6525_0_SolveDP_IntArithmetic(EOS(STATIC_6525(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743, i5387) :|: i686 < i2827 f6525_0_SolveDP_IntArithmetic(EOS(STATIC_6525(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743, i5387) -> f6542_0_SolveDP_ArrayAccess(EOS(STATIC_6542(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, o7330, i2743 - i5387) :|: i2743 >= 0 f6542_0_SolveDP_ArrayAccess(EOS(STATIC_6542(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(o8430put), i5527) -> f6559_0_SolveDP_ArrayAccess(EOS(STATIC_6559(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(o8430put), i5527) :|: TRUE f6559_0_SolveDP_ArrayAccess(EOS(STATIC_6559(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(o8430put), i5527) -> f6575_0_SolveDP_ArrayAccess(EOS(STATIC_6575(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(o8430put), i5527) :|: TRUE f6559_0_SolveDP_ArrayAccess(EOS(STATIC_6559(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o8597put), i2743, i4070, java.lang.Object(o8597put), i5527) -> f6576_0_SolveDP_ArrayAccess(EOS(STATIC_6576(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o8597put), i2743, i4070, java.lang.Object(o8597put), i5527) :|: TRUE f6575_0_SolveDP_ArrayAccess(EOS(STATIC_6575(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i5923)), i5527) -> f6593_0_SolveDP_ArrayAccess(EOS(STATIC_6593(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i5923)), i5527) :|: i5923 >= 0 f6593_0_SolveDP_ArrayAccess(EOS(STATIC_6593(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i5923)), i6063) -> f6609_0_SolveDP_ArrayAccess(EOS(STATIC_6609(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i5923)), i6063) :|: TRUE f6609_0_SolveDP_ArrayAccess(EOS(STATIC_6609(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i5923)), i6063) -> f6626_0_SolveDP_ArrayAccess(EOS(STATIC_6626(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i5923)), i6063) :|: TRUE f6626_0_SolveDP_ArrayAccess(EOS(STATIC_6626(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, java.lang.Object(ARRAY(i5923)), i6063) -> f6646_0_SolveDP_FieldAccess(EOS(STATIC_6646(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343) :|: i6063 < i5923 f6646_0_SolveDP_FieldAccess(EOS(STATIC_6646(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343) -> f6664_0_SolveDP_Load(EOS(STATIC_6664(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, o4262) :|: TRUE f6664_0_SolveDP_Load(EOS(STATIC_6664(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, o4262) -> f6681_0_SolveDP_ArrayAccess(EOS(STATIC_6681(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, o4262, i686) :|: TRUE f6681_0_SolveDP_ArrayAccess(EOS(STATIC_6681(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(o9970put), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, java.lang.Object(o9970put), i686) -> f6699_0_SolveDP_ArrayAccess(EOS(STATIC_6699(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(o9970put), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, java.lang.Object(o9970put), i686) :|: TRUE f6699_0_SolveDP_ArrayAccess(EOS(STATIC_6699(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, java.lang.Object(ARRAY(i6792)), i686) -> f6710_0_SolveDP_ArrayAccess(EOS(STATIC_6710(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, java.lang.Object(ARRAY(i6792)), i686) :|: i6792 >= 0 f6710_0_SolveDP_ArrayAccess(EOS(STATIC_6710(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, java.lang.Object(ARRAY(i6792)), i686) -> f6722_0_SolveDP_ArrayAccess(EOS(STATIC_6722(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, java.lang.Object(ARRAY(i6792)), i686) :|: TRUE f6722_0_SolveDP_ArrayAccess(EOS(STATIC_6722(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, java.lang.Object(ARRAY(i6792)), i686) -> f6733_0_SolveDP_IntArithmetic(EOS(STATIC_6733(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, i6967) :|: i686 < i6792 f6733_0_SolveDP_IntArithmetic(EOS(STATIC_6733(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343, i6967) -> f6743_0_SolveDP_InvokeMethod(EOS(STATIC_6743(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i6343 + i6967) :|: TRUE f6743_0_SolveDP_InvokeMethod(EOS(STATIC_6743(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050) -> f6753_0_max_Load(EOS(STATIC_6753(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050) :|: TRUE f6753_0_max_Load(EOS(STATIC_6753(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050) -> f6771_0_max_Load(EOS(STATIC_6771(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070) :|: TRUE f6771_0_max_Load(EOS(STATIC_6771(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070) -> f6779_0_max_LE(EOS(STATIC_6779(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070, i7050) :|: TRUE f6779_0_max_LE(EOS(STATIC_6779(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070, i7050) -> f6786_0_max_LE(EOS(STATIC_6786(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070, i7050) :|: i4070 <= i7050 f6779_0_max_LE(EOS(STATIC_6779(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070, i7050) -> f6787_0_max_LE(EOS(STATIC_6787(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070, i7050) :|: i4070 > i7050 f6786_0_max_LE(EOS(STATIC_6786(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070, i7050) -> f6795_0_max_Load(EOS(STATIC_6795(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i7050) :|: i4070 <= i7050 f6795_0_max_Load(EOS(STATIC_6795(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i7050) -> f6802_0_max_Return(EOS(STATIC_6802(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i7050) :|: TRUE f6802_0_max_Return(EOS(STATIC_6802(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i7050) -> f6809_0_SolveDP_ArrayAccess(EOS(STATIC_6809(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i7050) :|: TRUE f6809_0_SolveDP_ArrayAccess(EOS(STATIC_6809(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o11599put), i2743, i7050) -> f6817_0_SolveDP_ArrayAccess(EOS(STATIC_6817(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(o11599put), i2743, i7050) :|: TRUE f6817_0_SolveDP_ArrayAccess(EOS(STATIC_6817(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i7676)), i2743, i7050) -> f6823_0_SolveDP_ArrayAccess(EOS(STATIC_6823(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i7676)), i2743, i7050) :|: i7676 >= 0 f6823_0_SolveDP_ArrayAccess(EOS(STATIC_6823(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i7676)), i2743, i7050) -> f6830_0_SolveDP_ArrayAccess(EOS(STATIC_6830(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i7676)), i2743, i7050) :|: TRUE f6830_0_SolveDP_ArrayAccess(EOS(STATIC_6830(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i7676)), i2743, i7050) -> f6837_0_SolveDP_Inc(EOS(STATIC_6837(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) :|: i2743 < i7676 f6837_0_SolveDP_Inc(EOS(STATIC_6837(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743) -> f6844_0_SolveDP_JMP(EOS(STATIC_6844(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743 + 1) :|: TRUE f6844_0_SolveDP_JMP(EOS(STATIC_6844(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i7804) -> f6850_0_SolveDP_Load(EOS(STATIC_6850(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i7804) :|: TRUE f6850_0_SolveDP_Load(EOS(STATIC_6850(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i7804) -> f5805_0_SolveDP_Load(EOS(STATIC_5805(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i7804) :|: TRUE f6787_0_max_LE(EOS(STATIC_6787(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070, i7050, i4070, i7050) -> f6796_0_max_Load(EOS(STATIC_6796(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) :|: i4070 > i7050 f6796_0_max_Load(EOS(STATIC_6796(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) -> f6803_0_max_JMP(EOS(STATIC_6803(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) :|: TRUE f6803_0_max_JMP(EOS(STATIC_6803(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) -> f6810_0_max_Return(EOS(STATIC_6810(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) :|: TRUE f6810_0_max_Return(EOS(STATIC_6810(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) -> f6802_0_max_Return(EOS(STATIC_6802(i684, java.lang.Object(ARRAY(i2827)), java.lang.Object(ARRAY(i6792)), i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, o4914, i2743, i4070) :|: TRUE f6576_0_SolveDP_ArrayAccess(EOS(STATIC_6576(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, java.lang.Object(ARRAY(i5924)), i5527) -> f6594_0_SolveDP_ArrayAccess(EOS(STATIC_6594(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, java.lang.Object(ARRAY(i5924)), i5527) :|: i5924 >= 0 f6594_0_SolveDP_ArrayAccess(EOS(STATIC_6594(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, java.lang.Object(ARRAY(i5924)), i6065) -> f6611_0_SolveDP_ArrayAccess(EOS(STATIC_6611(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, java.lang.Object(ARRAY(i5924)), i6065) :|: TRUE f6611_0_SolveDP_ArrayAccess(EOS(STATIC_6611(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, java.lang.Object(ARRAY(i5924)), i6065) -> f6629_0_SolveDP_ArrayAccess(EOS(STATIC_6629(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, java.lang.Object(ARRAY(i5924)), i6065) :|: TRUE f6629_0_SolveDP_ArrayAccess(EOS(STATIC_6629(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, java.lang.Object(ARRAY(i5924)), i6065) -> f6648_0_SolveDP_FieldAccess(EOS(STATIC_6648(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, i6344) :|: i6065 < i5924 f6648_0_SolveDP_FieldAccess(EOS(STATIC_6648(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, i6344) -> f6666_0_SolveDP_Load(EOS(STATIC_6666(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, i6344, o4262) :|: TRUE f6666_0_SolveDP_Load(EOS(STATIC_6666(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, i6344, o4262) -> f6683_0_SolveDP_ArrayAccess(EOS(STATIC_6683(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, i6344, o4262, i686) :|: TRUE f6683_0_SolveDP_ArrayAccess(EOS(STATIC_6683(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, i6344, o4262, i686) -> f6681_0_SolveDP_ArrayAccess(EOS(STATIC_6681(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i5924)), i2743, i4070, i6344, o4262, i686) :|: TRUE f6230_0_SolveDP_ArrayAccess(EOS(STATIC_6230(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, java.lang.Object(ARRAY(i3897)), i2743) -> f6251_0_SolveDP_ArrayAccess(EOS(STATIC_6251(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, java.lang.Object(ARRAY(i3897)), i2743) :|: i3897 >= 0 f6251_0_SolveDP_ArrayAccess(EOS(STATIC_6251(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, java.lang.Object(ARRAY(i3897)), i2743) -> f6278_0_SolveDP_ArrayAccess(EOS(STATIC_6278(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, java.lang.Object(ARRAY(i3897)), i2743) :|: TRUE f6278_0_SolveDP_ArrayAccess(EOS(STATIC_6278(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, java.lang.Object(ARRAY(i3897)), i2743) -> f6306_0_SolveDP_FieldAccess(EOS(STATIC_6306(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071) :|: i2743 < i3897 f6306_0_SolveDP_FieldAccess(EOS(STATIC_6306(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071) -> f6326_0_SolveDP_Load(EOS(STATIC_6326(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684))) :|: TRUE f6326_0_SolveDP_Load(EOS(STATIC_6326(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684))) -> f6351_0_SolveDP_ConstantStackPush(EOS(STATIC_6351(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684)), i686) :|: TRUE f6351_0_SolveDP_ConstantStackPush(EOS(STATIC_6351(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684)), i686) -> f6376_0_SolveDP_IntArithmetic(EOS(STATIC_6376(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684)), i686, 1) :|: TRUE f6376_0_SolveDP_IntArithmetic(EOS(STATIC_6376(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684)), i686, matching1) -> f6396_0_SolveDP_ArrayAccess(EOS(STATIC_6396(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684)), i686 - 1) :|: i686 > 0 && matching1 = 1 f6396_0_SolveDP_ArrayAccess(EOS(STATIC_6396(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684)), i4483) -> f6395_0_SolveDP_ArrayAccess(EOS(STATIC_6395(i684, java.lang.Object(ARRAY(i2827)), o4262, i2742, java.lang.Object(ARRAY(i684)))), java.lang.Object(ARRAY(i684)), i686, i2743, java.lang.Object(ARRAY(i3897)), i2743, i4071, java.lang.Object(ARRAY(i684)), i4483) :|: TRUE Combined rules. Obtained 9 IRulesP rules: f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, java.lang.Object(ARRAY(i2827:0)), o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2743:0, i2742:0) -> f6559_0_SolveDP_ArrayAccess(EOS(STATIC_6559(i684:0, java.lang.Object(ARRAY(i2827:0)), o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, java.lang.Object(ARRAY(i3897:0)), i2743:0, i4071:0, java.lang.Object(o8430put:0), i2743:0 - i5387:0) :|: i2743:0 <= i2742:0 && i2827:0 > -1 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 >= 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3897:0 > -1 && i3897:0 > i2743:0 f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, java.lang.Object(ARRAY(i2827:0)), o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2743:0, i2742:0) -> f6559_0_SolveDP_ArrayAccess(EOS(STATIC_6559(i684:0, java.lang.Object(ARRAY(i2827:0)), o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, o4914:0, i2743:0, i4070:0, java.lang.Object(o8430put:0), i2743:0 - i5387:0) :|: i2743:0 <= i2742:0 && i2827:0 > -1 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 >= 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3896:0 > -1 && i3896:0 > i2743:0 f6559_0_SolveDP_ArrayAccess(EOS(STATIC_6559(i684:0, java.lang.Object(ARRAY(i2827:0)), java.lang.Object(ARRAY(i6792:0)), i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, java.lang.Object(ARRAY(i5924:0)), i2743:0, i4070:0, java.lang.Object(ARRAY(i5924:0)), i5527:0) -> f6779_0_max_LE(EOS(STATIC_6779(i684:0, java.lang.Object(ARRAY(i2827:0)), java.lang.Object(ARRAY(i6792:0)), i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, java.lang.Object(ARRAY(i5924:0)), i2743:0, i4070:0, i6344:0 + i6967:0, i4070:0, i6344:0 + i6967:0) :|: i6792:0 > -1 && i5924:0 > -1 && i5924:0 > i5527:0 && i686:0 < i6792:0 f6779_0_max_LE(EOS(STATIC_6779(i684:0, java.lang.Object(ARRAY(i2827:0)), java.lang.Object(ARRAY(i6792:0)), i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, java.lang.Object(ARRAY(i7676:0)), i2743:0, i4070:0, i7050:0, i4070:0, i7050:0) -> f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, java.lang.Object(ARRAY(i2827:0)), java.lang.Object(ARRAY(i6792:0)), i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0 + 1, i2743:0 + 1, i2742:0) :|: i7050:0 >= i4070:0 && i7676:0 > i2743:0 && i7676:0 > -1 f6559_0_SolveDP_ArrayAccess(EOS(STATIC_6559(i684:0, java.lang.Object(ARRAY(i2827:0)), java.lang.Object(ARRAY(i6792:0)), i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, o4914:0, i2743:0, i4070:0, java.lang.Object(ARRAY(i5923:0)), i5527:0) -> f6779_0_max_LE(EOS(STATIC_6779(i684:0, java.lang.Object(ARRAY(i2827:0)), java.lang.Object(ARRAY(i6792:0)), i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, o4914:0, i2743:0, i4070:0, i6343:0 + i6967:0, i4070:0, i6343:0 + i6967:0) :|: i5923:0 > -1 && i5923:0 > i5527:0 && i686:0 < i6792:0 && i6792:0 > -1 f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, o4261:0, o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2743:0, i2742:0) -> f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, o4261:0, o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0 + 1, 0, 0, i2742:0) :|: i686:0 + 1 < i684:0 && i2743:0 > i2742:0 f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, java.lang.Object(ARRAY(i2827:0)), o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2743:0, i2742:0) -> f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, java.lang.Object(ARRAY(i2827:0)), o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0 + 1, i2743:0 + 1, i2742:0) :|: i2743:0 <= i2742:0 && i2827:0 > -1 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 < 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3887:0 > -1 && i3887:0 > i2743:0 && i4240:0 > i2743:0 && i4240:0 > -1 f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, java.lang.Object(ARRAY(i2827:0)), o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2743:0, i2742:0) -> f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, java.lang.Object(ARRAY(i2827:0)), o4262:0, i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0 + 1, i2743:0 + 1, i2742:0) :|: i2743:0 <= i2742:0 && i2827:0 > -1 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 < 0 && i686:0 < i684:0 && i686:0 > 0 && i3888:0 > -1 && i686:0 - 1 < i684:0 && i3888:0 > i2743:0 f6779_0_max_LE(EOS(STATIC_6779(i684:0, java.lang.Object(ARRAY(i2827:0)), java.lang.Object(ARRAY(i6792:0)), i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, java.lang.Object(ARRAY(i7676:0)), i2743:0, i4070:0, i7050:0, i4070:0, i7050:0) -> f5817_0_SolveDP_GT(EOS(STATIC_5817(i684:0, java.lang.Object(ARRAY(i2827:0)), java.lang.Object(ARRAY(i6792:0)), i2742:0, java.lang.Object(ARRAY(i684:0)))), java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0 + 1, i2743:0 + 1, i2742:0) :|: i7676:0 > -1 && i7676:0 > i2743:0 && i7050:0 < i4070:0 Filtered duplicate arguments: f5817_0_SolveDP_GT(x1, x2, x3, x4, x5, x6) -> f5817_0_SolveDP_GT(x1, x2, x3, x5, x6) f6559_0_SolveDP_ArrayAccess(x1, x2, x3, x4, x5, x6, x7, x8, x9) -> f6559_0_SolveDP_ArrayAccess(x1, x2, x3, x5, x6, x7, x8, x9) f6779_0_max_LE(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) -> f6779_0_max_LE(x1, x2, x3, x5, x6, x9, x10) Finished conversion. Obtained 9 rules.P rules: f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i3897:0)), i2743:0, i4071:0, java.lang.Object(o8430put:0), i2743:0 - i5387:0, i684:0, i2827:0, i2742:0, i684:0, i684:0) :|: i2827:0 > -1 && i2743:0 <= i2742:0 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 >= 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3897:0 > i2743:0 && i3897:0 > -1 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0)), i686:0, o4914:0, i2743:0, i4070:0, java.lang.Object(o8430put:0), i2743:0 - i5387:0, i684:0, i2827:0, i2742:0, i684:0, i684:0) :|: i2827:0 > -1 && i2743:0 <= i2742:0 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 >= 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3896:0 > i2743:0 && i3896:0 > -1 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i5924:0)), i2743:0, i4070:0, java.lang.Object(ARRAY(i5924:0)), i5527:0, i684:0, i2827:0, i2742:0, i684:0, i684:0) -> f6779_0_max_LE(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i5924:0)), i2743:0, i4070:0, i6344:0 + i6967:0, i684:0, i2827:0, i6792:0, i2742:0, i684:0, i684:0) :|: i5924:0 > -1 && i6792:0 > -1 && i686:0 < i6792:0 && i5924:0 > i5527:0 f6779_0_max_LE(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i7676:0)), i2743:0, i4070:0, i7050:0, i684:0, i2827:0, i6792:0, i2742:0, i684:0, i684:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0 + 1, i2742:0, i684:0, i2742:0, i684:0, i684:0) :|: i7676:0 > i2743:0 && i7676:0 > -1 && i7050:0 >= i4070:0 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0)), i686:0, o4914:0, i2743:0, i4070:0, java.lang.Object(ARRAY(i5923:0)), i5527:0, i684:0, i2827:0, i2742:0, i684:0, i684:0) -> f6779_0_max_LE(java.lang.Object(ARRAY(i684:0)), i686:0, o4914:0, i2743:0, i4070:0, i6343:0 + i6967:0, i684:0, i2827:0, i6792:0, i2742:0, i684:0, i684:0) :|: i5923:0 > i5527:0 && i5923:0 > -1 && i6792:0 > -1 && i686:0 < i6792:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0 + 1, 0, i2742:0, i684:0, i2742:0, i684:0, i684:0) :|: i686:0 + 1 < i684:0 && i2743:0 > i2742:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0 + 1, i2742:0, i684:0, i2742:0, i684:0, i684:0) :|: i2827:0 > -1 && i2743:0 <= i2742:0 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 < 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3887:0 > -1 && i3887:0 > i2743:0 && i4240:0 > -1 && i4240:0 > i2743:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0 + 1, i2742:0, i684:0, i2742:0, i684:0, i684:0) :|: i2827:0 > -1 && i2743:0 <= i2742:0 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 < 0 && i686:0 < i684:0 && i686:0 > 0 && i3888:0 > -1 && i3888:0 > i2743:0 && i686:0 - 1 < i684:0 f6779_0_max_LE(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i7676:0)), i2743:0, i4070:0, i7050:0, i684:0, i2827:0, i6792:0, i2742:0, i684:0, i684:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0 + 1, i2742:0, i684:0, i2742:0, i684:0, i684:0) :|: i7676:0 > i2743:0 && i7050:0 < i4070:0 && i7676:0 > -1 ---------------------------------------- (37) Obligation: Rules: f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i3897:0)), i2743:0, i4071:0, java.lang.Object(o8430put:0), i2743:0 - i5387:0, i684:0, i2827:0, i2742:0, i684:0, i684:0) :|: i2827:0 > -1 && i2743:0 <= i2742:0 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 >= 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3897:0 > i2743:0 && i3897:0 > -1 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x)), x1, x2, x3, x, x3, x, x) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x)), x1, x4, x2, x5, java.lang.Object(x6), x2 - x7, x, x8, x3, x, x) :|: x8 > -1 && x2 <= x3 && x1 < x8 && x2 > -1 && x2 - x9 >= 0 && x1 < x && x1 > 0 && x1 - 1 < x && x10 > x2 && x10 > -1 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x11)), x12, java.lang.Object(ARRAY(x13)), x14, x15, java.lang.Object(ARRAY(x13)), x16, x11, x17, x18, x11, x11) -> f6779_0_max_LE(java.lang.Object(ARRAY(x11)), x12, java.lang.Object(ARRAY(x13)), x14, x15, x19 + x20, x11, x17, x21, x18, x11, x11) :|: x13 > -1 && x21 > -1 && x12 < x21 && x13 > x16 f6779_0_max_LE(java.lang.Object(ARRAY(x22)), x23, java.lang.Object(ARRAY(x24)), x25, x26, x27, x22, x28, x29, x30, x22, x22) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x22)), x23, x25 + 1, x30, x22, x30, x22, x22) :|: x24 > x25 && x24 > -1 && x27 >= x26 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x31)), x32, x33, x34, x35, java.lang.Object(ARRAY(x36)), x37, x31, x38, x39, x31, x31) -> f6779_0_max_LE(java.lang.Object(ARRAY(x31)), x32, x33, x34, x35, x40 + x41, x31, x38, x42, x39, x31, x31) :|: x36 > x37 && x36 > -1 && x42 > -1 && x32 < x42 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x43)), x44, x45, x46, x43, x46, x43, x43) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x43)), x44 + 1, 0, x46, x43, x46, x43, x43) :|: x44 + 1 < x43 && x45 > x46 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x47)), x48, x49, x50, x47, x50, x47, x47) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x47)), x48, x49 + 1, x50, x47, x50, x47, x47) :|: x51 > -1 && x49 <= x50 && x48 < x51 && x49 > -1 && x49 - x52 < 0 && x48 < x47 && x48 > 0 && x48 - 1 < x47 && x53 > -1 && x53 > x49 && x54 > -1 && x54 > x49 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x55)), x56, x57, x58, x55, x58, x55, x55) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x55)), x56, x57 + 1, x58, x55, x58, x55, x55) :|: x59 > -1 && x57 <= x58 && x56 < x59 && x57 > -1 && x57 - x60 < 0 && x56 < x55 && x56 > 0 && x61 > -1 && x61 > x57 && x56 - 1 < x55 f6779_0_max_LE(java.lang.Object(ARRAY(x62)), x63, java.lang.Object(ARRAY(x64)), x65, x66, x67, x62, x68, x69, x70, x62, x62) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x62)), x63, x65 + 1, x70, x62, x70, x62, x62) :|: x64 > x65 && x67 < x66 && x64 > -1 ---------------------------------------- (38) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (39) Obligation: Rules: f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i3897:0)), i2743:0, i4071:0, java.lang.Object(o8430put:0), arith, i684:0, i2827:0, i2742:0, i684:0, i684:0) :|: i2827:0 > -1 && i2743:0 <= i2742:0 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 >= 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3897:0 > i2743:0 && i3897:0 > -1 && arith = i2743:0 - i5387:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x71)), x72, x73, x74, x71, x74, x71, x71) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x71)), x72, x75, x73, x76, java.lang.Object(x77), x78, x71, x79, x74, x71, x71) :|: x79 > -1 && x73 <= x74 && x72 < x79 && x73 > -1 && x73 - x80 >= 0 && x72 < x71 && x72 > 0 && x72 - 1 < x71 && x81 > x73 && x81 > -1 && x78 = x73 - x82 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x83)), x84, java.lang.Object(ARRAY(x85)), x86, x87, java.lang.Object(ARRAY(x85)), x88, x83, x89, x90, x83, x83) -> f6779_0_max_LE(java.lang.Object(ARRAY(x83)), x84, java.lang.Object(ARRAY(x85)), x86, x87, x91, x83, x89, x92, x90, x83, x83) :|: x85 > -1 && x92 > -1 && x84 < x92 && x85 > x88 && x91 = x93 + x94 f6779_0_max_LE(java.lang.Object(ARRAY(x95)), x96, java.lang.Object(ARRAY(x97)), x98, x99, x100, x95, x101, x102, x103, x95, x95) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x95)), x96, x104, x103, x95, x103, x95, x95) :|: x97 > x98 && x97 > -1 && x100 >= x99 && x104 = x98 + 1 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x105)), x106, x107, x108, x109, java.lang.Object(ARRAY(x110)), x111, x105, x112, x113, x105, x105) -> f6779_0_max_LE(java.lang.Object(ARRAY(x105)), x106, x107, x108, x109, x114, x105, x112, x115, x113, x105, x105) :|: x110 > x111 && x110 > -1 && x115 > -1 && x106 < x115 && x114 = x116 + x117 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118)), x119, x120, x121, x118, x121, x118, x118) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118)), x122, 0, x121, x118, x121, x118, x118) :|: x119 + 1 < x118 && x120 > x121 && x122 = x119 + 1 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x125, x126, x123, x126, x123, x123) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x127, x126, x123, x126, x123, x123) :|: x128 > -1 && x125 <= x126 && x124 < x128 && x125 > -1 && x125 - x129 < 0 && x124 < x123 && x124 > 0 && x124 - 1 < x123 && x130 > -1 && x130 > x125 && x131 > -1 && x131 > x125 && x127 = x125 + 1 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132)), x133, x134, x135, x132, x135, x132, x132) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132)), x133, x136, x135, x132, x135, x132, x132) :|: x137 > -1 && x134 <= x135 && x133 < x137 && x134 > -1 && x134 - x138 < 0 && x133 < x132 && x133 > 0 && x139 > -1 && x139 > x134 && x133 - 1 < x132 && x136 = x134 + 1 f6779_0_max_LE(java.lang.Object(ARRAY(x140)), x141, java.lang.Object(ARRAY(x142)), x143, x144, x145, x140, x146, x147, x148, x140, x140) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x140)), x141, x149, x148, x140, x148, x140, x140) :|: x142 > x143 && x145 < x144 && x142 > -1 && x149 = x143 + 1 ---------------------------------------- (40) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i3897:0)), i2743:0, i4071:0, java.lang.Object(o8430put:0), arith, i684:0, i2827:0, i2742:0, i684:0, i684:0) :|: i2827:0 > -1 && i2743:0 <= i2742:0 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 >= 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3897:0 > i2743:0 && i3897:0 > -1 && arith = i2743:0 - i5387:0 (2) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x71)), x72, x73, x74, x71, x74, x71, x71) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x71)), x72, x75, x73, x76, java.lang.Object(x77), x78, x71, x79, x74, x71, x71) :|: x79 > -1 && x73 <= x74 && x72 < x79 && x73 > -1 && x73 - x80 >= 0 && x72 < x71 && x72 > 0 && x72 - 1 < x71 && x81 > x73 && x81 > -1 && x78 = x73 - x82 (3) f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x83)), x84, java.lang.Object(ARRAY(x85)), x86, x87, java.lang.Object(ARRAY(x85)), x88, x83, x89, x90, x83, x83) -> f6779_0_max_LE(java.lang.Object(ARRAY(x83)), x84, java.lang.Object(ARRAY(x85)), x86, x87, x91, x83, x89, x92, x90, x83, x83) :|: x85 > -1 && x92 > -1 && x84 < x92 && x85 > x88 && x91 = x93 + x94 (4) f6779_0_max_LE(java.lang.Object(ARRAY(x95)), x96, java.lang.Object(ARRAY(x97)), x98, x99, x100, x95, x101, x102, x103, x95, x95) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x95)), x96, x104, x103, x95, x103, x95, x95) :|: x97 > x98 && x97 > -1 && x100 >= x99 && x104 = x98 + 1 (5) f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x105)), x106, x107, x108, x109, java.lang.Object(ARRAY(x110)), x111, x105, x112, x113, x105, x105) -> f6779_0_max_LE(java.lang.Object(ARRAY(x105)), x106, x107, x108, x109, x114, x105, x112, x115, x113, x105, x105) :|: x110 > x111 && x110 > -1 && x115 > -1 && x106 < x115 && x114 = x116 + x117 (6) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118)), x119, x120, x121, x118, x121, x118, x118) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118)), x122, 0, x121, x118, x121, x118, x118) :|: x119 + 1 < x118 && x120 > x121 && x122 = x119 + 1 (7) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x125, x126, x123, x126, x123, x123) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x127, x126, x123, x126, x123, x123) :|: x128 > -1 && x125 <= x126 && x124 < x128 && x125 > -1 && x125 - x129 < 0 && x124 < x123 && x124 > 0 && x124 - 1 < x123 && x130 > -1 && x130 > x125 && x131 > -1 && x131 > x125 && x127 = x125 + 1 (8) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132)), x133, x134, x135, x132, x135, x132, x132) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132)), x133, x136, x135, x132, x135, x132, x132) :|: x137 > -1 && x134 <= x135 && x133 < x137 && x134 > -1 && x134 - x138 < 0 && x133 < x132 && x133 > 0 && x139 > -1 && x139 > x134 && x133 - 1 < x132 && x136 = x134 + 1 (9) f6779_0_max_LE(java.lang.Object(ARRAY(x140)), x141, java.lang.Object(ARRAY(x142)), x143, x144, x145, x140, x146, x147, x148, x140, x140) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x140)), x141, x149, x148, x140, x148, x140, x140) :|: x142 > x143 && x145 < x144 && x142 > -1 && x149 = x143 + 1 Arcs: (1) -> (3), (5) (2) -> (3), (5) (3) -> (4), (9) (4) -> (1), (2), (6), (7), (8) (5) -> (4), (9) (6) -> (1), (2), (6), (7), (8) (7) -> (1), (2), (6), (7), (8) (8) -> (1), (2), (6), (7), (8) (9) -> (1), (2), (6), (7), (8) This digraph is fully evaluated! ---------------------------------------- (41) Obligation: Termination digraph: Nodes: (1) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0)), i686:0, i2743:0, i2742:0, i684:0, i2742:0, i684:0, i684:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0)), i686:0, java.lang.Object(ARRAY(i3897:0)), i2743:0, i4071:0, java.lang.Object(o8430put:0), arith, i684:0, i2827:0, i2742:0, i684:0, i684:0) :|: i2827:0 > -1 && i2743:0 <= i2742:0 && i686:0 < i2827:0 && i2743:0 > -1 && i2743:0 - i2843:0 >= 0 && i686:0 < i684:0 && i686:0 > 0 && i686:0 - 1 < i684:0 && i3897:0 > i2743:0 && i3897:0 > -1 && arith = i2743:0 - i5387:0 (2) f6779_0_max_LE(java.lang.Object(ARRAY(x95)), x96, java.lang.Object(ARRAY(x97)), x98, x99, x100, x95, x101, x102, x103, x95, x95) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x95)), x96, x104, x103, x95, x103, x95, x95) :|: x97 > x98 && x97 > -1 && x100 >= x99 && x104 = x98 + 1 (3) f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x83)), x84, java.lang.Object(ARRAY(x85)), x86, x87, java.lang.Object(ARRAY(x85)), x88, x83, x89, x90, x83, x83) -> f6779_0_max_LE(java.lang.Object(ARRAY(x83)), x84, java.lang.Object(ARRAY(x85)), x86, x87, x91, x83, x89, x92, x90, x83, x83) :|: x85 > -1 && x92 > -1 && x84 < x92 && x85 > x88 && x91 = x93 + x94 (4) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x71)), x72, x73, x74, x71, x74, x71, x71) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x71)), x72, x75, x73, x76, java.lang.Object(x77), x78, x71, x79, x74, x71, x71) :|: x79 > -1 && x73 <= x74 && x72 < x79 && x73 > -1 && x73 - x80 >= 0 && x72 < x71 && x72 > 0 && x72 - 1 < x71 && x81 > x73 && x81 > -1 && x78 = x73 - x82 (5) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118)), x119, x120, x121, x118, x121, x118, x118) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118)), x122, 0, x121, x118, x121, x118, x118) :|: x119 + 1 < x118 && x120 > x121 && x122 = x119 + 1 (6) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x125, x126, x123, x126, x123, x123) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x127, x126, x123, x126, x123, x123) :|: x128 > -1 && x125 <= x126 && x124 < x128 && x125 > -1 && x125 - x129 < 0 && x124 < x123 && x124 > 0 && x124 - 1 < x123 && x130 > -1 && x130 > x125 && x131 > -1 && x131 > x125 && x127 = x125 + 1 (7) f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132)), x133, x134, x135, x132, x135, x132, x132) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132)), x133, x136, x135, x132, x135, x132, x132) :|: x137 > -1 && x134 <= x135 && x133 < x137 && x134 > -1 && x134 - x138 < 0 && x133 < x132 && x133 > 0 && x139 > -1 && x139 > x134 && x133 - 1 < x132 && x136 = x134 + 1 (8) f6779_0_max_LE(java.lang.Object(ARRAY(x140)), x141, java.lang.Object(ARRAY(x142)), x143, x144, x145, x140, x146, x147, x148, x140, x140) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x140)), x141, x149, x148, x140, x148, x140, x140) :|: x142 > x143 && x145 < x144 && x142 > -1 && x149 = x143 + 1 (9) f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x105)), x106, x107, x108, x109, java.lang.Object(ARRAY(x110)), x111, x105, x112, x113, x105, x105) -> f6779_0_max_LE(java.lang.Object(ARRAY(x105)), x106, x107, x108, x109, x114, x105, x112, x115, x113, x105, x105) :|: x110 > x111 && x110 > -1 && x115 > -1 && x106 < x115 && x114 = x116 + x117 Arcs: (1) -> (3), (9) (2) -> (1), (4), (5), (6), (7) (3) -> (2), (8) (4) -> (3), (9) (5) -> (1), (4), (5), (6), (7) (6) -> (1), (4), (5), (6), (7) (7) -> (1), (4), (5), (6), (7) (8) -> (1), (4), (5), (6), (7) (9) -> (2), (8) This digraph is fully evaluated! ---------------------------------------- (42) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (43) Obligation: Rules: f6779_0_max_LE(java.lang.Object(ARRAY(x140:0)), x141:0, java.lang.Object(ARRAY(x142:0)), x143:0, x144:0, x145:0, x140:0, x146:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x140:0)), x141:0, x143:0 + 1, x148:0, x140:0, x148:0, x140:0, x140:0) :|: x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x83:0)), x84:0, java.lang.Object(ARRAY(x85:0)), x86:0, x87:0, java.lang.Object(ARRAY(x85:0)), x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(java.lang.Object(ARRAY(x83:0)), x84:0, java.lang.Object(ARRAY(x85:0)), x86:0, x87:0, x93:0 + x94:0, x83:0, x89:0, x92:0, x90:0, x83:0, x83:0) :|: x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118:0)), x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118:0)), x119:0 + 1, 0, x121:0, x118:0, x121:0, x118:0, x118:0) :|: x119:0 + 1 < x118:0 && x121:0 < x120:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132:0)), x133:0, x134:0, x135:0, x132:0, x135:0, x132:0, x132:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132:0)), x133:0, x134:0 + 1, x135:0, x132:0, x135:0, x132:0, x132:0) :|: x139:0 > x134:0 && x133:0 - 1 < x132:0 && x139:0 > -1 && x133:0 > 0 && x133:0 < x132:0 && x134:0 - x138:0 < 0 && x134:0 > -1 && x137:0 > x133:0 && x135:0 >= x134:0 && x137:0 > -1 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x105:0)), x106:0, x107:0, x108:0, x109:0, java.lang.Object(ARRAY(x110:0)), x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(java.lang.Object(ARRAY(x105:0)), x106:0, x107:0, x108:0, x109:0, x116:0 + x117:0, x105:0, x112:0, x115:0, x113:0, x105:0, x105:0) :|: x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x71:0)), x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x71:0)), x72:0, x75:0, x73:0, x76:0, java.lang.Object(x77:0), x73:0 - x82:0, x71:0, x79:0, x74:0, x71:0, x71:0) :|: x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1 f6779_0_max_LE(java.lang.Object(ARRAY(x95:0)), x96:0, java.lang.Object(ARRAY(x97:0)), x98:0, x99:0, x100:0, x95:0, x101:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x95:0)), x96:0, x98:0 + 1, x103:0, x95:0, x103:0, x95:0, x95:0) :|: x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0:0)), i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0:0)), i686:0:0, java.lang.Object(ARRAY(i3897:0:0)), i2743:0:0, i4071:0:0, java.lang.Object(o8430put:0:0), i2743:0:0 - i5387:0:0, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123:0)), x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123:0)), x124:0, x125:0 + 1, x126:0, x123:0, x126:0, x123:0, x123:0) :|: x131:0 > -1 && x131:0 > x125:0 && x130:0 > x125:0 && x130:0 > -1 && x124:0 - 1 < x123:0 && x124:0 > 0 && x124:0 < x123:0 && x125:0 - x129:0 < 0 && x125:0 > -1 && x128:0 > x124:0 && x126:0 >= x125:0 && x128:0 > -1 ---------------------------------------- (44) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: f6779_0_max_LE(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) -> f6779_0_max_LE(x1, x2, x3, x4, x5, x6, x7, x9, x10, x11, x12) ---------------------------------------- (45) Obligation: Rules: f6779_0_max_LE(java.lang.Object(ARRAY(x140:0)), x141:0, java.lang.Object(ARRAY(x142:0)), x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x140:0)), x141:0, x143:0 + 1, x148:0, x140:0, x148:0, x140:0, x140:0) :|: x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x83:0)), x84:0, java.lang.Object(ARRAY(x85:0)), x86:0, x87:0, java.lang.Object(ARRAY(x85:0)), x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(java.lang.Object(ARRAY(x83:0)), x84:0, java.lang.Object(ARRAY(x85:0)), x86:0, x87:0, x93:0 + x94:0, x83:0, x92:0, x90:0, x83:0, x83:0) :|: x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118:0)), x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x118:0)), x119:0 + 1, 0, x121:0, x118:0, x121:0, x118:0, x118:0) :|: x119:0 + 1 < x118:0 && x121:0 < x120:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132:0)), x133:0, x134:0, x135:0, x132:0, x135:0, x132:0, x132:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x132:0)), x133:0, x134:0 + 1, x135:0, x132:0, x135:0, x132:0, x132:0) :|: x139:0 > x134:0 && x133:0 - 1 < x132:0 && x139:0 > -1 && x133:0 > 0 && x133:0 < x132:0 && x134:0 - x138:0 < 0 && x134:0 > -1 && x137:0 > x133:0 && x135:0 >= x134:0 && x137:0 > -1 f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x105:0)), x106:0, x107:0, x108:0, x109:0, java.lang.Object(ARRAY(x110:0)), x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(java.lang.Object(ARRAY(x105:0)), x106:0, x107:0, x108:0, x109:0, x116:0 + x117:0, x105:0, x115:0, x113:0, x105:0, x105:0) :|: x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x71:0)), x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x71:0)), x72:0, x75:0, x73:0, x76:0, java.lang.Object(x77:0), x73:0 - x82:0, x71:0, x79:0, x74:0, x71:0, x71:0) :|: x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1 f6779_0_max_LE(java.lang.Object(ARRAY(x95:0)), x96:0, java.lang.Object(ARRAY(x97:0)), x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x95:0)), x96:0, x98:0 + 1, x103:0, x95:0, x103:0, x95:0, x95:0) :|: x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(i684:0:0)), i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i684:0:0)), i686:0:0, java.lang.Object(ARRAY(i3897:0:0)), i2743:0:0, i4071:0:0, java.lang.Object(o8430put:0:0), i2743:0:0 - i5387:0:0, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1 f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123:0)), x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f5817_0_SolveDP_GT(java.lang.Object(ARRAY(x123:0)), x124:0, x125:0 + 1, x126:0, x123:0, x126:0, x123:0, x123:0) :|: x131:0 > -1 && x131:0 > x125:0 && x130:0 > x125:0 && x130:0 > -1 && x124:0 - 1 < x123:0 && x124:0 > 0 && x124:0 < x123:0 && x125:0 - x129:0 < 0 && x125:0 > -1 && x128:0 > x124:0 && x126:0 >= x125:0 && x128:0 > -1 ---------------------------------------- (46) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f6779_0_max_LE(VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, INTEGER, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE) java.lang.Object(VARIABLE) ARRAY(VARIABLE) f5817_0_SolveDP_GT(VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE) f6559_0_SolveDP_ArrayAccess(VARIABLE, INTEGER, VARIABLE, VARIABLE, VARIABLE, VARIABLE, INTEGER, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (47) Obligation: Rules: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f5817_0_SolveDP_GT(c10, x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(c11, c12, c13, x121:0, x118:0, x121:0, x118:0, x118:0) :|: c13 = 0 && (c12 = x119:0 + 1 && (c11 = 0 && c10 = 0)) && (x119:0 + 1 < x118:0 && x121:0 < x120:0) f5817_0_SolveDP_GT(c14, x133:0, x134:0, x135:0, x132:0, x135:0, x132:0, x132:0) -> f5817_0_SolveDP_GT(c15, x133:0, c16, x135:0, x132:0, x135:0, x132:0, x132:0) :|: c16 = x134:0 + 1 && (c15 = 0 && c14 = 0) && (x139:0 > x134:0 && x133:0 - 1 < x132:0 && x139:0 > -1 && x133:0 > 0 && x133:0 < x132:0 && x134:0 - x138:0 < 0 && x134:0 > -1 && x137:0 > x133:0 && x135:0 >= x134:0 && x137:0 > -1) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) f5817_0_SolveDP_GT(c21, x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(c22, x72:0, x75:0, x73:0, x76:0, c23, c24, x71:0, x79:0, x74:0, x71:0, x71:0) :|: c24 = x73:0 - x82:0 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) f5817_0_SolveDP_GT(c29, i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(c30, i686:0:0, c31, i2743:0:0, i4071:0:0, c32, c33, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: c33 = i2743:0:0 - i5387:0:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && c29 = 0))) && (i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1) f5817_0_SolveDP_GT(c34, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f5817_0_SolveDP_GT(c35, x124:0, c36, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c36 = x125:0 + 1 && (c35 = 0 && c34 = 0) && (x131:0 > -1 && x131:0 > x125:0 && x130:0 > x125:0 && x130:0 > -1 && x124:0 - 1 < x123:0 && x124:0 > 0 && x124:0 < x123:0 && x125:0 - x129:0 < 0 && x125:0 > -1 && x128:0 > x124:0 && x126:0 >= x125:0 && x128:0 > -1) ---------------------------------------- (48) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6779_0_max_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)] = -1 + c*x - x1 + x6 + 2*x8 [f5817_0_SolveDP_GT(x11, x12, x13, x14, x15, x16, x17, x18)] = -1 + c11*x11 - x12 + 2*x14 + x18 [f6559_0_SolveDP_ArrayAccess(x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)] = -1 + c19*x19 - x20 + c24*x24 + 2*x28 + x29 The following rules are decreasing: f5817_0_SolveDP_GT(c10, x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(c11, c12, c13, x121:0, x118:0, x121:0, x118:0, x118:0) :|: c13 = 0 && (c12 = x119:0 + 1 && (c11 = 0 && c10 = 0)) && (x119:0 + 1 < x118:0 && x121:0 < x120:0) The following rules are bounded: f5817_0_SolveDP_GT(c14, x133:0, x134:0, x135:0, x132:0, x135:0, x132:0, x132:0) -> f5817_0_SolveDP_GT(c15, x133:0, c16, x135:0, x132:0, x135:0, x132:0, x132:0) :|: c16 = x134:0 + 1 && (c15 = 0 && c14 = 0) && (x139:0 > x134:0 && x133:0 - 1 < x132:0 && x139:0 > -1 && x133:0 > 0 && x133:0 < x132:0 && x134:0 - x138:0 < 0 && x134:0 > -1 && x137:0 > x133:0 && x135:0 >= x134:0 && x137:0 > -1) f5817_0_SolveDP_GT(c21, x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(c22, x72:0, x75:0, x73:0, x76:0, c23, c24, x71:0, x79:0, x74:0, x71:0, x71:0) :|: c24 = x73:0 - x82:0 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1) f5817_0_SolveDP_GT(c29, i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(c30, i686:0:0, c31, i2743:0:0, i4071:0:0, c32, c33, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: c33 = i2743:0:0 - i5387:0:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && c29 = 0))) && (i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1) f5817_0_SolveDP_GT(c34, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f5817_0_SolveDP_GT(c35, x124:0, c36, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c36 = x125:0 + 1 && (c35 = 0 && c34 = 0) && (x131:0 > -1 && x131:0 > x125:0 && x130:0 > x125:0 && x130:0 > -1 && x124:0 - 1 < x123:0 && x124:0 > 0 && x124:0 < x123:0 && x125:0 - x129:0 < 0 && x125:0 > -1 && x128:0 > x124:0 && x126:0 >= x125:0 && x128:0 > -1) ---------------------------------------- (49) Complex Obligation (AND) ---------------------------------------- (50) Obligation: Rules: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f5817_0_SolveDP_GT(c14, x133:0, x134:0, x135:0, x132:0, x135:0, x132:0, x132:0) -> f5817_0_SolveDP_GT(c15, x133:0, c16, x135:0, x132:0, x135:0, x132:0, x132:0) :|: c16 = x134:0 + 1 && (c15 = 0 && c14 = 0) && (x139:0 > x134:0 && x133:0 - 1 < x132:0 && x139:0 > -1 && x133:0 > 0 && x133:0 < x132:0 && x134:0 - x138:0 < 0 && x134:0 > -1 && x137:0 > x133:0 && x135:0 >= x134:0 && x137:0 > -1) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) f5817_0_SolveDP_GT(c21, x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(c22, x72:0, x75:0, x73:0, x76:0, c23, c24, x71:0, x79:0, x74:0, x71:0, x71:0) :|: c24 = x73:0 - x82:0 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) f5817_0_SolveDP_GT(c29, i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(c30, i686:0:0, c31, i2743:0:0, i4071:0:0, c32, c33, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: c33 = i2743:0:0 - i5387:0:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && c29 = 0))) && (i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1) f5817_0_SolveDP_GT(c34, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f5817_0_SolveDP_GT(c35, x124:0, c36, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c36 = x125:0 + 1 && (c35 = 0 && c34 = 0) && (x131:0 > -1 && x131:0 > x125:0 && x130:0 > x125:0 && x130:0 > -1 && x124:0 - 1 < x123:0 && x124:0 > 0 && x124:0 < x123:0 && x125:0 - x129:0 < 0 && x125:0 > -1 && x128:0 > x124:0 && x126:0 >= x125:0 && x128:0 > -1) ---------------------------------------- (51) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6779_0_max_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)] = -2 + c*x - x1 - x3 + x6 + x8 [f5817_0_SolveDP_GT(x11, x12, x13, x14, x15, x16, x17, x18)] = -1 + c11*x11 - x12 - x13 + x14 + x18 [f6559_0_SolveDP_ArrayAccess(x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)] = -1 + c19*x19 - x20 - x22 + c24*x24 + x28 + x30 The following rules are decreasing: f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f5817_0_SolveDP_GT(c14, x133:0, x134:0, x135:0, x132:0, x135:0, x132:0, x132:0) -> f5817_0_SolveDP_GT(c15, x133:0, c16, x135:0, x132:0, x135:0, x132:0, x132:0) :|: c16 = x134:0 + 1 && (c15 = 0 && c14 = 0) && (x139:0 > x134:0 && x133:0 - 1 < x132:0 && x139:0 > -1 && x133:0 > 0 && x133:0 < x132:0 && x134:0 - x138:0 < 0 && x134:0 > -1 && x137:0 > x133:0 && x135:0 >= x134:0 && x137:0 > -1) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) f5817_0_SolveDP_GT(c34, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f5817_0_SolveDP_GT(c35, x124:0, c36, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c36 = x125:0 + 1 && (c35 = 0 && c34 = 0) && (x131:0 > -1 && x131:0 > x125:0 && x130:0 > x125:0 && x130:0 > -1 && x124:0 - 1 < x123:0 && x124:0 > 0 && x124:0 < x123:0 && x125:0 - x129:0 < 0 && x125:0 > -1 && x128:0 > x124:0 && x126:0 >= x125:0 && x128:0 > -1) The following rules are bounded: f5817_0_SolveDP_GT(c14, x133:0, x134:0, x135:0, x132:0, x135:0, x132:0, x132:0) -> f5817_0_SolveDP_GT(c15, x133:0, c16, x135:0, x132:0, x135:0, x132:0, x132:0) :|: c16 = x134:0 + 1 && (c15 = 0 && c14 = 0) && (x139:0 > x134:0 && x133:0 - 1 < x132:0 && x139:0 > -1 && x133:0 > 0 && x133:0 < x132:0 && x134:0 - x138:0 < 0 && x134:0 > -1 && x137:0 > x133:0 && x135:0 >= x134:0 && x137:0 > -1) f5817_0_SolveDP_GT(c21, x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(c22, x72:0, x75:0, x73:0, x76:0, c23, c24, x71:0, x79:0, x74:0, x71:0, x71:0) :|: c24 = x73:0 - x82:0 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1) f5817_0_SolveDP_GT(c29, i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(c30, i686:0:0, c31, i2743:0:0, i4071:0:0, c32, c33, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: c33 = i2743:0:0 - i5387:0:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && c29 = 0))) && (i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1) f5817_0_SolveDP_GT(c34, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f5817_0_SolveDP_GT(c35, x124:0, c36, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c36 = x125:0 + 1 && (c35 = 0 && c34 = 0) && (x131:0 > -1 && x131:0 > x125:0 && x130:0 > x125:0 && x130:0 > -1 && x124:0 - 1 < x123:0 && x124:0 > 0 && x124:0 < x123:0 && x125:0 - x129:0 < 0 && x125:0 > -1 && x128:0 > x124:0 && x126:0 >= x125:0 && x128:0 > -1) ---------------------------------------- (52) Complex Obligation (AND) ---------------------------------------- (53) Obligation: Rules: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f5817_0_SolveDP_GT(c21, x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(c22, x72:0, x75:0, x73:0, x76:0, c23, c24, x71:0, x79:0, x74:0, x71:0, x71:0) :|: c24 = x73:0 - x82:0 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) f5817_0_SolveDP_GT(c29, i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(c30, i686:0:0, c31, i2743:0:0, i4071:0:0, c32, c33, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: c33 = i2743:0:0 - i5387:0:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && c29 = 0))) && (i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1) ---------------------------------------- (54) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f6779_0_max_LE ] = 2 [ f5817_0_SolveDP_GT ] = 1 [ f6559_0_SolveDP_ArrayAccess ] = 0 The following rules are decreasing: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f5817_0_SolveDP_GT(c21, x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(c22, x72:0, x75:0, x73:0, x76:0, c23, c24, x71:0, x79:0, x74:0, x71:0, x71:0) :|: c24 = x73:0 - x82:0 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) f5817_0_SolveDP_GT(c29, i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(c30, i686:0:0, c31, i2743:0:0, i4071:0:0, c32, c33, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: c33 = i2743:0:0 - i5387:0:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && c29 = 0))) && (i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1) The following rules are bounded: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f5817_0_SolveDP_GT(c21, x72:0, x73:0, x74:0, x71:0, x74:0, x71:0, x71:0) -> f6559_0_SolveDP_ArrayAccess(c22, x72:0, x75:0, x73:0, x76:0, c23, c24, x71:0, x79:0, x74:0, x71:0, x71:0) :|: c24 = x73:0 - x82:0 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (x81:0 > x73:0 && x81:0 > -1 && x72:0 - 1 < x71:0 && x72:0 > 0 && x72:0 < x71:0 && x73:0 - x80:0 >= 0 && x73:0 > -1 && x79:0 > x72:0 && x74:0 >= x73:0 && x79:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) f5817_0_SolveDP_GT(c29, i686:0:0, i2743:0:0, i2742:0:0, i684:0:0, i2742:0:0, i684:0:0, i684:0:0) -> f6559_0_SolveDP_ArrayAccess(c30, i686:0:0, c31, i2743:0:0, i4071:0:0, c32, c33, i684:0:0, i2827:0:0, i2742:0:0, i684:0:0, i684:0:0) :|: c33 = i2743:0:0 - i5387:0:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && c29 = 0))) && (i3897:0:0 > i2743:0:0 && i3897:0:0 > -1 && i686:0:0 - 1 < i684:0:0 && i686:0:0 > 0 && i686:0:0 < i684:0:0 && i2743:0:0 - i2843:0:0 >= 0 && i2743:0:0 > -1 && i686:0:0 < i2827:0:0 && i2743:0:0 <= i2742:0:0 && i2827:0:0 > -1) ---------------------------------------- (55) YES ---------------------------------------- (56) Obligation: Rules: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) ---------------------------------------- (57) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6779_0_max_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)] = c*x [f5817_0_SolveDP_GT(x11, x12, x13, x14, x15, x16, x17, x18)] = c11*x11 [f6559_0_SolveDP_ArrayAccess(x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)] = 1 + c19*x19 + c24*x24 The following rules are decreasing: f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) The following rules are bounded: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) ---------------------------------------- (58) Obligation: Rules: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) ---------------------------------------- (59) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6779_0_max_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)] = c*x + c2*x2 [f5817_0_SolveDP_GT(x11, x12, x13, x14, x15, x16, x17, x18)] = -1 + c11*x11 The following rules are decreasing: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) The following rules are bounded: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) ---------------------------------------- (60) YES ---------------------------------------- (61) Obligation: Rules: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f5817_0_SolveDP_GT(c10, x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(c11, c12, c13, x121:0, x118:0, x121:0, x118:0, x118:0) :|: c13 = 0 && (c12 = x119:0 + 1 && (c11 = 0 && c10 = 0)) && (x119:0 + 1 < x118:0 && x121:0 < x120:0) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) ---------------------------------------- (62) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6779_0_max_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)] = c*x [f5817_0_SolveDP_GT(x11, x12, x13, x14, x15, x16, x17, x18)] = c11*x11 [f6559_0_SolveDP_ArrayAccess(x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)] = 1 + c19*x19 + c24*x24 The following rules are decreasing: f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) The following rules are bounded: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6559_0_SolveDP_ArrayAccess(c4, x84:0, c5, x86:0, x87:0, c6, x88:0, x83:0, x89:0, x90:0, x83:0, x83:0) -> f6779_0_max_LE(c7, x84:0, c8, x86:0, x87:0, c9, x83:0, x92:0, x90:0, x83:0, x83:0) :|: c9 = x93:0 + x94:0 && (c8 = 0 && (c7 = 0 && (c6 = 0 && (c5 = 0 && c4 = 0)))) && (x92:0 > x84:0 && x88:0 < x85:0 && x92:0 > -1 && x85:0 > -1) f5817_0_SolveDP_GT(c10, x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(c11, c12, c13, x121:0, x118:0, x121:0, x118:0, x118:0) :|: c13 = 0 && (c12 = x119:0 + 1 && (c11 = 0 && c10 = 0)) && (x119:0 + 1 < x118:0 && x121:0 < x120:0) f6559_0_SolveDP_ArrayAccess(c17, x106:0, x107:0, x108:0, x109:0, c18, x111:0, x105:0, x112:0, x113:0, x105:0, x105:0) -> f6779_0_max_LE(c19, x106:0, x107:0, x108:0, x109:0, c20, x105:0, x115:0, x113:0, x105:0, x105:0) :|: c20 = x116:0 + x117:0 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x115:0 > -1 && x115:0 > x106:0 && x110:0 > -1 && x111:0 < x110:0) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) ---------------------------------------- (63) Obligation: Rules: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f5817_0_SolveDP_GT(c10, x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(c11, c12, c13, x121:0, x118:0, x121:0, x118:0, x118:0) :|: c13 = 0 && (c12 = x119:0 + 1 && (c11 = 0 && c10 = 0)) && (x119:0 + 1 < x118:0 && x121:0 < x120:0) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) ---------------------------------------- (64) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6779_0_max_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)] = c*x + c2*x2 [f5817_0_SolveDP_GT(x11, x12, x13, x14, x15, x16, x17, x18)] = -1 + c11*x11 The following rules are decreasing: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) The following rules are bounded: f6779_0_max_LE(c, x141:0, c1, x143:0, x144:0, x145:0, x140:0, x147:0, x148:0, x140:0, x140:0) -> f5817_0_SolveDP_GT(c2, x141:0, c3, x148:0, x140:0, x148:0, x140:0, x140:0) :|: c3 = x143:0 + 1 && (c2 = 0 && (c1 = 0 && c = 0)) && (x143:0 < x142:0 && x145:0 < x144:0 && x142:0 > -1) f6779_0_max_LE(c25, x96:0, c26, x98:0, x99:0, x100:0, x95:0, x102:0, x103:0, x95:0, x95:0) -> f5817_0_SolveDP_GT(c27, x96:0, c28, x103:0, x95:0, x103:0, x95:0, x95:0) :|: c28 = x98:0 + 1 && (c27 = 0 && (c26 = 0 && c25 = 0)) && (x98:0 < x97:0 && x97:0 > -1 && x99:0 <= x100:0) ---------------------------------------- (65) Obligation: Rules: f5817_0_SolveDP_GT(c10, x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(c11, c12, c13, x121:0, x118:0, x121:0, x118:0, x118:0) :|: c13 = 0 && (c12 = x119:0 + 1 && (c11 = 0 && c10 = 0)) && (x119:0 + 1 < x118:0 && x121:0 < x120:0) ---------------------------------------- (66) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f5817_0_SolveDP_GT ] = -1*f5817_0_SolveDP_GT_2 + f5817_0_SolveDP_GT_8 The following rules are decreasing: f5817_0_SolveDP_GT(c10, x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(c11, c12, c13, x121:0, x118:0, x121:0, x118:0, x118:0) :|: c13 = 0 && (c12 = x119:0 + 1 && (c11 = 0 && c10 = 0)) && (x119:0 + 1 < x118:0 && x121:0 < x120:0) The following rules are bounded: f5817_0_SolveDP_GT(c10, x119:0, x120:0, x121:0, x118:0, x121:0, x118:0, x118:0) -> f5817_0_SolveDP_GT(c11, c12, c13, x121:0, x118:0, x121:0, x118:0, x118:0) :|: c13 = 0 && (c12 = x119:0 + 1 && (c11 = 0 && c10 = 0)) && (x119:0 + 1 < x118:0 && x121:0 < x120:0) ---------------------------------------- (67) YES ---------------------------------------- (68) Obligation: SCC of termination graph based on JBC Program. SCC contains nodes from the following methods: KnapsackDP.main([Ljava/lang/String;)V SCC calls the following helper methods: Performed SCC analyses: *Used field analysis yielded the following read fields: *Marker field analysis yielded the following relations that could be markers: ---------------------------------------- (69) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 47 IRulesP rules: f1960_0_SolveDP_FieldAccess(EOS(STATIC_1960(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502) -> f1962_0_SolveDP_GT(EOS(STATIC_1962(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i501) :|: TRUE f1962_0_SolveDP_GT(EOS(STATIC_1962(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i501) -> f1972_0_SolveDP_GT(EOS(STATIC_1972(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i501) :|: i502 <= i501 f1972_0_SolveDP_GT(EOS(STATIC_1972(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i501) -> f1989_0_SolveDP_Load(EOS(STATIC_1989(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502) :|: i502 <= i501 f1989_0_SolveDP_Load(EOS(STATIC_1989(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502) -> f1991_0_SolveDP_FieldAccess(EOS(STATIC_1991(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502) :|: TRUE f1991_0_SolveDP_FieldAccess(EOS(STATIC_1991(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502) -> f1993_0_SolveDP_ConstantStackPush(EOS(STATIC_1993(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, o454) :|: TRUE f1993_0_SolveDP_ConstantStackPush(EOS(STATIC_1993(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, o454) -> f1995_0_SolveDP_ArrayAccess(EOS(STATIC_1995(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, o454, 0) :|: TRUE f1995_0_SolveDP_ArrayAccess(EOS(STATIC_1995(java.lang.Object(o462put), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, java.lang.Object(o462put), matching1) -> f1997_0_SolveDP_ArrayAccess(EOS(STATIC_1997(java.lang.Object(o462put), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, java.lang.Object(o462put), 0) :|: TRUE && matching1 = 0 f1997_0_SolveDP_ArrayAccess(EOS(STATIC_1997(java.lang.Object(ARRAY(i512)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, java.lang.Object(ARRAY(i512)), matching1) -> f2001_0_SolveDP_ArrayAccess(EOS(STATIC_2001(java.lang.Object(ARRAY(i512)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, java.lang.Object(ARRAY(i512)), 0) :|: i512 >= 0 && matching1 = 0 f2001_0_SolveDP_ArrayAccess(EOS(STATIC_2001(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, java.lang.Object(ARRAY(i514)), matching1) -> f2015_0_SolveDP_ArrayAccess(EOS(STATIC_2015(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, java.lang.Object(ARRAY(i514)), 0) :|: TRUE && matching1 = 0 f2015_0_SolveDP_ArrayAccess(EOS(STATIC_2015(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, java.lang.Object(ARRAY(i514)), matching1) -> f2024_0_SolveDP_GE(EOS(STATIC_2024(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i515) :|: 0 < i514 && matching1 = 0 f2024_0_SolveDP_GE(EOS(STATIC_2024(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i515) -> f2042_0_SolveDP_GE(EOS(STATIC_2042(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i515) :|: i502 >= i515 f2024_0_SolveDP_GE(EOS(STATIC_2024(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i515) -> f2043_0_SolveDP_GE(EOS(STATIC_2043(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i515) :|: i502 < i515 f2042_0_SolveDP_GE(EOS(STATIC_2042(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i515) -> f2052_0_SolveDP_FieldAccess(EOS(STATIC_2052(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502) :|: i502 >= i515 f2052_0_SolveDP_FieldAccess(EOS(STATIC_2052(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502) -> f2070_0_SolveDP_ConstantStackPush(EOS(STATIC_2070(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, java.lang.Object(ARRAY(i500))) :|: TRUE f2070_0_SolveDP_ConstantStackPush(EOS(STATIC_2070(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, java.lang.Object(ARRAY(i500))) -> f2104_0_SolveDP_ArrayAccess(EOS(STATIC_2104(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, java.lang.Object(ARRAY(i500)), 0) :|: TRUE f2104_0_SolveDP_ArrayAccess(EOS(STATIC_2104(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(ARRAY(i519)), matching1) -> f2121_0_SolveDP_ArrayAccess(EOS(STATIC_2121(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(ARRAY(i519)), 0) :|: TRUE && matching1 = 0 f2121_0_SolveDP_ArrayAccess(EOS(STATIC_2121(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(ARRAY(i519)), matching1) -> f2172_0_SolveDP_Load(EOS(STATIC_2172(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466) :|: 0 < i519 && matching1 = 0 f2172_0_SolveDP_Load(EOS(STATIC_2172(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466) -> f2225_0_SolveDP_FieldAccess(EOS(STATIC_2225(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502) :|: TRUE f2225_0_SolveDP_FieldAccess(EOS(STATIC_2225(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502) -> f2259_0_SolveDP_ConstantStackPush(EOS(STATIC_2259(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, o455) :|: TRUE f2259_0_SolveDP_ConstantStackPush(EOS(STATIC_2259(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, o455) -> f2272_0_SolveDP_ArrayAccess(EOS(STATIC_2272(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, o455, 0) :|: TRUE f2272_0_SolveDP_ArrayAccess(EOS(STATIC_2272(java.lang.Object(ARRAY(i514)), java.lang.Object(o484put), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, java.lang.Object(o484put), matching1) -> f2282_0_SolveDP_ArrayAccess(EOS(STATIC_2282(java.lang.Object(ARRAY(i514)), java.lang.Object(o484put), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, java.lang.Object(o484put), 0) :|: TRUE && matching1 = 0 f2282_0_SolveDP_ArrayAccess(EOS(STATIC_2282(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i540)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, java.lang.Object(ARRAY(i540)), matching1) -> f2309_0_SolveDP_ArrayAccess(EOS(STATIC_2309(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i540)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, java.lang.Object(ARRAY(i540)), 0) :|: i540 >= 0 && matching1 = 0 f2309_0_SolveDP_ArrayAccess(EOS(STATIC_2309(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, java.lang.Object(ARRAY(i544)), matching1) -> f2353_0_SolveDP_ArrayAccess(EOS(STATIC_2353(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, java.lang.Object(ARRAY(i544)), 0) :|: TRUE && matching1 = 0 f2353_0_SolveDP_ArrayAccess(EOS(STATIC_2353(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502, java.lang.Object(ARRAY(i544)), matching1) -> f2367_0_SolveDP_ArrayAccess(EOS(STATIC_2367(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, o466, i502) :|: 0 < i544 && matching1 = 0 f2367_0_SolveDP_ArrayAccess(EOS(STATIC_2367(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(o492put), i502) -> f2390_0_SolveDP_ArrayAccess(EOS(STATIC_2390(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(o492put), i502) :|: TRUE f2390_0_SolveDP_ArrayAccess(EOS(STATIC_2390(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(ARRAY(i552)), i502) -> f2429_0_SolveDP_ArrayAccess(EOS(STATIC_2429(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(ARRAY(i552)), i502) :|: i552 >= 0 f2429_0_SolveDP_ArrayAccess(EOS(STATIC_2429(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(ARRAY(i552)), i502) -> f2569_0_SolveDP_ArrayAccess(EOS(STATIC_2569(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(ARRAY(i552)), i502) :|: TRUE f2569_0_SolveDP_ArrayAccess(EOS(STATIC_2569(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502, java.lang.Object(ARRAY(i552)), i502) -> f2645_0_SolveDP_Inc(EOS(STATIC_2645(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502) :|: i502 < i552 f2645_0_SolveDP_Inc(EOS(STATIC_2645(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502) -> f2666_0_SolveDP_JMP(EOS(STATIC_2666(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i502 + 1) :|: TRUE f2666_0_SolveDP_JMP(EOS(STATIC_2666(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i571) -> f2744_0_SolveDP_Load(EOS(STATIC_2744(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i571) :|: TRUE f2744_0_SolveDP_Load(EOS(STATIC_2744(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i571) -> f1952_0_SolveDP_Load(EOS(STATIC_1952(java.lang.Object(ARRAY(i514)), java.lang.Object(ARRAY(i544)), i501, java.lang.Object(ARRAY(i519)))), java.lang.Object(ARRAY(i519)), i571) :|: TRUE f1952_0_SolveDP_Load(EOS(STATIC_1952(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502) -> f1960_0_SolveDP_FieldAccess(EOS(STATIC_1960(o454, o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502) :|: TRUE f2043_0_SolveDP_GE(EOS(STATIC_2043(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, i502, i515) -> f2060_0_SolveDP_FieldAccess(EOS(STATIC_2060(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502) :|: i502 < i515 f2060_0_SolveDP_FieldAccess(EOS(STATIC_2060(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502) -> f2072_0_SolveDP_ConstantStackPush(EOS(STATIC_2072(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, java.lang.Object(ARRAY(i500))) :|: TRUE f2072_0_SolveDP_ConstantStackPush(EOS(STATIC_2072(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, java.lang.Object(ARRAY(i500))) -> f2105_0_SolveDP_ArrayAccess(EOS(STATIC_2105(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i500)))), java.lang.Object(ARRAY(i500)), i502, java.lang.Object(ARRAY(i500)), 0) :|: TRUE f2105_0_SolveDP_ArrayAccess(EOS(STATIC_2105(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(ARRAY(i520)), matching1) -> f2160_0_SolveDP_ArrayAccess(EOS(STATIC_2160(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(ARRAY(i520)), 0) :|: TRUE && matching1 = 0 f2160_0_SolveDP_ArrayAccess(EOS(STATIC_2160(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(ARRAY(i520)), matching1) -> f2174_0_SolveDP_Load(EOS(STATIC_2174(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, o468) :|: 0 < i520 && matching1 = 0 f2174_0_SolveDP_Load(EOS(STATIC_2174(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, o468) -> f2226_0_SolveDP_ConstantStackPush(EOS(STATIC_2226(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, o468, i502) :|: TRUE f2226_0_SolveDP_ConstantStackPush(EOS(STATIC_2226(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, o468, i502) -> f2263_0_SolveDP_ArrayAccess(EOS(STATIC_2263(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, o468, i502) :|: TRUE f2263_0_SolveDP_ArrayAccess(EOS(STATIC_2263(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(o483put), i502) -> f2274_0_SolveDP_ArrayAccess(EOS(STATIC_2274(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(o483put), i502) :|: TRUE f2274_0_SolveDP_ArrayAccess(EOS(STATIC_2274(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(ARRAY(i538)), i502) -> f2285_0_SolveDP_ArrayAccess(EOS(STATIC_2285(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(ARRAY(i538)), i502) :|: i538 >= 0 f2285_0_SolveDP_ArrayAccess(EOS(STATIC_2285(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(ARRAY(i538)), i502) -> f2336_0_SolveDP_ArrayAccess(EOS(STATIC_2336(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(ARRAY(i538)), i502) :|: TRUE f2336_0_SolveDP_ArrayAccess(EOS(STATIC_2336(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502, java.lang.Object(ARRAY(i538)), i502) -> f2359_0_SolveDP_JMP(EOS(STATIC_2359(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502) :|: i502 < i538 f2359_0_SolveDP_JMP(EOS(STATIC_2359(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502) -> f2371_0_SolveDP_Inc(EOS(STATIC_2371(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502) :|: TRUE f2371_0_SolveDP_Inc(EOS(STATIC_2371(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502) -> f2396_0_SolveDP_JMP(EOS(STATIC_2396(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i502 + 1) :|: TRUE f2396_0_SolveDP_JMP(EOS(STATIC_2396(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i549) -> f2504_0_SolveDP_Load(EOS(STATIC_2504(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i549) :|: TRUE f2504_0_SolveDP_Load(EOS(STATIC_2504(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i549) -> f1952_0_SolveDP_Load(EOS(STATIC_1952(java.lang.Object(ARRAY(i514)), o455, i501, java.lang.Object(ARRAY(i520)))), java.lang.Object(ARRAY(i520)), i549) :|: TRUE Combined rules. Obtained 2 IRulesP rules: f1960_0_SolveDP_FieldAccess(EOS(STATIC_1960(java.lang.Object(ARRAY(i512:0)), o455:0, i501:0, java.lang.Object(ARRAY(i500:0)))), java.lang.Object(ARRAY(i500:0)), i502:0, i502:0) -> f1960_0_SolveDP_FieldAccess(EOS(STATIC_1960(java.lang.Object(ARRAY(i512:0)), o455:0, i501:0, java.lang.Object(ARRAY(i500:0)))), java.lang.Object(ARRAY(i500:0)), i502:0 + 1, i502:0 + 1) :|: i512:0 > 0 && i502:0 <= i501:0 && i515:0 > i502:0 && i500:0 > 0 && i538:0 > i502:0 && i538:0 > -1 f1960_0_SolveDP_FieldAccess(EOS(STATIC_1960(java.lang.Object(ARRAY(i512:0)), java.lang.Object(ARRAY(i540:0)), i501:0, java.lang.Object(ARRAY(i500:0)))), java.lang.Object(ARRAY(i500:0)), i502:0, i502:0) -> f1960_0_SolveDP_FieldAccess(EOS(STATIC_1960(java.lang.Object(ARRAY(i512:0)), java.lang.Object(ARRAY(i540:0)), i501:0, java.lang.Object(ARRAY(i500:0)))), java.lang.Object(ARRAY(i500:0)), i502:0 + 1, i502:0 + 1) :|: i512:0 > 0 && i540:0 > 0 && i502:0 <= i501:0 && i515:0 <= i502:0 && i500:0 > 0 && i552:0 > i502:0 && i552:0 > -1 Filtered duplicate arguments: f1960_0_SolveDP_FieldAccess(x1, x2, x3, x4) -> f1960_0_SolveDP_FieldAccess(x1, x2, x4) Finished conversion. Obtained 2 rules.P rules: f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0, i512:0, i501:0, i500:0, i500:0) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0 + 1, i512:0, i501:0, i500:0, i500:0) :|: i502:0 <= i501:0 && i512:0 > 0 && i515:0 > i502:0 && i500:0 > 0 && i538:0 > -1 && i538:0 > i502:0 f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0, i512:0, i501:0, i500:0, i500:0) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0 + 1, i512:0, i501:0, i500:0, i500:0) :|: i540:0 > 0 && i512:0 > 0 && i502:0 <= i501:0 && i515:0 <= i502:0 && i500:0 > 0 && i552:0 > -1 && i552:0 > i502:0 ---------------------------------------- (70) Obligation: Rules: f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0, i512:0, i501:0, i500:0, i500:0) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0 + 1, i512:0, i501:0, i500:0, i500:0) :|: i502:0 <= i501:0 && i512:0 > 0 && i515:0 > i502:0 && i500:0 > 0 && i538:0 > -1 && i538:0 > i502:0 f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x)), x1, x2, x3, x, x) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x)), x1 + 1, x2, x3, x, x) :|: x4 > 0 && x2 > 0 && x1 <= x3 && x5 <= x1 && x > 0 && x6 > -1 && x6 > x1 ---------------------------------------- (71) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (72) Obligation: Rules: f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0, i512:0, i501:0, i500:0, i500:0) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), arith, i512:0, i501:0, i500:0, i500:0) :|: i502:0 <= i501:0 && i512:0 > 0 && i515:0 > i502:0 && i500:0 > 0 && i538:0 > -1 && i538:0 > i502:0 && arith = i502:0 + 1 f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x8, x9, x10, x7, x7) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x11, x9, x10, x7, x7) :|: x12 > 0 && x9 > 0 && x8 <= x10 && x13 <= x8 && x7 > 0 && x14 > -1 && x14 > x8 && x11 = x8 + 1 ---------------------------------------- (73) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0, i512:0, i501:0, i500:0, i500:0) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), arith, i512:0, i501:0, i500:0, i500:0) :|: i502:0 <= i501:0 && i512:0 > 0 && i515:0 > i502:0 && i500:0 > 0 && i538:0 > -1 && i538:0 > i502:0 && arith = i502:0 + 1 (2) f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x8, x9, x10, x7, x7) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x11, x9, x10, x7, x7) :|: x12 > 0 && x9 > 0 && x8 <= x10 && x13 <= x8 && x7 > 0 && x14 > -1 && x14 > x8 && x11 = x8 + 1 Arcs: (1) -> (1), (2) (2) -> (1), (2) This digraph is fully evaluated! ---------------------------------------- (74) Obligation: Termination digraph: Nodes: (1) f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), i502:0, i512:0, i501:0, i500:0, i500:0) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0)), arith, i512:0, i501:0, i500:0, i500:0) :|: i502:0 <= i501:0 && i512:0 > 0 && i515:0 > i502:0 && i500:0 > 0 && i538:0 > -1 && i538:0 > i502:0 && arith = i502:0 + 1 (2) f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x8, x9, x10, x7, x7) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x11, x9, x10, x7, x7) :|: x12 > 0 && x9 > 0 && x8 <= x10 && x13 <= x8 && x7 > 0 && x14 > -1 && x14 > x8 && x11 = x8 + 1 Arcs: (1) -> (1), (2) (2) -> (1), (2) This digraph is fully evaluated! ---------------------------------------- (75) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (76) Obligation: Rules: f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0:0)), i502:0:0, i512:0:0, i501:0:0, i500:0:0, i500:0:0) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i500:0:0)), i502:0:0 + 1, i512:0:0, i501:0:0, i500:0:0, i500:0:0) :|: i538:0:0 > -1 && i538:0:0 > i502:0:0 && i500:0:0 > 0 && i515:0:0 > i502:0:0 && i512:0:0 > 0 && i502:0:0 <= i501:0:0 f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7:0)), x8:0, x9:0, x10:0, x7:0, x7:0) -> f1960_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7:0)), x8:0 + 1, x9:0, x10:0, x7:0, x7:0) :|: x14:0 > -1 && x8:0 < x14:0 && x7:0 > 0 && x8:0 >= x13:0 && x8:0 <= x10:0 && x9:0 > 0 && x12:0 > 0 ---------------------------------------- (77) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f1960_0_SolveDP_FieldAccess(VARIABLE, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER) java.lang.Object(VARIABLE) ARRAY(INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (78) Obligation: Rules: f1960_0_SolveDP_FieldAccess(c, i502:0:0, i512:0:0, i501:0:0, i500:0:0, i500:0:0) -> f1960_0_SolveDP_FieldAccess(c1, c2, i512:0:0, i501:0:0, i500:0:0, i500:0:0) :|: c2 = i502:0:0 + 1 && (c1 = 0 && c = 0) && (i538:0:0 > -1 && i538:0:0 > i502:0:0 && i500:0:0 > 0 && i515:0:0 > i502:0:0 && i512:0:0 > 0 && i502:0:0 <= i501:0:0) f1960_0_SolveDP_FieldAccess(c3, x8:0, x9:0, x10:0, x7:0, x7:0) -> f1960_0_SolveDP_FieldAccess(c4, c5, x9:0, x10:0, x7:0, x7:0) :|: c5 = x8:0 + 1 && (c4 = 0 && c3 = 0) && (x14:0 > -1 && x8:0 < x14:0 && x7:0 > 0 && x8:0 >= x13:0 && x8:0 <= x10:0 && x9:0 > 0 && x12:0 > 0) ---------------------------------------- (79) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f1960_0_SolveDP_FieldAccess(x, x1, x2, x3, x4, x5)] = c*x - x1 + x3 The following rules are decreasing: f1960_0_SolveDP_FieldAccess(c, i502:0:0, i512:0:0, i501:0:0, i500:0:0, i500:0:0) -> f1960_0_SolveDP_FieldAccess(c1, c2, i512:0:0, i501:0:0, i500:0:0, i500:0:0) :|: c2 = i502:0:0 + 1 && (c1 = 0 && c = 0) && (i538:0:0 > -1 && i538:0:0 > i502:0:0 && i500:0:0 > 0 && i515:0:0 > i502:0:0 && i512:0:0 > 0 && i502:0:0 <= i501:0:0) f1960_0_SolveDP_FieldAccess(c3, x8:0, x9:0, x10:0, x7:0, x7:0) -> f1960_0_SolveDP_FieldAccess(c4, c5, x9:0, x10:0, x7:0, x7:0) :|: c5 = x8:0 + 1 && (c4 = 0 && c3 = 0) && (x14:0 > -1 && x8:0 < x14:0 && x7:0 > 0 && x8:0 >= x13:0 && x8:0 <= x10:0 && x9:0 > 0 && x12:0 > 0) The following rules are bounded: f1960_0_SolveDP_FieldAccess(c, i502:0:0, i512:0:0, i501:0:0, i500:0:0, i500:0:0) -> f1960_0_SolveDP_FieldAccess(c1, c2, i512:0:0, i501:0:0, i500:0:0, i500:0:0) :|: c2 = i502:0:0 + 1 && (c1 = 0 && c = 0) && (i538:0:0 > -1 && i538:0:0 > i502:0:0 && i500:0:0 > 0 && i515:0:0 > i502:0:0 && i512:0:0 > 0 && i502:0:0 <= i501:0:0) f1960_0_SolveDP_FieldAccess(c3, x8:0, x9:0, x10:0, x7:0, x7:0) -> f1960_0_SolveDP_FieldAccess(c4, c5, x9:0, x10:0, x7:0, x7:0) :|: c5 = x8:0 + 1 && (c4 = 0 && c3 = 0) && (x14:0 > -1 && x8:0 < x14:0 && x7:0 > 0 && x8:0 >= x13:0 && x8:0 <= x10:0 && x9:0 > 0 && x12:0 > 0) ---------------------------------------- (80) YES