/export/starexec/sandbox2/solver/bin/starexec_run_standard /export/starexec/sandbox2/benchmark/theBenchmark.jar /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox2/benchmark/theBenchmark.jar # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty termination of the given Bare JBC problem could be proven: (0) Bare JBC problem (1) BareJBCToJBCProof [EQUIVALENT, 96 ms] (2) JBC problem (3) JBCToGraph [EQUIVALENT, 1943 ms] (4) JBCTerminationGraph (5) TerminationGraphToSCCProof [SOUND, 0 ms] (6) AND (7) JBCTerminationSCC (8) SCCToIRSProof [SOUND, 77 ms] (9) IRSwT (10) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (11) IRSwT (12) IRSwTTerminationDigraphProof [EQUIVALENT, 169 ms] (13) IRSwT (14) IntTRSCompressionProof [EQUIVALENT, 0 ms] (15) IRSwT (16) TempFilterProof [SOUND, 27 ms] (17) IntTRS (18) RankingReductionPairProof [EQUIVALENT, 0 ms] (19) YES (20) JBCTerminationSCC (21) SCCToIRSProof [SOUND, 15 ms] (22) IRSwT (23) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (24) IRSwT (25) IRSwTTerminationDigraphProof [EQUIVALENT, 32 ms] (26) IRSwT (27) IntTRSCompressionProof [EQUIVALENT, 0 ms] (28) IRSwT (29) TempFilterProof [SOUND, 31 ms] (30) IntTRS (31) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (32) IntTRS (33) PolynomialOrderProcessor [EQUIVALENT, 2 ms] (34) YES (35) JBCTerminationSCC (36) SCCToIRSProof [SOUND, 232 ms] (37) IRSwT (38) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (39) IRSwT (40) IRSwTTerminationDigraphProof [EQUIVALENT, 470 ms] (41) IRSwT (42) IntTRSCompressionProof [EQUIVALENT, 0 ms] (43) IRSwT (44) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (45) IRSwT (46) TempFilterProof [SOUND, 275 ms] (47) IntTRS (48) PolynomialOrderProcessor [EQUIVALENT, 31 ms] (49) IntTRS (50) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (51) AND (52) IntTRS (53) PolynomialOrderProcessor [EQUIVALENT, 12 ms] (54) IntTRS (55) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (56) YES (57) IntTRS (58) RankingReductionPairProof [EQUIVALENT, 4 ms] (59) YES (60) JBCTerminationSCC (61) SCCToIRSProof [SOUND, 192 ms] (62) IRSwT (63) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (64) IRSwT (65) IRSwTTerminationDigraphProof [EQUIVALENT, 75 ms] (66) IRSwT (67) IntTRSCompressionProof [EQUIVALENT, 0 ms] (68) IRSwT (69) TempFilterProof [SOUND, 53 ms] (70) IntTRS (71) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (72) 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 f6156_0_InterpretArray_LT(EOS(STATIC_6156(o3776, o3777, java.lang.Object(ARRAY(i2475)))), java.lang.Object(ARRAY(i2475)), i2477, i2479, i2477, 1) :|: TRUE f6156_0_InterpretArray_LT(EOS(STATIC_6156(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, i2493, matching1) -> f6174_0_InterpretArray_LT(EOS(STATIC_6174(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, i2493, 1) :|: TRUE && matching1 = 1 f6174_0_InterpretArray_LT(EOS(STATIC_6174(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, i2493, matching1) -> f6190_0_InterpretArray_FieldAccess(EOS(STATIC_6190(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479) :|: i2493 >= 1 && matching1 = 1 f6190_0_InterpretArray_FieldAccess(EOS(STATIC_6190(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479) -> f6200_0_InterpretArray_Load(EOS(STATIC_6200(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(ARRAY(i2494))) :|: TRUE f6200_0_InterpretArray_Load(EOS(STATIC_6200(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(ARRAY(i2494))) -> f6218_0_InterpretArray_ArrayAccess(EOS(STATIC_6218(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(ARRAY(i2494)), i2493) :|: TRUE f6218_0_InterpretArray_ArrayAccess(EOS(STATIC_6218(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(ARRAY(i2494)), i2493) -> f6234_0_InterpretArray_ArrayAccess(EOS(STATIC_6234(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(ARRAY(i2494)), i2493) :|: TRUE f6234_0_InterpretArray_ArrayAccess(EOS(STATIC_6234(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(ARRAY(i2494)), i2493) -> f6246_0_InterpretArray_Load(EOS(STATIC_6246(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, o3935) :|: i2493 < i2494 f6246_0_InterpretArray_Load(EOS(STATIC_6246(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, o3935) -> f6262_0_InterpretArray_ArrayAccess(EOS(STATIC_6262(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, o3935, i2479) :|: TRUE f6262_0_InterpretArray_ArrayAccess(EOS(STATIC_6262(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(o4020put), i2479) -> f6279_0_InterpretArray_ArrayAccess(EOS(STATIC_6279(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(o4020put), i2479) :|: TRUE f6279_0_InterpretArray_ArrayAccess(EOS(STATIC_6279(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(ARRAY(i2536)), i2479) -> f6287_0_InterpretArray_ArrayAccess(EOS(STATIC_6287(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2479, java.lang.Object(ARRAY(i2536)), i2479) :|: i2536 >= 0 f6287_0_InterpretArray_ArrayAccess(EOS(STATIC_6287(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i2536)), i2540) -> f6294_0_InterpretArray_ArrayAccess(EOS(STATIC_6294(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i2536)), i2540) :|: TRUE f6294_0_InterpretArray_ArrayAccess(EOS(STATIC_6294(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i2536)), i2540) -> f6302_0_InterpretArray_ArrayAccess(EOS(STATIC_6302(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i2536)), i2540) :|: TRUE f6302_0_InterpretArray_ArrayAccess(EOS(STATIC_6302(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i2536)), i2540) -> f6312_0_InterpretArray_FieldAccess(EOS(STATIC_6312(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550) :|: i2540 < i2536 f6312_0_InterpretArray_FieldAccess(EOS(STATIC_6312(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550) -> f6322_0_InterpretArray_Load(EOS(STATIC_6322(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494))) :|: TRUE f6322_0_InterpretArray_Load(EOS(STATIC_6322(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494))) -> f6332_0_InterpretArray_ConstantStackPush(EOS(STATIC_6332(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494)), i2493) :|: TRUE f6332_0_InterpretArray_ConstantStackPush(EOS(STATIC_6332(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494)), i2493) -> f6342_0_InterpretArray_IntArithmetic(EOS(STATIC_6342(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494)), i2493, 1) :|: TRUE f6342_0_InterpretArray_IntArithmetic(EOS(STATIC_6342(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494)), i2493, matching1) -> f6350_0_InterpretArray_ArrayAccess(EOS(STATIC_6350(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494)), i2493 - 1) :|: i2493 > 0 && matching1 = 1 f6350_0_InterpretArray_ArrayAccess(EOS(STATIC_6350(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494)), i2592) -> f6359_0_InterpretArray_ArrayAccess(EOS(STATIC_6359(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494)), i2592) :|: TRUE f6359_0_InterpretArray_ArrayAccess(EOS(STATIC_6359(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2494)), i2592) -> f6371_0_InterpretArray_Load(EOS(STATIC_6371(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, o4205) :|: i2592 < i2494 f6371_0_InterpretArray_Load(EOS(STATIC_6371(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, o4205) -> f6382_0_InterpretArray_ArrayAccess(EOS(STATIC_6382(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, o4205, i2540) :|: TRUE f6382_0_InterpretArray_ArrayAccess(EOS(STATIC_6382(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(o4286put), i2540) -> f6393_0_InterpretArray_ArrayAccess(EOS(STATIC_6393(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(o4286put), i2540) :|: TRUE f6393_0_InterpretArray_ArrayAccess(EOS(STATIC_6393(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2685)), i2540) -> f6407_0_InterpretArray_ArrayAccess(EOS(STATIC_6407(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2685)), i2540) :|: i2685 >= 0 f6407_0_InterpretArray_ArrayAccess(EOS(STATIC_6407(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2685)), i2540) -> f6422_0_InterpretArray_ArrayAccess(EOS(STATIC_6422(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2685)), i2540) :|: TRUE f6422_0_InterpretArray_ArrayAccess(EOS(STATIC_6422(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, java.lang.Object(ARRAY(i2685)), i2540) -> f6437_0_InterpretArray_EQ(EOS(STATIC_6437(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, i2762) :|: i2540 < i2685 f6437_0_InterpretArray_EQ(EOS(STATIC_6437(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2762, i2762) -> f6453_0_InterpretArray_EQ(EOS(STATIC_6453(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2762, i2762) :|: i2550 = i2762 f6437_0_InterpretArray_EQ(EOS(STATIC_6437(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, i2762) -> f6454_0_InterpretArray_EQ(EOS(STATIC_6454(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, i2762) :|: !(i2550 = i2762) f6453_0_InterpretArray_EQ(EOS(STATIC_6453(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2762, i2762) -> f6469_0_InterpretArray_Inc(EOS(STATIC_6469(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540) :|: TRUE f6469_0_InterpretArray_Inc(EOS(STATIC_6469(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540) -> f6487_0_InterpretArray_JMP(EOS(STATIC_6487(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493 + -1, i2540) :|: TRUE f6487_0_InterpretArray_JMP(EOS(STATIC_6487(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2880, i2540) -> f6509_0_InterpretArray_Load(EOS(STATIC_6509(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2880, i2540) :|: TRUE f6509_0_InterpretArray_Load(EOS(STATIC_6509(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2880, i2540) -> f6136_0_InterpretArray_Load(EOS(STATIC_6136(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2880, i2540) :|: TRUE f6136_0_InterpretArray_Load(EOS(STATIC_6136(o3776, o3777, java.lang.Object(ARRAY(i2475)))), java.lang.Object(ARRAY(i2475)), i2477, i2479) -> f6147_0_InterpretArray_ConstantStackPush(EOS(STATIC_6147(o3776, o3777, java.lang.Object(ARRAY(i2475)))), java.lang.Object(ARRAY(i2475)), i2477, i2479, i2477) :|: TRUE f6454_0_InterpretArray_EQ(EOS(STATIC_6454(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i2550, i2762) -> f6470_0_InterpretArray_Load(EOS(STATIC_6470(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540) :|: !(i2550 = i2762) f6470_0_InterpretArray_Load(EOS(STATIC_6470(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540) -> f6488_0_InterpretArray_FieldAccess(EOS(STATIC_6488(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540) :|: TRUE f6488_0_InterpretArray_FieldAccess(EOS(STATIC_6488(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540) -> f6510_0_InterpretArray_Load(EOS(STATIC_6510(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, o3776) :|: TRUE f6510_0_InterpretArray_Load(EOS(STATIC_6510(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, o3776) -> f6527_0_InterpretArray_ArrayAccess(EOS(STATIC_6527(o3776, o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, o3776, i2493) :|: TRUE f6527_0_InterpretArray_ArrayAccess(EOS(STATIC_6527(java.lang.Object(o4998put), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(o4998put), i2493) -> f6546_0_InterpretArray_ArrayAccess(EOS(STATIC_6546(java.lang.Object(o4998put), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(o4998put), i2493) :|: TRUE f6546_0_InterpretArray_ArrayAccess(EOS(STATIC_6546(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i3135)), i2493) -> f6569_0_InterpretArray_ArrayAccess(EOS(STATIC_6569(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i3135)), i2493) :|: i3135 >= 0 f6569_0_InterpretArray_ArrayAccess(EOS(STATIC_6569(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i3135)), i2493) -> f6588_0_InterpretArray_ArrayAccess(EOS(STATIC_6588(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i3135)), i2493) :|: TRUE f6588_0_InterpretArray_ArrayAccess(EOS(STATIC_6588(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, java.lang.Object(ARRAY(i3135)), i2493) -> f6609_0_InterpretArray_IntArithmetic(EOS(STATIC_6609(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i3280) :|: i2493 < i3135 f6609_0_InterpretArray_IntArithmetic(EOS(STATIC_6609(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540, i3280) -> f6635_0_InterpretArray_Store(EOS(STATIC_6635(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i2540 - i3280) :|: i2540 >= 0 f6635_0_InterpretArray_Store(EOS(STATIC_6635(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) -> f6655_0_InterpretArray_Load(EOS(STATIC_6655(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) :|: TRUE f6655_0_InterpretArray_Load(EOS(STATIC_6655(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) -> f6674_0_InterpretArray_FieldAccess(EOS(STATIC_6674(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) :|: TRUE f6674_0_InterpretArray_FieldAccess(EOS(STATIC_6674(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) -> f6698_0_InterpretArray_Load(EOS(STATIC_6698(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, o3777) :|: TRUE f6698_0_InterpretArray_Load(EOS(STATIC_6698(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, o3777) -> f6719_0_InterpretArray_ArrayAccess(EOS(STATIC_6719(java.lang.Object(ARRAY(i3135)), o3777, java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, o3777, i2493) :|: TRUE f6719_0_InterpretArray_ArrayAccess(EOS(STATIC_6719(java.lang.Object(ARRAY(i3135)), java.lang.Object(o6050put), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, java.lang.Object(o6050put), i2493) -> f6739_0_InterpretArray_ArrayAccess(EOS(STATIC_6739(java.lang.Object(ARRAY(i3135)), java.lang.Object(o6050put), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, java.lang.Object(o6050put), i2493) :|: TRUE f6739_0_InterpretArray_ArrayAccess(EOS(STATIC_6739(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, java.lang.Object(ARRAY(i3846)), i2493) -> f6769_0_InterpretArray_ArrayAccess(EOS(STATIC_6769(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, java.lang.Object(ARRAY(i3846)), i2493) :|: i3846 >= 0 f6769_0_InterpretArray_ArrayAccess(EOS(STATIC_6769(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, java.lang.Object(ARRAY(i3846)), i2493) -> f6793_0_InterpretArray_ArrayAccess(EOS(STATIC_6793(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, java.lang.Object(ARRAY(i3846)), i2493) :|: TRUE f6793_0_InterpretArray_ArrayAccess(EOS(STATIC_6793(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354, java.lang.Object(ARRAY(i3846)), i2493) -> f6812_0_InterpretArray_IntArithmetic(EOS(STATIC_6812(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) :|: i2493 < i3846 f6812_0_InterpretArray_IntArithmetic(EOS(STATIC_6812(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) -> f6840_0_InterpretArray_Store(EOS(STATIC_6840(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) :|: TRUE f6840_0_InterpretArray_Store(EOS(STATIC_6840(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) -> f6862_0_InterpretArray_Inc(EOS(STATIC_6862(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) :|: TRUE f6862_0_InterpretArray_Inc(EOS(STATIC_6862(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493, i3354) -> f6880_0_InterpretArray_JMP(EOS(STATIC_6880(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i2493 + -1, i3354) :|: TRUE f6880_0_InterpretArray_JMP(EOS(STATIC_6880(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i4346, i3354) -> f6904_0_InterpretArray_Load(EOS(STATIC_6904(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i4346, i3354) :|: TRUE f6904_0_InterpretArray_Load(EOS(STATIC_6904(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i4346, i3354) -> f6136_0_InterpretArray_Load(EOS(STATIC_6136(java.lang.Object(ARRAY(i3135)), java.lang.Object(ARRAY(i3846)), java.lang.Object(ARRAY(i2494)))), java.lang.Object(ARRAY(i2494)), i4346, i3354) :|: TRUE Combined rules. Obtained 3 IRulesP rules: f6147_0_InterpretArray_ConstantStackPush(EOS(STATIC_6147(o3776:0, o3777:0, java.lang.Object(ARRAY(i2475:0)))), java.lang.Object(ARRAY(i2475:0)), i2477:0, i2479:0, i2477:0) -> f6147_0_InterpretArray_ConstantStackPush(EOS(STATIC_6147(o3776:0, o3777:0, java.lang.Object(ARRAY(i2475:0)))), java.lang.Object(ARRAY(i2475:0)), i2477:0 - 1, i2479:0, i2477:0 - 1) :|: i2477:0 > 0 && i2477:0 < i2475:0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > i2479:0 && i2685:0 > -1 f6147_0_InterpretArray_ConstantStackPush(EOS(STATIC_6147(java.lang.Object(ARRAY(i3135:0)), java.lang.Object(ARRAY(i3846:0)), java.lang.Object(ARRAY(i2475:0)))), java.lang.Object(ARRAY(i2475:0)), i2477:0, i2479:0, i2477:0) -> f6147_0_InterpretArray_ConstantStackPush(EOS(STATIC_6147(java.lang.Object(ARRAY(i3135:0)), java.lang.Object(ARRAY(i3846:0)), java.lang.Object(ARRAY(i2475:0)))), java.lang.Object(ARRAY(i2475:0)), i2477:0 - 1, i2479:0 - i3280:0, i2477:0 - 1) :|: i2477:0 > 0 && i2477:0 < i2475:0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 && i2762:0 > i2550:0 && i3135:0 > -1 && i3135:0 > i2477:0 && i2479:0 > -1 && i3846:0 > i2477:0 && i3846:0 > -1 f6147_0_InterpretArray_ConstantStackPush(EOS(STATIC_6147(java.lang.Object(ARRAY(i3135:0)), java.lang.Object(ARRAY(i3846:0)), java.lang.Object(ARRAY(i2475:0)))), java.lang.Object(ARRAY(i2475:0)), i2477:0, i2479:0, i2477:0) -> f6147_0_InterpretArray_ConstantStackPush(EOS(STATIC_6147(java.lang.Object(ARRAY(i3135:0)), java.lang.Object(ARRAY(i3846:0)), java.lang.Object(ARRAY(i2475:0)))), java.lang.Object(ARRAY(i2475:0)), i2477:0 - 1, i2479:0 - i3280:0, i2477:0 - 1) :|: i2477:0 > 0 && i2477:0 < i2475:0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 && i2762:0 < i2550:0 && i3135:0 > -1 && i3135:0 > i2477:0 && i2479:0 > -1 && i3846:0 > i2477:0 && i3846:0 > -1 Filtered duplicate arguments: f6147_0_InterpretArray_ConstantStackPush(x1, x2, x3, x4, x5) -> f6147_0_InterpretArray_ConstantStackPush(x1, x2, x4, x5) Finished conversion. Obtained 3 rules.P rules: f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0, i2475:0, i2475:0) -> f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0 - 1, i2475:0, i2475:0) :|: i2477:0 < i2475:0 && i2477:0 > 0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0, i2475:0, i2475:0) -> f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0 - i3280:0, i2477:0 - 1, i2475:0, i2475:0) :|: i2477:0 < i2475:0 && i2477:0 > 0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 && i2762:0 > i2550:0 && i3135:0 > -1 && i3135:0 > i2477:0 && i2479:0 > -1 && i3846:0 > -1 && i3846:0 > i2477:0 f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0, i2475:0, i2475:0) -> f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0 - i3280:0, i2477:0 - 1, i2475:0, i2475:0) :|: i2477:0 < i2475:0 && i2477:0 > 0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 && i2762:0 < i2550:0 && i3135:0 > -1 && i3135:0 > i2477:0 && i2479:0 > -1 && i3846:0 > -1 && i3846:0 > i2477:0 ---------------------------------------- (9) Obligation: Rules: f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0, i2475:0, i2475:0) -> f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0 - 1, i2475:0, i2475:0) :|: i2477:0 < i2475:0 && i2477:0 > 0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x)), x1, x2, x, x) -> f6147_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 f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x10)), x11, x12, x10, x10) -> f6147_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: f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0, i2475:0, i2475:0) -> f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, arith, i2475:0, i2475:0) :|: i2477:0 < i2475:0 && i2477:0 > 0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 && arith = i2477:0 - 1 f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x21, x22, x20, x20) -> f6147_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 f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x33, x34, x32, x32) -> f6147_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) f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0, i2475:0, i2475:0) -> f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, arith, i2475:0, i2475:0) :|: i2477:0 < i2475:0 && i2477:0 > 0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 && arith = i2477:0 - 1 (2) f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x21, x22, x20, x20) -> f6147_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) f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x33, x34, x32, x32) -> f6147_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) f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, i2477:0, i2475:0, i2475:0) -> f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0)), i2479:0, arith, i2475:0, i2475:0) :|: i2477:0 < i2475:0 && i2477:0 > 0 && i2536:0 > -1 && i2536:0 > i2479:0 && i2477:0 - 1 < i2475:0 && i2685:0 > -1 && i2685:0 > i2479:0 && arith = i2477:0 - 1 (2) f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20)), x21, x22, x20, x20) -> f6147_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) f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32)), x33, x34, x32, x32) -> f6147_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: f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0:0)), i2479:0:0, i2477:0:0, i2475:0:0, i2475:0:0) -> f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(i2475:0:0)), i2479:0:0, i2477:0:0 - 1, i2475:0:0, i2475:0:0) :|: i2685:0:0 > -1 && i2685:0:0 > i2479:0:0 && i2477:0:0 - 1 < i2475:0:0 && i2536:0:0 > i2479:0:0 && i2536:0:0 > -1 && i2477:0:0 > 0 && i2477:0:0 < i2475:0:0 f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x32:0)), x33:0, x34:0, x32:0, x32:0) -> f6147_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 f6147_0_InterpretArray_ConstantStackPush(java.lang.Object(ARRAY(x20:0)), x21:0, x22:0, x20:0, x20:0) -> f6147_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: f6147_0_InterpretArray_ConstantStackPush(VARIABLE, INTEGER, INTEGER, INTEGER, INTEGER) java.lang.Object(VARIABLE) ARRAY(INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (17) Obligation: Rules: f6147_0_InterpretArray_ConstantStackPush(c, i2479:0:0, i2477:0:0, i2475:0:0, i2475:0:0) -> f6147_0_InterpretArray_ConstantStackPush(c1, i2479:0:0, c2, i2475:0:0, i2475:0:0) :|: c2 = i2477:0:0 - 1 && (c1 = 0 && c = 0) && (i2685:0:0 > -1 && i2685:0:0 > i2479:0:0 && i2477:0:0 - 1 < i2475:0:0 && i2536:0:0 > i2479:0:0 && i2536:0:0 > -1 && i2477:0:0 > 0 && i2477:0:0 < i2475:0:0) f6147_0_InterpretArray_ConstantStackPush(c3, x33:0, x34:0, x32:0, x32:0) -> f6147_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) f6147_0_InterpretArray_ConstantStackPush(c7, x21:0, x22:0, x20:0, x20:0) -> f6147_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) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f6147_0_InterpretArray_ConstantStackPush ] = f6147_0_InterpretArray_ConstantStackPush_3 The following rules are decreasing: f6147_0_InterpretArray_ConstantStackPush(c, i2479:0:0, i2477:0:0, i2475:0:0, i2475:0:0) -> f6147_0_InterpretArray_ConstantStackPush(c1, i2479:0:0, c2, i2475:0:0, i2475:0:0) :|: c2 = i2477:0:0 - 1 && (c1 = 0 && c = 0) && (i2685:0:0 > -1 && i2685:0:0 > i2479:0:0 && i2477:0:0 - 1 < i2475:0:0 && i2536:0:0 > i2479:0:0 && i2536:0:0 > -1 && i2477:0:0 > 0 && i2477:0:0 < i2475:0:0) f6147_0_InterpretArray_ConstantStackPush(c3, x33:0, x34:0, x32:0, x32:0) -> f6147_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) f6147_0_InterpretArray_ConstantStackPush(c7, x21:0, x22:0, x20:0, x20:0) -> f6147_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: f6147_0_InterpretArray_ConstantStackPush(c, i2479:0:0, i2477:0:0, i2475:0:0, i2475:0:0) -> f6147_0_InterpretArray_ConstantStackPush(c1, i2479:0:0, c2, i2475:0:0, i2475:0:0) :|: c2 = i2477:0:0 - 1 && (c1 = 0 && c = 0) && (i2685:0:0 > -1 && i2685:0:0 > i2479:0:0 && i2477:0:0 - 1 < i2475:0:0 && i2536:0:0 > i2479:0:0 && i2536:0:0 > -1 && i2477:0:0 > 0 && i2477:0:0 < i2475:0:0) f6147_0_InterpretArray_ConstantStackPush(c3, x33:0, x34:0, x32:0, x32:0) -> f6147_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) f6147_0_InterpretArray_ConstantStackPush(c7, x21:0, x22:0, x20:0, x20:0) -> f6147_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: f3447_0_Display_FieldAccess(EOS(STATIC_3447(i558, i559)), java.lang.Object(ARRAY(i558)), i560, i560) -> f3451_0_Display_GE(EOS(STATIC_3451(i558, i559)), java.lang.Object(ARRAY(i558)), i560, i560, i558) :|: TRUE f3451_0_Display_GE(EOS(STATIC_3451(i558, i559)), java.lang.Object(ARRAY(i558)), i560, i560, i558) -> f3496_0_Display_GE(EOS(STATIC_3496(i558, i559)), java.lang.Object(ARRAY(i558)), i560, i560, i558) :|: i560 < i558 f3496_0_Display_GE(EOS(STATIC_3496(i558, i559)), java.lang.Object(ARRAY(i558)), i560, i560, i558) -> f3548_0_Display_ConstantStackPush(EOS(STATIC_3548(i558, i559)), java.lang.Object(ARRAY(i558)), i560) :|: i560 < i558 f3548_0_Display_ConstantStackPush(EOS(STATIC_3548(i558, i559)), java.lang.Object(ARRAY(i558)), i560) -> f3554_0_Display_Store(EOS(STATIC_3554(i558, i559)), java.lang.Object(ARRAY(i558)), i560, 0) :|: TRUE f3554_0_Display_Store(EOS(STATIC_3554(i558, i559)), java.lang.Object(ARRAY(i558)), i560, matching1) -> f3560_0_Display_Load(EOS(STATIC_3560(i558, i559)), java.lang.Object(ARRAY(i558)), i560, 0) :|: TRUE && matching1 = 0 f3560_0_Display_Load(EOS(STATIC_3560(i558, i559)), java.lang.Object(ARRAY(i558)), i560, matching1) -> f3808_0_Display_Load(EOS(STATIC_3808(i558, i559)), java.lang.Object(ARRAY(i558)), i560, 0) :|: TRUE && matching1 = 0 f3808_0_Display_Load(EOS(STATIC_3808(i558, i616)), java.lang.Object(ARRAY(i558)), i560, i617) -> f4169_0_Display_Load(EOS(STATIC_4169(i558, i616)), java.lang.Object(ARRAY(i558)), i560, i617) :|: TRUE f4169_0_Display_Load(EOS(STATIC_4169(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673) -> f4243_0_Display_FieldAccess(EOS(STATIC_4243(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673) :|: TRUE f4243_0_Display_FieldAccess(EOS(STATIC_4243(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673) -> f4406_0_Display_GT(EOS(STATIC_4406(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) :|: TRUE f4406_0_Display_GT(EOS(STATIC_4406(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) -> f4629_0_Display_GT(EOS(STATIC_4629(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) :|: i673 > i672 f4406_0_Display_GT(EOS(STATIC_4406(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) -> f4630_0_Display_GT(EOS(STATIC_4630(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) :|: i673 <= i672 f4629_0_Display_GT(EOS(STATIC_4629(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) -> f4897_0_Display_Inc(EOS(STATIC_4897(i558, i672)), java.lang.Object(ARRAY(i558)), i560) :|: i673 > i672 f4897_0_Display_Inc(EOS(STATIC_4897(i558, i672)), java.lang.Object(ARRAY(i558)), i560) -> f5028_0_Display_JMP(EOS(STATIC_5028(i558, i672)), java.lang.Object(ARRAY(i558)), i560 + 1) :|: TRUE f5028_0_Display_JMP(EOS(STATIC_5028(i558, i672)), java.lang.Object(ARRAY(i558)), i937) -> f5163_0_Display_Load(EOS(STATIC_5163(i558, i672)), java.lang.Object(ARRAY(i558)), i937) :|: TRUE f5163_0_Display_Load(EOS(STATIC_5163(i558, i672)), java.lang.Object(ARRAY(i558)), i937) -> f3425_0_Display_Load(EOS(STATIC_3425(i558, i672)), java.lang.Object(ARRAY(i558)), i937) :|: TRUE f3425_0_Display_Load(EOS(STATIC_3425(i558, i559)), java.lang.Object(ARRAY(i558)), i560) -> f3447_0_Display_FieldAccess(EOS(STATIC_3447(i558, i559)), java.lang.Object(ARRAY(i558)), i560, i560) :|: TRUE f4630_0_Display_GT(EOS(STATIC_4630(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) -> f4902_0_Display_Load(EOS(STATIC_4902(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673) :|: i673 <= i672 f4902_0_Display_Load(EOS(STATIC_4902(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673) -> f5030_0_Display_FieldAccess(EOS(STATIC_5030(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673) :|: TRUE f5030_0_Display_FieldAccess(EOS(STATIC_5030(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673) -> f5164_0_Display_EQ(EOS(STATIC_5164(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) :|: TRUE f5164_0_Display_EQ(EOS(STATIC_5164(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i672, i672, i672) -> f5255_0_Display_EQ(EOS(STATIC_5255(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i672, i672, i672) :|: i673 = i672 f5164_0_Display_EQ(EOS(STATIC_5164(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) -> f5256_0_Display_EQ(EOS(STATIC_5256(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) :|: !(i673 = i672) f5255_0_Display_EQ(EOS(STATIC_5255(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i672, i672, i672) -> f5377_0_Display_Inc(EOS(STATIC_5377(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i672) :|: TRUE f5377_0_Display_Inc(EOS(STATIC_5377(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i672) -> f5468_0_Display_JMP(EOS(STATIC_5468(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i672 + 1) :|: TRUE f5468_0_Display_JMP(EOS(STATIC_5468(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i1102) -> f5531_0_Display_Load(EOS(STATIC_5531(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i1102) :|: TRUE f5531_0_Display_Load(EOS(STATIC_5531(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i1102) -> f4169_0_Display_Load(EOS(STATIC_4169(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i1102) :|: TRUE f5256_0_Display_EQ(EOS(STATIC_5256(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673, i673, i672) -> f5385_0_Display_Inc(EOS(STATIC_5385(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673) :|: i673 < i672 f5385_0_Display_Inc(EOS(STATIC_5385(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673) -> f5494_0_Display_JMP(EOS(STATIC_5494(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i673 + 1) :|: TRUE f5494_0_Display_JMP(EOS(STATIC_5494(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i1103) -> f5555_0_Display_Load(EOS(STATIC_5555(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i1103) :|: TRUE f5555_0_Display_Load(EOS(STATIC_5555(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i1103) -> f4169_0_Display_Load(EOS(STATIC_4169(i558, i672)), java.lang.Object(ARRAY(i558)), i560, i1103) :|: TRUE Combined rules. Obtained 3 IRulesP rules: f4406_0_Display_GT(EOS(STATIC_4406(i558:0, i672:0)), java.lang.Object(ARRAY(i558:0)), i560:0, i672:0, i672:0, i672:0) -> f4406_0_Display_GT(EOS(STATIC_4406(i558:0, i672:0)), java.lang.Object(ARRAY(i558:0)), i560:0, i672:0 + 1, i672:0 + 1, i672:0) :|: TRUE f4406_0_Display_GT(EOS(STATIC_4406(i558:0, i672:0)), java.lang.Object(ARRAY(i558:0)), i560:0, i673:0, i673:0, i672:0) -> f4406_0_Display_GT(EOS(STATIC_4406(i558:0, i672:0)), java.lang.Object(ARRAY(i558:0)), i560:0, i673:0 + 1, i673:0 + 1, i672:0) :|: i673:0 < i672:0 f4406_0_Display_GT(EOS(STATIC_4406(i558:0, i672:0)), java.lang.Object(ARRAY(i558:0)), i560:0, i673:0, i673:0, i672:0) -> f4406_0_Display_GT(EOS(STATIC_4406(i558:0, i672:0)), java.lang.Object(ARRAY(i558:0)), i560:0 + 1, 0, 0, i672:0) :|: i560:0 + 1 < i558:0 && i673:0 > i672:0 Filtered duplicate arguments: f4406_0_Display_GT(x1, x2, x3, x4, x5, x6) -> f4406_0_Display_GT(x1, x2, x3, x5, x6) Finished conversion. Obtained 3 rules.P rules: f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i672:0, i672:0, i558:0, i672:0, i558:0) -> f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i672:0 + 1, i672:0, i558:0, i672:0, i558:0) :|: TRUE f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i673:0, i672:0, i558:0, i672:0, i558:0) -> f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i673:0 + 1, i672:0, i558:0, i672:0, i558:0) :|: i673:0 < i672:0 f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i673:0, i672:0, i558:0, i672:0, i558:0) -> f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0 + 1, 0, i672:0, i558:0, i672:0, i558:0) :|: i560:0 + 1 < i558:0 && i673:0 > i672:0 ---------------------------------------- (22) Obligation: Rules: f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i672:0, i672:0, i558:0, i672:0, i558:0) -> f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i672:0 + 1, i672:0, i558:0, i672:0, i558:0) :|: TRUE f4406_0_Display_GT(java.lang.Object(ARRAY(x)), x1, x2, x3, x, x3, x) -> f4406_0_Display_GT(java.lang.Object(ARRAY(x)), x1, x2 + 1, x3, x, x3, x) :|: x2 < x3 f4406_0_Display_GT(java.lang.Object(ARRAY(x4)), x5, x6, x7, x4, x7, x4) -> f4406_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: f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i672:0, i672:0, i558:0, i672:0, i558:0) -> f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, arith, i672:0, i558:0, i672:0, i558:0) :|: TRUE && arith = i672:0 + 1 f4406_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x10, x11, x8, x11, x8) -> f4406_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x12, x11, x8, x11, x8) :|: x10 < x11 && x12 = x10 + 1 f4406_0_Display_GT(java.lang.Object(ARRAY(x13)), x14, x15, x16, x13, x16, x13) -> f4406_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) f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i672:0, i672:0, i558:0, i672:0, i558:0) -> f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, arith, i672:0, i558:0, i672:0, i558:0) :|: TRUE && arith = i672:0 + 1 (2) f4406_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x10, x11, x8, x11, x8) -> f4406_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x12, x11, x8, x11, x8) :|: x10 < x11 && x12 = x10 + 1 (3) f4406_0_Display_GT(java.lang.Object(ARRAY(x13)), x14, x15, x16, x13, x16, x13) -> f4406_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) f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, i672:0, i672:0, i558:0, i672:0, i558:0) -> f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0)), i560:0, arith, i672:0, i558:0, i672:0, i558:0) :|: TRUE && arith = i672:0 + 1 (2) f4406_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x10, x11, x8, x11, x8) -> f4406_0_Display_GT(java.lang.Object(ARRAY(x8)), x9, x12, x11, x8, x11, x8) :|: x10 < x11 && x12 = x10 + 1 (3) f4406_0_Display_GT(java.lang.Object(ARRAY(x13)), x14, x15, x16, x13, x16, x13) -> f4406_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: f4406_0_Display_GT(java.lang.Object(ARRAY(x13:0)), x14:0, x15:0, x16:0, x13:0, x16:0, x13:0) -> f4406_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 f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0:0)), i560:0:0, i672:0:0, i672:0:0, i558:0:0, i672:0:0, i558:0:0) -> f4406_0_Display_GT(java.lang.Object(ARRAY(i558:0:0)), i560:0:0, i672:0:0 + 1, i672:0:0, i558:0:0, i672:0:0, i558:0:0) :|: TRUE f4406_0_Display_GT(java.lang.Object(ARRAY(x8:0)), x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f4406_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 ---------------------------------------- (29) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f4406_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: f4406_0_Display_GT(c, x14:0, x15:0, x16:0, x13:0, x16:0, x13:0) -> f4406_0_Display_GT(c1, c2, c3, x16:0, x13:0, x16:0, x13:0) :|: c3 = 0 && (c2 = x14:0 + 1 && (c1 = 0 && c = 0)) && (x14:0 + 1 < x13:0 && x16:0 < x15:0) f4406_0_Display_GT(c4, i560:0:0, i672:0:0, i672:0:0, i558:0:0, i672:0:0, i558:0:0) -> f4406_0_Display_GT(c5, i560:0:0, c6, i672:0:0, i558:0:0, i672:0:0, i558:0:0) :|: c6 = i672:0:0 + 1 && (c5 = 0 && c4 = 0) && TRUE f4406_0_Display_GT(c7, x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f4406_0_Display_GT(c8, x9:0, c9, x11:0, x8:0, x11:0, x8:0) :|: c9 = x10:0 + 1 && (c8 = 0 && c7 = 0) && x11:0 > x10:0 ---------------------------------------- (31) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f4406_0_Display_GT(x, x1, x2, x3, x4, x5, x6)] = -1 + c*x - x1 + x6 The following rules are decreasing: f4406_0_Display_GT(c, x14:0, x15:0, x16:0, x13:0, x16:0, x13:0) -> f4406_0_Display_GT(c1, c2, c3, x16:0, x13:0, x16:0, x13:0) :|: c3 = 0 && (c2 = x14:0 + 1 && (c1 = 0 && c = 0)) && (x14:0 + 1 < x13:0 && x16:0 < x15:0) The following rules are bounded: f4406_0_Display_GT(c, x14:0, x15:0, x16:0, x13:0, x16:0, x13:0) -> f4406_0_Display_GT(c1, c2, c3, x16:0, x13:0, x16:0, x13:0) :|: c3 = 0 && (c2 = x14:0 + 1 && (c1 = 0 && c = 0)) && (x14:0 + 1 < x13:0 && x16:0 < x15:0) ---------------------------------------- (32) Obligation: Rules: f4406_0_Display_GT(c4, i560:0:0, i672:0:0, i672:0:0, i558:0:0, i672:0:0, i558:0:0) -> f4406_0_Display_GT(c5, i560:0:0, c6, i672:0:0, i558:0:0, i672:0:0, i558:0:0) :|: c6 = i672:0:0 + 1 && (c5 = 0 && c4 = 0) && TRUE f4406_0_Display_GT(c7, x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f4406_0_Display_GT(c8, x9:0, c9, x11:0, x8:0, x11:0, x8:0) :|: c9 = x10:0 + 1 && (c8 = 0 && c7 = 0) && x11:0 > x10:0 ---------------------------------------- (33) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f4406_0_Display_GT(x, x1, x2, x3, x4, x5, x6)] = c*x - x2 + x5 The following rules are decreasing: f4406_0_Display_GT(c4, i560:0:0, i672:0:0, i672:0:0, i558:0:0, i672:0:0, i558:0:0) -> f4406_0_Display_GT(c5, i560:0:0, c6, i672:0:0, i558:0:0, i672:0:0, i558:0:0) :|: c6 = i672:0:0 + 1 && (c5 = 0 && c4 = 0) && TRUE f4406_0_Display_GT(c7, x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f4406_0_Display_GT(c8, x9:0, c9, x11:0, x8:0, x11:0, x8:0) :|: c9 = x10:0 + 1 && (c8 = 0 && c7 = 0) && x11:0 > x10:0 The following rules are bounded: f4406_0_Display_GT(c4, i560:0:0, i672:0:0, i672:0:0, i558:0:0, i672:0:0, i558:0:0) -> f4406_0_Display_GT(c5, i560:0:0, c6, i672:0:0, i558:0:0, i672:0:0, i558:0:0) :|: c6 = i672:0:0 + 1 && (c5 = 0 && c4 = 0) && TRUE f4406_0_Display_GT(c7, x9:0, x10:0, x11:0, x8:0, x11:0, x8:0) -> f4406_0_Display_GT(c8, x9:0, c9, x11:0, x8:0, x11:0, x8:0) :|: c9 = x10:0 + 1 && (c8 = 0 && c7 = 0) && x11:0 > x10:0 ---------------------------------------- (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: f2231_0_SolveDP_FieldAccess(EOS(STATIC_2231(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i355) -> f2240_0_SolveDP_GE(EOS(STATIC_2240(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i355, i353) :|: TRUE f2240_0_SolveDP_GE(EOS(STATIC_2240(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i355, i353) -> f2250_0_SolveDP_GE(EOS(STATIC_2250(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i355, i353) :|: i355 < i353 f2250_0_SolveDP_GE(EOS(STATIC_2250(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i355, i353) -> f2259_0_SolveDP_ConstantStackPush(EOS(STATIC_2259(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355) :|: i355 < i353 f2259_0_SolveDP_ConstantStackPush(EOS(STATIC_2259(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355) -> f2266_0_SolveDP_Store(EOS(STATIC_2266(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, 0) :|: TRUE f2266_0_SolveDP_Store(EOS(STATIC_2266(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, matching1) -> f2278_0_SolveDP_Load(EOS(STATIC_2278(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, 0) :|: TRUE && matching1 = 0 f2278_0_SolveDP_Load(EOS(STATIC_2278(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, matching1) -> f3307_0_SolveDP_Load(EOS(STATIC_3307(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, 0) :|: TRUE && matching1 = 0 f3307_0_SolveDP_Load(EOS(STATIC_3307(i353, o667, o668, i533, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i534) -> f5436_0_SolveDP_Load(EOS(STATIC_5436(i353, o667, o668, i533, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i534) :|: TRUE f5436_0_SolveDP_Load(EOS(STATIC_5436(i353, o1600, o1601, i1086, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i1087) -> f6283_0_SolveDP_Load(EOS(STATIC_6283(i353, o1600, o1601, i1086, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i1087) :|: TRUE f6283_0_SolveDP_Load(EOS(STATIC_6283(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) -> f6290_0_SolveDP_FieldAccess(EOS(STATIC_6290(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531) :|: TRUE f6290_0_SolveDP_FieldAccess(EOS(STATIC_6290(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531) -> f6295_0_SolveDP_GT(EOS(STATIC_6295(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2530) :|: TRUE f6295_0_SolveDP_GT(EOS(STATIC_6295(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2530) -> f6306_0_SolveDP_GT(EOS(STATIC_6306(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2530) :|: i2531 > i2530 f6295_0_SolveDP_GT(EOS(STATIC_6295(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2530) -> f6307_0_SolveDP_GT(EOS(STATIC_6307(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2530) :|: i2531 <= i2530 f6306_0_SolveDP_GT(EOS(STATIC_6306(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2530) -> f6316_0_SolveDP_Inc(EOS(STATIC_6316(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355) :|: i2531 > i2530 f6316_0_SolveDP_Inc(EOS(STATIC_6316(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355) -> f6323_0_SolveDP_JMP(EOS(STATIC_6323(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355 + 1) :|: TRUE f6323_0_SolveDP_JMP(EOS(STATIC_6323(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i2559) -> f6336_0_SolveDP_Load(EOS(STATIC_6336(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i2559) :|: TRUE f6336_0_SolveDP_Load(EOS(STATIC_6336(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i2559) -> f2195_0_SolveDP_Load(EOS(STATIC_2195(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i2559) :|: TRUE f2195_0_SolveDP_Load(EOS(STATIC_2195(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355) -> f2231_0_SolveDP_FieldAccess(EOS(STATIC_2231(i353, o344, o345, i354, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i355) :|: TRUE f6307_0_SolveDP_GT(EOS(STATIC_6307(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2530) -> f6317_0_SolveDP_Load(EOS(STATIC_6317(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) :|: i2531 <= i2530 f6317_0_SolveDP_Load(EOS(STATIC_6317(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) -> f6324_0_SolveDP_FieldAccess(EOS(STATIC_6324(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531) :|: TRUE f6324_0_SolveDP_FieldAccess(EOS(STATIC_6324(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531) -> f6337_0_SolveDP_Load(EOS(STATIC_6337(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, o4047) :|: TRUE f6337_0_SolveDP_Load(EOS(STATIC_6337(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, o4047) -> f6346_0_SolveDP_ArrayAccess(EOS(STATIC_6346(i353, o4047, o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, o4047, i355) :|: TRUE f6346_0_SolveDP_ArrayAccess(EOS(STATIC_6346(i353, java.lang.Object(o4155put), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, java.lang.Object(o4155put), i355) -> f6351_0_SolveDP_ArrayAccess(EOS(STATIC_6351(i353, java.lang.Object(o4155put), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, java.lang.Object(o4155put), i355) :|: TRUE f6351_0_SolveDP_ArrayAccess(EOS(STATIC_6351(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, java.lang.Object(ARRAY(i2615)), i355) -> f6364_0_SolveDP_ArrayAccess(EOS(STATIC_6364(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, java.lang.Object(ARRAY(i2615)), i355) :|: i2615 >= 0 f6364_0_SolveDP_ArrayAccess(EOS(STATIC_6364(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, java.lang.Object(ARRAY(i2615)), i355) -> f6376_0_SolveDP_ArrayAccess(EOS(STATIC_6376(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, java.lang.Object(ARRAY(i2615)), i355) :|: TRUE f6376_0_SolveDP_ArrayAccess(EOS(STATIC_6376(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, java.lang.Object(ARRAY(i2615)), i355) -> f6383_0_SolveDP_IntArithmetic(EOS(STATIC_6383(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2631) :|: i355 < i2615 f6383_0_SolveDP_IntArithmetic(EOS(STATIC_6383(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531, i2631) -> f6399_0_SolveDP_GE(EOS(STATIC_6399(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2531 - i2631) :|: i2531 >= 0 f6399_0_SolveDP_GE(EOS(STATIC_6399(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2686) -> f6413_0_SolveDP_GE(EOS(STATIC_6413(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2686) :|: TRUE f6399_0_SolveDP_GE(EOS(STATIC_6399(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2687) -> f6414_0_SolveDP_GE(EOS(STATIC_6414(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2687) :|: TRUE f6413_0_SolveDP_GE(EOS(STATIC_6413(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2686) -> f6426_0_SolveDP_FieldAccess(EOS(STATIC_6426(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) :|: i2686 < 0 f6426_0_SolveDP_FieldAccess(EOS(STATIC_6426(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) -> f6444_0_SolveDP_Load(EOS(STATIC_6444(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353))) :|: TRUE f6444_0_SolveDP_Load(EOS(STATIC_6444(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353))) -> f6460_0_SolveDP_ArrayAccess(EOS(STATIC_6460(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353)), i355) :|: TRUE f6460_0_SolveDP_ArrayAccess(EOS(STATIC_6460(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353)), i355) -> f6474_0_SolveDP_ArrayAccess(EOS(STATIC_6474(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353)), i355) :|: TRUE f6474_0_SolveDP_ArrayAccess(EOS(STATIC_6474(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353)), i355) -> f6495_0_SolveDP_Load(EOS(STATIC_6495(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698) :|: i355 < i353 f6495_0_SolveDP_Load(EOS(STATIC_6495(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698) -> f6516_0_SolveDP_FieldAccess(EOS(STATIC_6516(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531) :|: TRUE f6516_0_SolveDP_FieldAccess(EOS(STATIC_6516(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531) -> f6532_0_SolveDP_Load(EOS(STATIC_6532(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353))) :|: TRUE f6532_0_SolveDP_Load(EOS(STATIC_6532(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353))) -> f6554_0_SolveDP_ConstantStackPush(EOS(STATIC_6554(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353)), i355) :|: TRUE f6554_0_SolveDP_ConstantStackPush(EOS(STATIC_6554(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353)), i355) -> f6576_0_SolveDP_IntArithmetic(EOS(STATIC_6576(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353)), i355, 1) :|: TRUE f6576_0_SolveDP_IntArithmetic(EOS(STATIC_6576(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353)), i355, matching1) -> f6594_0_SolveDP_ArrayAccess(EOS(STATIC_6594(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353)), i355 - 1) :|: i355 > 0 && matching1 = 1 f6594_0_SolveDP_ArrayAccess(EOS(STATIC_6594(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353)), i3194) -> f6618_0_SolveDP_ArrayAccess(EOS(STATIC_6618(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353)), i3194) :|: TRUE f6618_0_SolveDP_ArrayAccess(EOS(STATIC_6618(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i353)), i3194) -> f6642_0_SolveDP_Load(EOS(STATIC_6642(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, o5478) :|: i3194 < i353 f6642_0_SolveDP_Load(EOS(STATIC_6642(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, o5478) -> f6662_0_SolveDP_ArrayAccess(EOS(STATIC_6662(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, o5478, i2531) :|: TRUE f6662_0_SolveDP_ArrayAccess(EOS(STATIC_6662(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(o5741put), i2531) -> f6681_0_SolveDP_ArrayAccess(EOS(STATIC_6681(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(o5741put), i2531) :|: TRUE f6681_0_SolveDP_ArrayAccess(EOS(STATIC_6681(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(o5741put), i2531) -> f6703_0_SolveDP_ArrayAccess(EOS(STATIC_6703(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(o5741put), i2531) :|: TRUE f6681_0_SolveDP_ArrayAccess(EOS(STATIC_6681(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o5865put), i2531, java.lang.Object(o5865put), i2531) -> f6704_0_SolveDP_ArrayAccess(EOS(STATIC_6704(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o5865put), i2531, java.lang.Object(o5865put), i2531) :|: TRUE f6703_0_SolveDP_ArrayAccess(EOS(STATIC_6703(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i3675)), i2531) -> f6725_0_SolveDP_ArrayAccess(EOS(STATIC_6725(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i3675)), i2531) :|: i3675 >= 0 f6725_0_SolveDP_ArrayAccess(EOS(STATIC_6725(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i3675)), i2531) -> f6747_0_SolveDP_ArrayAccess(EOS(STATIC_6747(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i3675)), i2531) :|: TRUE f6747_0_SolveDP_ArrayAccess(EOS(STATIC_6747(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531, java.lang.Object(ARRAY(i3675)), i2531) -> f6776_0_SolveDP_ArrayAccess(EOS(STATIC_6776(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4698, i2531) :|: i2531 < i3675 f6776_0_SolveDP_ArrayAccess(EOS(STATIC_6776(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o6332put), i2531) -> f6800_0_SolveDP_ArrayAccess(EOS(STATIC_6800(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o6332put), i2531) :|: TRUE f6800_0_SolveDP_ArrayAccess(EOS(STATIC_6800(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i4028)), i2531) -> f6820_0_SolveDP_ArrayAccess(EOS(STATIC_6820(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i4028)), i2531) :|: i4028 >= 0 f6820_0_SolveDP_ArrayAccess(EOS(STATIC_6820(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i4028)), i2531) -> f6846_0_SolveDP_ArrayAccess(EOS(STATIC_6846(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i4028)), i2531) :|: TRUE f6846_0_SolveDP_ArrayAccess(EOS(STATIC_6846(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i4028)), i2531) -> f6869_0_SolveDP_JMP(EOS(STATIC_6869(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) :|: i2531 < i4028 f6869_0_SolveDP_JMP(EOS(STATIC_6869(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) -> f6888_0_SolveDP_Inc(EOS(STATIC_6888(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) :|: TRUE f6888_0_SolveDP_Inc(EOS(STATIC_6888(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) -> f6909_0_SolveDP_JMP(EOS(STATIC_6909(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531 + 1) :|: TRUE f6909_0_SolveDP_JMP(EOS(STATIC_6909(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i4511) -> f6929_0_SolveDP_Load(EOS(STATIC_6929(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i4511) :|: TRUE f6929_0_SolveDP_Load(EOS(STATIC_6929(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i4511) -> f6283_0_SolveDP_Load(EOS(STATIC_6283(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i4511) :|: TRUE f6704_0_SolveDP_ArrayAccess(EOS(STATIC_6704(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3676)), i2531, java.lang.Object(ARRAY(i3676)), i2531) -> f6726_0_SolveDP_ArrayAccess(EOS(STATIC_6726(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3676)), i2531, java.lang.Object(ARRAY(i3676)), i2531) :|: i3676 >= 0 f6726_0_SolveDP_ArrayAccess(EOS(STATIC_6726(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3676)), i2531, java.lang.Object(ARRAY(i3676)), i2531) -> f6749_0_SolveDP_ArrayAccess(EOS(STATIC_6749(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3676)), i2531, java.lang.Object(ARRAY(i3676)), i2531) :|: TRUE f6749_0_SolveDP_ArrayAccess(EOS(STATIC_6749(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3676)), i2531, java.lang.Object(ARRAY(i3676)), i2531) -> f6778_0_SolveDP_ArrayAccess(EOS(STATIC_6778(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3676)), i2531) :|: i2531 < i3676 f6778_0_SolveDP_ArrayAccess(EOS(STATIC_6778(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3676)), i2531) -> f6776_0_SolveDP_ArrayAccess(EOS(STATIC_6776(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3676)), i2531) :|: TRUE f6414_0_SolveDP_GE(EOS(STATIC_6414(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, i2687) -> f6427_0_SolveDP_FieldAccess(EOS(STATIC_6427(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) :|: i2687 >= 0 f6427_0_SolveDP_FieldAccess(EOS(STATIC_6427(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) -> f6445_0_SolveDP_Load(EOS(STATIC_6445(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353))) :|: TRUE f6445_0_SolveDP_Load(EOS(STATIC_6445(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353))) -> f6461_0_SolveDP_ArrayAccess(EOS(STATIC_6461(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353)), i355) :|: TRUE f6461_0_SolveDP_ArrayAccess(EOS(STATIC_6461(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353)), i355) -> f6476_0_SolveDP_ArrayAccess(EOS(STATIC_6476(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353)), i355) :|: TRUE f6476_0_SolveDP_ArrayAccess(EOS(STATIC_6476(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i353)), i355) -> f6497_0_SolveDP_Load(EOS(STATIC_6497(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700) :|: i355 < i353 f6497_0_SolveDP_Load(EOS(STATIC_6497(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700) -> f6517_0_SolveDP_FieldAccess(EOS(STATIC_6517(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531) :|: TRUE f6517_0_SolveDP_FieldAccess(EOS(STATIC_6517(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531) -> f6534_0_SolveDP_Load(EOS(STATIC_6534(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353))) :|: TRUE f6534_0_SolveDP_Load(EOS(STATIC_6534(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353))) -> f6556_0_SolveDP_ConstantStackPush(EOS(STATIC_6556(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353)), i355) :|: TRUE f6556_0_SolveDP_ConstantStackPush(EOS(STATIC_6556(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353)), i355) -> f6577_0_SolveDP_IntArithmetic(EOS(STATIC_6577(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353)), i355, 1) :|: TRUE f6577_0_SolveDP_IntArithmetic(EOS(STATIC_6577(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353)), i355, matching1) -> f6596_0_SolveDP_ArrayAccess(EOS(STATIC_6596(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353)), i355 - 1) :|: i355 > 0 && matching1 = 1 f6596_0_SolveDP_ArrayAccess(EOS(STATIC_6596(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353)), i3200) -> f6621_0_SolveDP_ArrayAccess(EOS(STATIC_6621(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353)), i3200) :|: TRUE f6621_0_SolveDP_ArrayAccess(EOS(STATIC_6621(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i353)), i3200) -> f6644_0_SolveDP_Load(EOS(STATIC_6644(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, o5480) :|: i3200 < i353 f6644_0_SolveDP_Load(EOS(STATIC_6644(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, o5480) -> f6664_0_SolveDP_ArrayAccess(EOS(STATIC_6664(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, o5480, i2531) :|: TRUE f6664_0_SolveDP_ArrayAccess(EOS(STATIC_6664(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(o5754put), i2531) -> f6685_0_SolveDP_ArrayAccess(EOS(STATIC_6685(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(o5754put), i2531) :|: TRUE f6685_0_SolveDP_ArrayAccess(EOS(STATIC_6685(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(o5754put), i2531) -> f6707_0_SolveDP_ArrayAccess(EOS(STATIC_6707(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(o5754put), i2531) :|: TRUE f6685_0_SolveDP_ArrayAccess(EOS(STATIC_6685(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o5869put), i2531, java.lang.Object(o5869put), i2531) -> f6708_0_SolveDP_ArrayAccess(EOS(STATIC_6708(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o5869put), i2531, java.lang.Object(o5869put), i2531) :|: TRUE f6707_0_SolveDP_ArrayAccess(EOS(STATIC_6707(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i3684)), i2531) -> f6728_0_SolveDP_ArrayAccess(EOS(STATIC_6728(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i3684)), i2531) :|: i3684 >= 0 f6728_0_SolveDP_ArrayAccess(EOS(STATIC_6728(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i3684)), i2531) -> f6754_0_SolveDP_ArrayAccess(EOS(STATIC_6754(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i3684)), i2531) :|: TRUE f6754_0_SolveDP_ArrayAccess(EOS(STATIC_6754(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, java.lang.Object(ARRAY(i3684)), i2531) -> f6782_0_SolveDP_FieldAccess(EOS(STATIC_6782(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) :|: i2531 < i3684 f6782_0_SolveDP_FieldAccess(EOS(STATIC_6782(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) -> f6803_0_SolveDP_Load(EOS(STATIC_6803(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353))) :|: TRUE f6803_0_SolveDP_Load(EOS(STATIC_6803(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353))) -> f6827_0_SolveDP_ConstantStackPush(EOS(STATIC_6827(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353)), i355) :|: TRUE f6827_0_SolveDP_ConstantStackPush(EOS(STATIC_6827(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353)), i355) -> f6852_0_SolveDP_IntArithmetic(EOS(STATIC_6852(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353)), i355, 1) :|: TRUE f6852_0_SolveDP_IntArithmetic(EOS(STATIC_6852(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353)), i355, matching1) -> f6873_0_SolveDP_ArrayAccess(EOS(STATIC_6873(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353)), i355 - 1) :|: i355 > 0 && matching1 = 1 f6873_0_SolveDP_ArrayAccess(EOS(STATIC_6873(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353)), i4270) -> f6894_0_SolveDP_ArrayAccess(EOS(STATIC_6894(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353)), i4270) :|: TRUE f6894_0_SolveDP_ArrayAccess(EOS(STATIC_6894(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i353)), i4270) -> f6915_0_SolveDP_Load(EOS(STATIC_6915(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116) :|: i4270 < i353 f6915_0_SolveDP_Load(EOS(STATIC_6915(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116) -> f6933_0_SolveDP_FieldAccess(EOS(STATIC_6933(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531) :|: TRUE f6933_0_SolveDP_FieldAccess(EOS(STATIC_6933(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531) -> f6949_0_SolveDP_Load(EOS(STATIC_6949(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531, java.lang.Object(ARRAY(i2615))) :|: TRUE f6949_0_SolveDP_Load(EOS(STATIC_6949(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531, java.lang.Object(ARRAY(i2615))) -> f6968_0_SolveDP_ArrayAccess(EOS(STATIC_6968(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531, java.lang.Object(ARRAY(i2615)), i355) :|: TRUE f6968_0_SolveDP_ArrayAccess(EOS(STATIC_6968(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531, java.lang.Object(ARRAY(i2615)), i355) -> f6986_0_SolveDP_ArrayAccess(EOS(STATIC_6986(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531, java.lang.Object(ARRAY(i2615)), i355) :|: TRUE f6986_0_SolveDP_ArrayAccess(EOS(STATIC_6986(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531, java.lang.Object(ARRAY(i2615)), i355) -> f7003_0_SolveDP_IntArithmetic(EOS(STATIC_7003(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531, i5175) :|: i355 < i2615 f7003_0_SolveDP_IntArithmetic(EOS(STATIC_7003(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531, i5175) -> f7020_0_SolveDP_ArrayAccess(EOS(STATIC_7020(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, o7116, i2531 - i5175) :|: i2531 >= 0 f7020_0_SolveDP_ArrayAccess(EOS(STATIC_7020(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(o8216put), i5315) -> f7037_0_SolveDP_ArrayAccess(EOS(STATIC_7037(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(o8216put), i5315) :|: TRUE f7037_0_SolveDP_ArrayAccess(EOS(STATIC_7037(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(o8216put), i5315) -> f7053_0_SolveDP_ArrayAccess(EOS(STATIC_7053(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(o8216put), i5315) :|: TRUE f7037_0_SolveDP_ArrayAccess(EOS(STATIC_7037(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o8383put), i2531, i3858, java.lang.Object(o8383put), i5315) -> f7054_0_SolveDP_ArrayAccess(EOS(STATIC_7054(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o8383put), i2531, i3858, java.lang.Object(o8383put), i5315) :|: TRUE f7053_0_SolveDP_ArrayAccess(EOS(STATIC_7053(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i5711)), i5315) -> f7071_0_SolveDP_ArrayAccess(EOS(STATIC_7071(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i5711)), i5315) :|: i5711 >= 0 f7071_0_SolveDP_ArrayAccess(EOS(STATIC_7071(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i5711)), i5851) -> f7087_0_SolveDP_ArrayAccess(EOS(STATIC_7087(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i5711)), i5851) :|: TRUE f7087_0_SolveDP_ArrayAccess(EOS(STATIC_7087(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i5711)), i5851) -> f7104_0_SolveDP_ArrayAccess(EOS(STATIC_7104(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i5711)), i5851) :|: TRUE f7104_0_SolveDP_ArrayAccess(EOS(STATIC_7104(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, java.lang.Object(ARRAY(i5711)), i5851) -> f7124_0_SolveDP_FieldAccess(EOS(STATIC_7124(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131) :|: i5851 < i5711 f7124_0_SolveDP_FieldAccess(EOS(STATIC_7124(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131) -> f7142_0_SolveDP_Load(EOS(STATIC_7142(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, o4048) :|: TRUE f7142_0_SolveDP_Load(EOS(STATIC_7142(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, o4048) -> f7159_0_SolveDP_ArrayAccess(EOS(STATIC_7159(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, o4048, i355) :|: TRUE f7159_0_SolveDP_ArrayAccess(EOS(STATIC_7159(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(o9756put), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, java.lang.Object(o9756put), i355) -> f7177_0_SolveDP_ArrayAccess(EOS(STATIC_7177(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(o9756put), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, java.lang.Object(o9756put), i355) :|: TRUE f7177_0_SolveDP_ArrayAccess(EOS(STATIC_7177(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, java.lang.Object(ARRAY(i6580)), i355) -> f7188_0_SolveDP_ArrayAccess(EOS(STATIC_7188(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, java.lang.Object(ARRAY(i6580)), i355) :|: i6580 >= 0 f7188_0_SolveDP_ArrayAccess(EOS(STATIC_7188(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, java.lang.Object(ARRAY(i6580)), i355) -> f7200_0_SolveDP_ArrayAccess(EOS(STATIC_7200(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, java.lang.Object(ARRAY(i6580)), i355) :|: TRUE f7200_0_SolveDP_ArrayAccess(EOS(STATIC_7200(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, java.lang.Object(ARRAY(i6580)), i355) -> f7211_0_SolveDP_IntArithmetic(EOS(STATIC_7211(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, i6755) :|: i355 < i6580 f7211_0_SolveDP_IntArithmetic(EOS(STATIC_7211(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131, i6755) -> f7221_0_SolveDP_InvokeMethod(EOS(STATIC_7221(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6131 + i6755) :|: TRUE f7221_0_SolveDP_InvokeMethod(EOS(STATIC_7221(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838) -> f7231_0_max_Load(EOS(STATIC_7231(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838) :|: TRUE f7231_0_max_Load(EOS(STATIC_7231(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838) -> f7249_0_max_Load(EOS(STATIC_7249(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858) :|: TRUE f7249_0_max_Load(EOS(STATIC_7249(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858) -> f7257_0_max_LE(EOS(STATIC_7257(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858, i6838) :|: TRUE f7257_0_max_LE(EOS(STATIC_7257(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858, i6838) -> f7264_0_max_LE(EOS(STATIC_7264(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858, i6838) :|: i3858 <= i6838 f7257_0_max_LE(EOS(STATIC_7257(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858, i6838) -> f7265_0_max_LE(EOS(STATIC_7265(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858, i6838) :|: i3858 > i6838 f7264_0_max_LE(EOS(STATIC_7264(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858, i6838) -> f7273_0_max_Load(EOS(STATIC_7273(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i6838) :|: i3858 <= i6838 f7273_0_max_Load(EOS(STATIC_7273(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i6838) -> f7280_0_max_Return(EOS(STATIC_7280(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i6838) :|: TRUE f7280_0_max_Return(EOS(STATIC_7280(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i6838) -> f7287_0_SolveDP_ArrayAccess(EOS(STATIC_7287(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i6838) :|: TRUE f7287_0_SolveDP_ArrayAccess(EOS(STATIC_7287(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o11385put), i2531, i6838) -> f7295_0_SolveDP_ArrayAccess(EOS(STATIC_7295(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(o11385put), i2531, i6838) :|: TRUE f7295_0_SolveDP_ArrayAccess(EOS(STATIC_7295(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i7464)), i2531, i6838) -> f7301_0_SolveDP_ArrayAccess(EOS(STATIC_7301(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i7464)), i2531, i6838) :|: i7464 >= 0 f7301_0_SolveDP_ArrayAccess(EOS(STATIC_7301(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i7464)), i2531, i6838) -> f7308_0_SolveDP_ArrayAccess(EOS(STATIC_7308(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i7464)), i2531, i6838) :|: TRUE f7308_0_SolveDP_ArrayAccess(EOS(STATIC_7308(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i7464)), i2531, i6838) -> f7315_0_SolveDP_Inc(EOS(STATIC_7315(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) :|: i2531 < i7464 f7315_0_SolveDP_Inc(EOS(STATIC_7315(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531) -> f7322_0_SolveDP_JMP(EOS(STATIC_7322(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531 + 1) :|: TRUE f7322_0_SolveDP_JMP(EOS(STATIC_7322(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i7592) -> f7328_0_SolveDP_Load(EOS(STATIC_7328(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i7592) :|: TRUE f7328_0_SolveDP_Load(EOS(STATIC_7328(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i7592) -> f6283_0_SolveDP_Load(EOS(STATIC_6283(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i7592) :|: TRUE f7265_0_max_LE(EOS(STATIC_7265(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858, i6838, i3858, i6838) -> f7274_0_max_Load(EOS(STATIC_7274(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) :|: i3858 > i6838 f7274_0_max_Load(EOS(STATIC_7274(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) -> f7281_0_max_JMP(EOS(STATIC_7281(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) :|: TRUE f7281_0_max_JMP(EOS(STATIC_7281(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) -> f7288_0_max_Return(EOS(STATIC_7288(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) :|: TRUE f7288_0_max_Return(EOS(STATIC_7288(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) -> f7280_0_max_Return(EOS(STATIC_7280(i353, java.lang.Object(ARRAY(i2615)), java.lang.Object(ARRAY(i6580)), i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, o4700, i2531, i3858) :|: TRUE f7054_0_SolveDP_ArrayAccess(EOS(STATIC_7054(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, java.lang.Object(ARRAY(i5712)), i5315) -> f7072_0_SolveDP_ArrayAccess(EOS(STATIC_7072(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, java.lang.Object(ARRAY(i5712)), i5315) :|: i5712 >= 0 f7072_0_SolveDP_ArrayAccess(EOS(STATIC_7072(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, java.lang.Object(ARRAY(i5712)), i5853) -> f7089_0_SolveDP_ArrayAccess(EOS(STATIC_7089(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, java.lang.Object(ARRAY(i5712)), i5853) :|: TRUE f7089_0_SolveDP_ArrayAccess(EOS(STATIC_7089(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, java.lang.Object(ARRAY(i5712)), i5853) -> f7107_0_SolveDP_ArrayAccess(EOS(STATIC_7107(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, java.lang.Object(ARRAY(i5712)), i5853) :|: TRUE f7107_0_SolveDP_ArrayAccess(EOS(STATIC_7107(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, java.lang.Object(ARRAY(i5712)), i5853) -> f7126_0_SolveDP_FieldAccess(EOS(STATIC_7126(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, i6132) :|: i5853 < i5712 f7126_0_SolveDP_FieldAccess(EOS(STATIC_7126(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, i6132) -> f7144_0_SolveDP_Load(EOS(STATIC_7144(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, i6132, o4048) :|: TRUE f7144_0_SolveDP_Load(EOS(STATIC_7144(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, i6132, o4048) -> f7161_0_SolveDP_ArrayAccess(EOS(STATIC_7161(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, i6132, o4048, i355) :|: TRUE f7161_0_SolveDP_ArrayAccess(EOS(STATIC_7161(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, i6132, o4048, i355) -> f7159_0_SolveDP_ArrayAccess(EOS(STATIC_7159(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i5712)), i2531, i3858, i6132, o4048, i355) :|: TRUE f6708_0_SolveDP_ArrayAccess(EOS(STATIC_6708(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, java.lang.Object(ARRAY(i3685)), i2531) -> f6729_0_SolveDP_ArrayAccess(EOS(STATIC_6729(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, java.lang.Object(ARRAY(i3685)), i2531) :|: i3685 >= 0 f6729_0_SolveDP_ArrayAccess(EOS(STATIC_6729(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, java.lang.Object(ARRAY(i3685)), i2531) -> f6756_0_SolveDP_ArrayAccess(EOS(STATIC_6756(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, java.lang.Object(ARRAY(i3685)), i2531) :|: TRUE f6756_0_SolveDP_ArrayAccess(EOS(STATIC_6756(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, java.lang.Object(ARRAY(i3685)), i2531) -> f6784_0_SolveDP_FieldAccess(EOS(STATIC_6784(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859) :|: i2531 < i3685 f6784_0_SolveDP_FieldAccess(EOS(STATIC_6784(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859) -> f6804_0_SolveDP_Load(EOS(STATIC_6804(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353))) :|: TRUE f6804_0_SolveDP_Load(EOS(STATIC_6804(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353))) -> f6829_0_SolveDP_ConstantStackPush(EOS(STATIC_6829(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353)), i355) :|: TRUE f6829_0_SolveDP_ConstantStackPush(EOS(STATIC_6829(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353)), i355) -> f6854_0_SolveDP_IntArithmetic(EOS(STATIC_6854(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353)), i355, 1) :|: TRUE f6854_0_SolveDP_IntArithmetic(EOS(STATIC_6854(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353)), i355, matching1) -> f6874_0_SolveDP_ArrayAccess(EOS(STATIC_6874(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353)), i355 - 1) :|: i355 > 0 && matching1 = 1 f6874_0_SolveDP_ArrayAccess(EOS(STATIC_6874(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353)), i4271) -> f6873_0_SolveDP_ArrayAccess(EOS(STATIC_6873(i353, java.lang.Object(ARRAY(i2615)), o4048, i2530, java.lang.Object(ARRAY(i353)))), java.lang.Object(ARRAY(i353)), i355, i2531, java.lang.Object(ARRAY(i3685)), i2531, i3859, java.lang.Object(ARRAY(i353)), i4271) :|: TRUE Combined rules. Obtained 9 IRulesP rules: f7257_0_max_LE(EOS(STATIC_7257(i353:0, java.lang.Object(ARRAY(i2615:0)), java.lang.Object(ARRAY(i6580:0)), i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, java.lang.Object(ARRAY(i7464:0)), i2531:0, i3858:0, i6838:0, i3858:0, i6838:0) -> f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, java.lang.Object(ARRAY(i2615:0)), java.lang.Object(ARRAY(i6580:0)), i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2531:0 + 1, i2530:0) :|: i6838:0 >= i3858:0 && i7464:0 > i2531:0 && i7464:0 > -1 f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, o4047:0, o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2531:0, i2530:0) -> f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, o4047:0, o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0 + 1, 0, 0, i2530:0) :|: i355:0 + 1 < i353:0 && i2531:0 > i2530:0 f7037_0_SolveDP_ArrayAccess(EOS(STATIC_7037(i353:0, java.lang.Object(ARRAY(i2615:0)), java.lang.Object(ARRAY(i6580:0)), i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, o4700:0, i2531:0, i3858:0, java.lang.Object(ARRAY(i5711:0)), i5315:0) -> f7257_0_max_LE(EOS(STATIC_7257(i353:0, java.lang.Object(ARRAY(i2615:0)), java.lang.Object(ARRAY(i6580:0)), i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, o4700:0, i2531:0, i3858:0, i6131:0 + i6755:0, i3858:0, i6131:0 + i6755:0) :|: i5711:0 > -1 && i5711:0 > i5315:0 && i6580:0 > i355:0 && i6580:0 > -1 f7257_0_max_LE(EOS(STATIC_7257(i353:0, java.lang.Object(ARRAY(i2615:0)), java.lang.Object(ARRAY(i6580:0)), i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, java.lang.Object(ARRAY(i7464:0)), i2531:0, i3858:0, i6838:0, i3858:0, i6838:0) -> f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, java.lang.Object(ARRAY(i2615:0)), java.lang.Object(ARRAY(i6580:0)), i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2531:0 + 1, i2530:0) :|: i7464:0 > -1 && i7464:0 > i2531:0 && i6838:0 < i3858:0 f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, java.lang.Object(ARRAY(i2615:0)), o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2531:0, i2530:0) -> f7037_0_SolveDP_ArrayAccess(EOS(STATIC_7037(i353:0, java.lang.Object(ARRAY(i2615:0)), o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, java.lang.Object(ARRAY(i3685:0)), i2531:0, i3859:0, java.lang.Object(o8216put:0), i2531:0 - i5175:0) :|: i2531:0 <= i2530:0 && i2615:0 > -1 && i355:0 < i2615:0 && i2531:0 > -1 && i2531:0 - i2631:0 >= 0 && i355:0 < i353:0 && i355:0 > 0 && i355:0 - 1 < i353:0 && i3685:0 > -1 && i3685:0 > i2531:0 f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, java.lang.Object(ARRAY(i2615:0)), o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2531:0, i2530:0) -> f7037_0_SolveDP_ArrayAccess(EOS(STATIC_7037(i353:0, java.lang.Object(ARRAY(i2615:0)), o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, o4700:0, i2531:0, i3858:0, java.lang.Object(o8216put:0), i2531:0 - i5175:0) :|: i2531:0 <= i2530:0 && i2615:0 > -1 && i355:0 < i2615:0 && i2531:0 > -1 && i2531:0 - i2631:0 >= 0 && i355:0 < i353:0 && i355:0 > 0 && i355:0 - 1 < i353:0 && i3684:0 > -1 && i3684:0 > i2531:0 f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, java.lang.Object(ARRAY(i2615:0)), o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2531:0, i2530:0) -> f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, java.lang.Object(ARRAY(i2615:0)), o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2531:0 + 1, i2530:0) :|: i2531:0 <= i2530:0 && i2615:0 > -1 && i355:0 < i2615:0 && i2531:0 > -1 && i2531:0 - i2631:0 < 0 && i355:0 < i353:0 && i355:0 > 0 && i3676:0 > -1 && i355:0 - 1 < i353:0 && i3676:0 > i2531:0 f7037_0_SolveDP_ArrayAccess(EOS(STATIC_7037(i353:0, java.lang.Object(ARRAY(i2615:0)), java.lang.Object(ARRAY(i6580:0)), i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, java.lang.Object(ARRAY(i5712:0)), i2531:0, i3858:0, java.lang.Object(ARRAY(i5712:0)), i5315:0) -> f7257_0_max_LE(EOS(STATIC_7257(i353:0, java.lang.Object(ARRAY(i2615:0)), java.lang.Object(ARRAY(i6580:0)), i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, java.lang.Object(ARRAY(i5712:0)), i2531:0, i3858:0, i6132:0 + i6755:0, i3858:0, i6132:0 + i6755:0) :|: i6580:0 > -1 && i5712:0 > -1 && i5712:0 > i5315:0 && i6580:0 > i355:0 f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, java.lang.Object(ARRAY(i2615:0)), o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2531:0, i2530:0) -> f6295_0_SolveDP_GT(EOS(STATIC_6295(i353:0, java.lang.Object(ARRAY(i2615:0)), o4048:0, i2530:0, java.lang.Object(ARRAY(i353:0)))), java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2531:0 + 1, i2530:0) :|: i2531:0 <= i2530:0 && i2615:0 > -1 && i355:0 < i2615:0 && i2531:0 > -1 && i2531:0 - i2631:0 < 0 && i355:0 < i353:0 && i355:0 > 0 && i355:0 - 1 < i353:0 && i3675:0 > -1 && i3675:0 > i2531:0 && i4028:0 > i2531:0 && i4028:0 > -1 Filtered duplicate arguments: f7257_0_max_LE(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) -> f7257_0_max_LE(x1, x2, x3, x5, x6, x9, x10) f6295_0_SolveDP_GT(x1, x2, x3, x4, x5, x6) -> f6295_0_SolveDP_GT(x1, x2, x3, x5, x6) f7037_0_SolveDP_ArrayAccess(x1, x2, x3, x4, x5, x6, x7, x8, x9) -> f7037_0_SolveDP_ArrayAccess(x1, x2, x3, x5, x6, x7, x8, x9) Finished conversion. Obtained 9 rules.P rules: f7257_0_max_LE(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i7464:0)), i2531:0, i3858:0, i6838:0, i353:0, i2615:0, i6580:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i7464:0 > i2531:0 && i7464:0 > -1 && i6838:0 >= i3858:0 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2530:0, i353:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0 + 1, 0, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i355:0 + 1 < i353:0 && i2531:0 > i2530:0 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i353:0)), i355:0, o4700:0, i2531:0, i3858:0, java.lang.Object(ARRAY(i5711:0)), i5315:0, i353:0, i2615:0, i2530:0, i353:0, i353:0) -> f7257_0_max_LE(java.lang.Object(ARRAY(i353:0)), i355:0, o4700:0, i2531:0, i3858:0, i6131:0 + i6755:0, i353:0, i2615:0, i6580:0, i2530:0, i353:0, i353:0) :|: i5711:0 > i5315:0 && i5711:0 > -1 && i6580:0 > -1 && i6580:0 > i355:0 f7257_0_max_LE(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i7464:0)), i2531:0, i3858:0, i6838:0, i353:0, i2615:0, i6580:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i7464:0 > i2531:0 && i6838:0 < i3858:0 && i7464:0 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2530:0, i353:0, i2530:0, i353:0, i353:0) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i3685:0)), i2531:0, i3859:0, java.lang.Object(o8216put:0), i2531:0 - i5175:0, i353:0, i2615:0, i2530:0, i353:0, i353:0) :|: i2615:0 > -1 && i2531:0 <= i2530:0 && i355:0 < i2615:0 && i2531:0 > -1 && i2531:0 - i2631:0 >= 0 && i355:0 < i353:0 && i355:0 > 0 && i355:0 - 1 < i353:0 && i3685:0 > i2531:0 && i3685:0 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2530:0, i353:0, i2530:0, i353:0, i353:0) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i353:0)), i355:0, o4700:0, i2531:0, i3858:0, java.lang.Object(o8216put:0), i2531:0 - i5175:0, i353:0, i2615:0, i2530:0, i353:0, i353:0) :|: i2615:0 > -1 && i2531:0 <= i2530:0 && i355:0 < i2615:0 && i2531:0 > -1 && i2531:0 - i2631:0 >= 0 && i355:0 < i353:0 && i355:0 > 0 && i355:0 - 1 < i353:0 && i3684:0 > i2531:0 && i3684:0 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2530:0, i353:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i2615:0 > -1 && i2531:0 <= i2530:0 && i355:0 < i2615:0 && i2531:0 > -1 && i2531:0 - i2631:0 < 0 && i355:0 < i353:0 && i355:0 > 0 && i3676:0 > -1 && i3676:0 > i2531:0 && i355:0 - 1 < i353:0 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i5712:0)), i2531:0, i3858:0, java.lang.Object(ARRAY(i5712:0)), i5315:0, i353:0, i2615:0, i2530:0, i353:0, i353:0) -> f7257_0_max_LE(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i5712:0)), i2531:0, i3858:0, i6132:0 + i6755:0, i353:0, i2615:0, i6580:0, i2530:0, i353:0, i353:0) :|: i5712:0 > -1 && i6580:0 > -1 && i6580:0 > i355:0 && i5712:0 > i5315:0 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0, i2530:0, i353:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i2615:0 > -1 && i2531:0 <= i2530:0 && i355:0 < i2615:0 && i2531:0 > -1 && i2531:0 - i2631:0 < 0 && i355:0 < i353:0 && i355:0 > 0 && i355:0 - 1 < i353:0 && i3675:0 > -1 && i3675:0 > i2531:0 && i4028:0 > -1 && i4028:0 > i2531:0 ---------------------------------------- (37) Obligation: Rules: f7257_0_max_LE(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i7464:0)), i2531:0, i3858:0, i6838:0, i353:0, i2615:0, i6580:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, i2531:0 + 1, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i7464:0 > i2531:0 && i7464:0 > -1 && i6838:0 >= i3858:0 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x)), x1, x2, x3, x, x3, x, x) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x)), x1 + 1, 0, x3, x, x3, x, x) :|: x1 + 1 < x && x2 > x3 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x4)), x5, x6, x7, x8, java.lang.Object(ARRAY(x9)), x10, x4, x11, x12, x4, x4) -> f7257_0_max_LE(java.lang.Object(ARRAY(x4)), x5, x6, x7, x8, x13 + x14, x4, x11, x15, x12, x4, x4) :|: x9 > x10 && x9 > -1 && x15 > -1 && x15 > x5 f7257_0_max_LE(java.lang.Object(ARRAY(x16)), x17, java.lang.Object(ARRAY(x18)), x19, x20, x21, x16, x22, x23, x24, x16, x16) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x16)), x17, x19 + 1, x24, x16, x24, x16, x16) :|: x18 > x19 && x21 < x20 && x18 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x25)), x26, x27, x28, x25, x28, x25, x25) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x25)), x26, java.lang.Object(ARRAY(x29)), x27, x30, java.lang.Object(x31), x27 - x32, x25, x33, x28, x25, x25) :|: x33 > -1 && x27 <= x28 && x26 < x33 && x27 > -1 && x27 - x34 >= 0 && x26 < x25 && x26 > 0 && x26 - 1 < x25 && x29 > x27 && x29 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x35)), x36, x37, x38, x35, x38, x35, x35) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x35)), x36, x39, x37, x40, java.lang.Object(x41), x37 - x42, x35, x43, x38, x35, x35) :|: x43 > -1 && x37 <= x38 && x36 < x43 && x37 > -1 && x37 - x44 >= 0 && x36 < x35 && x36 > 0 && x36 - 1 < x35 && x45 > x37 && x45 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x46)), x47, x48, x49, x46, x49, x46, x46) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x46)), x47, x48 + 1, x49, x46, x49, x46, x46) :|: x50 > -1 && x48 <= x49 && x47 < x50 && x48 > -1 && x48 - x51 < 0 && x47 < x46 && x47 > 0 && x52 > -1 && x52 > x48 && x47 - 1 < x46 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x53)), x54, java.lang.Object(ARRAY(x55)), x56, x57, java.lang.Object(ARRAY(x55)), x58, x53, x59, x60, x53, x53) -> f7257_0_max_LE(java.lang.Object(ARRAY(x53)), x54, java.lang.Object(ARRAY(x55)), x56, x57, x61 + x62, x53, x59, x63, x60, x53, x53) :|: x55 > -1 && x63 > -1 && x63 > x54 && x55 > x58 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x64)), x65, x66, x67, x64, x67, x64, x64) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x64)), x65, x66 + 1, x67, x64, x67, x64, x64) :|: x68 > -1 && x66 <= x67 && x65 < x68 && x66 > -1 && x66 - x69 < 0 && x65 < x64 && x65 > 0 && x65 - 1 < x64 && x70 > -1 && x70 > x66 && x71 > -1 && x71 > x66 ---------------------------------------- (38) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (39) Obligation: Rules: f7257_0_max_LE(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i7464:0)), i2531:0, i3858:0, i6838:0, i353:0, i2615:0, i6580:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, arith, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i7464:0 > i2531:0 && i7464:0 > -1 && i6838:0 >= i3858:0 && arith = i2531:0 + 1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72)), x73, x74, x75, x72, x75, x72, x72) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72)), x76, 0, x75, x72, x75, x72, x72) :|: x73 + 1 < x72 && x74 > x75 && x76 = x73 + 1 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x77)), x78, x79, x80, x81, java.lang.Object(ARRAY(x82)), x83, x77, x84, x85, x77, x77) -> f7257_0_max_LE(java.lang.Object(ARRAY(x77)), x78, x79, x80, x81, x86, x77, x84, x87, x85, x77, x77) :|: x82 > x83 && x82 > -1 && x87 > -1 && x87 > x78 && x86 = x88 + x89 f7257_0_max_LE(java.lang.Object(ARRAY(x90)), x91, java.lang.Object(ARRAY(x92)), x93, x94, x95, x90, x96, x97, x98, x90, x90) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x90)), x91, x99, x98, x90, x98, x90, x90) :|: x92 > x93 && x95 < x94 && x92 > -1 && x99 = x93 + 1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x100)), x101, x102, x103, x100, x103, x100, x100) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x100)), x101, java.lang.Object(ARRAY(x104)), x102, x105, java.lang.Object(x106), x107, x100, x108, x103, x100, x100) :|: x108 > -1 && x102 <= x103 && x101 < x108 && x102 > -1 && x102 - x109 >= 0 && x101 < x100 && x101 > 0 && x101 - 1 < x100 && x104 > x102 && x104 > -1 && x107 = x102 - x110 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x111)), x112, x113, x114, x111, x114, x111, x111) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x111)), x112, x115, x113, x116, java.lang.Object(x117), x118, x111, x119, x114, x111, x111) :|: x119 > -1 && x113 <= x114 && x112 < x119 && x113 > -1 && x113 - x120 >= 0 && x112 < x111 && x112 > 0 && x112 - 1 < x111 && x121 > x113 && x121 > -1 && x118 = x113 - x122 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x125, x126, x123, x126, x123, x123) -> f6295_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 && x130 > -1 && x130 > x125 && x124 - 1 < x123 && x127 = x125 + 1 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x131)), x132, java.lang.Object(ARRAY(x133)), x134, x135, java.lang.Object(ARRAY(x133)), x136, x131, x137, x138, x131, x131) -> f7257_0_max_LE(java.lang.Object(ARRAY(x131)), x132, java.lang.Object(ARRAY(x133)), x134, x135, x139, x131, x137, x140, x138, x131, x131) :|: x133 > -1 && x140 > -1 && x140 > x132 && x133 > x136 && x139 = x141 + x142 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143)), x144, x145, x146, x143, x146, x143, x143) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143)), x144, x147, x146, x143, x146, x143, x143) :|: x148 > -1 && x145 <= x146 && x144 < x148 && x145 > -1 && x145 - x149 < 0 && x144 < x143 && x144 > 0 && x144 - 1 < x143 && x150 > -1 && x150 > x145 && x151 > -1 && x151 > x145 && x147 = x145 + 1 ---------------------------------------- (40) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f7257_0_max_LE(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i7464:0)), i2531:0, i3858:0, i6838:0, i353:0, i2615:0, i6580:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, arith, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i7464:0 > i2531:0 && i7464:0 > -1 && i6838:0 >= i3858:0 && arith = i2531:0 + 1 (2) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72)), x73, x74, x75, x72, x75, x72, x72) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72)), x76, 0, x75, x72, x75, x72, x72) :|: x73 + 1 < x72 && x74 > x75 && x76 = x73 + 1 (3) f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x77)), x78, x79, x80, x81, java.lang.Object(ARRAY(x82)), x83, x77, x84, x85, x77, x77) -> f7257_0_max_LE(java.lang.Object(ARRAY(x77)), x78, x79, x80, x81, x86, x77, x84, x87, x85, x77, x77) :|: x82 > x83 && x82 > -1 && x87 > -1 && x87 > x78 && x86 = x88 + x89 (4) f7257_0_max_LE(java.lang.Object(ARRAY(x90)), x91, java.lang.Object(ARRAY(x92)), x93, x94, x95, x90, x96, x97, x98, x90, x90) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x90)), x91, x99, x98, x90, x98, x90, x90) :|: x92 > x93 && x95 < x94 && x92 > -1 && x99 = x93 + 1 (5) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x100)), x101, x102, x103, x100, x103, x100, x100) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x100)), x101, java.lang.Object(ARRAY(x104)), x102, x105, java.lang.Object(x106), x107, x100, x108, x103, x100, x100) :|: x108 > -1 && x102 <= x103 && x101 < x108 && x102 > -1 && x102 - x109 >= 0 && x101 < x100 && x101 > 0 && x101 - 1 < x100 && x104 > x102 && x104 > -1 && x107 = x102 - x110 (6) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x111)), x112, x113, x114, x111, x114, x111, x111) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x111)), x112, x115, x113, x116, java.lang.Object(x117), x118, x111, x119, x114, x111, x111) :|: x119 > -1 && x113 <= x114 && x112 < x119 && x113 > -1 && x113 - x120 >= 0 && x112 < x111 && x112 > 0 && x112 - 1 < x111 && x121 > x113 && x121 > -1 && x118 = x113 - x122 (7) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x125, x126, x123, x126, x123, x123) -> f6295_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 && x130 > -1 && x130 > x125 && x124 - 1 < x123 && x127 = x125 + 1 (8) f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x131)), x132, java.lang.Object(ARRAY(x133)), x134, x135, java.lang.Object(ARRAY(x133)), x136, x131, x137, x138, x131, x131) -> f7257_0_max_LE(java.lang.Object(ARRAY(x131)), x132, java.lang.Object(ARRAY(x133)), x134, x135, x139, x131, x137, x140, x138, x131, x131) :|: x133 > -1 && x140 > -1 && x140 > x132 && x133 > x136 && x139 = x141 + x142 (9) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143)), x144, x145, x146, x143, x146, x143, x143) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143)), x144, x147, x146, x143, x146, x143, x143) :|: x148 > -1 && x145 <= x146 && x144 < x148 && x145 > -1 && x145 - x149 < 0 && x144 < x143 && x144 > 0 && x144 - 1 < x143 && x150 > -1 && x150 > x145 && x151 > -1 && x151 > x145 && x147 = x145 + 1 Arcs: (1) -> (2), (5), (6), (7), (9) (2) -> (2), (5), (6), (7), (9) (3) -> (1), (4) (4) -> (2), (5), (6), (7), (9) (5) -> (3), (8) (6) -> (3), (8) (7) -> (2), (5), (6), (7), (9) (8) -> (1), (4) (9) -> (2), (5), (6), (7), (9) This digraph is fully evaluated! ---------------------------------------- (41) Obligation: Termination digraph: Nodes: (1) f7257_0_max_LE(java.lang.Object(ARRAY(i353:0)), i355:0, java.lang.Object(ARRAY(i7464:0)), i2531:0, i3858:0, i6838:0, i353:0, i2615:0, i6580:0, i2530:0, i353:0, i353:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0)), i355:0, arith, i2530:0, i353:0, i2530:0, i353:0, i353:0) :|: i7464:0 > i2531:0 && i7464:0 > -1 && i6838:0 >= i3858:0 && arith = i2531:0 + 1 (2) f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x77)), x78, x79, x80, x81, java.lang.Object(ARRAY(x82)), x83, x77, x84, x85, x77, x77) -> f7257_0_max_LE(java.lang.Object(ARRAY(x77)), x78, x79, x80, x81, x86, x77, x84, x87, x85, x77, x77) :|: x82 > x83 && x82 > -1 && x87 > -1 && x87 > x78 && x86 = x88 + x89 (3) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x100)), x101, x102, x103, x100, x103, x100, x100) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x100)), x101, java.lang.Object(ARRAY(x104)), x102, x105, java.lang.Object(x106), x107, x100, x108, x103, x100, x100) :|: x108 > -1 && x102 <= x103 && x101 < x108 && x102 > -1 && x102 - x109 >= 0 && x101 < x100 && x101 > 0 && x101 - 1 < x100 && x104 > x102 && x104 > -1 && x107 = x102 - x110 (4) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72)), x73, x74, x75, x72, x75, x72, x72) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72)), x76, 0, x75, x72, x75, x72, x72) :|: x73 + 1 < x72 && x74 > x75 && x76 = x73 + 1 (5) f7257_0_max_LE(java.lang.Object(ARRAY(x90)), x91, java.lang.Object(ARRAY(x92)), x93, x94, x95, x90, x96, x97, x98, x90, x90) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x90)), x91, x99, x98, x90, x98, x90, x90) :|: x92 > x93 && x95 < x94 && x92 > -1 && x99 = x93 + 1 (6) f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x131)), x132, java.lang.Object(ARRAY(x133)), x134, x135, java.lang.Object(ARRAY(x133)), x136, x131, x137, x138, x131, x131) -> f7257_0_max_LE(java.lang.Object(ARRAY(x131)), x132, java.lang.Object(ARRAY(x133)), x134, x135, x139, x131, x137, x140, x138, x131, x131) :|: x133 > -1 && x140 > -1 && x140 > x132 && x133 > x136 && x139 = x141 + x142 (7) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x111)), x112, x113, x114, x111, x114, x111, x111) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x111)), x112, x115, x113, x116, java.lang.Object(x117), x118, x111, x119, x114, x111, x111) :|: x119 > -1 && x113 <= x114 && x112 < x119 && x113 > -1 && x113 - x120 >= 0 && x112 < x111 && x112 > 0 && x112 - 1 < x111 && x121 > x113 && x121 > -1 && x118 = x113 - x122 (8) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x123)), x124, x125, x126, x123, x126, x123, x123) -> f6295_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 && x130 > -1 && x130 > x125 && x124 - 1 < x123 && x127 = x125 + 1 (9) f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143)), x144, x145, x146, x143, x146, x143, x143) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143)), x144, x147, x146, x143, x146, x143, x143) :|: x148 > -1 && x145 <= x146 && x144 < x148 && x145 > -1 && x145 - x149 < 0 && x144 < x143 && x144 > 0 && x144 - 1 < x143 && x150 > -1 && x150 > x145 && x151 > -1 && x151 > x145 && x147 = x145 + 1 Arcs: (1) -> (3), (4), (7), (8), (9) (2) -> (1), (5) (3) -> (2), (6) (4) -> (3), (4), (7), (8), (9) (5) -> (3), (4), (7), (8), (9) (6) -> (1), (5) (7) -> (2), (6) (8) -> (3), (4), (7), (8), (9) (9) -> (3), (4), (7), (8), (9) This digraph is fully evaluated! ---------------------------------------- (42) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (43) Obligation: Rules: f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x100:0)), x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x100:0)), x101:0, java.lang.Object(ARRAY(x104:0)), x102:0, x105:0, java.lang.Object(x106:0), x102:0 - x110:0, x100:0, x108:0, x103:0, x100:0, x100:0) :|: x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72:0)), x73:0, x74:0, x75:0, x72:0, x75:0, x72:0, x72:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72:0)), x73:0 + 1, 0, x75:0, x72:0, x75:0, x72:0, x72:0) :|: x73:0 + 1 < x72:0 && x75:0 < x74:0 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x111:0)), x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x111:0)), x112:0, x115:0, x113:0, x116:0, java.lang.Object(x117:0), x113:0 - x122:0, x111:0, x119:0, x114:0, x111:0, x111:0) :|: x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x77:0)), x78:0, x79:0, x80:0, x81:0, java.lang.Object(ARRAY(x82:0)), x83:0, x77:0, x84:0, x85:0, x77:0, x77:0) -> f7257_0_max_LE(java.lang.Object(ARRAY(x77:0)), x78:0, x79:0, x80:0, x81:0, x88:0 + x89:0, x77:0, x84:0, x87:0, x85:0, x77:0, x77:0) :|: x87:0 > -1 && x87:0 > x78:0 && x82:0 > -1 && x83:0 < x82:0 f7257_0_max_LE(java.lang.Object(ARRAY(x90:0)), x91:0, java.lang.Object(ARRAY(x92:0)), x93:0, x94:0, x95:0, x90:0, x96:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x90:0)), x91:0, x93:0 + 1, x98:0, x90:0, x98:0, x90:0, x90:0) :|: x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1 f7257_0_max_LE(java.lang.Object(ARRAY(i353:0:0)), i355:0:0, java.lang.Object(ARRAY(i7464:0:0)), i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i2615:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0:0)), i355:0:0, i2531:0:0 + 1, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x123:0)), x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x123:0)), x124:0, x125:0 + 1, x126:0, x123:0, x126:0, x123:0, x123:0) :|: x130:0 > x125:0 && x124:0 - 1 < x123:0 && x130:0 > -1 && 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 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x131:0)), x132:0, java.lang.Object(ARRAY(x133:0)), x134:0, x135:0, java.lang.Object(ARRAY(x133:0)), x136:0, x131:0, x137:0, x138:0, x131:0, x131:0) -> f7257_0_max_LE(java.lang.Object(ARRAY(x131:0)), x132:0, java.lang.Object(ARRAY(x133:0)), x134:0, x135:0, x141:0 + x142:0, x131:0, x137:0, x140:0, x138:0, x131:0, x131:0) :|: x140:0 > x132:0 && x136:0 < x133:0 && x140:0 > -1 && x133:0 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143:0)), x144:0, x145:0, x146:0, x143:0, x146:0, x143:0, x143:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143:0)), x144:0, x145:0 + 1, x146:0, x143:0, x146:0, x143:0, x143:0) :|: x151:0 > -1 && x151:0 > x145:0 && x150:0 > x145:0 && x150:0 > -1 && x144:0 - 1 < x143:0 && x144:0 > 0 && x144:0 < x143:0 && x145:0 - x149:0 < 0 && x145:0 > -1 && x148:0 > x144:0 && x146:0 >= x145:0 && x148:0 > -1 ---------------------------------------- (44) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: f7257_0_max_LE(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) -> f7257_0_max_LE(x1, x2, x3, x4, x5, x6, x7, x9, x10, x11, x12) ---------------------------------------- (45) Obligation: Rules: f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x100:0)), x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x100:0)), x101:0, java.lang.Object(ARRAY(x104:0)), x102:0, x105:0, java.lang.Object(x106:0), x102:0 - x110:0, x100:0, x108:0, x103:0, x100:0, x100:0) :|: x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72:0)), x73:0, x74:0, x75:0, x72:0, x75:0, x72:0, x72:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x72:0)), x73:0 + 1, 0, x75:0, x72:0, x75:0, x72:0, x72:0) :|: x73:0 + 1 < x72:0 && x75:0 < x74:0 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x111:0)), x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x111:0)), x112:0, x115:0, x113:0, x116:0, java.lang.Object(x117:0), x113:0 - x122:0, x111:0, x119:0, x114:0, x111:0, x111:0) :|: x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x77:0)), x78:0, x79:0, x80:0, x81:0, java.lang.Object(ARRAY(x82:0)), x83:0, x77:0, x84:0, x85:0, x77:0, x77:0) -> f7257_0_max_LE(java.lang.Object(ARRAY(x77:0)), x78:0, x79:0, x80:0, x81:0, x88:0 + x89:0, x77:0, x87:0, x85:0, x77:0, x77:0) :|: x87:0 > -1 && x87:0 > x78:0 && x82:0 > -1 && x83:0 < x82:0 f7257_0_max_LE(java.lang.Object(ARRAY(x90:0)), x91:0, java.lang.Object(ARRAY(x92:0)), x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x90:0)), x91:0, x93:0 + 1, x98:0, x90:0, x98:0, x90:0, x90:0) :|: x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1 f7257_0_max_LE(java.lang.Object(ARRAY(i353:0:0)), i355:0:0, java.lang.Object(ARRAY(i7464:0:0)), i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(i353:0:0)), i355:0:0, i2531:0:0 + 1, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x123:0)), x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x123:0)), x124:0, x125:0 + 1, x126:0, x123:0, x126:0, x123:0, x123:0) :|: x130:0 > x125:0 && x124:0 - 1 < x123:0 && x130:0 > -1 && 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 f7037_0_SolveDP_ArrayAccess(java.lang.Object(ARRAY(x131:0)), x132:0, java.lang.Object(ARRAY(x133:0)), x134:0, x135:0, java.lang.Object(ARRAY(x133:0)), x136:0, x131:0, x137:0, x138:0, x131:0, x131:0) -> f7257_0_max_LE(java.lang.Object(ARRAY(x131:0)), x132:0, java.lang.Object(ARRAY(x133:0)), x134:0, x135:0, x141:0 + x142:0, x131:0, x140:0, x138:0, x131:0, x131:0) :|: x140:0 > x132:0 && x136:0 < x133:0 && x140:0 > -1 && x133:0 > -1 f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143:0)), x144:0, x145:0, x146:0, x143:0, x146:0, x143:0, x143:0) -> f6295_0_SolveDP_GT(java.lang.Object(ARRAY(x143:0)), x144:0, x145:0 + 1, x146:0, x143:0, x146:0, x143:0, x143:0) :|: x151:0 > -1 && x151:0 > x145:0 && x150:0 > x145:0 && x150:0 > -1 && x144:0 - 1 < x143:0 && x144:0 > 0 && x144:0 < x143:0 && x145:0 - x149:0 < 0 && x145:0 > -1 && x148:0 > x144:0 && x146:0 >= x145:0 && x148:0 > -1 ---------------------------------------- (46) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f6295_0_SolveDP_GT(VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE) java.lang.Object(VARIABLE) ARRAY(VARIABLE) f7037_0_SolveDP_ArrayAccess(VARIABLE, INTEGER, VARIABLE, VARIABLE, VARIABLE, VARIABLE, INTEGER, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE) f7257_0_max_LE(VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE, INTEGER, VARIABLE, VARIABLE, VARIABLE, VARIABLE, VARIABLE) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (47) Obligation: Rules: f6295_0_SolveDP_GT(c, x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(c1, x101:0, c2, x102:0, x105:0, c3, c4, x100:0, x108:0, x103:0, x100:0, x100:0) :|: c4 = x102:0 - x110:0 && (c3 = 0 && (c2 = 0 && (c1 = 0 && c = 0))) && (x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1) f6295_0_SolveDP_GT(c5, x73:0, x74:0, x75:0, x72:0, x75:0, x72:0, x72:0) -> f6295_0_SolveDP_GT(c6, c7, c8, x75:0, x72:0, x75:0, x72:0, x72:0) :|: c8 = 0 && (c7 = x73:0 + 1 && (c6 = 0 && c5 = 0)) && (x73:0 + 1 < x72:0 && x75:0 < x74:0) f6295_0_SolveDP_GT(c9, x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(c10, x112:0, x115:0, x113:0, x116:0, c11, c12, x111:0, x119:0, x114:0, x111:0, x111:0) :|: c12 = x113:0 - x122:0 && (c11 = 0 && (c10 = 0 && c9 = 0)) && (x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1) f7037_0_SolveDP_ArrayAccess(c13, x78:0, x79:0, x80:0, x81:0, c14, x83:0, x77:0, x84:0, x85:0, x77:0, x77:0) -> f7257_0_max_LE(c15, x78:0, x79:0, x80:0, x81:0, c16, x77:0, x87:0, x85:0, x77:0, x77:0) :|: c16 = x88:0 + x89:0 && (c15 = 0 && (c14 = 0 && c13 = 0)) && (x87:0 > -1 && x87:0 > x78:0 && x82:0 > -1 && x83:0 < x82:0) f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) f6295_0_SolveDP_GT(c25, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f6295_0_SolveDP_GT(c26, x124:0, c27, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c27 = x125:0 + 1 && (c26 = 0 && c25 = 0) && (x130:0 > x125:0 && x124:0 - 1 < x123:0 && x130:0 > -1 && 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) f7037_0_SolveDP_ArrayAccess(c28, x132:0, c29, x134:0, x135:0, c30, x136:0, x131:0, x137:0, x138:0, x131:0, x131:0) -> f7257_0_max_LE(c31, x132:0, c32, x134:0, x135:0, c33, x131:0, x140:0, x138:0, x131:0, x131:0) :|: c33 = x141:0 + x142:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && (c29 = 0 && c28 = 0)))) && (x140:0 > x132:0 && x136:0 < x133:0 && x140:0 > -1 && x133:0 > -1) f6295_0_SolveDP_GT(c34, x144:0, x145:0, x146:0, x143:0, x146:0, x143:0, x143:0) -> f6295_0_SolveDP_GT(c35, x144:0, c36, x146:0, x143:0, x146:0, x143:0, x143:0) :|: c36 = x145:0 + 1 && (c35 = 0 && c34 = 0) && (x151:0 > -1 && x151:0 > x145:0 && x150:0 > x145:0 && x150:0 > -1 && x144:0 - 1 < x143:0 && x144:0 > 0 && x144:0 < x143:0 && x145:0 - x149:0 < 0 && x145:0 > -1 && x148:0 > x144:0 && x146:0 >= x145:0 && x148:0 > -1) ---------------------------------------- (48) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6295_0_SolveDP_GT(x, x1, x2, x3, x4, x5, x6, x7)] = -1 + c*x - x1 + x4 [f7037_0_SolveDP_ArrayAccess(x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)] = -1 + c13*x13 + x15 + c8*x8 - x9 [f7257_0_max_LE(x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)] = -1 + c20*x20 - x21 + x29 The following rules are decreasing: f6295_0_SolveDP_GT(c5, x73:0, x74:0, x75:0, x72:0, x75:0, x72:0, x72:0) -> f6295_0_SolveDP_GT(c6, c7, c8, x75:0, x72:0, x75:0, x72:0, x72:0) :|: c8 = 0 && (c7 = x73:0 + 1 && (c6 = 0 && c5 = 0)) && (x73:0 + 1 < x72:0 && x75:0 < x74:0) The following rules are bounded: f6295_0_SolveDP_GT(c, x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(c1, x101:0, c2, x102:0, x105:0, c3, c4, x100:0, x108:0, x103:0, x100:0, x100:0) :|: c4 = x102:0 - x110:0 && (c3 = 0 && (c2 = 0 && (c1 = 0 && c = 0))) && (x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1) f6295_0_SolveDP_GT(c5, x73:0, x74:0, x75:0, x72:0, x75:0, x72:0, x72:0) -> f6295_0_SolveDP_GT(c6, c7, c8, x75:0, x72:0, x75:0, x72:0, x72:0) :|: c8 = 0 && (c7 = x73:0 + 1 && (c6 = 0 && c5 = 0)) && (x73:0 + 1 < x72:0 && x75:0 < x74:0) f6295_0_SolveDP_GT(c9, x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(c10, x112:0, x115:0, x113:0, x116:0, c11, c12, x111:0, x119:0, x114:0, x111:0, x111:0) :|: c12 = x113:0 - x122:0 && (c11 = 0 && (c10 = 0 && c9 = 0)) && (x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1) f6295_0_SolveDP_GT(c25, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f6295_0_SolveDP_GT(c26, x124:0, c27, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c27 = x125:0 + 1 && (c26 = 0 && c25 = 0) && (x130:0 > x125:0 && x124:0 - 1 < x123:0 && x130:0 > -1 && 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) f6295_0_SolveDP_GT(c34, x144:0, x145:0, x146:0, x143:0, x146:0, x143:0, x143:0) -> f6295_0_SolveDP_GT(c35, x144:0, c36, x146:0, x143:0, x146:0, x143:0, x143:0) :|: c36 = x145:0 + 1 && (c35 = 0 && c34 = 0) && (x151:0 > -1 && x151:0 > x145:0 && x150:0 > x145:0 && x150:0 > -1 && x144:0 - 1 < x143:0 && x144:0 > 0 && x144:0 < x143:0 && x145:0 - x149:0 < 0 && x145:0 > -1 && x148:0 > x144:0 && x146:0 >= x145:0 && x148:0 > -1) ---------------------------------------- (49) Obligation: Rules: f6295_0_SolveDP_GT(c, x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(c1, x101:0, c2, x102:0, x105:0, c3, c4, x100:0, x108:0, x103:0, x100:0, x100:0) :|: c4 = x102:0 - x110:0 && (c3 = 0 && (c2 = 0 && (c1 = 0 && c = 0))) && (x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1) f6295_0_SolveDP_GT(c9, x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(c10, x112:0, x115:0, x113:0, x116:0, c11, c12, x111:0, x119:0, x114:0, x111:0, x111:0) :|: c12 = x113:0 - x122:0 && (c11 = 0 && (c10 = 0 && c9 = 0)) && (x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1) f7037_0_SolveDP_ArrayAccess(c13, x78:0, x79:0, x80:0, x81:0, c14, x83:0, x77:0, x84:0, x85:0, x77:0, x77:0) -> f7257_0_max_LE(c15, x78:0, x79:0, x80:0, x81:0, c16, x77:0, x87:0, x85:0, x77:0, x77:0) :|: c16 = x88:0 + x89:0 && (c15 = 0 && (c14 = 0 && c13 = 0)) && (x87:0 > -1 && x87:0 > x78:0 && x82:0 > -1 && x83:0 < x82:0) f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) f6295_0_SolveDP_GT(c25, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f6295_0_SolveDP_GT(c26, x124:0, c27, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c27 = x125:0 + 1 && (c26 = 0 && c25 = 0) && (x130:0 > x125:0 && x124:0 - 1 < x123:0 && x130:0 > -1 && 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) f7037_0_SolveDP_ArrayAccess(c28, x132:0, c29, x134:0, x135:0, c30, x136:0, x131:0, x137:0, x138:0, x131:0, x131:0) -> f7257_0_max_LE(c31, x132:0, c32, x134:0, x135:0, c33, x131:0, x140:0, x138:0, x131:0, x131:0) :|: c33 = x141:0 + x142:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && (c29 = 0 && c28 = 0)))) && (x140:0 > x132:0 && x136:0 < x133:0 && x140:0 > -1 && x133:0 > -1) f6295_0_SolveDP_GT(c34, x144:0, x145:0, x146:0, x143:0, x146:0, x143:0, x143:0) -> f6295_0_SolveDP_GT(c35, x144:0, c36, x146:0, x143:0, x146:0, x143:0, x143:0) :|: c36 = x145:0 + 1 && (c35 = 0 && c34 = 0) && (x151:0 > -1 && x151:0 > x145:0 && x150:0 > x145:0 && x150:0 > -1 && x144:0 - 1 < x143:0 && x144:0 > 0 && x144:0 < x143:0 && x145:0 - x149:0 < 0 && x145:0 > -1 && x148:0 > x144:0 && x146:0 >= x145:0 && x148:0 > -1) ---------------------------------------- (50) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6295_0_SolveDP_GT(x, x1, x2, x3, x4, x5, x6, x7)] = -3 + c*x - x1 - x2 + x3 + 2*x4 [f7037_0_SolveDP_ArrayAccess(x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)] = -3 - x11 + c13*x13 + x15 + x17 + x18 + c8*x8 - x9 [f7257_0_max_LE(x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)] = -4 + c20*x20 - x21 - x23 + 2*x26 + x28 The following rules are decreasing: f7037_0_SolveDP_ArrayAccess(c13, x78:0, x79:0, x80:0, x81:0, c14, x83:0, x77:0, x84:0, x85:0, x77:0, x77:0) -> f7257_0_max_LE(c15, x78:0, x79:0, x80:0, x81:0, c16, x77:0, x87:0, x85:0, x77:0, x77:0) :|: c16 = x88:0 + x89:0 && (c15 = 0 && (c14 = 0 && c13 = 0)) && (x87:0 > -1 && x87:0 > x78:0 && x82:0 > -1 && x83:0 < x82:0) f6295_0_SolveDP_GT(c25, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f6295_0_SolveDP_GT(c26, x124:0, c27, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c27 = x125:0 + 1 && (c26 = 0 && c25 = 0) && (x130:0 > x125:0 && x124:0 - 1 < x123:0 && x130:0 > -1 && 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) f7037_0_SolveDP_ArrayAccess(c28, x132:0, c29, x134:0, x135:0, c30, x136:0, x131:0, x137:0, x138:0, x131:0, x131:0) -> f7257_0_max_LE(c31, x132:0, c32, x134:0, x135:0, c33, x131:0, x140:0, x138:0, x131:0, x131:0) :|: c33 = x141:0 + x142:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && (c29 = 0 && c28 = 0)))) && (x140:0 > x132:0 && x136:0 < x133:0 && x140:0 > -1 && x133:0 > -1) f6295_0_SolveDP_GT(c34, x144:0, x145:0, x146:0, x143:0, x146:0, x143:0, x143:0) -> f6295_0_SolveDP_GT(c35, x144:0, c36, x146:0, x143:0, x146:0, x143:0, x143:0) :|: c36 = x145:0 + 1 && (c35 = 0 && c34 = 0) && (x151:0 > -1 && x151:0 > x145:0 && x150:0 > x145:0 && x150:0 > -1 && x144:0 - 1 < x143:0 && x144:0 > 0 && x144:0 < x143:0 && x145:0 - x149:0 < 0 && x145:0 > -1 && x148:0 > x144:0 && x146:0 >= x145:0 && x148:0 > -1) The following rules are bounded: f6295_0_SolveDP_GT(c, x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(c1, x101:0, c2, x102:0, x105:0, c3, c4, x100:0, x108:0, x103:0, x100:0, x100:0) :|: c4 = x102:0 - x110:0 && (c3 = 0 && (c2 = 0 && (c1 = 0 && c = 0))) && (x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1) f6295_0_SolveDP_GT(c9, x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(c10, x112:0, x115:0, x113:0, x116:0, c11, c12, x111:0, x119:0, x114:0, x111:0, x111:0) :|: c12 = x113:0 - x122:0 && (c11 = 0 && (c10 = 0 && c9 = 0)) && (x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1) f6295_0_SolveDP_GT(c25, x124:0, x125:0, x126:0, x123:0, x126:0, x123:0, x123:0) -> f6295_0_SolveDP_GT(c26, x124:0, c27, x126:0, x123:0, x126:0, x123:0, x123:0) :|: c27 = x125:0 + 1 && (c26 = 0 && c25 = 0) && (x130:0 > x125:0 && x124:0 - 1 < x123:0 && x130:0 > -1 && 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) f6295_0_SolveDP_GT(c34, x144:0, x145:0, x146:0, x143:0, x146:0, x143:0, x143:0) -> f6295_0_SolveDP_GT(c35, x144:0, c36, x146:0, x143:0, x146:0, x143:0, x143:0) :|: c36 = x145:0 + 1 && (c35 = 0 && c34 = 0) && (x151:0 > -1 && x151:0 > x145:0 && x150:0 > x145:0 && x150:0 > -1 && x144:0 - 1 < x143:0 && x144:0 > 0 && x144:0 < x143:0 && x145:0 - x149:0 < 0 && x145:0 > -1 && x148:0 > x144:0 && x146:0 >= x145:0 && x148:0 > -1) ---------------------------------------- (51) Complex Obligation (AND) ---------------------------------------- (52) Obligation: Rules: f6295_0_SolveDP_GT(c, x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(c1, x101:0, c2, x102:0, x105:0, c3, c4, x100:0, x108:0, x103:0, x100:0, x100:0) :|: c4 = x102:0 - x110:0 && (c3 = 0 && (c2 = 0 && (c1 = 0 && c = 0))) && (x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1) f6295_0_SolveDP_GT(c9, x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(c10, x112:0, x115:0, x113:0, x116:0, c11, c12, x111:0, x119:0, x114:0, x111:0, x111:0) :|: c12 = x113:0 - x122:0 && (c11 = 0 && (c10 = 0 && c9 = 0)) && (x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1) f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) ---------------------------------------- (53) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f6295_0_SolveDP_GT(x, x1, x2, x3, x4, x5, x6, x7)] = c*x [f7037_0_SolveDP_ArrayAccess(x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)] = -1 + c13*x13 + c8*x8 [f7257_0_max_LE(x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)] = c20*x20 + c22*x22 The following rules are decreasing: f6295_0_SolveDP_GT(c, x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(c1, x101:0, c2, x102:0, x105:0, c3, c4, x100:0, x108:0, x103:0, x100:0, x100:0) :|: c4 = x102:0 - x110:0 && (c3 = 0 && (c2 = 0 && (c1 = 0 && c = 0))) && (x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1) f6295_0_SolveDP_GT(c9, x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(c10, x112:0, x115:0, x113:0, x116:0, c11, c12, x111:0, x119:0, x114:0, x111:0, x111:0) :|: c12 = x113:0 - x122:0 && (c11 = 0 && (c10 = 0 && c9 = 0)) && (x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1) The following rules are bounded: f6295_0_SolveDP_GT(c, x101:0, x102:0, x103:0, x100:0, x103:0, x100:0, x100:0) -> f7037_0_SolveDP_ArrayAccess(c1, x101:0, c2, x102:0, x105:0, c3, c4, x100:0, x108:0, x103:0, x100:0, x100:0) :|: c4 = x102:0 - x110:0 && (c3 = 0 && (c2 = 0 && (c1 = 0 && c = 0))) && (x104:0 > x102:0 && x104:0 > -1 && x101:0 - 1 < x100:0 && x101:0 > 0 && x101:0 < x100:0 && x102:0 - x109:0 >= 0 && x102:0 > -1 && x108:0 > x101:0 && x103:0 >= x102:0 && x108:0 > -1) f6295_0_SolveDP_GT(c9, x112:0, x113:0, x114:0, x111:0, x114:0, x111:0, x111:0) -> f7037_0_SolveDP_ArrayAccess(c10, x112:0, x115:0, x113:0, x116:0, c11, c12, x111:0, x119:0, x114:0, x111:0, x111:0) :|: c12 = x113:0 - x122:0 && (c11 = 0 && (c10 = 0 && c9 = 0)) && (x121:0 > x113:0 && x121:0 > -1 && x112:0 - 1 < x111:0 && x112:0 > 0 && x112:0 < x111:0 && x113:0 - x120:0 >= 0 && x113:0 > -1 && x119:0 > x112:0 && x114:0 >= x113:0 && x119:0 > -1) f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) ---------------------------------------- (54) Obligation: Rules: f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) ---------------------------------------- (55) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f7257_0_max_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)] = c*x + c2*x2 [f6295_0_SolveDP_GT(x11, x12, x13, x14, x15, x16, x17, x18)] = -1 + c11*x11 The following rules are decreasing: f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) The following rules are bounded: f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) ---------------------------------------- (56) YES ---------------------------------------- (57) Obligation: Rules: f7037_0_SolveDP_ArrayAccess(c13, x78:0, x79:0, x80:0, x81:0, c14, x83:0, x77:0, x84:0, x85:0, x77:0, x77:0) -> f7257_0_max_LE(c15, x78:0, x79:0, x80:0, x81:0, c16, x77:0, x87:0, x85:0, x77:0, x77:0) :|: c16 = x88:0 + x89:0 && (c15 = 0 && (c14 = 0 && c13 = 0)) && (x87:0 > -1 && x87:0 > x78:0 && x82:0 > -1 && x83:0 < x82:0) f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) f7037_0_SolveDP_ArrayAccess(c28, x132:0, c29, x134:0, x135:0, c30, x136:0, x131:0, x137:0, x138:0, x131:0, x131:0) -> f7257_0_max_LE(c31, x132:0, c32, x134:0, x135:0, c33, x131:0, x140:0, x138:0, x131:0, x131:0) :|: c33 = x141:0 + x142:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && (c29 = 0 && c28 = 0)))) && (x140:0 > x132:0 && x136:0 < x133:0 && x140:0 > -1 && x133:0 > -1) ---------------------------------------- (58) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f7037_0_SolveDP_ArrayAccess ] = 2 [ f7257_0_max_LE ] = 1 [ f6295_0_SolveDP_GT ] = 0 The following rules are decreasing: f7037_0_SolveDP_ArrayAccess(c13, x78:0, x79:0, x80:0, x81:0, c14, x83:0, x77:0, x84:0, x85:0, x77:0, x77:0) -> f7257_0_max_LE(c15, x78:0, x79:0, x80:0, x81:0, c16, x77:0, x87:0, x85:0, x77:0, x77:0) :|: c16 = x88:0 + x89:0 && (c15 = 0 && (c14 = 0 && c13 = 0)) && (x87:0 > -1 && x87:0 > x78:0 && x82:0 > -1 && x83:0 < x82:0) f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) f7037_0_SolveDP_ArrayAccess(c28, x132:0, c29, x134:0, x135:0, c30, x136:0, x131:0, x137:0, x138:0, x131:0, x131:0) -> f7257_0_max_LE(c31, x132:0, c32, x134:0, x135:0, c33, x131:0, x140:0, x138:0, x131:0, x131:0) :|: c33 = x141:0 + x142:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && (c29 = 0 && c28 = 0)))) && (x140:0 > x132:0 && x136:0 < x133:0 && x140:0 > -1 && x133:0 > -1) The following rules are bounded: f7037_0_SolveDP_ArrayAccess(c13, x78:0, x79:0, x80:0, x81:0, c14, x83:0, x77:0, x84:0, x85:0, x77:0, x77:0) -> f7257_0_max_LE(c15, x78:0, x79:0, x80:0, x81:0, c16, x77:0, x87:0, x85:0, x77:0, x77:0) :|: c16 = x88:0 + x89:0 && (c15 = 0 && (c14 = 0 && c13 = 0)) && (x87:0 > -1 && x87:0 > x78:0 && x82:0 > -1 && x83:0 < x82:0) f7257_0_max_LE(c17, x91:0, c18, x93:0, x94:0, x95:0, x90:0, x97:0, x98:0, x90:0, x90:0) -> f6295_0_SolveDP_GT(c19, x91:0, c20, x98:0, x90:0, x98:0, x90:0, x90:0) :|: c20 = x93:0 + 1 && (c19 = 0 && (c18 = 0 && c17 = 0)) && (x93:0 < x92:0 && x95:0 < x94:0 && x92:0 > -1) f7257_0_max_LE(c21, i355:0:0, c22, i2531:0:0, i3858:0:0, i6838:0:0, i353:0:0, i6580:0:0, i2530:0:0, i353:0:0, i353:0:0) -> f6295_0_SolveDP_GT(c23, i355:0:0, c24, i2530:0:0, i353:0:0, i2530:0:0, i353:0:0, i353:0:0) :|: c24 = i2531:0:0 + 1 && (c23 = 0 && (c22 = 0 && c21 = 0)) && (i7464:0:0 > i2531:0:0 && i7464:0:0 > -1 && i6838:0:0 >= i3858:0:0) f7037_0_SolveDP_ArrayAccess(c28, x132:0, c29, x134:0, x135:0, c30, x136:0, x131:0, x137:0, x138:0, x131:0, x131:0) -> f7257_0_max_LE(c31, x132:0, c32, x134:0, x135:0, c33, x131:0, x140:0, x138:0, x131:0, x131:0) :|: c33 = x141:0 + x142:0 && (c32 = 0 && (c31 = 0 && (c30 = 0 && (c29 = 0 && c28 = 0)))) && (x140:0 > x132:0 && x136:0 < x133:0 && x140:0 > -1 && x133:0 > -1) ---------------------------------------- (59) YES ---------------------------------------- (60) 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: ---------------------------------------- (61) SCCToIRSProof (SOUND) Transformed FIGraph SCCs to intTRSs. Log: Generated rules. Obtained 47 IRulesP rules: f1182_0_SolveDP_FieldAccess(EOS(STATIC_1182(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174) -> f1184_0_SolveDP_GT(EOS(STATIC_1184(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i173) :|: TRUE f1184_0_SolveDP_GT(EOS(STATIC_1184(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i173) -> f1196_0_SolveDP_GT(EOS(STATIC_1196(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i173) :|: i174 <= i173 f1196_0_SolveDP_GT(EOS(STATIC_1196(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i173) -> f1203_0_SolveDP_Load(EOS(STATIC_1203(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174) :|: i174 <= i173 f1203_0_SolveDP_Load(EOS(STATIC_1203(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174) -> f1207_0_SolveDP_FieldAccess(EOS(STATIC_1207(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174) :|: TRUE f1207_0_SolveDP_FieldAccess(EOS(STATIC_1207(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174) -> f1211_0_SolveDP_ConstantStackPush(EOS(STATIC_1211(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, o157) :|: TRUE f1211_0_SolveDP_ConstantStackPush(EOS(STATIC_1211(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, o157) -> f1215_0_SolveDP_ArrayAccess(EOS(STATIC_1215(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, o157, 0) :|: TRUE f1215_0_SolveDP_ArrayAccess(EOS(STATIC_1215(java.lang.Object(o167put), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, java.lang.Object(o167put), matching1) -> f1219_0_SolveDP_ArrayAccess(EOS(STATIC_1219(java.lang.Object(o167put), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, java.lang.Object(o167put), 0) :|: TRUE && matching1 = 0 f1219_0_SolveDP_ArrayAccess(EOS(STATIC_1219(java.lang.Object(ARRAY(i188)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, java.lang.Object(ARRAY(i188)), matching1) -> f1228_0_SolveDP_ArrayAccess(EOS(STATIC_1228(java.lang.Object(ARRAY(i188)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, java.lang.Object(ARRAY(i188)), 0) :|: i188 >= 0 && matching1 = 0 f1228_0_SolveDP_ArrayAccess(EOS(STATIC_1228(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, java.lang.Object(ARRAY(i189)), matching1) -> f1237_0_SolveDP_ArrayAccess(EOS(STATIC_1237(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, java.lang.Object(ARRAY(i189)), 0) :|: TRUE && matching1 = 0 f1237_0_SolveDP_ArrayAccess(EOS(STATIC_1237(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, java.lang.Object(ARRAY(i189)), matching1) -> f1243_0_SolveDP_GE(EOS(STATIC_1243(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i190) :|: 0 < i189 && matching1 = 0 f1243_0_SolveDP_GE(EOS(STATIC_1243(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i190) -> f1263_0_SolveDP_GE(EOS(STATIC_1263(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i190) :|: i174 >= i190 f1243_0_SolveDP_GE(EOS(STATIC_1243(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i190) -> f1264_0_SolveDP_GE(EOS(STATIC_1264(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i190) :|: i174 < i190 f1263_0_SolveDP_GE(EOS(STATIC_1263(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i190) -> f1270_0_SolveDP_FieldAccess(EOS(STATIC_1270(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174) :|: i174 >= i190 f1270_0_SolveDP_FieldAccess(EOS(STATIC_1270(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174) -> f1277_0_SolveDP_ConstantStackPush(EOS(STATIC_1277(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, java.lang.Object(ARRAY(i172))) :|: TRUE f1277_0_SolveDP_ConstantStackPush(EOS(STATIC_1277(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, java.lang.Object(ARRAY(i172))) -> f1295_0_SolveDP_ArrayAccess(EOS(STATIC_1295(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, java.lang.Object(ARRAY(i172)), 0) :|: TRUE f1295_0_SolveDP_ArrayAccess(EOS(STATIC_1295(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(ARRAY(i193)), matching1) -> f1316_0_SolveDP_ArrayAccess(EOS(STATIC_1316(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(ARRAY(i193)), 0) :|: TRUE && matching1 = 0 f1316_0_SolveDP_ArrayAccess(EOS(STATIC_1316(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(ARRAY(i193)), matching1) -> f1327_0_SolveDP_Load(EOS(STATIC_1327(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171) :|: 0 < i193 && matching1 = 0 f1327_0_SolveDP_Load(EOS(STATIC_1327(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171) -> f1368_0_SolveDP_FieldAccess(EOS(STATIC_1368(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174) :|: TRUE f1368_0_SolveDP_FieldAccess(EOS(STATIC_1368(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174) -> f1384_0_SolveDP_ConstantStackPush(EOS(STATIC_1384(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, o158) :|: TRUE f1384_0_SolveDP_ConstantStackPush(EOS(STATIC_1384(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, o158) -> f1398_0_SolveDP_ArrayAccess(EOS(STATIC_1398(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, o158, 0) :|: TRUE f1398_0_SolveDP_ArrayAccess(EOS(STATIC_1398(java.lang.Object(ARRAY(i189)), java.lang.Object(o187put), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, java.lang.Object(o187put), matching1) -> f1423_0_SolveDP_ArrayAccess(EOS(STATIC_1423(java.lang.Object(ARRAY(i189)), java.lang.Object(o187put), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, java.lang.Object(o187put), 0) :|: TRUE && matching1 = 0 f1423_0_SolveDP_ArrayAccess(EOS(STATIC_1423(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i208)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, java.lang.Object(ARRAY(i208)), matching1) -> f1444_0_SolveDP_ArrayAccess(EOS(STATIC_1444(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i208)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, java.lang.Object(ARRAY(i208)), 0) :|: i208 >= 0 && matching1 = 0 f1444_0_SolveDP_ArrayAccess(EOS(STATIC_1444(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, java.lang.Object(ARRAY(i210)), matching1) -> f1466_0_SolveDP_ArrayAccess(EOS(STATIC_1466(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, java.lang.Object(ARRAY(i210)), 0) :|: TRUE && matching1 = 0 f1466_0_SolveDP_ArrayAccess(EOS(STATIC_1466(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174, java.lang.Object(ARRAY(i210)), matching1) -> f1479_0_SolveDP_ArrayAccess(EOS(STATIC_1479(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, o171, i174) :|: 0 < i210 && matching1 = 0 f1479_0_SolveDP_ArrayAccess(EOS(STATIC_1479(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(o203put), i174) -> f1502_0_SolveDP_ArrayAccess(EOS(STATIC_1502(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(o203put), i174) :|: TRUE f1502_0_SolveDP_ArrayAccess(EOS(STATIC_1502(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(ARRAY(i216)), i174) -> f1531_0_SolveDP_ArrayAccess(EOS(STATIC_1531(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(ARRAY(i216)), i174) :|: i216 >= 0 f1531_0_SolveDP_ArrayAccess(EOS(STATIC_1531(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(ARRAY(i216)), i174) -> f1674_0_SolveDP_ArrayAccess(EOS(STATIC_1674(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(ARRAY(i216)), i174) :|: TRUE f1674_0_SolveDP_ArrayAccess(EOS(STATIC_1674(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174, java.lang.Object(ARRAY(i216)), i174) -> f1684_0_SolveDP_Inc(EOS(STATIC_1684(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174) :|: i174 < i216 f1684_0_SolveDP_Inc(EOS(STATIC_1684(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174) -> f1773_0_SolveDP_JMP(EOS(STATIC_1773(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i174 + 1) :|: TRUE f1773_0_SolveDP_JMP(EOS(STATIC_1773(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i252) -> f1800_0_SolveDP_Load(EOS(STATIC_1800(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i252) :|: TRUE f1800_0_SolveDP_Load(EOS(STATIC_1800(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i252) -> f1174_0_SolveDP_Load(EOS(STATIC_1174(java.lang.Object(ARRAY(i189)), java.lang.Object(ARRAY(i210)), i173, java.lang.Object(ARRAY(i193)))), java.lang.Object(ARRAY(i193)), i252) :|: TRUE f1174_0_SolveDP_Load(EOS(STATIC_1174(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174) -> f1182_0_SolveDP_FieldAccess(EOS(STATIC_1182(o157, o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174) :|: TRUE f1264_0_SolveDP_GE(EOS(STATIC_1264(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, i174, i190) -> f1272_0_SolveDP_FieldAccess(EOS(STATIC_1272(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174) :|: i174 < i190 f1272_0_SolveDP_FieldAccess(EOS(STATIC_1272(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174) -> f1279_0_SolveDP_ConstantStackPush(EOS(STATIC_1279(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, java.lang.Object(ARRAY(i172))) :|: TRUE f1279_0_SolveDP_ConstantStackPush(EOS(STATIC_1279(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, java.lang.Object(ARRAY(i172))) -> f1298_0_SolveDP_ArrayAccess(EOS(STATIC_1298(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i172)))), java.lang.Object(ARRAY(i172)), i174, java.lang.Object(ARRAY(i172)), 0) :|: TRUE f1298_0_SolveDP_ArrayAccess(EOS(STATIC_1298(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(ARRAY(i194)), matching1) -> f1318_0_SolveDP_ArrayAccess(EOS(STATIC_1318(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(ARRAY(i194)), 0) :|: TRUE && matching1 = 0 f1318_0_SolveDP_ArrayAccess(EOS(STATIC_1318(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(ARRAY(i194)), matching1) -> f1334_0_SolveDP_Load(EOS(STATIC_1334(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, o173) :|: 0 < i194 && matching1 = 0 f1334_0_SolveDP_Load(EOS(STATIC_1334(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, o173) -> f1370_0_SolveDP_ConstantStackPush(EOS(STATIC_1370(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, o173, i174) :|: TRUE f1370_0_SolveDP_ConstantStackPush(EOS(STATIC_1370(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, o173, i174) -> f1391_0_SolveDP_ArrayAccess(EOS(STATIC_1391(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, o173, i174) :|: TRUE f1391_0_SolveDP_ArrayAccess(EOS(STATIC_1391(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(o185put), i174) -> f1400_0_SolveDP_ArrayAccess(EOS(STATIC_1400(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(o185put), i174) :|: TRUE f1400_0_SolveDP_ArrayAccess(EOS(STATIC_1400(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(ARRAY(i207)), i174) -> f1426_0_SolveDP_ArrayAccess(EOS(STATIC_1426(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(ARRAY(i207)), i174) :|: i207 >= 0 f1426_0_SolveDP_ArrayAccess(EOS(STATIC_1426(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(ARRAY(i207)), i174) -> f1454_0_SolveDP_ArrayAccess(EOS(STATIC_1454(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(ARRAY(i207)), i174) :|: TRUE f1454_0_SolveDP_ArrayAccess(EOS(STATIC_1454(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174, java.lang.Object(ARRAY(i207)), i174) -> f1469_0_SolveDP_JMP(EOS(STATIC_1469(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174) :|: i174 < i207 f1469_0_SolveDP_JMP(EOS(STATIC_1469(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174) -> f1483_0_SolveDP_Inc(EOS(STATIC_1483(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174) :|: TRUE f1483_0_SolveDP_Inc(EOS(STATIC_1483(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174) -> f1513_0_SolveDP_JMP(EOS(STATIC_1513(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i174 + 1) :|: TRUE f1513_0_SolveDP_JMP(EOS(STATIC_1513(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i214) -> f1643_0_SolveDP_Load(EOS(STATIC_1643(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i214) :|: TRUE f1643_0_SolveDP_Load(EOS(STATIC_1643(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i214) -> f1174_0_SolveDP_Load(EOS(STATIC_1174(java.lang.Object(ARRAY(i189)), o158, i173, java.lang.Object(ARRAY(i194)))), java.lang.Object(ARRAY(i194)), i214) :|: TRUE Combined rules. Obtained 2 IRulesP rules: f1182_0_SolveDP_FieldAccess(EOS(STATIC_1182(java.lang.Object(ARRAY(i188:0)), o158:0, i173:0, java.lang.Object(ARRAY(i172:0)))), java.lang.Object(ARRAY(i172:0)), i174:0, i174:0) -> f1182_0_SolveDP_FieldAccess(EOS(STATIC_1182(java.lang.Object(ARRAY(i188:0)), o158:0, i173:0, java.lang.Object(ARRAY(i172:0)))), java.lang.Object(ARRAY(i172:0)), i174:0 + 1, i174:0 + 1) :|: i188:0 > 0 && i174:0 <= i173:0 && i190:0 > i174:0 && i172:0 > 0 && i207:0 > i174:0 && i207:0 > -1 f1182_0_SolveDP_FieldAccess(EOS(STATIC_1182(java.lang.Object(ARRAY(i188:0)), java.lang.Object(ARRAY(i208:0)), i173:0, java.lang.Object(ARRAY(i172:0)))), java.lang.Object(ARRAY(i172:0)), i174:0, i174:0) -> f1182_0_SolveDP_FieldAccess(EOS(STATIC_1182(java.lang.Object(ARRAY(i188:0)), java.lang.Object(ARRAY(i208:0)), i173:0, java.lang.Object(ARRAY(i172:0)))), java.lang.Object(ARRAY(i172:0)), i174:0 + 1, i174:0 + 1) :|: i188:0 > 0 && i208:0 > 0 && i174:0 <= i173:0 && i190:0 <= i174:0 && i172:0 > 0 && i216:0 > i174:0 && i216:0 > -1 Filtered duplicate arguments: f1182_0_SolveDP_FieldAccess(x1, x2, x3, x4) -> f1182_0_SolveDP_FieldAccess(x1, x2, x4) Finished conversion. Obtained 2 rules.P rules: f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0, i188:0, i173:0, i172:0, i172:0) -> f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0 + 1, i188:0, i173:0, i172:0, i172:0) :|: i174:0 <= i173:0 && i188:0 > 0 && i190:0 > i174:0 && i172:0 > 0 && i207:0 > -1 && i207:0 > i174:0 f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0, i188:0, i173:0, i172:0, i172:0) -> f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0 + 1, i188:0, i173:0, i172:0, i172:0) :|: i208:0 > 0 && i188:0 > 0 && i174:0 <= i173:0 && i190:0 <= i174:0 && i172:0 > 0 && i216:0 > -1 && i216:0 > i174:0 ---------------------------------------- (62) Obligation: Rules: f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0, i188:0, i173:0, i172:0, i172:0) -> f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0 + 1, i188:0, i173:0, i172:0, i172:0) :|: i174:0 <= i173:0 && i188:0 > 0 && i190:0 > i174:0 && i172:0 > 0 && i207:0 > -1 && i207:0 > i174:0 f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x)), x1, x2, x3, x, x) -> f1182_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 ---------------------------------------- (63) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (64) Obligation: Rules: f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0, i188:0, i173:0, i172:0, i172:0) -> f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), arith, i188:0, i173:0, i172:0, i172:0) :|: i174:0 <= i173:0 && i188:0 > 0 && i190:0 > i174:0 && i172:0 > 0 && i207:0 > -1 && i207:0 > i174:0 && arith = i174:0 + 1 f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x8, x9, x10, x7, x7) -> f1182_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 ---------------------------------------- (65) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0, i188:0, i173:0, i172:0, i172:0) -> f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), arith, i188:0, i173:0, i172:0, i172:0) :|: i174:0 <= i173:0 && i188:0 > 0 && i190:0 > i174:0 && i172:0 > 0 && i207:0 > -1 && i207:0 > i174:0 && arith = i174:0 + 1 (2) f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x8, x9, x10, x7, x7) -> f1182_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! ---------------------------------------- (66) Obligation: Termination digraph: Nodes: (1) f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), i174:0, i188:0, i173:0, i172:0, i172:0) -> f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0)), arith, i188:0, i173:0, i172:0, i172:0) :|: i174:0 <= i173:0 && i188:0 > 0 && i190:0 > i174:0 && i172:0 > 0 && i207:0 > -1 && i207:0 > i174:0 && arith = i174:0 + 1 (2) f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7)), x8, x9, x10, x7, x7) -> f1182_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! ---------------------------------------- (67) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (68) Obligation: Rules: f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(x7:0)), x8:0, x9:0, x10:0, x7:0, x7:0) -> f1182_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 f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0:0)), i174:0:0, i188:0:0, i173:0:0, i172:0:0, i172:0:0) -> f1182_0_SolveDP_FieldAccess(java.lang.Object(ARRAY(i172:0:0)), i174:0:0 + 1, i188:0:0, i173:0:0, i172:0:0, i172:0:0) :|: i207:0:0 > -1 && i207:0:0 > i174:0:0 && i172:0:0 > 0 && i190:0:0 > i174:0:0 && i188:0:0 > 0 && i174:0:0 <= i173:0:0 ---------------------------------------- (69) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f1182_0_SolveDP_FieldAccess(VARIABLE, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER) java.lang.Object(VARIABLE) ARRAY(INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (70) Obligation: Rules: f1182_0_SolveDP_FieldAccess(c, x8:0, x9:0, x10:0, x7:0, x7:0) -> f1182_0_SolveDP_FieldAccess(c1, c2, x9:0, x10:0, x7:0, x7:0) :|: c2 = x8:0 + 1 && (c1 = 0 && c = 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) f1182_0_SolveDP_FieldAccess(c3, i174:0:0, i188:0:0, i173:0:0, i172:0:0, i172:0:0) -> f1182_0_SolveDP_FieldAccess(c4, c5, i188:0:0, i173:0:0, i172:0:0, i172:0:0) :|: c5 = i174:0:0 + 1 && (c4 = 0 && c3 = 0) && (i207:0:0 > -1 && i207:0:0 > i174:0:0 && i172:0:0 > 0 && i190:0:0 > i174:0:0 && i188:0:0 > 0 && i174:0:0 <= i173:0:0) ---------------------------------------- (71) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f1182_0_SolveDP_FieldAccess(x, x1, x2, x3, x4, x5)] = c*x - x1 + x3 The following rules are decreasing: f1182_0_SolveDP_FieldAccess(c, x8:0, x9:0, x10:0, x7:0, x7:0) -> f1182_0_SolveDP_FieldAccess(c1, c2, x9:0, x10:0, x7:0, x7:0) :|: c2 = x8:0 + 1 && (c1 = 0 && c = 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) f1182_0_SolveDP_FieldAccess(c3, i174:0:0, i188:0:0, i173:0:0, i172:0:0, i172:0:0) -> f1182_0_SolveDP_FieldAccess(c4, c5, i188:0:0, i173:0:0, i172:0:0, i172:0:0) :|: c5 = i174:0:0 + 1 && (c4 = 0 && c3 = 0) && (i207:0:0 > -1 && i207:0:0 > i174:0:0 && i172:0:0 > 0 && i190:0:0 > i174:0:0 && i188:0:0 > 0 && i174:0:0 <= i173:0:0) The following rules are bounded: f1182_0_SolveDP_FieldAccess(c, x8:0, x9:0, x10:0, x7:0, x7:0) -> f1182_0_SolveDP_FieldAccess(c1, c2, x9:0, x10:0, x7:0, x7:0) :|: c2 = x8:0 + 1 && (c1 = 0 && c = 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) f1182_0_SolveDP_FieldAccess(c3, i174:0:0, i188:0:0, i173:0:0, i172:0:0, i172:0:0) -> f1182_0_SolveDP_FieldAccess(c4, c5, i188:0:0, i173:0:0, i172:0:0, i172:0:0) :|: c5 = i174:0:0 + 1 && (c4 = 0 && c3 = 0) && (i207:0:0 > -1 && i207:0:0 > i174:0:0 && i172:0:0 > 0 && i190:0:0 > i174:0:0 && i188:0:0 > 0 && i174:0:0 <= i173:0:0) ---------------------------------------- (72) YES