YES proof of prog.inttrs # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination of the given IRSwT could be proven: (0) IRSwT (1) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (2) IRSwT (3) IRSwTTerminationDigraphProof [EQUIVALENT, 3638 ms] (4) AND (5) IRSwT (6) IntTRSCompressionProof [EQUIVALENT, 0 ms] (7) IRSwT (8) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (9) IRSwT (10) TempFilterProof [SOUND, 37 ms] (11) IntTRS (12) RankingReductionPairProof [EQUIVALENT, 16 ms] (13) YES (14) IRSwT (15) IntTRSCompressionProof [EQUIVALENT, 0 ms] (16) IRSwT (17) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (18) IRSwT (19) FilterProof [EQUIVALENT, 0 ms] (20) IntTRS (21) IntTRSCompressionProof [EQUIVALENT, 0 ms] (22) IntTRS (23) RankingReductionPairProof [EQUIVALENT, 0 ms] (24) YES ---------------------------------------- (0) Obligation: Rules: f1_0_main_Load(arg1, arg2, arg3, arg4) -> f177_0_appendNewList_Return(arg1P, arg2P, arg3P, arg4P) :|: -1 <= x5 - 1 && 0 <= arg2 - 1 && arg1P <= arg1 && arg2P - 7 <= arg1 && arg3P - 5 <= arg1 && 0 <= arg1 - 1 && 0 <= arg1P - 1 && 7 <= arg2P - 1 && 5 <= arg3P - 1 && 0 = arg4P f1_0_main_Load(x, x1, x2, x3) -> f177_0_appendNewList_Return(x4, x6, x7, x8) :|: -1 <= x9 - 1 && 0 <= x1 - 1 && x4 <= x && 0 <= x - 1 && 0 <= x4 - 1 && 8 <= x6 - 1 && 6 <= x7 - 1 f177_0_appendNewList_Return(x10, x11, x14, x15) -> f415_0_main_InvokeMethod(x16, x17, x18, x21) :|: -1 <= x22 - 1 && 1 <= x23 - 1 && x16 <= x10 && x16 + 7 <= x11 && x16 + 5 <= x14 && 0 <= x10 - 1 && 7 <= x11 - 1 && 5 <= x14 - 1 && 0 <= x16 - 1 f177_0_appendNewList_Return(x24, x25, x30, x31) -> f415_0_main_InvokeMethod(x32, x36, x37, x38) :|: x31 <= x39 - 1 && 0 <= x31 - 1 && x31 <= x40 - 1 && x31 <= x41 - 1 && 1 <= x47 - 1 && -1 <= x48 - 1 && x32 <= x24 && x32 + 6 <= x25 && x32 + 4 <= x30 && 0 <= x24 - 1 && 6 <= x25 - 1 && 4 <= x30 - 1 && 0 <= x32 - 1 f1_0_main_Load(x49, x50, x51, x52) -> f415_0_main_InvokeMethod(x55, x56, x57, x58) :|: -1 <= x59 - 1 && 1 <= x50 - 1 && -1 <= x60 - 1 && x55 <= x49 && 0 <= x49 - 1 && 0 <= x55 - 1 f177_0_appendNewList_Return(x62, x63, x64, x65) -> f480_0_main_InvokeMethod(x69, x70, x71, x72) :|: x65 <= x73 - 1 && 0 <= x65 - 1 && x65 <= x74 - 1 && x65 <= x79 - 1 && 1 <= x80 - 1 && -1 <= x81 - 1 && x69 <= x62 && x69 + 6 <= x63 && x69 + 4 <= x64 && 0 <= x62 - 1 && 6 <= x63 - 1 && 4 <= x64 - 1 && 0 <= x69 - 1 && 6 <= x70 - 1 f177_0_appendNewList_Return(x82, x85, x86, x87) -> f480_0_main_InvokeMethod(x89, x90, x91, x92) :|: -1 <= x93 - 1 && 1 <= x98 - 1 && x89 <= x82 && x89 + 7 <= x85 && x89 + 5 <= x86 && x90 - 5 <= x82 && x90 + 2 <= x85 && x90 <= x86 && 0 <= x82 - 1 && 7 <= x85 - 1 && 5 <= x86 - 1 && 0 <= x89 - 1 && 5 <= x90 - 1 f177_0_appendNewList_Return(x99, x100, x101, x102) -> f480_0_main_InvokeMethod(x103, x104, x105, x107) :|: -1 <= x108 - 1 && 1 <= x109 - 1 && x103 <= x99 && x103 + 7 <= x100 && x103 + 5 <= x101 && 0 <= x99 - 1 && 7 <= x100 - 1 && 5 <= x101 - 1 && 0 <= x103 - 1 && 6 <= x104 - 1 f1_0_main_Load(x111, x112, x113, x115) -> f480_0_main_InvokeMethod(x116, x117, x118, x119) :|: -1 <= x120 - 1 && 1 <= x112 - 1 && -1 <= x121 - 1 && x116 <= x111 && 0 <= x111 - 1 && 0 <= x116 - 1 && 6 <= x117 - 1 f177_0_appendNewList_Return(x122, x123, x124, x125) -> f480_0_main_InvokeMethod(x126, x127, x128, x129) :|: x125 <= x130 - 1 && 0 <= x125 - 1 && x125 <= x131 - 1 && x125 <= x132 - 1 && 1 <= x133 - 1 && -1 <= x134 - 1 && x126 <= x122 && x126 + 6 <= x123 && x126 + 4 <= x124 && x127 - 5 <= x122 && x127 + 1 <= x123 && x127 - 1 <= x124 && 0 <= x122 - 1 && 6 <= x123 - 1 && 4 <= x124 - 1 && 0 <= x126 - 1 && 5 <= x127 - 1 f1_0_main_Load(x135, x136, x137, x138) -> f480_0_main_InvokeMethod(x139, x140, x141, x142) :|: -1 <= x143 - 1 && 1 <= x136 - 1 && -1 <= x144 - 1 && x139 <= x135 && x140 - 5 <= x135 && 0 <= x135 - 1 && 0 <= x139 - 1 && 5 <= x140 - 1 f1_0_main_Load(x145, x146, x147, x148) -> f343_0_appendNewList_GT(x149, x150, x151, x152) :|: 1 = x150 && 0 <= x145 - 1 && 0 <= x146 - 1 && -1 <= x149 - 1 f177_0_appendNewList_Return(x153, x154, x155, x156) -> f343_0_appendNewList_GT(x157, x158, x159, x160) :|: x156 <= x161 - 1 && 0 <= x156 - 1 && x156 <= x162 - 1 && x156 <= x163 - 1 && 1 <= x164 - 1 && -1 <= x157 - 1 && 0 <= x153 - 1 && 6 <= x154 - 1 && 4 <= x155 - 1 && 2 = x158 f177_0_appendNewList_Return(x165, x166, x167, x168) -> f343_0_appendNewList_GT(x169, x170, x171, x172) :|: -1 <= x169 - 1 && 1 <= x173 - 1 && 0 <= x165 - 1 && 7 <= x166 - 1 && 5 <= x167 - 1 && 2 = x170 f1_0_main_Load(x174, x175, x176, x177) -> f343_0_appendNewList_GT(x178, x179, x180, x181) :|: -1 <= x182 - 1 && 1 <= x175 - 1 && -1 <= x178 - 1 && 0 <= x174 - 1 && 2 = x179 f343_0_appendNewList_GT(x183, x184, x185, x186) -> f343_0_appendNewList_GT(x187, x188, x189, x190) :|: x184 = x188 && x183 - 1 = x187 && 1 <= x183 - 1 && 0 <= x184 - 1 && x183 - 1 <= x183 - 1 f415_0_main_InvokeMethod(x191, x192, x193, x194) -> f519_0_length_NONNULL(x195, x196, x197, x198) :|: x195 - 3 <= x191 && 1 <= x199 - 1 && x196 - 1 <= x191 && 0 <= x191 - 1 && 3 <= x195 - 1 && 1 <= x196 - 1 f480_0_main_InvokeMethod(x200, x201, x202, x203) -> f519_0_length_NONNULL(x204, x205, x206, x207) :|: x204 <= x201 && 1 <= x208 - 1 && x205 + 2 <= x201 && 0 <= x200 - 1 && 4 <= x201 - 1 && 4 <= x204 - 1 && 2 <= x205 - 1 f519_0_length_NONNULL(x209, x210, x211, x212) -> f519_0_length_NONNULL(x213, x214, x215, x216) :|: -1 <= x214 - 1 && 0 <= x213 - 1 && 0 <= x210 - 1 && 2 <= x209 - 1 && x214 + 1 <= x210 && x214 + 3 <= x209 && x213 <= x210 && x213 + 2 <= x209 __init(x217, x218, x219, x220) -> f1_0_main_Load(x221, x222, x223, x224) :|: 0 <= 0 Start term: __init(arg1, arg2, arg3, arg4) ---------------------------------------- (1) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (2) Obligation: Rules: f1_0_main_Load(arg1, arg2, arg3, arg4) -> f177_0_appendNewList_Return(arg1P, arg2P, arg3P, arg4P) :|: -1 <= x5 - 1 && 0 <= arg2 - 1 && arg1P <= arg1 && arg2P - 7 <= arg1 && arg3P - 5 <= arg1 && 0 <= arg1 - 1 && 0 <= arg1P - 1 && 7 <= arg2P - 1 && 5 <= arg3P - 1 && 0 = arg4P f1_0_main_Load(x, x1, x2, x3) -> f177_0_appendNewList_Return(x4, x6, x7, x8) :|: -1 <= x9 - 1 && 0 <= x1 - 1 && x4 <= x && 0 <= x - 1 && 0 <= x4 - 1 && 8 <= x6 - 1 && 6 <= x7 - 1 f177_0_appendNewList_Return(x10, x11, x14, x15) -> f415_0_main_InvokeMethod(x16, x17, x18, x21) :|: -1 <= x22 - 1 && 1 <= x23 - 1 && x16 <= x10 && x16 + 7 <= x11 && x16 + 5 <= x14 && 0 <= x10 - 1 && 7 <= x11 - 1 && 5 <= x14 - 1 && 0 <= x16 - 1 f177_0_appendNewList_Return(x24, x25, x30, x31) -> f415_0_main_InvokeMethod(x32, x36, x37, x38) :|: x31 <= x39 - 1 && 0 <= x31 - 1 && x31 <= x40 - 1 && x31 <= x41 - 1 && 1 <= x47 - 1 && -1 <= x48 - 1 && x32 <= x24 && x32 + 6 <= x25 && x32 + 4 <= x30 && 0 <= x24 - 1 && 6 <= x25 - 1 && 4 <= x30 - 1 && 0 <= x32 - 1 f1_0_main_Load(x49, x50, x51, x52) -> f415_0_main_InvokeMethod(x55, x56, x57, x58) :|: -1 <= x59 - 1 && 1 <= x50 - 1 && -1 <= x60 - 1 && x55 <= x49 && 0 <= x49 - 1 && 0 <= x55 - 1 f177_0_appendNewList_Return(x62, x63, x64, x65) -> f480_0_main_InvokeMethod(x69, x70, x71, x72) :|: x65 <= x73 - 1 && 0 <= x65 - 1 && x65 <= x74 - 1 && x65 <= x79 - 1 && 1 <= x80 - 1 && -1 <= x81 - 1 && x69 <= x62 && x69 + 6 <= x63 && x69 + 4 <= x64 && 0 <= x62 - 1 && 6 <= x63 - 1 && 4 <= x64 - 1 && 0 <= x69 - 1 && 6 <= x70 - 1 f177_0_appendNewList_Return(x82, x85, x86, x87) -> f480_0_main_InvokeMethod(x89, x90, x91, x92) :|: -1 <= x93 - 1 && 1 <= x98 - 1 && x89 <= x82 && x89 + 7 <= x85 && x89 + 5 <= x86 && x90 - 5 <= x82 && x90 + 2 <= x85 && x90 <= x86 && 0 <= x82 - 1 && 7 <= x85 - 1 && 5 <= x86 - 1 && 0 <= x89 - 1 && 5 <= x90 - 1 f177_0_appendNewList_Return(x99, x100, x101, x102) -> f480_0_main_InvokeMethod(x103, x104, x105, x107) :|: -1 <= x108 - 1 && 1 <= x109 - 1 && x103 <= x99 && x103 + 7 <= x100 && x103 + 5 <= x101 && 0 <= x99 - 1 && 7 <= x100 - 1 && 5 <= x101 - 1 && 0 <= x103 - 1 && 6 <= x104 - 1 f1_0_main_Load(x111, x112, x113, x115) -> f480_0_main_InvokeMethod(x116, x117, x118, x119) :|: -1 <= x120 - 1 && 1 <= x112 - 1 && -1 <= x121 - 1 && x116 <= x111 && 0 <= x111 - 1 && 0 <= x116 - 1 && 6 <= x117 - 1 f177_0_appendNewList_Return(x122, x123, x124, x125) -> f480_0_main_InvokeMethod(x126, x127, x128, x129) :|: x125 <= x130 - 1 && 0 <= x125 - 1 && x125 <= x131 - 1 && x125 <= x132 - 1 && 1 <= x133 - 1 && -1 <= x134 - 1 && x126 <= x122 && x126 + 6 <= x123 && x126 + 4 <= x124 && x127 - 5 <= x122 && x127 + 1 <= x123 && x127 - 1 <= x124 && 0 <= x122 - 1 && 6 <= x123 - 1 && 4 <= x124 - 1 && 0 <= x126 - 1 && 5 <= x127 - 1 f1_0_main_Load(x135, x136, x137, x138) -> f480_0_main_InvokeMethod(x139, x140, x141, x142) :|: -1 <= x143 - 1 && 1 <= x136 - 1 && -1 <= x144 - 1 && x139 <= x135 && x140 - 5 <= x135 && 0 <= x135 - 1 && 0 <= x139 - 1 && 5 <= x140 - 1 f1_0_main_Load(x145, x146, x147, x148) -> f343_0_appendNewList_GT(x149, x150, x151, x152) :|: 1 = x150 && 0 <= x145 - 1 && 0 <= x146 - 1 && -1 <= x149 - 1 f177_0_appendNewList_Return(x153, x154, x155, x156) -> f343_0_appendNewList_GT(x157, x158, x159, x160) :|: x156 <= x161 - 1 && 0 <= x156 - 1 && x156 <= x162 - 1 && x156 <= x163 - 1 && 1 <= x164 - 1 && -1 <= x157 - 1 && 0 <= x153 - 1 && 6 <= x154 - 1 && 4 <= x155 - 1 && 2 = x158 f177_0_appendNewList_Return(x165, x166, x167, x168) -> f343_0_appendNewList_GT(x169, x170, x171, x172) :|: -1 <= x169 - 1 && 1 <= x173 - 1 && 0 <= x165 - 1 && 7 <= x166 - 1 && 5 <= x167 - 1 && 2 = x170 f1_0_main_Load(x174, x175, x176, x177) -> f343_0_appendNewList_GT(x178, x179, x180, x181) :|: -1 <= x182 - 1 && 1 <= x175 - 1 && -1 <= x178 - 1 && 0 <= x174 - 1 && 2 = x179 f343_0_appendNewList_GT(x183, x184, x185, x186) -> f343_0_appendNewList_GT(x187, x188, x189, x190) :|: x184 = x188 && x183 - 1 = x187 && 1 <= x183 - 1 && 0 <= x184 - 1 && x183 - 1 <= x183 - 1 f415_0_main_InvokeMethod(x191, x192, x193, x194) -> f519_0_length_NONNULL(x195, x196, x197, x198) :|: x195 - 3 <= x191 && 1 <= x199 - 1 && x196 - 1 <= x191 && 0 <= x191 - 1 && 3 <= x195 - 1 && 1 <= x196 - 1 f480_0_main_InvokeMethod(x200, x201, x202, x203) -> f519_0_length_NONNULL(x204, x205, x206, x207) :|: x204 <= x201 && 1 <= x208 - 1 && x205 + 2 <= x201 && 0 <= x200 - 1 && 4 <= x201 - 1 && 4 <= x204 - 1 && 2 <= x205 - 1 f519_0_length_NONNULL(x209, x210, x211, x212) -> f519_0_length_NONNULL(x213, x214, x215, x216) :|: -1 <= x214 - 1 && 0 <= x213 - 1 && 0 <= x210 - 1 && 2 <= x209 - 1 && x214 + 1 <= x210 && x214 + 3 <= x209 && x213 <= x210 && x213 + 2 <= x209 __init(x217, x218, x219, x220) -> f1_0_main_Load(x221, x222, x223, x224) :|: 0 <= 0 Start term: __init(arg1, arg2, arg3, arg4) ---------------------------------------- (3) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f1_0_main_Load(arg1, arg2, arg3, arg4) -> f177_0_appendNewList_Return(arg1P, arg2P, arg3P, arg4P) :|: -1 <= x5 - 1 && 0 <= arg2 - 1 && arg1P <= arg1 && arg2P - 7 <= arg1 && arg3P - 5 <= arg1 && 0 <= arg1 - 1 && 0 <= arg1P - 1 && 7 <= arg2P - 1 && 5 <= arg3P - 1 && 0 = arg4P (2) f1_0_main_Load(x, x1, x2, x3) -> f177_0_appendNewList_Return(x4, x6, x7, x8) :|: -1 <= x9 - 1 && 0 <= x1 - 1 && x4 <= x && 0 <= x - 1 && 0 <= x4 - 1 && 8 <= x6 - 1 && 6 <= x7 - 1 (3) f177_0_appendNewList_Return(x10, x11, x14, x15) -> f415_0_main_InvokeMethod(x16, x17, x18, x21) :|: -1 <= x22 - 1 && 1 <= x23 - 1 && x16 <= x10 && x16 + 7 <= x11 && x16 + 5 <= x14 && 0 <= x10 - 1 && 7 <= x11 - 1 && 5 <= x14 - 1 && 0 <= x16 - 1 (4) f177_0_appendNewList_Return(x24, x25, x30, x31) -> f415_0_main_InvokeMethod(x32, x36, x37, x38) :|: x31 <= x39 - 1 && 0 <= x31 - 1 && x31 <= x40 - 1 && x31 <= x41 - 1 && 1 <= x47 - 1 && -1 <= x48 - 1 && x32 <= x24 && x32 + 6 <= x25 && x32 + 4 <= x30 && 0 <= x24 - 1 && 6 <= x25 - 1 && 4 <= x30 - 1 && 0 <= x32 - 1 (5) f1_0_main_Load(x49, x50, x51, x52) -> f415_0_main_InvokeMethod(x55, x56, x57, x58) :|: -1 <= x59 - 1 && 1 <= x50 - 1 && -1 <= x60 - 1 && x55 <= x49 && 0 <= x49 - 1 && 0 <= x55 - 1 (6) f177_0_appendNewList_Return(x62, x63, x64, x65) -> f480_0_main_InvokeMethod(x69, x70, x71, x72) :|: x65 <= x73 - 1 && 0 <= x65 - 1 && x65 <= x74 - 1 && x65 <= x79 - 1 && 1 <= x80 - 1 && -1 <= x81 - 1 && x69 <= x62 && x69 + 6 <= x63 && x69 + 4 <= x64 && 0 <= x62 - 1 && 6 <= x63 - 1 && 4 <= x64 - 1 && 0 <= x69 - 1 && 6 <= x70 - 1 (7) f177_0_appendNewList_Return(x82, x85, x86, x87) -> f480_0_main_InvokeMethod(x89, x90, x91, x92) :|: -1 <= x93 - 1 && 1 <= x98 - 1 && x89 <= x82 && x89 + 7 <= x85 && x89 + 5 <= x86 && x90 - 5 <= x82 && x90 + 2 <= x85 && x90 <= x86 && 0 <= x82 - 1 && 7 <= x85 - 1 && 5 <= x86 - 1 && 0 <= x89 - 1 && 5 <= x90 - 1 (8) f177_0_appendNewList_Return(x99, x100, x101, x102) -> f480_0_main_InvokeMethod(x103, x104, x105, x107) :|: -1 <= x108 - 1 && 1 <= x109 - 1 && x103 <= x99 && x103 + 7 <= x100 && x103 + 5 <= x101 && 0 <= x99 - 1 && 7 <= x100 - 1 && 5 <= x101 - 1 && 0 <= x103 - 1 && 6 <= x104 - 1 (9) f1_0_main_Load(x111, x112, x113, x115) -> f480_0_main_InvokeMethod(x116, x117, x118, x119) :|: -1 <= x120 - 1 && 1 <= x112 - 1 && -1 <= x121 - 1 && x116 <= x111 && 0 <= x111 - 1 && 0 <= x116 - 1 && 6 <= x117 - 1 (10) f177_0_appendNewList_Return(x122, x123, x124, x125) -> f480_0_main_InvokeMethod(x126, x127, x128, x129) :|: x125 <= x130 - 1 && 0 <= x125 - 1 && x125 <= x131 - 1 && x125 <= x132 - 1 && 1 <= x133 - 1 && -1 <= x134 - 1 && x126 <= x122 && x126 + 6 <= x123 && x126 + 4 <= x124 && x127 - 5 <= x122 && x127 + 1 <= x123 && x127 - 1 <= x124 && 0 <= x122 - 1 && 6 <= x123 - 1 && 4 <= x124 - 1 && 0 <= x126 - 1 && 5 <= x127 - 1 (11) f1_0_main_Load(x135, x136, x137, x138) -> f480_0_main_InvokeMethod(x139, x140, x141, x142) :|: -1 <= x143 - 1 && 1 <= x136 - 1 && -1 <= x144 - 1 && x139 <= x135 && x140 - 5 <= x135 && 0 <= x135 - 1 && 0 <= x139 - 1 && 5 <= x140 - 1 (12) f1_0_main_Load(x145, x146, x147, x148) -> f343_0_appendNewList_GT(x149, x150, x151, x152) :|: 1 = x150 && 0 <= x145 - 1 && 0 <= x146 - 1 && -1 <= x149 - 1 (13) f177_0_appendNewList_Return(x153, x154, x155, x156) -> f343_0_appendNewList_GT(x157, x158, x159, x160) :|: x156 <= x161 - 1 && 0 <= x156 - 1 && x156 <= x162 - 1 && x156 <= x163 - 1 && 1 <= x164 - 1 && -1 <= x157 - 1 && 0 <= x153 - 1 && 6 <= x154 - 1 && 4 <= x155 - 1 && 2 = x158 (14) f177_0_appendNewList_Return(x165, x166, x167, x168) -> f343_0_appendNewList_GT(x169, x170, x171, x172) :|: -1 <= x169 - 1 && 1 <= x173 - 1 && 0 <= x165 - 1 && 7 <= x166 - 1 && 5 <= x167 - 1 && 2 = x170 (15) f1_0_main_Load(x174, x175, x176, x177) -> f343_0_appendNewList_GT(x178, x179, x180, x181) :|: -1 <= x182 - 1 && 1 <= x175 - 1 && -1 <= x178 - 1 && 0 <= x174 - 1 && 2 = x179 (16) f343_0_appendNewList_GT(x183, x184, x185, x186) -> f343_0_appendNewList_GT(x187, x188, x189, x190) :|: x184 = x188 && x183 - 1 = x187 && 1 <= x183 - 1 && 0 <= x184 - 1 && x183 - 1 <= x183 - 1 (17) f415_0_main_InvokeMethod(x191, x192, x193, x194) -> f519_0_length_NONNULL(x195, x196, x197, x198) :|: x195 - 3 <= x191 && 1 <= x199 - 1 && x196 - 1 <= x191 && 0 <= x191 - 1 && 3 <= x195 - 1 && 1 <= x196 - 1 (18) f480_0_main_InvokeMethod(x200, x201, x202, x203) -> f519_0_length_NONNULL(x204, x205, x206, x207) :|: x204 <= x201 && 1 <= x208 - 1 && x205 + 2 <= x201 && 0 <= x200 - 1 && 4 <= x201 - 1 && 4 <= x204 - 1 && 2 <= x205 - 1 (19) f519_0_length_NONNULL(x209, x210, x211, x212) -> f519_0_length_NONNULL(x213, x214, x215, x216) :|: -1 <= x214 - 1 && 0 <= x213 - 1 && 0 <= x210 - 1 && 2 <= x209 - 1 && x214 + 1 <= x210 && x214 + 3 <= x209 && x213 <= x210 && x213 + 2 <= x209 (20) __init(x217, x218, x219, x220) -> f1_0_main_Load(x221, x222, x223, x224) :|: 0 <= 0 Arcs: (1) -> (3), (7), (8), (14) (2) -> (3), (4), (6), (7), (8), (10), (13), (14) (3) -> (17) (4) -> (17) (5) -> (17) (6) -> (18) (7) -> (18) (8) -> (18) (9) -> (18) (10) -> (18) (11) -> (18) (12) -> (16) (13) -> (16) (14) -> (16) (15) -> (16) (16) -> (16) (17) -> (19) (18) -> (19) (19) -> (19) (20) -> (1), (2), (5), (9), (11), (12), (15) This digraph is fully evaluated! ---------------------------------------- (4) Complex Obligation (AND) ---------------------------------------- (5) Obligation: Termination digraph: Nodes: (1) f343_0_appendNewList_GT(x183, x184, x185, x186) -> f343_0_appendNewList_GT(x187, x188, x189, x190) :|: x184 = x188 && x183 - 1 = x187 && 1 <= x183 - 1 && 0 <= x184 - 1 && x183 - 1 <= x183 - 1 Arcs: (1) -> (1) This digraph is fully evaluated! ---------------------------------------- (6) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (7) Obligation: Rules: f343_0_appendNewList_GT(x183:0, x184:0, x185:0, x186:0) -> f343_0_appendNewList_GT(x183:0 - 1, x184:0, x189:0, x190:0) :|: x184:0 > 0 && x183:0 > 1 ---------------------------------------- (8) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: f343_0_appendNewList_GT(x1, x2, x3, x4) -> f343_0_appendNewList_GT(x1, x2) ---------------------------------------- (9) Obligation: Rules: f343_0_appendNewList_GT(x183:0, x184:0) -> f343_0_appendNewList_GT(x183:0 - 1, x184:0) :|: x184:0 > 0 && x183:0 > 1 ---------------------------------------- (10) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f343_0_appendNewList_GT(INTEGER, INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (11) Obligation: Rules: f343_0_appendNewList_GT(x183:0, x184:0) -> f343_0_appendNewList_GT(c, x184:0) :|: c = x183:0 - 1 && (x184:0 > 0 && x183:0 > 1) ---------------------------------------- (12) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f343_0_appendNewList_GT ] = f343_0_appendNewList_GT_1 The following rules are decreasing: f343_0_appendNewList_GT(x183:0, x184:0) -> f343_0_appendNewList_GT(c, x184:0) :|: c = x183:0 - 1 && (x184:0 > 0 && x183:0 > 1) The following rules are bounded: f343_0_appendNewList_GT(x183:0, x184:0) -> f343_0_appendNewList_GT(c, x184:0) :|: c = x183:0 - 1 && (x184:0 > 0 && x183:0 > 1) ---------------------------------------- (13) YES ---------------------------------------- (14) Obligation: Termination digraph: Nodes: (1) f519_0_length_NONNULL(x209, x210, x211, x212) -> f519_0_length_NONNULL(x213, x214, x215, x216) :|: -1 <= x214 - 1 && 0 <= x213 - 1 && 0 <= x210 - 1 && 2 <= x209 - 1 && x214 + 1 <= x210 && x214 + 3 <= x209 && x213 <= x210 && x213 + 2 <= x209 Arcs: (1) -> (1) This digraph is fully evaluated! ---------------------------------------- (15) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (16) Obligation: Rules: f519_0_length_NONNULL(x209:0, x210:0, x211:0, x212:0) -> f519_0_length_NONNULL(x213:0, x214:0, x215:0, x216:0) :|: x213:0 <= x210:0 && x213:0 + 2 <= x209:0 && x214:0 + 3 <= x209:0 && x214:0 + 1 <= x210:0 && x209:0 > 2 && x210:0 > 0 && x213:0 > 0 && x214:0 > -1 ---------------------------------------- (17) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: f519_0_length_NONNULL(x1, x2, x3, x4) -> f519_0_length_NONNULL(x1, x2) ---------------------------------------- (18) Obligation: Rules: f519_0_length_NONNULL(x209:0, x210:0) -> f519_0_length_NONNULL(x213:0, x214:0) :|: x213:0 <= x210:0 && x213:0 + 2 <= x209:0 && x214:0 + 3 <= x209:0 && x214:0 + 1 <= x210:0 && x209:0 > 2 && x210:0 > 0 && x213:0 > 0 && x214:0 > -1 ---------------------------------------- (19) FilterProof (EQUIVALENT) Used the following sort dictionary for filtering: f519_0_length_NONNULL(INTEGER, INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (20) Obligation: Rules: f519_0_length_NONNULL(x209:0, x210:0) -> f519_0_length_NONNULL(x213:0, x214:0) :|: x213:0 <= x210:0 && x213:0 + 2 <= x209:0 && x214:0 + 3 <= x209:0 && x214:0 + 1 <= x210:0 && x209:0 > 2 && x210:0 > 0 && x213:0 > 0 && x214:0 > -1 ---------------------------------------- (21) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (22) Obligation: Rules: f519_0_length_NONNULL(x209:0:0, x210:0:0) -> f519_0_length_NONNULL(x213:0:0, x214:0:0) :|: x213:0:0 > 0 && x214:0:0 > -1 && x210:0:0 > 0 && x209:0:0 > 2 && x214:0:0 + 1 <= x210:0:0 && x214:0:0 + 3 <= x209:0:0 && x213:0:0 + 2 <= x209:0:0 && x213:0:0 <= x210:0:0 ---------------------------------------- (23) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f519_0_length_NONNULL ] = 1/2*f519_0_length_NONNULL_1 The following rules are decreasing: f519_0_length_NONNULL(x209:0:0, x210:0:0) -> f519_0_length_NONNULL(x213:0:0, x214:0:0) :|: x213:0:0 > 0 && x214:0:0 > -1 && x210:0:0 > 0 && x209:0:0 > 2 && x214:0:0 + 1 <= x210:0:0 && x214:0:0 + 3 <= x209:0:0 && x213:0:0 + 2 <= x209:0:0 && x213:0:0 <= x210:0:0 The following rules are bounded: f519_0_length_NONNULL(x209:0:0, x210:0:0) -> f519_0_length_NONNULL(x213:0:0, x214:0:0) :|: x213:0:0 > 0 && x214:0:0 > -1 && x210:0:0 > 0 && x209:0:0 > 2 && x214:0:0 + 1 <= x210:0:0 && x214:0:0 + 3 <= x209:0:0 && x213:0:0 + 2 <= x209:0:0 && x213:0:0 <= x210:0:0 ---------------------------------------- (24) YES