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, 12.7 s] (4) AND (5) IRSwT (6) IntTRSCompressionProof [EQUIVALENT, 13 ms] (7) IRSwT (8) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (9) IRSwT (10) TempFilterProof [SOUND, 47 ms] (11) IntTRS (12) PolynomialOrderProcessor [EQUIVALENT, 9 ms] (13) YES (14) IRSwT (15) IntTRSCompressionProof [EQUIVALENT, 12 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, 26 ms] (24) YES (25) IRSwT (26) IntTRSCompressionProof [EQUIVALENT, 57 ms] (27) IRSwT (28) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (29) IRSwT (30) TempFilterProof [SOUND, 267 ms] (31) IntTRS (32) RankingReductionPairProof [EQUIVALENT, 0 ms] (33) IntTRS (34) RankingReductionPairProof [EQUIVALENT, 0 ms] (35) IntTRS (36) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (37) YES ---------------------------------------- (0) Obligation: Rules: f1_0_main_Load(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13) -> f2907_0_createMap_LE(arg1P, arg2P, arg3P, arg4P, arg5P, arg6P, arg7P, arg8P, arg9P, arg10P, arg11P, arg12P, arg13P) :|: 12 = arg7P && 0 = arg6P && 16 = arg5P && 1 = arg4P && arg2 = arg3P && 14 <= arg1P - 1 && 0 <= arg1 - 1 && arg1P - 14 <= arg1 && 0 <= arg2 - 1 && -1 <= arg2P - 1 f2907_0_createMap_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) -> f2907_0_createMap_LE(x13, x14, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27) :|: 0 <= x1 - 1 && x3 + 1 <= x2 - 1 && -1 <= x2 - 1 && -1 <= x3 - 1 && -1 <= x30 - 1 && -1 <= x31 - 1 && 1 <= x4 - 1 && 3 <= x - 1 && 3 <= x13 - 1 && x6 + 3 <= x && x5 + 3 <= x && x1 - 1 = x14 && x2 = x17 && x3 + 2 = x18 f2907_0_createMap_LE(x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44) -> f3374_0_put_NULL(x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57) :|: x35 + 1 <= x34 - 1 && 1 <= x36 - 1 && 0 <= x33 - 1 && -1 <= x34 - 1 && -1 <= x35 - 1 && -1 <= x58 - 1 && -1 <= x59 - 1 && x47 <= x36 - 1 && x45 <= x32 && 3 <= x32 - 1 && 3 <= x45 - 1 && -1 <= x48 - 1 && x38 + 3 <= x32 && x37 + 3 <= x32 && x34 = x49 && x35 + 2 = x50 && x36 = x51 && x37 = x52 && x38 = x53 f3374_0_put_NULL(x60, x61, x62, x63, x64, x65, x66, x68, x69, x70, x71, x72, x73) -> f3452_0_put_EQ(x74, x75, x76, x77, x78, x79, x80, x81, x82, x83, x84, x85, x86) :|: x61 = x81 && x69 = x80 && x68 = x79 && x66 = x78 && 0 = x77 && x62 = x75 && x83 + 4 <= x63 && x61 + 2 <= x63 && x69 + 3 <= x60 && x68 + 3 <= x60 && -1 <= x82 - 1 && 2 <= x76 - 1 && 3 <= x74 - 1 && 2 <= x63 - 1 && 3 <= x60 - 1 && x82 + 2 <= x63 && x76 <= x63 && 1 <= x66 - 1 && x74 <= x60 f3374_0_put_NULL(x87, x88, x89, x90, x91, x92, x93, x94, x95, x96, x97, x98, x99) -> f3452_0_put_EQ(x100, x101, x102, x103, x104, x105, x106, x107, x108, x109, x110, x111, x112) :|: x88 = x107 && x95 = x106 && x94 = x105 && x93 = x104 && 1 = x103 && x89 = x101 && x109 + 4 <= x90 && x88 + 2 <= x90 && x95 + 3 <= x87 && x94 + 3 <= x87 && -1 <= x108 - 1 && 2 <= x102 - 1 && 3 <= x100 - 1 && 2 <= x90 - 1 && 3 <= x87 - 1 && x108 + 2 <= x90 && x102 <= x90 && 1 <= x93 - 1 && x100 <= x87 f3374_0_put_NULL(x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123, x124, x125) -> f3374_0_put_NULL(x126, x127, x128, x129, x130, x131, x132, x133, x134, x135, x136, x137, x138) :|: x126 <= x113 && x139 <= x114 - 1 && x129 + 1 <= x116 && 3 <= x113 - 1 && 0 <= x116 - 1 && 3 <= x126 - 1 && -1 <= x129 - 1 && x120 + 3 <= x113 && x121 + 3 <= x113 && x114 = x127 && x115 = x128 && x117 = x130 && x118 = x131 && x119 = x132 && x120 = x133 && x121 = x134 f3374_0_put_NULL(x140, x141, x142, x143, x144, x145, x146, x147, x148, x149, x150, x151, x152) -> f3374_0_put_NULL(x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165) :|: x153 <= x140 && x141 <= x166 - 1 && x156 + 1 <= x143 && 3 <= x140 - 1 && 0 <= x143 - 1 && 3 <= x153 - 1 && -1 <= x156 - 1 && x147 + 3 <= x140 && x148 + 3 <= x140 && x141 = x154 && x142 = x155 && x144 = x157 && x145 = x158 && x146 = x159 && x147 = x160 && x148 = x161 f3374_0_put_NULL(x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178, x179) -> f3374_0_put_NULL(x180, x181, x182, x183, x184, x185, x186, x187, x188, x189, x190, x191, x192) :|: x175 = x188 && x174 = x187 && x173 = x186 && x172 = x185 && x171 = x184 && x169 = x182 && x168 = x181 && x168 + 2 <= x170 && x175 + 3 <= x167 && x174 + 3 <= x167 && -1 <= x183 - 1 && 3 <= x180 - 1 && 1 <= x170 - 1 && 3 <= x167 - 1 && x183 + 2 <= x170 && 1 <= x173 - 1 && x180 <= x167 f3374_0_put_NULL(x193, x194, x195, x196, x197, x198, x199, x200, x201, x203, x204, x205, x206) -> f3374_0_put_NULL(x207, x208, x209, x210, x211, x212, x213, x214, x215, x216, x217, x218, x219) :|: x201 = x215 && x200 = x214 && x199 = x213 && x198 = x212 && x197 = x211 && x195 = x209 && x194 = x208 && x194 + 2 <= x196 && x201 + 3 <= x193 && x200 + 3 <= x193 && -1 <= x210 - 1 && 3 <= x207 - 1 && 2 <= x196 - 1 && 3 <= x193 - 1 && x210 + 2 <= x196 && 1 <= x199 - 1 && x207 <= x193 f3452_0_put_EQ(x220, x221, x222, x223, x224, x225, x226, x227, x228, x229, x230, x231, x232) -> f3374_0_put_NULL(x233, x234, x235, x236, x237, x238, x239, x240, x241, x242, x243, x244, x245) :|: x226 = x241 && x225 = x240 && x224 = x239 && x221 = x235 && x227 = x234 && 0 = x223 && x229 + 4 <= x222 && x227 + 2 <= x222 && x226 + 3 <= x220 && x225 + 3 <= x220 && -1 <= x236 - 1 && 3 <= x233 - 1 && -1 <= x228 - 1 && 2 <= x222 - 1 && 3 <= x220 - 1 && x236 <= x228 && x236 + 2 <= x222 && x233 <= x220 f3374_0_put_NULL(x246, x247, x248, x249, x250, x251, x252, x253, x254, x255, x256, x257, x258) -> f3898_0_transfer_GE(x259, x260, x261, x262, x263, x264, x265, x266, x267, x268, x269, x270, x271) :|: x252 = x266 && 2 * x252 = x265 && x254 = x264 && x253 + 1 = x263 && 0 = x262 && x254 + 3 <= x246 && x253 + 3 <= x246 && 0 <= x261 - 1 && 0 <= x260 - 1 && 3 <= x259 - 1 && -1 <= x249 - 1 && 3 <= x246 - 1 && x261 - 1 <= x249 && x261 + 3 <= x246 && x260 - 1 <= x249 && x260 + 3 <= x246 && x259 - 1 <= x246 && x252 <= 1073741823 && 0 <= 2 * x252 && x254 <= x253 && 1 <= x252 - 1 && x248 <= x252 - 1 f3374_0_put_NULL(x272, x273, x274, x275, x276, x277, x278, x279, x280, x281, x282, x283, x284) -> f3898_0_transfer_GE(x285, x286, x287, x288, x289, x290, x291, x292, x293, x294, x295, x296, x297) :|: x278 = x292 && 2 * x278 = x291 && x280 = x290 && x279 + 1 = x289 && 0 = x288 && x280 + 3 <= x272 && x279 + 3 <= x272 && 0 <= x287 - 1 && 0 <= x286 - 1 && 3 <= x285 - 1 && -1 <= x275 - 1 && 3 <= x272 - 1 && x287 - 1 <= x275 && x287 + 3 <= x272 && x286 - 1 <= x275 && x286 + 3 <= x272 && x285 - 1 <= x272 && x280 <= x279 && 0 <= 2 * x278 && 1073741824 <= x278 - 1 && x274 <= x278 - 1 f3898_0_transfer_GE(x298, x299, x300, x301, x302, x303, x304, x305, x306, x307, x308, x309, x310) -> f3993_0_transfer_ArrayAccess(x311, x312, x313, x314, x315, x316, x317, x318, x319, x320, x321, x322, x323) :|: x304 = x323 && x305 = x320 && x303 = x319 && x302 = x318 && x301 = x313 && x303 + 3 <= x298 && x302 + 3 <= x298 && 0 <= x316 - 1 && 0 <= x315 - 1 && -1 <= x314 - 1 && 0 <= x312 - 1 && 3 <= x311 - 1 && 0 <= x300 - 1 && 0 <= x299 - 1 && 3 <= x298 - 1 && x316 <= x300 && x316 <= x299 && x316 + 3 <= x298 && x312 <= x300 && x312 <= x299 && x312 + 3 <= x298 && x311 <= x298 && x301 <= x305 - 1 && 0 <= x304 - 1 f3993_0_transfer_ArrayAccess(x324, x325, x326, x327, x328, x329, x330, x331, x332, x333, x334, x335, x336) -> f3993_0_transfer_ArrayAccess(x337, x338, x339, x340, x341, x342, x343, x344, x345, x346, x347, x348, x349) :|: x336 = x349 && x333 = x346 && x332 = x345 && x331 = x344 && x326 = x339 && x335 + 2 <= x328 && x348 + 4 <= x328 && x347 + 4 <= x328 && x334 + 2 <= x328 && x348 + 2 <= x327 && x347 + 2 <= x327 && x332 + 3 <= x324 && x331 + 3 <= x324 && 0 <= x342 - 1 && 0 <= x341 - 1 && -1 <= x340 - 1 && 0 <= x338 - 1 && 3 <= x337 - 1 && 0 <= x329 - 1 && 2 <= x328 - 1 && 0 <= x327 - 1 && 0 <= x325 - 1 && 3 <= x324 - 1 && x342 <= x329 && x342 + 2 <= x328 && x342 <= x327 && x342 <= x325 && x342 + 3 <= x324 && x341 + 2 <= x328 && x341 <= x327 && x340 + 3 <= x328 && x340 + 1 <= x327 && x338 <= x329 && x338 + 2 <= x328 && x338 <= x327 && x338 <= x325 && x338 + 3 <= x324 && x337 <= x324 && 0 <= x336 - 1 && x330 <= x336 - 1 f3898_0_transfer_GE(x350, x351, x352, x353, x354, x355, x356, x357, x358, x359, x360, x361, x362) -> f3898_0_transfer_GE(x363, x364, x365, x366, x367, x368, x369, x370, x371, x372, x373, x374, x375) :|: x357 = x370 && x356 = x369 && x355 = x368 && x354 = x367 && x353 + 1 = x366 && x355 + 3 <= x350 && x354 + 3 <= x350 && 0 <= x365 - 1 && 0 <= x364 - 1 && 3 <= x363 - 1 && 0 <= x352 - 1 && 0 <= x351 - 1 && 3 <= x350 - 1 && x365 <= x352 && x365 <= x351 && x365 + 3 <= x350 && x364 <= x352 && x364 <= x351 && x364 + 3 <= x350 && x363 <= x350 && x353 <= x357 - 1 && -1 <= x357 - 1 f3993_0_transfer_ArrayAccess(x376, x377, x378, x379, x380, x381, x382, x383, x384, x385, x386, x387, x388) -> f3898_0_transfer_GE(x389, x390, x391, x392, x393, x394, x395, x396, x397, x398, x399, x400, x401) :|: x385 = x396 && x388 = x395 && x384 = x394 && x383 = x393 && x378 + 1 = x392 && x387 + 2 <= x380 && x386 + 2 <= x380 && x384 + 3 <= x376 && x383 + 3 <= x376 && 0 <= x391 - 1 && 0 <= x390 - 1 && 3 <= x389 - 1 && 0 <= x381 - 1 && 1 <= x380 - 1 && -1 <= x379 - 1 && 0 <= x377 - 1 && 3 <= x376 - 1 && x391 <= x381 && x391 + 1 <= x380 && x391 - 1 <= x379 && x391 <= x377 && x391 + 3 <= x376 && x390 <= x381 && x390 + 1 <= x380 && x390 - 1 <= x379 && x390 <= x377 && x390 + 3 <= x376 && x389 <= x376 && x382 <= x388 - 1 && -1 <= x385 - 1 __init(x402, x403, x404, x405, x406, x407, x408, x409, x410, x411, x412, x413, x414) -> f1_0_main_Load(x415, x416, x417, x418, x419, x420, x421, x422, x423, x424, x425, x426, x427) :|: 0 <= 0 Start term: __init(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13) ---------------------------------------- (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, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13) -> f2907_0_createMap_LE(arg1P, arg2P, arg3P, arg4P, arg5P, arg6P, arg7P, arg8P, arg9P, arg10P, arg11P, arg12P, arg13P) :|: 12 = arg7P && 0 = arg6P && 16 = arg5P && 1 = arg4P && arg2 = arg3P && 14 <= arg1P - 1 && 0 <= arg1 - 1 && arg1P - 14 <= arg1 && 0 <= arg2 - 1 && -1 <= arg2P - 1 f2907_0_createMap_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) -> f2907_0_createMap_LE(x13, x14, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27) :|: 0 <= x1 - 1 && x3 + 1 <= x2 - 1 && -1 <= x2 - 1 && -1 <= x3 - 1 && -1 <= x30 - 1 && -1 <= x31 - 1 && 1 <= x4 - 1 && 3 <= x - 1 && 3 <= x13 - 1 && x6 + 3 <= x && x5 + 3 <= x && x1 - 1 = x14 && x2 = x17 && x3 + 2 = x18 f2907_0_createMap_LE(x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44) -> f3374_0_put_NULL(x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57) :|: x35 + 1 <= x34 - 1 && 1 <= x36 - 1 && 0 <= x33 - 1 && -1 <= x34 - 1 && -1 <= x35 - 1 && -1 <= x58 - 1 && -1 <= x59 - 1 && x47 <= x36 - 1 && x45 <= x32 && 3 <= x32 - 1 && 3 <= x45 - 1 && -1 <= x48 - 1 && x38 + 3 <= x32 && x37 + 3 <= x32 && x34 = x49 && x35 + 2 = x50 && x36 = x51 && x37 = x52 && x38 = x53 f3374_0_put_NULL(x60, x61, x62, x63, x64, x65, x66, x68, x69, x70, x71, x72, x73) -> f3452_0_put_EQ(x74, x75, x76, x77, x78, x79, x80, x81, x82, x83, x84, x85, x86) :|: x61 = x81 && x69 = x80 && x68 = x79 && x66 = x78 && 0 = x77 && x62 = x75 && x83 + 4 <= x63 && x61 + 2 <= x63 && x69 + 3 <= x60 && x68 + 3 <= x60 && -1 <= x82 - 1 && 2 <= x76 - 1 && 3 <= x74 - 1 && 2 <= x63 - 1 && 3 <= x60 - 1 && x82 + 2 <= x63 && x76 <= x63 && 1 <= x66 - 1 && x74 <= x60 f3374_0_put_NULL(x87, x88, x89, x90, x91, x92, x93, x94, x95, x96, x97, x98, x99) -> f3452_0_put_EQ(x100, x101, x102, x103, x104, x105, x106, x107, x108, x109, x110, x111, x112) :|: x88 = x107 && x95 = x106 && x94 = x105 && x93 = x104 && 1 = x103 && x89 = x101 && x109 + 4 <= x90 && x88 + 2 <= x90 && x95 + 3 <= x87 && x94 + 3 <= x87 && -1 <= x108 - 1 && 2 <= x102 - 1 && 3 <= x100 - 1 && 2 <= x90 - 1 && 3 <= x87 - 1 && x108 + 2 <= x90 && x102 <= x90 && 1 <= x93 - 1 && x100 <= x87 f3374_0_put_NULL(x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123, x124, x125) -> f3374_0_put_NULL(x126, x127, x128, x129, x130, x131, x132, x133, x134, x135, x136, x137, x138) :|: x126 <= x113 && x139 <= x114 - 1 && x129 + 1 <= x116 && 3 <= x113 - 1 && 0 <= x116 - 1 && 3 <= x126 - 1 && -1 <= x129 - 1 && x120 + 3 <= x113 && x121 + 3 <= x113 && x114 = x127 && x115 = x128 && x117 = x130 && x118 = x131 && x119 = x132 && x120 = x133 && x121 = x134 f3374_0_put_NULL(x140, x141, x142, x143, x144, x145, x146, x147, x148, x149, x150, x151, x152) -> f3374_0_put_NULL(x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165) :|: x153 <= x140 && x141 <= x166 - 1 && x156 + 1 <= x143 && 3 <= x140 - 1 && 0 <= x143 - 1 && 3 <= x153 - 1 && -1 <= x156 - 1 && x147 + 3 <= x140 && x148 + 3 <= x140 && x141 = x154 && x142 = x155 && x144 = x157 && x145 = x158 && x146 = x159 && x147 = x160 && x148 = x161 f3374_0_put_NULL(x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178, x179) -> f3374_0_put_NULL(x180, x181, x182, x183, x184, x185, x186, x187, x188, x189, x190, x191, x192) :|: x175 = x188 && x174 = x187 && x173 = x186 && x172 = x185 && x171 = x184 && x169 = x182 && x168 = x181 && x168 + 2 <= x170 && x175 + 3 <= x167 && x174 + 3 <= x167 && -1 <= x183 - 1 && 3 <= x180 - 1 && 1 <= x170 - 1 && 3 <= x167 - 1 && x183 + 2 <= x170 && 1 <= x173 - 1 && x180 <= x167 f3374_0_put_NULL(x193, x194, x195, x196, x197, x198, x199, x200, x201, x203, x204, x205, x206) -> f3374_0_put_NULL(x207, x208, x209, x210, x211, x212, x213, x214, x215, x216, x217, x218, x219) :|: x201 = x215 && x200 = x214 && x199 = x213 && x198 = x212 && x197 = x211 && x195 = x209 && x194 = x208 && x194 + 2 <= x196 && x201 + 3 <= x193 && x200 + 3 <= x193 && -1 <= x210 - 1 && 3 <= x207 - 1 && 2 <= x196 - 1 && 3 <= x193 - 1 && x210 + 2 <= x196 && 1 <= x199 - 1 && x207 <= x193 f3452_0_put_EQ(x220, x221, x222, x223, x224, x225, x226, x227, x228, x229, x230, x231, x232) -> f3374_0_put_NULL(x233, x234, x235, x236, x237, x238, x239, x240, x241, x242, x243, x244, x245) :|: x226 = x241 && x225 = x240 && x224 = x239 && x221 = x235 && x227 = x234 && 0 = x223 && x229 + 4 <= x222 && x227 + 2 <= x222 && x226 + 3 <= x220 && x225 + 3 <= x220 && -1 <= x236 - 1 && 3 <= x233 - 1 && -1 <= x228 - 1 && 2 <= x222 - 1 && 3 <= x220 - 1 && x236 <= x228 && x236 + 2 <= x222 && x233 <= x220 f3374_0_put_NULL(x246, x247, x248, x249, x250, x251, x252, x253, x254, x255, x256, x257, x258) -> f3898_0_transfer_GE(x259, x260, x261, x262, x263, x264, x265, x266, x267, x268, x269, x270, x271) :|: x252 = x266 && 2 * x252 = x265 && x254 = x264 && x253 + 1 = x263 && 0 = x262 && x254 + 3 <= x246 && x253 + 3 <= x246 && 0 <= x261 - 1 && 0 <= x260 - 1 && 3 <= x259 - 1 && -1 <= x249 - 1 && 3 <= x246 - 1 && x261 - 1 <= x249 && x261 + 3 <= x246 && x260 - 1 <= x249 && x260 + 3 <= x246 && x259 - 1 <= x246 && x252 <= 1073741823 && 0 <= 2 * x252 && x254 <= x253 && 1 <= x252 - 1 && x248 <= x252 - 1 f3374_0_put_NULL(x272, x273, x274, x275, x276, x277, x278, x279, x280, x281, x282, x283, x284) -> f3898_0_transfer_GE(x285, x286, x287, x288, x289, x290, x291, x292, x293, x294, x295, x296, x297) :|: x278 = x292 && 2 * x278 = x291 && x280 = x290 && x279 + 1 = x289 && 0 = x288 && x280 + 3 <= x272 && x279 + 3 <= x272 && 0 <= x287 - 1 && 0 <= x286 - 1 && 3 <= x285 - 1 && -1 <= x275 - 1 && 3 <= x272 - 1 && x287 - 1 <= x275 && x287 + 3 <= x272 && x286 - 1 <= x275 && x286 + 3 <= x272 && x285 - 1 <= x272 && x280 <= x279 && 0 <= 2 * x278 && 1073741824 <= x278 - 1 && x274 <= x278 - 1 f3898_0_transfer_GE(x298, x299, x300, x301, x302, x303, x304, x305, x306, x307, x308, x309, x310) -> f3993_0_transfer_ArrayAccess(x311, x312, x313, x314, x315, x316, x317, x318, x319, x320, x321, x322, x323) :|: x304 = x323 && x305 = x320 && x303 = x319 && x302 = x318 && x301 = x313 && x303 + 3 <= x298 && x302 + 3 <= x298 && 0 <= x316 - 1 && 0 <= x315 - 1 && -1 <= x314 - 1 && 0 <= x312 - 1 && 3 <= x311 - 1 && 0 <= x300 - 1 && 0 <= x299 - 1 && 3 <= x298 - 1 && x316 <= x300 && x316 <= x299 && x316 + 3 <= x298 && x312 <= x300 && x312 <= x299 && x312 + 3 <= x298 && x311 <= x298 && x301 <= x305 - 1 && 0 <= x304 - 1 f3993_0_transfer_ArrayAccess(x324, x325, x326, x327, x328, x329, x330, x331, x332, x333, x334, x335, x336) -> f3993_0_transfer_ArrayAccess(x337, x338, x339, x340, x341, x342, x343, x344, x345, x346, x347, x348, x349) :|: x336 = x349 && x333 = x346 && x332 = x345 && x331 = x344 && x326 = x339 && x335 + 2 <= x328 && x348 + 4 <= x328 && x347 + 4 <= x328 && x334 + 2 <= x328 && x348 + 2 <= x327 && x347 + 2 <= x327 && x332 + 3 <= x324 && x331 + 3 <= x324 && 0 <= x342 - 1 && 0 <= x341 - 1 && -1 <= x340 - 1 && 0 <= x338 - 1 && 3 <= x337 - 1 && 0 <= x329 - 1 && 2 <= x328 - 1 && 0 <= x327 - 1 && 0 <= x325 - 1 && 3 <= x324 - 1 && x342 <= x329 && x342 + 2 <= x328 && x342 <= x327 && x342 <= x325 && x342 + 3 <= x324 && x341 + 2 <= x328 && x341 <= x327 && x340 + 3 <= x328 && x340 + 1 <= x327 && x338 <= x329 && x338 + 2 <= x328 && x338 <= x327 && x338 <= x325 && x338 + 3 <= x324 && x337 <= x324 && 0 <= x336 - 1 && x330 <= x336 - 1 f3898_0_transfer_GE(x350, x351, x352, x353, x354, x355, x356, x357, x358, x359, x360, x361, x362) -> f3898_0_transfer_GE(x363, x364, x365, x366, x367, x368, x369, x370, x371, x372, x373, x374, x375) :|: x357 = x370 && x356 = x369 && x355 = x368 && x354 = x367 && x353 + 1 = x366 && x355 + 3 <= x350 && x354 + 3 <= x350 && 0 <= x365 - 1 && 0 <= x364 - 1 && 3 <= x363 - 1 && 0 <= x352 - 1 && 0 <= x351 - 1 && 3 <= x350 - 1 && x365 <= x352 && x365 <= x351 && x365 + 3 <= x350 && x364 <= x352 && x364 <= x351 && x364 + 3 <= x350 && x363 <= x350 && x353 <= x357 - 1 && -1 <= x357 - 1 f3993_0_transfer_ArrayAccess(x376, x377, x378, x379, x380, x381, x382, x383, x384, x385, x386, x387, x388) -> f3898_0_transfer_GE(x389, x390, x391, x392, x393, x394, x395, x396, x397, x398, x399, x400, x401) :|: x385 = x396 && x388 = x395 && x384 = x394 && x383 = x393 && x378 + 1 = x392 && x387 + 2 <= x380 && x386 + 2 <= x380 && x384 + 3 <= x376 && x383 + 3 <= x376 && 0 <= x391 - 1 && 0 <= x390 - 1 && 3 <= x389 - 1 && 0 <= x381 - 1 && 1 <= x380 - 1 && -1 <= x379 - 1 && 0 <= x377 - 1 && 3 <= x376 - 1 && x391 <= x381 && x391 + 1 <= x380 && x391 - 1 <= x379 && x391 <= x377 && x391 + 3 <= x376 && x390 <= x381 && x390 + 1 <= x380 && x390 - 1 <= x379 && x390 <= x377 && x390 + 3 <= x376 && x389 <= x376 && x382 <= x388 - 1 && -1 <= x385 - 1 __init(x402, x403, x404, x405, x406, x407, x408, x409, x410, x411, x412, x413, x414) -> f1_0_main_Load(x415, x416, x417, x418, x419, x420, x421, x422, x423, x424, x425, x426, x427) :|: 0 <= 0 Start term: __init(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13) ---------------------------------------- (3) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) f1_0_main_Load(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13) -> f2907_0_createMap_LE(arg1P, arg2P, arg3P, arg4P, arg5P, arg6P, arg7P, arg8P, arg9P, arg10P, arg11P, arg12P, arg13P) :|: 12 = arg7P && 0 = arg6P && 16 = arg5P && 1 = arg4P && arg2 = arg3P && 14 <= arg1P - 1 && 0 <= arg1 - 1 && arg1P - 14 <= arg1 && 0 <= arg2 - 1 && -1 <= arg2P - 1 (2) f2907_0_createMap_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) -> f2907_0_createMap_LE(x13, x14, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27) :|: 0 <= x1 - 1 && x3 + 1 <= x2 - 1 && -1 <= x2 - 1 && -1 <= x3 - 1 && -1 <= x30 - 1 && -1 <= x31 - 1 && 1 <= x4 - 1 && 3 <= x - 1 && 3 <= x13 - 1 && x6 + 3 <= x && x5 + 3 <= x && x1 - 1 = x14 && x2 = x17 && x3 + 2 = x18 (3) f2907_0_createMap_LE(x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44) -> f3374_0_put_NULL(x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57) :|: x35 + 1 <= x34 - 1 && 1 <= x36 - 1 && 0 <= x33 - 1 && -1 <= x34 - 1 && -1 <= x35 - 1 && -1 <= x58 - 1 && -1 <= x59 - 1 && x47 <= x36 - 1 && x45 <= x32 && 3 <= x32 - 1 && 3 <= x45 - 1 && -1 <= x48 - 1 && x38 + 3 <= x32 && x37 + 3 <= x32 && x34 = x49 && x35 + 2 = x50 && x36 = x51 && x37 = x52 && x38 = x53 (4) f3374_0_put_NULL(x60, x61, x62, x63, x64, x65, x66, x68, x69, x70, x71, x72, x73) -> f3452_0_put_EQ(x74, x75, x76, x77, x78, x79, x80, x81, x82, x83, x84, x85, x86) :|: x61 = x81 && x69 = x80 && x68 = x79 && x66 = x78 && 0 = x77 && x62 = x75 && x83 + 4 <= x63 && x61 + 2 <= x63 && x69 + 3 <= x60 && x68 + 3 <= x60 && -1 <= x82 - 1 && 2 <= x76 - 1 && 3 <= x74 - 1 && 2 <= x63 - 1 && 3 <= x60 - 1 && x82 + 2 <= x63 && x76 <= x63 && 1 <= x66 - 1 && x74 <= x60 (5) f3374_0_put_NULL(x87, x88, x89, x90, x91, x92, x93, x94, x95, x96, x97, x98, x99) -> f3452_0_put_EQ(x100, x101, x102, x103, x104, x105, x106, x107, x108, x109, x110, x111, x112) :|: x88 = x107 && x95 = x106 && x94 = x105 && x93 = x104 && 1 = x103 && x89 = x101 && x109 + 4 <= x90 && x88 + 2 <= x90 && x95 + 3 <= x87 && x94 + 3 <= x87 && -1 <= x108 - 1 && 2 <= x102 - 1 && 3 <= x100 - 1 && 2 <= x90 - 1 && 3 <= x87 - 1 && x108 + 2 <= x90 && x102 <= x90 && 1 <= x93 - 1 && x100 <= x87 (6) f3374_0_put_NULL(x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123, x124, x125) -> f3374_0_put_NULL(x126, x127, x128, x129, x130, x131, x132, x133, x134, x135, x136, x137, x138) :|: x126 <= x113 && x139 <= x114 - 1 && x129 + 1 <= x116 && 3 <= x113 - 1 && 0 <= x116 - 1 && 3 <= x126 - 1 && -1 <= x129 - 1 && x120 + 3 <= x113 && x121 + 3 <= x113 && x114 = x127 && x115 = x128 && x117 = x130 && x118 = x131 && x119 = x132 && x120 = x133 && x121 = x134 (7) f3374_0_put_NULL(x140, x141, x142, x143, x144, x145, x146, x147, x148, x149, x150, x151, x152) -> f3374_0_put_NULL(x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165) :|: x153 <= x140 && x141 <= x166 - 1 && x156 + 1 <= x143 && 3 <= x140 - 1 && 0 <= x143 - 1 && 3 <= x153 - 1 && -1 <= x156 - 1 && x147 + 3 <= x140 && x148 + 3 <= x140 && x141 = x154 && x142 = x155 && x144 = x157 && x145 = x158 && x146 = x159 && x147 = x160 && x148 = x161 (8) f3374_0_put_NULL(x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178, x179) -> f3374_0_put_NULL(x180, x181, x182, x183, x184, x185, x186, x187, x188, x189, x190, x191, x192) :|: x175 = x188 && x174 = x187 && x173 = x186 && x172 = x185 && x171 = x184 && x169 = x182 && x168 = x181 && x168 + 2 <= x170 && x175 + 3 <= x167 && x174 + 3 <= x167 && -1 <= x183 - 1 && 3 <= x180 - 1 && 1 <= x170 - 1 && 3 <= x167 - 1 && x183 + 2 <= x170 && 1 <= x173 - 1 && x180 <= x167 (9) f3374_0_put_NULL(x193, x194, x195, x196, x197, x198, x199, x200, x201, x203, x204, x205, x206) -> f3374_0_put_NULL(x207, x208, x209, x210, x211, x212, x213, x214, x215, x216, x217, x218, x219) :|: x201 = x215 && x200 = x214 && x199 = x213 && x198 = x212 && x197 = x211 && x195 = x209 && x194 = x208 && x194 + 2 <= x196 && x201 + 3 <= x193 && x200 + 3 <= x193 && -1 <= x210 - 1 && 3 <= x207 - 1 && 2 <= x196 - 1 && 3 <= x193 - 1 && x210 + 2 <= x196 && 1 <= x199 - 1 && x207 <= x193 (10) f3452_0_put_EQ(x220, x221, x222, x223, x224, x225, x226, x227, x228, x229, x230, x231, x232) -> f3374_0_put_NULL(x233, x234, x235, x236, x237, x238, x239, x240, x241, x242, x243, x244, x245) :|: x226 = x241 && x225 = x240 && x224 = x239 && x221 = x235 && x227 = x234 && 0 = x223 && x229 + 4 <= x222 && x227 + 2 <= x222 && x226 + 3 <= x220 && x225 + 3 <= x220 && -1 <= x236 - 1 && 3 <= x233 - 1 && -1 <= x228 - 1 && 2 <= x222 - 1 && 3 <= x220 - 1 && x236 <= x228 && x236 + 2 <= x222 && x233 <= x220 (11) f3374_0_put_NULL(x246, x247, x248, x249, x250, x251, x252, x253, x254, x255, x256, x257, x258) -> f3898_0_transfer_GE(x259, x260, x261, x262, x263, x264, x265, x266, x267, x268, x269, x270, x271) :|: x252 = x266 && 2 * x252 = x265 && x254 = x264 && x253 + 1 = x263 && 0 = x262 && x254 + 3 <= x246 && x253 + 3 <= x246 && 0 <= x261 - 1 && 0 <= x260 - 1 && 3 <= x259 - 1 && -1 <= x249 - 1 && 3 <= x246 - 1 && x261 - 1 <= x249 && x261 + 3 <= x246 && x260 - 1 <= x249 && x260 + 3 <= x246 && x259 - 1 <= x246 && x252 <= 1073741823 && 0 <= 2 * x252 && x254 <= x253 && 1 <= x252 - 1 && x248 <= x252 - 1 (12) f3374_0_put_NULL(x272, x273, x274, x275, x276, x277, x278, x279, x280, x281, x282, x283, x284) -> f3898_0_transfer_GE(x285, x286, x287, x288, x289, x290, x291, x292, x293, x294, x295, x296, x297) :|: x278 = x292 && 2 * x278 = x291 && x280 = x290 && x279 + 1 = x289 && 0 = x288 && x280 + 3 <= x272 && x279 + 3 <= x272 && 0 <= x287 - 1 && 0 <= x286 - 1 && 3 <= x285 - 1 && -1 <= x275 - 1 && 3 <= x272 - 1 && x287 - 1 <= x275 && x287 + 3 <= x272 && x286 - 1 <= x275 && x286 + 3 <= x272 && x285 - 1 <= x272 && x280 <= x279 && 0 <= 2 * x278 && 1073741824 <= x278 - 1 && x274 <= x278 - 1 (13) f3898_0_transfer_GE(x298, x299, x300, x301, x302, x303, x304, x305, x306, x307, x308, x309, x310) -> f3993_0_transfer_ArrayAccess(x311, x312, x313, x314, x315, x316, x317, x318, x319, x320, x321, x322, x323) :|: x304 = x323 && x305 = x320 && x303 = x319 && x302 = x318 && x301 = x313 && x303 + 3 <= x298 && x302 + 3 <= x298 && 0 <= x316 - 1 && 0 <= x315 - 1 && -1 <= x314 - 1 && 0 <= x312 - 1 && 3 <= x311 - 1 && 0 <= x300 - 1 && 0 <= x299 - 1 && 3 <= x298 - 1 && x316 <= x300 && x316 <= x299 && x316 + 3 <= x298 && x312 <= x300 && x312 <= x299 && x312 + 3 <= x298 && x311 <= x298 && x301 <= x305 - 1 && 0 <= x304 - 1 (14) f3993_0_transfer_ArrayAccess(x324, x325, x326, x327, x328, x329, x330, x331, x332, x333, x334, x335, x336) -> f3993_0_transfer_ArrayAccess(x337, x338, x339, x340, x341, x342, x343, x344, x345, x346, x347, x348, x349) :|: x336 = x349 && x333 = x346 && x332 = x345 && x331 = x344 && x326 = x339 && x335 + 2 <= x328 && x348 + 4 <= x328 && x347 + 4 <= x328 && x334 + 2 <= x328 && x348 + 2 <= x327 && x347 + 2 <= x327 && x332 + 3 <= x324 && x331 + 3 <= x324 && 0 <= x342 - 1 && 0 <= x341 - 1 && -1 <= x340 - 1 && 0 <= x338 - 1 && 3 <= x337 - 1 && 0 <= x329 - 1 && 2 <= x328 - 1 && 0 <= x327 - 1 && 0 <= x325 - 1 && 3 <= x324 - 1 && x342 <= x329 && x342 + 2 <= x328 && x342 <= x327 && x342 <= x325 && x342 + 3 <= x324 && x341 + 2 <= x328 && x341 <= x327 && x340 + 3 <= x328 && x340 + 1 <= x327 && x338 <= x329 && x338 + 2 <= x328 && x338 <= x327 && x338 <= x325 && x338 + 3 <= x324 && x337 <= x324 && 0 <= x336 - 1 && x330 <= x336 - 1 (15) f3898_0_transfer_GE(x350, x351, x352, x353, x354, x355, x356, x357, x358, x359, x360, x361, x362) -> f3898_0_transfer_GE(x363, x364, x365, x366, x367, x368, x369, x370, x371, x372, x373, x374, x375) :|: x357 = x370 && x356 = x369 && x355 = x368 && x354 = x367 && x353 + 1 = x366 && x355 + 3 <= x350 && x354 + 3 <= x350 && 0 <= x365 - 1 && 0 <= x364 - 1 && 3 <= x363 - 1 && 0 <= x352 - 1 && 0 <= x351 - 1 && 3 <= x350 - 1 && x365 <= x352 && x365 <= x351 && x365 + 3 <= x350 && x364 <= x352 && x364 <= x351 && x364 + 3 <= x350 && x363 <= x350 && x353 <= x357 - 1 && -1 <= x357 - 1 (16) f3993_0_transfer_ArrayAccess(x376, x377, x378, x379, x380, x381, x382, x383, x384, x385, x386, x387, x388) -> f3898_0_transfer_GE(x389, x390, x391, x392, x393, x394, x395, x396, x397, x398, x399, x400, x401) :|: x385 = x396 && x388 = x395 && x384 = x394 && x383 = x393 && x378 + 1 = x392 && x387 + 2 <= x380 && x386 + 2 <= x380 && x384 + 3 <= x376 && x383 + 3 <= x376 && 0 <= x391 - 1 && 0 <= x390 - 1 && 3 <= x389 - 1 && 0 <= x381 - 1 && 1 <= x380 - 1 && -1 <= x379 - 1 && 0 <= x377 - 1 && 3 <= x376 - 1 && x391 <= x381 && x391 + 1 <= x380 && x391 - 1 <= x379 && x391 <= x377 && x391 + 3 <= x376 && x390 <= x381 && x390 + 1 <= x380 && x390 - 1 <= x379 && x390 <= x377 && x390 + 3 <= x376 && x389 <= x376 && x382 <= x388 - 1 && -1 <= x385 - 1 (17) __init(x402, x403, x404, x405, x406, x407, x408, x409, x410, x411, x412, x413, x414) -> f1_0_main_Load(x415, x416, x417, x418, x419, x420, x421, x422, x423, x424, x425, x426, x427) :|: 0 <= 0 Arcs: (1) -> (2), (3) (2) -> (2), (3) (3) -> (4), (5), (6), (7), (8), (9), (11), (12) (4) -> (10) (6) -> (4), (5), (6), (7), (8), (9), (11), (12) (7) -> (4), (5), (6), (7), (8), (9), (11), (12) (8) -> (4), (5), (6), (7), (8), (9), (11), (12) (9) -> (4), (5), (6), (7), (8), (9), (11), (12) (10) -> (4), (5), (6), (7), (8), (9), (11), (12) (11) -> (13), (15) (12) -> (13), (15) (13) -> (14), (16) (14) -> (14), (16) (15) -> (13), (15) (16) -> (13), (15) (17) -> (1) This digraph is fully evaluated! ---------------------------------------- (4) Complex Obligation (AND) ---------------------------------------- (5) Obligation: Termination digraph: Nodes: (1) f2907_0_createMap_LE(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) -> f2907_0_createMap_LE(x13, x14, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27) :|: 0 <= x1 - 1 && x3 + 1 <= x2 - 1 && -1 <= x2 - 1 && -1 <= x3 - 1 && -1 <= x30 - 1 && -1 <= x31 - 1 && 1 <= x4 - 1 && 3 <= x - 1 && 3 <= x13 - 1 && x6 + 3 <= x && x5 + 3 <= x && x1 - 1 = x14 && x2 = x17 && x3 + 2 = x18 Arcs: (1) -> (1) This digraph is fully evaluated! ---------------------------------------- (6) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (7) Obligation: Rules: f2907_0_createMap_LE(x:0, x1:0, x17:0, x3:0, x4:0, x5:0, x6:0, x7:0, x8:0, x9:0, x10:0, x11:0, x12:0) -> f2907_0_createMap_LE(x13:0, x1:0 - 1, x17:0, x3:0 + 2, x19:0, x20:0, x21:0, x22:0, x23:0, x24:0, x25:0, x26:0, x27:0) :|: x:0 >= x6:0 + 3 && x:0 >= x5:0 + 3 && x13:0 > 3 && x:0 > 3 && x4:0 > 1 && x31:0 > -1 && x30:0 > -1 && x3:0 > -1 && x17:0 > -1 && x3:0 + 1 <= x17:0 - 1 && x1:0 > 0 ---------------------------------------- (8) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: f2907_0_createMap_LE(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13) -> f2907_0_createMap_LE(x1, x2, x3, x4, x5, x6, x7) ---------------------------------------- (9) Obligation: Rules: f2907_0_createMap_LE(x:0, x1:0, x17:0, x3:0, x4:0, x5:0, x6:0) -> f2907_0_createMap_LE(x13:0, x1:0 - 1, x17:0, x3:0 + 2, x19:0, x20:0, x21:0) :|: x:0 >= x6:0 + 3 && x:0 >= x5:0 + 3 && x13:0 > 3 && x:0 > 3 && x4:0 > 1 && x31:0 > -1 && x30:0 > -1 && x3:0 > -1 && x17:0 > -1 && x3:0 + 1 <= x17:0 - 1 && x1:0 > 0 ---------------------------------------- (10) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f2907_0_createMap_LE(INTEGER, INTEGER, INTEGER, INTEGER, VARIABLE, VARIABLE, VARIABLE) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (11) Obligation: Rules: f2907_0_createMap_LE(x:0, x1:0, x17:0, x3:0, x4:0, x5:0, x6:0) -> f2907_0_createMap_LE(x13:0, c, x17:0, c1, x19:0, x20:0, x21:0) :|: c1 = x3:0 + 2 && c = x1:0 - 1 && (x:0 >= x6:0 + 3 && x:0 >= x5:0 + 3 && x13:0 > 3 && x:0 > 3 && x4:0 > 1 && x31:0 > -1 && x30:0 > -1 && x3:0 > -1 && x17:0 > -1 && x3:0 + 1 <= x17:0 - 1 && x1:0 > 0) ---------------------------------------- (12) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f2907_0_createMap_LE(x, x1, x2, x3, x4, x5, x6)] = x1 The following rules are decreasing: f2907_0_createMap_LE(x:0, x1:0, x17:0, x3:0, x4:0, x5:0, x6:0) -> f2907_0_createMap_LE(x13:0, c, x17:0, c1, x19:0, x20:0, x21:0) :|: c1 = x3:0 + 2 && c = x1:0 - 1 && (x:0 >= x6:0 + 3 && x:0 >= x5:0 + 3 && x13:0 > 3 && x:0 > 3 && x4:0 > 1 && x31:0 > -1 && x30:0 > -1 && x3:0 > -1 && x17:0 > -1 && x3:0 + 1 <= x17:0 - 1 && x1:0 > 0) The following rules are bounded: f2907_0_createMap_LE(x:0, x1:0, x17:0, x3:0, x4:0, x5:0, x6:0) -> f2907_0_createMap_LE(x13:0, c, x17:0, c1, x19:0, x20:0, x21:0) :|: c1 = x3:0 + 2 && c = x1:0 - 1 && (x:0 >= x6:0 + 3 && x:0 >= x5:0 + 3 && x13:0 > 3 && x:0 > 3 && x4:0 > 1 && x31:0 > -1 && x30:0 > -1 && x3:0 > -1 && x17:0 > -1 && x3:0 + 1 <= x17:0 - 1 && x1:0 > 0) ---------------------------------------- (13) YES ---------------------------------------- (14) Obligation: Termination digraph: Nodes: (1) f3374_0_put_NULL(x60, x61, x62, x63, x64, x65, x66, x68, x69, x70, x71, x72, x73) -> f3452_0_put_EQ(x74, x75, x76, x77, x78, x79, x80, x81, x82, x83, x84, x85, x86) :|: x61 = x81 && x69 = x80 && x68 = x79 && x66 = x78 && 0 = x77 && x62 = x75 && x83 + 4 <= x63 && x61 + 2 <= x63 && x69 + 3 <= x60 && x68 + 3 <= x60 && -1 <= x82 - 1 && 2 <= x76 - 1 && 3 <= x74 - 1 && 2 <= x63 - 1 && 3 <= x60 - 1 && x82 + 2 <= x63 && x76 <= x63 && 1 <= x66 - 1 && x74 <= x60 (2) f3374_0_put_NULL(x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123, x124, x125) -> f3374_0_put_NULL(x126, x127, x128, x129, x130, x131, x132, x133, x134, x135, x136, x137, x138) :|: x126 <= x113 && x139 <= x114 - 1 && x129 + 1 <= x116 && 3 <= x113 - 1 && 0 <= x116 - 1 && 3 <= x126 - 1 && -1 <= x129 - 1 && x120 + 3 <= x113 && x121 + 3 <= x113 && x114 = x127 && x115 = x128 && x117 = x130 && x118 = x131 && x119 = x132 && x120 = x133 && x121 = x134 (3) f3374_0_put_NULL(x140, x141, x142, x143, x144, x145, x146, x147, x148, x149, x150, x151, x152) -> f3374_0_put_NULL(x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165) :|: x153 <= x140 && x141 <= x166 - 1 && x156 + 1 <= x143 && 3 <= x140 - 1 && 0 <= x143 - 1 && 3 <= x153 - 1 && -1 <= x156 - 1 && x147 + 3 <= x140 && x148 + 3 <= x140 && x141 = x154 && x142 = x155 && x144 = x157 && x145 = x158 && x146 = x159 && x147 = x160 && x148 = x161 (4) f3374_0_put_NULL(x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178, x179) -> f3374_0_put_NULL(x180, x181, x182, x183, x184, x185, x186, x187, x188, x189, x190, x191, x192) :|: x175 = x188 && x174 = x187 && x173 = x186 && x172 = x185 && x171 = x184 && x169 = x182 && x168 = x181 && x168 + 2 <= x170 && x175 + 3 <= x167 && x174 + 3 <= x167 && -1 <= x183 - 1 && 3 <= x180 - 1 && 1 <= x170 - 1 && 3 <= x167 - 1 && x183 + 2 <= x170 && 1 <= x173 - 1 && x180 <= x167 (5) f3374_0_put_NULL(x193, x194, x195, x196, x197, x198, x199, x200, x201, x203, x204, x205, x206) -> f3374_0_put_NULL(x207, x208, x209, x210, x211, x212, x213, x214, x215, x216, x217, x218, x219) :|: x201 = x215 && x200 = x214 && x199 = x213 && x198 = x212 && x197 = x211 && x195 = x209 && x194 = x208 && x194 + 2 <= x196 && x201 + 3 <= x193 && x200 + 3 <= x193 && -1 <= x210 - 1 && 3 <= x207 - 1 && 2 <= x196 - 1 && 3 <= x193 - 1 && x210 + 2 <= x196 && 1 <= x199 - 1 && x207 <= x193 (6) f3452_0_put_EQ(x220, x221, x222, x223, x224, x225, x226, x227, x228, x229, x230, x231, x232) -> f3374_0_put_NULL(x233, x234, x235, x236, x237, x238, x239, x240, x241, x242, x243, x244, x245) :|: x226 = x241 && x225 = x240 && x224 = x239 && x221 = x235 && x227 = x234 && 0 = x223 && x229 + 4 <= x222 && x227 + 2 <= x222 && x226 + 3 <= x220 && x225 + 3 <= x220 && -1 <= x236 - 1 && 3 <= x233 - 1 && -1 <= x228 - 1 && 2 <= x222 - 1 && 3 <= x220 - 1 && x236 <= x228 && x236 + 2 <= x222 && x233 <= x220 Arcs: (1) -> (6) (2) -> (1), (2), (3), (4), (5) (3) -> (1), (2), (3), (4), (5) (4) -> (1), (2), (3), (4), (5) (5) -> (1), (2), (3), (4), (5) (6) -> (1), (2), (3), (4), (5) This digraph is fully evaluated! ---------------------------------------- (15) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (16) Obligation: Rules: f3374_0_put_NULL(x140:0, x141:0, x142:0, x143:0, x144:0, x145:0, x146:0, x147:0, x148:0, x149:0, x150:0, x151:0, x152:0) -> f3374_0_put_NULL(x153:0, x141:0, x142:0, x156:0, x144:0, x145:0, x146:0, x147:0, x148:0, x162:0, x163:0, x164:0, x165:0) :|: x147:0 + 3 <= x140:0 && x148:0 + 3 <= x140:0 && x156:0 > -1 && x153:0 > 3 && x143:0 > 0 && x140:0 > 3 && x156:0 + 1 <= x143:0 && x166:0 - 1 >= x141:0 && x153:0 <= x140:0 f3374_0_put_NULL(x193:0, x194:0, x195:0, x196:0, x197:0, x198:0, x199:0, x200:0, x201:0, x203:0, x204:0, x205:0, x206:0) -> f3374_0_put_NULL(x207:0, x194:0, x195:0, x210:0, x197:0, x198:0, x199:0, x200:0, x201:0, x216:0, x217:0, x218:0, x219:0) :|: x199:0 > 1 && x207:0 <= x193:0 && x210:0 + 2 <= x196:0 && x193:0 > 3 && x196:0 > 2 && x207:0 > 3 && x210:0 > -1 && x200:0 + 3 <= x193:0 && x196:0 >= x194:0 + 2 && x201:0 + 3 <= x193:0 f3374_0_put_NULL(x113:0, x114:0, x115:0, x116:0, x117:0, x118:0, x119:0, x120:0, x121:0, x122:0, x123:0, x124:0, x125:0) -> f3374_0_put_NULL(x126:0, x114:0, x115:0, x129:0, x117:0, x118:0, x119:0, x120:0, x121:0, x135:0, x136:0, x137:0, x138:0) :|: x120:0 + 3 <= x113:0 && x121:0 + 3 <= x113:0 && x129:0 > -1 && x126:0 > 3 && x116:0 > 0 && x113:0 > 3 && x129:0 + 1 <= x116:0 && x139:0 <= x114:0 - 1 && x126:0 <= x113:0 f3374_0_put_NULL(x167:0, x168:0, x169:0, x170:0, x171:0, x172:0, x173:0, x174:0, x175:0, x176:0, x177:0, x178:0, x179:0) -> f3374_0_put_NULL(x180:0, x168:0, x169:0, x183:0, x171:0, x172:0, x173:0, x174:0, x175:0, x189:0, x190:0, x191:0, x192:0) :|: x173:0 > 1 && x180:0 <= x167:0 && x183:0 + 2 <= x170:0 && x167:0 > 3 && x170:0 > 1 && x180:0 > 3 && x183:0 > -1 && x174:0 + 3 <= x167:0 && x170:0 >= x168:0 + 2 && x175:0 + 3 <= x167:0 f3374_0_put_NULL(x60:0, x234:0, x235:0, x63:0, x64:0, x65:0, x239:0, x240:0, x241:0, x70:0, x71:0, x72:0, x73:0) -> f3374_0_put_NULL(x233:0, x234:0, x235:0, x236:0, x237:0, x238:0, x239:0, x240:0, x241:0, x242:0, x243:0, x244:0, x245:0) :|: x74:0 >= x233:0 && x74:0 <= x60:0 && x239:0 > 1 && x76:0 >= x236:0 + 2 && x76:0 <= x63:0 && x82:0 >= x236:0 && x82:0 + 2 <= x63:0 && x60:0 > 3 && x63:0 > 2 && x74:0 > 3 && x233:0 > 3 && x76:0 > 2 && x236:0 > -1 && x82:0 > -1 && x74:0 >= x240:0 + 3 && x60:0 >= x240:0 + 3 && x74:0 >= x241:0 + 3 && x60:0 >= x241:0 + 3 && x76:0 >= x234:0 + 2 && x63:0 >= x234:0 + 2 && x83:0 + 4 <= x63:0 && x83:0 + 4 <= x76:0 ---------------------------------------- (17) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: f3374_0_put_NULL(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13) -> f3374_0_put_NULL(x1, x2, x4, x7, x8, x9) ---------------------------------------- (18) Obligation: Rules: f3374_0_put_NULL(x140:0, x141:0, x143:0, x146:0, x147:0, x148:0) -> f3374_0_put_NULL(x153:0, x141:0, x156:0, x146:0, x147:0, x148:0) :|: x147:0 + 3 <= x140:0 && x148:0 + 3 <= x140:0 && x156:0 > -1 && x153:0 > 3 && x143:0 > 0 && x140:0 > 3 && x156:0 + 1 <= x143:0 && x166:0 - 1 >= x141:0 && x153:0 <= x140:0 f3374_0_put_NULL(x193:0, x194:0, x196:0, x199:0, x200:0, x201:0) -> f3374_0_put_NULL(x207:0, x194:0, x210:0, x199:0, x200:0, x201:0) :|: x199:0 > 1 && x207:0 <= x193:0 && x210:0 + 2 <= x196:0 && x193:0 > 3 && x196:0 > 2 && x207:0 > 3 && x210:0 > -1 && x200:0 + 3 <= x193:0 && x196:0 >= x194:0 + 2 && x201:0 + 3 <= x193:0 f3374_0_put_NULL(x113:0, x114:0, x116:0, x119:0, x120:0, x121:0) -> f3374_0_put_NULL(x126:0, x114:0, x129:0, x119:0, x120:0, x121:0) :|: x120:0 + 3 <= x113:0 && x121:0 + 3 <= x113:0 && x129:0 > -1 && x126:0 > 3 && x116:0 > 0 && x113:0 > 3 && x129:0 + 1 <= x116:0 && x139:0 <= x114:0 - 1 && x126:0 <= x113:0 f3374_0_put_NULL(x167:0, x168:0, x170:0, x173:0, x174:0, x175:0) -> f3374_0_put_NULL(x180:0, x168:0, x183:0, x173:0, x174:0, x175:0) :|: x173:0 > 1 && x180:0 <= x167:0 && x183:0 + 2 <= x170:0 && x167:0 > 3 && x170:0 > 1 && x180:0 > 3 && x183:0 > -1 && x174:0 + 3 <= x167:0 && x170:0 >= x168:0 + 2 && x175:0 + 3 <= x167:0 f3374_0_put_NULL(x60:0, x234:0, x63:0, x239:0, x240:0, x241:0) -> f3374_0_put_NULL(x233:0, x234:0, x236:0, x239:0, x240:0, x241:0) :|: x74:0 >= x233:0 && x74:0 <= x60:0 && x239:0 > 1 && x76:0 >= x236:0 + 2 && x76:0 <= x63:0 && x82:0 >= x236:0 && x82:0 + 2 <= x63:0 && x60:0 > 3 && x63:0 > 2 && x74:0 > 3 && x233:0 > 3 && x76:0 > 2 && x236:0 > -1 && x82:0 > -1 && x74:0 >= x240:0 + 3 && x60:0 >= x240:0 + 3 && x74:0 >= x241:0 + 3 && x60:0 >= x241:0 + 3 && x76:0 >= x234:0 + 2 && x63:0 >= x234:0 + 2 && x83:0 + 4 <= x63:0 && x83:0 + 4 <= x76:0 ---------------------------------------- (19) FilterProof (EQUIVALENT) Used the following sort dictionary for filtering: f3374_0_put_NULL(INTEGER, INTEGER, INTEGER, VARIABLE, INTEGER, INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (20) Obligation: Rules: f3374_0_put_NULL(x140:0, x141:0, x143:0, x146:0, x147:0, x148:0) -> f3374_0_put_NULL(x153:0, x141:0, x156:0, x146:0, x147:0, x148:0) :|: x147:0 + 3 <= x140:0 && x148:0 + 3 <= x140:0 && x156:0 > -1 && x153:0 > 3 && x143:0 > 0 && x140:0 > 3 && x156:0 + 1 <= x143:0 && x166:0 - 1 >= x141:0 && x153:0 <= x140:0 f3374_0_put_NULL(x193:0, x194:0, x196:0, x199:0, x200:0, x201:0) -> f3374_0_put_NULL(x207:0, x194:0, x210:0, x199:0, x200:0, x201:0) :|: x199:0 > 1 && x207:0 <= x193:0 && x210:0 + 2 <= x196:0 && x193:0 > 3 && x196:0 > 2 && x207:0 > 3 && x210:0 > -1 && x200:0 + 3 <= x193:0 && x196:0 >= x194:0 + 2 && x201:0 + 3 <= x193:0 f3374_0_put_NULL(x113:0, x114:0, x116:0, x119:0, x120:0, x121:0) -> f3374_0_put_NULL(x126:0, x114:0, x129:0, x119:0, x120:0, x121:0) :|: x120:0 + 3 <= x113:0 && x121:0 + 3 <= x113:0 && x129:0 > -1 && x126:0 > 3 && x116:0 > 0 && x113:0 > 3 && x129:0 + 1 <= x116:0 && x139:0 <= x114:0 - 1 && x126:0 <= x113:0 f3374_0_put_NULL(x167:0, x168:0, x170:0, x173:0, x174:0, x175:0) -> f3374_0_put_NULL(x180:0, x168:0, x183:0, x173:0, x174:0, x175:0) :|: x173:0 > 1 && x180:0 <= x167:0 && x183:0 + 2 <= x170:0 && x167:0 > 3 && x170:0 > 1 && x180:0 > 3 && x183:0 > -1 && x174:0 + 3 <= x167:0 && x170:0 >= x168:0 + 2 && x175:0 + 3 <= x167:0 f3374_0_put_NULL(x60:0, x234:0, x63:0, x239:0, x240:0, x241:0) -> f3374_0_put_NULL(x233:0, x234:0, x236:0, x239:0, x240:0, x241:0) :|: x74:0 >= x233:0 && x74:0 <= x60:0 && x239:0 > 1 && x76:0 >= x236:0 + 2 && x76:0 <= x63:0 && x82:0 >= x236:0 && x82:0 + 2 <= x63:0 && x60:0 > 3 && x63:0 > 2 && x74:0 > 3 && x233:0 > 3 && x76:0 > 2 && x236:0 > -1 && x82:0 > -1 && x74:0 >= x240:0 + 3 && x60:0 >= x240:0 + 3 && x74:0 >= x241:0 + 3 && x60:0 >= x241:0 + 3 && x76:0 >= x234:0 + 2 && x63:0 >= x234:0 + 2 && x83:0 + 4 <= x63:0 && x83:0 + 4 <= x76:0 ---------------------------------------- (21) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (22) Obligation: Rules: f3374_0_put_NULL(x193:0:0, x194:0:0, x196:0:0, x199:0:0, x200:0:0, x201:0:0) -> f3374_0_put_NULL(x207:0:0, x194:0:0, x210:0:0, x199:0:0, x200:0:0, x201:0:0) :|: x196:0:0 >= x194:0:0 + 2 && x201:0:0 + 3 <= x193:0:0 && x200:0:0 + 3 <= x193:0:0 && x210:0:0 > -1 && x207:0:0 > 3 && x196:0:0 > 2 && x193:0:0 > 3 && x210:0:0 + 2 <= x196:0:0 && x207:0:0 <= x193:0:0 && x199:0:0 > 1 f3374_0_put_NULL(x113:0:0, x114:0:0, x116:0:0, x119:0:0, x120:0:0, x121:0:0) -> f3374_0_put_NULL(x126:0:0, x114:0:0, x129:0:0, x119:0:0, x120:0:0, x121:0:0) :|: x139:0:0 <= x114:0:0 - 1 && x126:0:0 <= x113:0:0 && x129:0:0 + 1 <= x116:0:0 && x113:0:0 > 3 && x116:0:0 > 0 && x126:0:0 > 3 && x129:0:0 > -1 && x121:0:0 + 3 <= x113:0:0 && x120:0:0 + 3 <= x113:0:0 f3374_0_put_NULL(x60:0:0, x234:0:0, x63:0:0, x239:0:0, x240:0:0, x241:0:0) -> f3374_0_put_NULL(x233:0:0, x234:0:0, x236:0:0, x239:0:0, x240:0:0, x241:0:0) :|: x83:0:0 + 4 <= x63:0:0 && x83:0:0 + 4 <= x76:0:0 && x63:0:0 >= x234:0:0 + 2 && x76:0:0 >= x234:0:0 + 2 && x60:0:0 >= x241:0:0 + 3 && x74:0:0 >= x241:0:0 + 3 && x60:0:0 >= x240:0:0 + 3 && x74:0:0 >= x240:0:0 + 3 && x82:0:0 > -1 && x236:0:0 > -1 && x76:0:0 > 2 && x233:0:0 > 3 && x74:0:0 > 3 && x63:0:0 > 2 && x60:0:0 > 3 && x82:0:0 + 2 <= x63:0:0 && x82:0:0 >= x236:0:0 && x76:0:0 <= x63:0:0 && x76:0:0 >= x236:0:0 + 2 && x239:0:0 > 1 && x74:0:0 <= x60:0:0 && x74:0:0 >= x233:0:0 f3374_0_put_NULL(x140:0:0, x141:0:0, x143:0:0, x146:0:0, x147:0:0, x148:0:0) -> f3374_0_put_NULL(x153:0:0, x141:0:0, x156:0:0, x146:0:0, x147:0:0, x148:0:0) :|: x166:0:0 - 1 >= x141:0:0 && x153:0:0 <= x140:0:0 && x156:0:0 + 1 <= x143:0:0 && x140:0:0 > 3 && x143:0:0 > 0 && x153:0:0 > 3 && x156:0:0 > -1 && x148:0:0 + 3 <= x140:0:0 && x147:0:0 + 3 <= x140:0:0 f3374_0_put_NULL(x167:0:0, x168:0:0, x170:0:0, x173:0:0, x174:0:0, x175:0:0) -> f3374_0_put_NULL(x180:0:0, x168:0:0, x183:0:0, x173:0:0, x174:0:0, x175:0:0) :|: x170:0:0 >= x168:0:0 + 2 && x175:0:0 + 3 <= x167:0:0 && x174:0:0 + 3 <= x167:0:0 && x183:0:0 > -1 && x180:0:0 > 3 && x170:0:0 > 1 && x167:0:0 > 3 && x183:0:0 + 2 <= x170:0:0 && x180:0:0 <= x167:0:0 && x173:0:0 > 1 ---------------------------------------- (23) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f3374_0_put_NULL ] = f3374_0_put_NULL_3 The following rules are decreasing: f3374_0_put_NULL(x193:0:0, x194:0:0, x196:0:0, x199:0:0, x200:0:0, x201:0:0) -> f3374_0_put_NULL(x207:0:0, x194:0:0, x210:0:0, x199:0:0, x200:0:0, x201:0:0) :|: x196:0:0 >= x194:0:0 + 2 && x201:0:0 + 3 <= x193:0:0 && x200:0:0 + 3 <= x193:0:0 && x210:0:0 > -1 && x207:0:0 > 3 && x196:0:0 > 2 && x193:0:0 > 3 && x210:0:0 + 2 <= x196:0:0 && x207:0:0 <= x193:0:0 && x199:0:0 > 1 f3374_0_put_NULL(x113:0:0, x114:0:0, x116:0:0, x119:0:0, x120:0:0, x121:0:0) -> f3374_0_put_NULL(x126:0:0, x114:0:0, x129:0:0, x119:0:0, x120:0:0, x121:0:0) :|: x139:0:0 <= x114:0:0 - 1 && x126:0:0 <= x113:0:0 && x129:0:0 + 1 <= x116:0:0 && x113:0:0 > 3 && x116:0:0 > 0 && x126:0:0 > 3 && x129:0:0 > -1 && x121:0:0 + 3 <= x113:0:0 && x120:0:0 + 3 <= x113:0:0 f3374_0_put_NULL(x60:0:0, x234:0:0, x63:0:0, x239:0:0, x240:0:0, x241:0:0) -> f3374_0_put_NULL(x233:0:0, x234:0:0, x236:0:0, x239:0:0, x240:0:0, x241:0:0) :|: x83:0:0 + 4 <= x63:0:0 && x83:0:0 + 4 <= x76:0:0 && x63:0:0 >= x234:0:0 + 2 && x76:0:0 >= x234:0:0 + 2 && x60:0:0 >= x241:0:0 + 3 && x74:0:0 >= x241:0:0 + 3 && x60:0:0 >= x240:0:0 + 3 && x74:0:0 >= x240:0:0 + 3 && x82:0:0 > -1 && x236:0:0 > -1 && x76:0:0 > 2 && x233:0:0 > 3 && x74:0:0 > 3 && x63:0:0 > 2 && x60:0:0 > 3 && x82:0:0 + 2 <= x63:0:0 && x82:0:0 >= x236:0:0 && x76:0:0 <= x63:0:0 && x76:0:0 >= x236:0:0 + 2 && x239:0:0 > 1 && x74:0:0 <= x60:0:0 && x74:0:0 >= x233:0:0 f3374_0_put_NULL(x140:0:0, x141:0:0, x143:0:0, x146:0:0, x147:0:0, x148:0:0) -> f3374_0_put_NULL(x153:0:0, x141:0:0, x156:0:0, x146:0:0, x147:0:0, x148:0:0) :|: x166:0:0 - 1 >= x141:0:0 && x153:0:0 <= x140:0:0 && x156:0:0 + 1 <= x143:0:0 && x140:0:0 > 3 && x143:0:0 > 0 && x153:0:0 > 3 && x156:0:0 > -1 && x148:0:0 + 3 <= x140:0:0 && x147:0:0 + 3 <= x140:0:0 f3374_0_put_NULL(x167:0:0, x168:0:0, x170:0:0, x173:0:0, x174:0:0, x175:0:0) -> f3374_0_put_NULL(x180:0:0, x168:0:0, x183:0:0, x173:0:0, x174:0:0, x175:0:0) :|: x170:0:0 >= x168:0:0 + 2 && x175:0:0 + 3 <= x167:0:0 && x174:0:0 + 3 <= x167:0:0 && x183:0:0 > -1 && x180:0:0 > 3 && x170:0:0 > 1 && x167:0:0 > 3 && x183:0:0 + 2 <= x170:0:0 && x180:0:0 <= x167:0:0 && x173:0:0 > 1 The following rules are bounded: f3374_0_put_NULL(x193:0:0, x194:0:0, x196:0:0, x199:0:0, x200:0:0, x201:0:0) -> f3374_0_put_NULL(x207:0:0, x194:0:0, x210:0:0, x199:0:0, x200:0:0, x201:0:0) :|: x196:0:0 >= x194:0:0 + 2 && x201:0:0 + 3 <= x193:0:0 && x200:0:0 + 3 <= x193:0:0 && x210:0:0 > -1 && x207:0:0 > 3 && x196:0:0 > 2 && x193:0:0 > 3 && x210:0:0 + 2 <= x196:0:0 && x207:0:0 <= x193:0:0 && x199:0:0 > 1 f3374_0_put_NULL(x113:0:0, x114:0:0, x116:0:0, x119:0:0, x120:0:0, x121:0:0) -> f3374_0_put_NULL(x126:0:0, x114:0:0, x129:0:0, x119:0:0, x120:0:0, x121:0:0) :|: x139:0:0 <= x114:0:0 - 1 && x126:0:0 <= x113:0:0 && x129:0:0 + 1 <= x116:0:0 && x113:0:0 > 3 && x116:0:0 > 0 && x126:0:0 > 3 && x129:0:0 > -1 && x121:0:0 + 3 <= x113:0:0 && x120:0:0 + 3 <= x113:0:0 f3374_0_put_NULL(x60:0:0, x234:0:0, x63:0:0, x239:0:0, x240:0:0, x241:0:0) -> f3374_0_put_NULL(x233:0:0, x234:0:0, x236:0:0, x239:0:0, x240:0:0, x241:0:0) :|: x83:0:0 + 4 <= x63:0:0 && x83:0:0 + 4 <= x76:0:0 && x63:0:0 >= x234:0:0 + 2 && x76:0:0 >= x234:0:0 + 2 && x60:0:0 >= x241:0:0 + 3 && x74:0:0 >= x241:0:0 + 3 && x60:0:0 >= x240:0:0 + 3 && x74:0:0 >= x240:0:0 + 3 && x82:0:0 > -1 && x236:0:0 > -1 && x76:0:0 > 2 && x233:0:0 > 3 && x74:0:0 > 3 && x63:0:0 > 2 && x60:0:0 > 3 && x82:0:0 + 2 <= x63:0:0 && x82:0:0 >= x236:0:0 && x76:0:0 <= x63:0:0 && x76:0:0 >= x236:0:0 + 2 && x239:0:0 > 1 && x74:0:0 <= x60:0:0 && x74:0:0 >= x233:0:0 f3374_0_put_NULL(x140:0:0, x141:0:0, x143:0:0, x146:0:0, x147:0:0, x148:0:0) -> f3374_0_put_NULL(x153:0:0, x141:0:0, x156:0:0, x146:0:0, x147:0:0, x148:0:0) :|: x166:0:0 - 1 >= x141:0:0 && x153:0:0 <= x140:0:0 && x156:0:0 + 1 <= x143:0:0 && x140:0:0 > 3 && x143:0:0 > 0 && x153:0:0 > 3 && x156:0:0 > -1 && x148:0:0 + 3 <= x140:0:0 && x147:0:0 + 3 <= x140:0:0 f3374_0_put_NULL(x167:0:0, x168:0:0, x170:0:0, x173:0:0, x174:0:0, x175:0:0) -> f3374_0_put_NULL(x180:0:0, x168:0:0, x183:0:0, x173:0:0, x174:0:0, x175:0:0) :|: x170:0:0 >= x168:0:0 + 2 && x175:0:0 + 3 <= x167:0:0 && x174:0:0 + 3 <= x167:0:0 && x183:0:0 > -1 && x180:0:0 > 3 && x170:0:0 > 1 && x167:0:0 > 3 && x183:0:0 + 2 <= x170:0:0 && x180:0:0 <= x167:0:0 && x173:0:0 > 1 ---------------------------------------- (24) YES ---------------------------------------- (25) Obligation: Termination digraph: Nodes: (1) f3898_0_transfer_GE(x298, x299, x300, x301, x302, x303, x304, x305, x306, x307, x308, x309, x310) -> f3993_0_transfer_ArrayAccess(x311, x312, x313, x314, x315, x316, x317, x318, x319, x320, x321, x322, x323) :|: x304 = x323 && x305 = x320 && x303 = x319 && x302 = x318 && x301 = x313 && x303 + 3 <= x298 && x302 + 3 <= x298 && 0 <= x316 - 1 && 0 <= x315 - 1 && -1 <= x314 - 1 && 0 <= x312 - 1 && 3 <= x311 - 1 && 0 <= x300 - 1 && 0 <= x299 - 1 && 3 <= x298 - 1 && x316 <= x300 && x316 <= x299 && x316 + 3 <= x298 && x312 <= x300 && x312 <= x299 && x312 + 3 <= x298 && x311 <= x298 && x301 <= x305 - 1 && 0 <= x304 - 1 (2) f3898_0_transfer_GE(x350, x351, x352, x353, x354, x355, x356, x357, x358, x359, x360, x361, x362) -> f3898_0_transfer_GE(x363, x364, x365, x366, x367, x368, x369, x370, x371, x372, x373, x374, x375) :|: x357 = x370 && x356 = x369 && x355 = x368 && x354 = x367 && x353 + 1 = x366 && x355 + 3 <= x350 && x354 + 3 <= x350 && 0 <= x365 - 1 && 0 <= x364 - 1 && 3 <= x363 - 1 && 0 <= x352 - 1 && 0 <= x351 - 1 && 3 <= x350 - 1 && x365 <= x352 && x365 <= x351 && x365 + 3 <= x350 && x364 <= x352 && x364 <= x351 && x364 + 3 <= x350 && x363 <= x350 && x353 <= x357 - 1 && -1 <= x357 - 1 (3) f3993_0_transfer_ArrayAccess(x376, x377, x378, x379, x380, x381, x382, x383, x384, x385, x386, x387, x388) -> f3898_0_transfer_GE(x389, x390, x391, x392, x393, x394, x395, x396, x397, x398, x399, x400, x401) :|: x385 = x396 && x388 = x395 && x384 = x394 && x383 = x393 && x378 + 1 = x392 && x387 + 2 <= x380 && x386 + 2 <= x380 && x384 + 3 <= x376 && x383 + 3 <= x376 && 0 <= x391 - 1 && 0 <= x390 - 1 && 3 <= x389 - 1 && 0 <= x381 - 1 && 1 <= x380 - 1 && -1 <= x379 - 1 && 0 <= x377 - 1 && 3 <= x376 - 1 && x391 <= x381 && x391 + 1 <= x380 && x391 - 1 <= x379 && x391 <= x377 && x391 + 3 <= x376 && x390 <= x381 && x390 + 1 <= x380 && x390 - 1 <= x379 && x390 <= x377 && x390 + 3 <= x376 && x389 <= x376 && x382 <= x388 - 1 && -1 <= x385 - 1 (4) f3993_0_transfer_ArrayAccess(x324, x325, x326, x327, x328, x329, x330, x331, x332, x333, x334, x335, x336) -> f3993_0_transfer_ArrayAccess(x337, x338, x339, x340, x341, x342, x343, x344, x345, x346, x347, x348, x349) :|: x336 = x349 && x333 = x346 && x332 = x345 && x331 = x344 && x326 = x339 && x335 + 2 <= x328 && x348 + 4 <= x328 && x347 + 4 <= x328 && x334 + 2 <= x328 && x348 + 2 <= x327 && x347 + 2 <= x327 && x332 + 3 <= x324 && x331 + 3 <= x324 && 0 <= x342 - 1 && 0 <= x341 - 1 && -1 <= x340 - 1 && 0 <= x338 - 1 && 3 <= x337 - 1 && 0 <= x329 - 1 && 2 <= x328 - 1 && 0 <= x327 - 1 && 0 <= x325 - 1 && 3 <= x324 - 1 && x342 <= x329 && x342 + 2 <= x328 && x342 <= x327 && x342 <= x325 && x342 + 3 <= x324 && x341 + 2 <= x328 && x341 <= x327 && x340 + 3 <= x328 && x340 + 1 <= x327 && x338 <= x329 && x338 + 2 <= x328 && x338 <= x327 && x338 <= x325 && x338 + 3 <= x324 && x337 <= x324 && 0 <= x336 - 1 && x330 <= x336 - 1 Arcs: (1) -> (3), (4) (2) -> (1), (2) (3) -> (1), (2) (4) -> (3), (4) This digraph is fully evaluated! ---------------------------------------- (26) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (27) Obligation: Rules: f3898_0_transfer_GE(x298:0, x299:0, x300:0, x301:0, x302:0, x303:0, x304:0, x305:0, x306:0, x307:0, x308:0, x309:0, x310:0) -> f3993_0_transfer_ArrayAccess(x311:0, x312:0, x301:0, x314:0, x315:0, x316:0, x317:0, x302:0, x303:0, x305:0, x321:0, x322:0, x304:0) :|: x305:0 - 1 >= x301:0 && x304:0 > 0 && x311:0 <= x298:0 && x312:0 + 3 <= x298:0 && x312:0 <= x299:0 && x312:0 <= x300:0 && x316:0 + 3 <= x298:0 && x316:0 <= x299:0 && x316:0 <= x300:0 && x298:0 > 3 && x299:0 > 0 && x300:0 > 0 && x311:0 > 3 && x312:0 > 0 && x314:0 > -1 && x315:0 > 0 && x316:0 > 0 && x303:0 + 3 <= x298:0 && x302:0 + 3 <= x298:0 f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0, x358:0, x359:0, x360:0, x361:0, x362:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, x353:0 + 1, x354:0, x355:0, x356:0, x357:0, x371:0, x372:0, x373:0, x374:0, x375:0) :|: x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0 f3993_0_transfer_ArrayAccess(x376:0, x377:0, x378:0, x379:0, x380:0, x381:0, x382:0, x383:0, x384:0, x385:0, x386:0, x387:0, x388:0) -> f3898_0_transfer_GE(x389:0, x390:0, x391:0, x378:0 + 1, x383:0, x384:0, x388:0, x385:0, x397:0, x398:0, x399:0, x400:0, x401:0) :|: x388:0 - 1 >= x382:0 && x385:0 > -1 && x389:0 <= x376:0 && x390:0 + 3 <= x376:0 && x390:0 <= x377:0 && x390:0 - 1 <= x379:0 && x390:0 + 1 <= x380:0 && x390:0 <= x381:0 && x391:0 + 3 <= x376:0 && x391:0 <= x377:0 && x391:0 - 1 <= x379:0 && x391:0 + 1 <= x380:0 && x391:0 <= x381:0 && x376:0 > 3 && x377:0 > 0 && x379:0 > -1 && x380:0 > 1 && x381:0 > 0 && x389:0 > 3 && x390:0 > 0 && x391:0 > 0 && x383:0 + 3 <= x376:0 && x384:0 + 3 <= x376:0 && x387:0 + 2 <= x380:0 && x386:0 + 2 <= x380:0 f3993_0_transfer_ArrayAccess(x324:0, x325:0, x326:0, x327:0, x328:0, x329:0, x330:0, x331:0, x332:0, x333:0, x334:0, x335:0, x336:0) -> f3993_0_transfer_ArrayAccess(x337:0, x338:0, x326:0, x340:0, x341:0, x342:0, x343:0, x331:0, x332:0, x333:0, x347:0, x348:0, x336:0) :|: x336:0 > 0 && x336:0 - 1 >= x330:0 && x337:0 <= x324:0 && x338:0 + 3 <= x324:0 && x338:0 <= x325:0 && x338:0 <= x327:0 && x338:0 + 2 <= x328:0 && x338:0 <= x329:0 && x340:0 + 1 <= x327:0 && x340:0 + 3 <= x328:0 && x341:0 <= x327:0 && x341:0 + 2 <= x328:0 && x342:0 + 3 <= x324:0 && x342:0 <= x325:0 && x342:0 <= x327:0 && x342:0 + 2 <= x328:0 && x342:0 <= x329:0 && x324:0 > 3 && x325:0 > 0 && x327:0 > 0 && x328:0 > 2 && x329:0 > 0 && x337:0 > 3 && x338:0 > 0 && x340:0 > -1 && x341:0 > 0 && x342:0 > 0 && x331:0 + 3 <= x324:0 && x332:0 + 3 <= x324:0 && x347:0 + 2 <= x327:0 && x348:0 + 2 <= x327:0 && x334:0 + 2 <= x328:0 && x347:0 + 4 <= x328:0 && x335:0 + 2 <= x328:0 && x348:0 + 4 <= x328:0 ---------------------------------------- (28) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: f3898_0_transfer_GE(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13) -> f3898_0_transfer_GE(x1, x2, x3, x4, x5, x6, x7, x8) ---------------------------------------- (29) Obligation: Rules: f3898_0_transfer_GE(x298:0, x299:0, x300:0, x301:0, x302:0, x303:0, x304:0, x305:0) -> f3993_0_transfer_ArrayAccess(x311:0, x312:0, x301:0, x314:0, x315:0, x316:0, x317:0, x302:0, x303:0, x305:0, x321:0, x322:0, x304:0) :|: x305:0 - 1 >= x301:0 && x304:0 > 0 && x311:0 <= x298:0 && x312:0 + 3 <= x298:0 && x312:0 <= x299:0 && x312:0 <= x300:0 && x316:0 + 3 <= x298:0 && x316:0 <= x299:0 && x316:0 <= x300:0 && x298:0 > 3 && x299:0 > 0 && x300:0 > 0 && x311:0 > 3 && x312:0 > 0 && x314:0 > -1 && x315:0 > 0 && x316:0 > 0 && x303:0 + 3 <= x298:0 && x302:0 + 3 <= x298:0 f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, x353:0 + 1, x354:0, x355:0, x356:0, x357:0) :|: x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0 f3993_0_transfer_ArrayAccess(x376:0, x377:0, x378:0, x379:0, x380:0, x381:0, x382:0, x383:0, x384:0, x385:0, x386:0, x387:0, x388:0) -> f3898_0_transfer_GE(x389:0, x390:0, x391:0, x378:0 + 1, x383:0, x384:0, x388:0, x385:0) :|: x388:0 - 1 >= x382:0 && x385:0 > -1 && x389:0 <= x376:0 && x390:0 + 3 <= x376:0 && x390:0 <= x377:0 && x390:0 - 1 <= x379:0 && x390:0 + 1 <= x380:0 && x390:0 <= x381:0 && x391:0 + 3 <= x376:0 && x391:0 <= x377:0 && x391:0 - 1 <= x379:0 && x391:0 + 1 <= x380:0 && x391:0 <= x381:0 && x376:0 > 3 && x377:0 > 0 && x379:0 > -1 && x380:0 > 1 && x381:0 > 0 && x389:0 > 3 && x390:0 > 0 && x391:0 > 0 && x383:0 + 3 <= x376:0 && x384:0 + 3 <= x376:0 && x387:0 + 2 <= x380:0 && x386:0 + 2 <= x380:0 f3993_0_transfer_ArrayAccess(x324:0, x325:0, x326:0, x327:0, x328:0, x329:0, x330:0, x331:0, x332:0, x333:0, x334:0, x335:0, x336:0) -> f3993_0_transfer_ArrayAccess(x337:0, x338:0, x326:0, x340:0, x341:0, x342:0, x343:0, x331:0, x332:0, x333:0, x347:0, x348:0, x336:0) :|: x336:0 > 0 && x336:0 - 1 >= x330:0 && x337:0 <= x324:0 && x338:0 + 3 <= x324:0 && x338:0 <= x325:0 && x338:0 <= x327:0 && x338:0 + 2 <= x328:0 && x338:0 <= x329:0 && x340:0 + 1 <= x327:0 && x340:0 + 3 <= x328:0 && x341:0 <= x327:0 && x341:0 + 2 <= x328:0 && x342:0 + 3 <= x324:0 && x342:0 <= x325:0 && x342:0 <= x327:0 && x342:0 + 2 <= x328:0 && x342:0 <= x329:0 && x324:0 > 3 && x325:0 > 0 && x327:0 > 0 && x328:0 > 2 && x329:0 > 0 && x337:0 > 3 && x338:0 > 0 && x340:0 > -1 && x341:0 > 0 && x342:0 > 0 && x331:0 + 3 <= x324:0 && x332:0 + 3 <= x324:0 && x347:0 + 2 <= x327:0 && x348:0 + 2 <= x327:0 && x334:0 + 2 <= x328:0 && x347:0 + 4 <= x328:0 && x335:0 + 2 <= x328:0 && x348:0 + 4 <= x328:0 ---------------------------------------- (30) TempFilterProof (SOUND) Used the following sort dictionary for filtering: f3898_0_transfer_GE(INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, INTEGER, VARIABLE, INTEGER) f3993_0_transfer_ArrayAccess(INTEGER, INTEGER, VARIABLE, INTEGER, INTEGER, INTEGER, VARIABLE, INTEGER, INTEGER, VARIABLE, VARIABLE, VARIABLE, INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (31) Obligation: Rules: f3898_0_transfer_GE(x298:0, x299:0, x300:0, x301:0, x302:0, x303:0, x304:0, x305:0) -> f3993_0_transfer_ArrayAccess(x311:0, x312:0, x301:0, x314:0, x315:0, x316:0, x317:0, x302:0, x303:0, x305:0, x321:0, x322:0, x304:0) :|: x305:0 - 1 >= x301:0 && x304:0 > 0 && x311:0 <= x298:0 && x312:0 + 3 <= x298:0 && x312:0 <= x299:0 && x312:0 <= x300:0 && x316:0 + 3 <= x298:0 && x316:0 <= x299:0 && x316:0 <= x300:0 && x298:0 > 3 && x299:0 > 0 && x300:0 > 0 && x311:0 > 3 && x312:0 > 0 && x314:0 > -1 && x315:0 > 0 && x316:0 > 0 && x303:0 + 3 <= x298:0 && x302:0 + 3 <= x298:0 f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, c, x354:0, x355:0, x356:0, x357:0) :|: c = x353:0 + 1 && (x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0) f3993_0_transfer_ArrayAccess(x376:0, x377:0, x378:0, x379:0, x380:0, x381:0, x382:0, x383:0, x384:0, x385:0, x386:0, x387:0, x388:0) -> f3898_0_transfer_GE(x389:0, x390:0, x391:0, c1, x383:0, x384:0, x388:0, x385:0) :|: c1 = x378:0 + 1 && (x388:0 - 1 >= x382:0 && x385:0 > -1 && x389:0 <= x376:0 && x390:0 + 3 <= x376:0 && x390:0 <= x377:0 && x390:0 - 1 <= x379:0 && x390:0 + 1 <= x380:0 && x390:0 <= x381:0 && x391:0 + 3 <= x376:0 && x391:0 <= x377:0 && x391:0 - 1 <= x379:0 && x391:0 + 1 <= x380:0 && x391:0 <= x381:0 && x376:0 > 3 && x377:0 > 0 && x379:0 > -1 && x380:0 > 1 && x381:0 > 0 && x389:0 > 3 && x390:0 > 0 && x391:0 > 0 && x383:0 + 3 <= x376:0 && x384:0 + 3 <= x376:0 && x387:0 + 2 <= x380:0 && x386:0 + 2 <= x380:0) f3993_0_transfer_ArrayAccess(x324:0, x325:0, x326:0, x327:0, x328:0, x329:0, x330:0, x331:0, x332:0, x333:0, x334:0, x335:0, x336:0) -> f3993_0_transfer_ArrayAccess(x337:0, x338:0, x326:0, x340:0, x341:0, x342:0, x343:0, x331:0, x332:0, x333:0, x347:0, x348:0, x336:0) :|: x336:0 > 0 && x336:0 - 1 >= x330:0 && x337:0 <= x324:0 && x338:0 + 3 <= x324:0 && x338:0 <= x325:0 && x338:0 <= x327:0 && x338:0 + 2 <= x328:0 && x338:0 <= x329:0 && x340:0 + 1 <= x327:0 && x340:0 + 3 <= x328:0 && x341:0 <= x327:0 && x341:0 + 2 <= x328:0 && x342:0 + 3 <= x324:0 && x342:0 <= x325:0 && x342:0 <= x327:0 && x342:0 + 2 <= x328:0 && x342:0 <= x329:0 && x324:0 > 3 && x325:0 > 0 && x327:0 > 0 && x328:0 > 2 && x329:0 > 0 && x337:0 > 3 && x338:0 > 0 && x340:0 > -1 && x341:0 > 0 && x342:0 > 0 && x331:0 + 3 <= x324:0 && x332:0 + 3 <= x324:0 && x347:0 + 2 <= x327:0 && x348:0 + 2 <= x327:0 && x334:0 + 2 <= x328:0 && x347:0 + 4 <= x328:0 && x335:0 + 2 <= x328:0 && x348:0 + 4 <= x328:0 ---------------------------------------- (32) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f3898_0_transfer_GE ] = 2*f3898_0_transfer_GE_8 + -2*f3898_0_transfer_GE_4 + 2*f3898_0_transfer_GE_7 + 1 [ f3993_0_transfer_ArrayAccess ] = -2*f3993_0_transfer_ArrayAccess_3 + 2*f3993_0_transfer_ArrayAccess_10 + 2*f3993_0_transfer_ArrayAccess_13 The following rules are decreasing: f3898_0_transfer_GE(x298:0, x299:0, x300:0, x301:0, x302:0, x303:0, x304:0, x305:0) -> f3993_0_transfer_ArrayAccess(x311:0, x312:0, x301:0, x314:0, x315:0, x316:0, x317:0, x302:0, x303:0, x305:0, x321:0, x322:0, x304:0) :|: x305:0 - 1 >= x301:0 && x304:0 > 0 && x311:0 <= x298:0 && x312:0 + 3 <= x298:0 && x312:0 <= x299:0 && x312:0 <= x300:0 && x316:0 + 3 <= x298:0 && x316:0 <= x299:0 && x316:0 <= x300:0 && x298:0 > 3 && x299:0 > 0 && x300:0 > 0 && x311:0 > 3 && x312:0 > 0 && x314:0 > -1 && x315:0 > 0 && x316:0 > 0 && x303:0 + 3 <= x298:0 && x302:0 + 3 <= x298:0 f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, c, x354:0, x355:0, x356:0, x357:0) :|: c = x353:0 + 1 && (x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0) f3993_0_transfer_ArrayAccess(x376:0, x377:0, x378:0, x379:0, x380:0, x381:0, x382:0, x383:0, x384:0, x385:0, x386:0, x387:0, x388:0) -> f3898_0_transfer_GE(x389:0, x390:0, x391:0, c1, x383:0, x384:0, x388:0, x385:0) :|: c1 = x378:0 + 1 && (x388:0 - 1 >= x382:0 && x385:0 > -1 && x389:0 <= x376:0 && x390:0 + 3 <= x376:0 && x390:0 <= x377:0 && x390:0 - 1 <= x379:0 && x390:0 + 1 <= x380:0 && x390:0 <= x381:0 && x391:0 + 3 <= x376:0 && x391:0 <= x377:0 && x391:0 - 1 <= x379:0 && x391:0 + 1 <= x380:0 && x391:0 <= x381:0 && x376:0 > 3 && x377:0 > 0 && x379:0 > -1 && x380:0 > 1 && x381:0 > 0 && x389:0 > 3 && x390:0 > 0 && x391:0 > 0 && x383:0 + 3 <= x376:0 && x384:0 + 3 <= x376:0 && x387:0 + 2 <= x380:0 && x386:0 + 2 <= x380:0) The following rules are bounded: f3898_0_transfer_GE(x298:0, x299:0, x300:0, x301:0, x302:0, x303:0, x304:0, x305:0) -> f3993_0_transfer_ArrayAccess(x311:0, x312:0, x301:0, x314:0, x315:0, x316:0, x317:0, x302:0, x303:0, x305:0, x321:0, x322:0, x304:0) :|: x305:0 - 1 >= x301:0 && x304:0 > 0 && x311:0 <= x298:0 && x312:0 + 3 <= x298:0 && x312:0 <= x299:0 && x312:0 <= x300:0 && x316:0 + 3 <= x298:0 && x316:0 <= x299:0 && x316:0 <= x300:0 && x298:0 > 3 && x299:0 > 0 && x300:0 > 0 && x311:0 > 3 && x312:0 > 0 && x314:0 > -1 && x315:0 > 0 && x316:0 > 0 && x303:0 + 3 <= x298:0 && x302:0 + 3 <= x298:0 ---------------------------------------- (33) Obligation: Rules: f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, c, x354:0, x355:0, x356:0, x357:0) :|: c = x353:0 + 1 && (x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0) f3993_0_transfer_ArrayAccess(x376:0, x377:0, x378:0, x379:0, x380:0, x381:0, x382:0, x383:0, x384:0, x385:0, x386:0, x387:0, x388:0) -> f3898_0_transfer_GE(x389:0, x390:0, x391:0, c1, x383:0, x384:0, x388:0, x385:0) :|: c1 = x378:0 + 1 && (x388:0 - 1 >= x382:0 && x385:0 > -1 && x389:0 <= x376:0 && x390:0 + 3 <= x376:0 && x390:0 <= x377:0 && x390:0 - 1 <= x379:0 && x390:0 + 1 <= x380:0 && x390:0 <= x381:0 && x391:0 + 3 <= x376:0 && x391:0 <= x377:0 && x391:0 - 1 <= x379:0 && x391:0 + 1 <= x380:0 && x391:0 <= x381:0 && x376:0 > 3 && x377:0 > 0 && x379:0 > -1 && x380:0 > 1 && x381:0 > 0 && x389:0 > 3 && x390:0 > 0 && x391:0 > 0 && x383:0 + 3 <= x376:0 && x384:0 + 3 <= x376:0 && x387:0 + 2 <= x380:0 && x386:0 + 2 <= x380:0) f3993_0_transfer_ArrayAccess(x324:0, x325:0, x326:0, x327:0, x328:0, x329:0, x330:0, x331:0, x332:0, x333:0, x334:0, x335:0, x336:0) -> f3993_0_transfer_ArrayAccess(x337:0, x338:0, x326:0, x340:0, x341:0, x342:0, x343:0, x331:0, x332:0, x333:0, x347:0, x348:0, x336:0) :|: x336:0 > 0 && x336:0 - 1 >= x330:0 && x337:0 <= x324:0 && x338:0 + 3 <= x324:0 && x338:0 <= x325:0 && x338:0 <= x327:0 && x338:0 + 2 <= x328:0 && x338:0 <= x329:0 && x340:0 + 1 <= x327:0 && x340:0 + 3 <= x328:0 && x341:0 <= x327:0 && x341:0 + 2 <= x328:0 && x342:0 + 3 <= x324:0 && x342:0 <= x325:0 && x342:0 <= x327:0 && x342:0 + 2 <= x328:0 && x342:0 <= x329:0 && x324:0 > 3 && x325:0 > 0 && x327:0 > 0 && x328:0 > 2 && x329:0 > 0 && x337:0 > 3 && x338:0 > 0 && x340:0 > -1 && x341:0 > 0 && x342:0 > 0 && x331:0 + 3 <= x324:0 && x332:0 + 3 <= x324:0 && x347:0 + 2 <= x327:0 && x348:0 + 2 <= x327:0 && x334:0 + 2 <= x328:0 && x347:0 + 4 <= x328:0 && x335:0 + 2 <= x328:0 && x348:0 + 4 <= x328:0 ---------------------------------------- (34) RankingReductionPairProof (EQUIVALENT) Interpretation: [ f3898_0_transfer_GE ] = 0 [ f3993_0_transfer_ArrayAccess ] = f3993_0_transfer_ArrayAccess_4 + 1 The following rules are decreasing: f3993_0_transfer_ArrayAccess(x376:0, x377:0, x378:0, x379:0, x380:0, x381:0, x382:0, x383:0, x384:0, x385:0, x386:0, x387:0, x388:0) -> f3898_0_transfer_GE(x389:0, x390:0, x391:0, c1, x383:0, x384:0, x388:0, x385:0) :|: c1 = x378:0 + 1 && (x388:0 - 1 >= x382:0 && x385:0 > -1 && x389:0 <= x376:0 && x390:0 + 3 <= x376:0 && x390:0 <= x377:0 && x390:0 - 1 <= x379:0 && x390:0 + 1 <= x380:0 && x390:0 <= x381:0 && x391:0 + 3 <= x376:0 && x391:0 <= x377:0 && x391:0 - 1 <= x379:0 && x391:0 + 1 <= x380:0 && x391:0 <= x381:0 && x376:0 > 3 && x377:0 > 0 && x379:0 > -1 && x380:0 > 1 && x381:0 > 0 && x389:0 > 3 && x390:0 > 0 && x391:0 > 0 && x383:0 + 3 <= x376:0 && x384:0 + 3 <= x376:0 && x387:0 + 2 <= x380:0 && x386:0 + 2 <= x380:0) f3993_0_transfer_ArrayAccess(x324:0, x325:0, x326:0, x327:0, x328:0, x329:0, x330:0, x331:0, x332:0, x333:0, x334:0, x335:0, x336:0) -> f3993_0_transfer_ArrayAccess(x337:0, x338:0, x326:0, x340:0, x341:0, x342:0, x343:0, x331:0, x332:0, x333:0, x347:0, x348:0, x336:0) :|: x336:0 > 0 && x336:0 - 1 >= x330:0 && x337:0 <= x324:0 && x338:0 + 3 <= x324:0 && x338:0 <= x325:0 && x338:0 <= x327:0 && x338:0 + 2 <= x328:0 && x338:0 <= x329:0 && x340:0 + 1 <= x327:0 && x340:0 + 3 <= x328:0 && x341:0 <= x327:0 && x341:0 + 2 <= x328:0 && x342:0 + 3 <= x324:0 && x342:0 <= x325:0 && x342:0 <= x327:0 && x342:0 + 2 <= x328:0 && x342:0 <= x329:0 && x324:0 > 3 && x325:0 > 0 && x327:0 > 0 && x328:0 > 2 && x329:0 > 0 && x337:0 > 3 && x338:0 > 0 && x340:0 > -1 && x341:0 > 0 && x342:0 > 0 && x331:0 + 3 <= x324:0 && x332:0 + 3 <= x324:0 && x347:0 + 2 <= x327:0 && x348:0 + 2 <= x327:0 && x334:0 + 2 <= x328:0 && x347:0 + 4 <= x328:0 && x335:0 + 2 <= x328:0 && x348:0 + 4 <= x328:0 The following rules are bounded: f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, c, x354:0, x355:0, x356:0, x357:0) :|: c = x353:0 + 1 && (x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0) f3993_0_transfer_ArrayAccess(x376:0, x377:0, x378:0, x379:0, x380:0, x381:0, x382:0, x383:0, x384:0, x385:0, x386:0, x387:0, x388:0) -> f3898_0_transfer_GE(x389:0, x390:0, x391:0, c1, x383:0, x384:0, x388:0, x385:0) :|: c1 = x378:0 + 1 && (x388:0 - 1 >= x382:0 && x385:0 > -1 && x389:0 <= x376:0 && x390:0 + 3 <= x376:0 && x390:0 <= x377:0 && x390:0 - 1 <= x379:0 && x390:0 + 1 <= x380:0 && x390:0 <= x381:0 && x391:0 + 3 <= x376:0 && x391:0 <= x377:0 && x391:0 - 1 <= x379:0 && x391:0 + 1 <= x380:0 && x391:0 <= x381:0 && x376:0 > 3 && x377:0 > 0 && x379:0 > -1 && x380:0 > 1 && x381:0 > 0 && x389:0 > 3 && x390:0 > 0 && x391:0 > 0 && x383:0 + 3 <= x376:0 && x384:0 + 3 <= x376:0 && x387:0 + 2 <= x380:0 && x386:0 + 2 <= x380:0) f3993_0_transfer_ArrayAccess(x324:0, x325:0, x326:0, x327:0, x328:0, x329:0, x330:0, x331:0, x332:0, x333:0, x334:0, x335:0, x336:0) -> f3993_0_transfer_ArrayAccess(x337:0, x338:0, x326:0, x340:0, x341:0, x342:0, x343:0, x331:0, x332:0, x333:0, x347:0, x348:0, x336:0) :|: x336:0 > 0 && x336:0 - 1 >= x330:0 && x337:0 <= x324:0 && x338:0 + 3 <= x324:0 && x338:0 <= x325:0 && x338:0 <= x327:0 && x338:0 + 2 <= x328:0 && x338:0 <= x329:0 && x340:0 + 1 <= x327:0 && x340:0 + 3 <= x328:0 && x341:0 <= x327:0 && x341:0 + 2 <= x328:0 && x342:0 + 3 <= x324:0 && x342:0 <= x325:0 && x342:0 <= x327:0 && x342:0 + 2 <= x328:0 && x342:0 <= x329:0 && x324:0 > 3 && x325:0 > 0 && x327:0 > 0 && x328:0 > 2 && x329:0 > 0 && x337:0 > 3 && x338:0 > 0 && x340:0 > -1 && x341:0 > 0 && x342:0 > 0 && x331:0 + 3 <= x324:0 && x332:0 + 3 <= x324:0 && x347:0 + 2 <= x327:0 && x348:0 + 2 <= x327:0 && x334:0 + 2 <= x328:0 && x347:0 + 4 <= x328:0 && x335:0 + 2 <= x328:0 && x348:0 + 4 <= x328:0 ---------------------------------------- (35) Obligation: Rules: f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, c, x354:0, x355:0, x356:0, x357:0) :|: c = x353:0 + 1 && (x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0) ---------------------------------------- (36) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [f3898_0_transfer_GE(x, x1, x2, x3, x4, x5, x6, x7)] = -x3 + x7 The following rules are decreasing: f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, c, x354:0, x355:0, x356:0, x357:0) :|: c = x353:0 + 1 && (x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0) The following rules are bounded: f3898_0_transfer_GE(x350:0, x351:0, x352:0, x353:0, x354:0, x355:0, x356:0, x357:0) -> f3898_0_transfer_GE(x363:0, x364:0, x365:0, c, x354:0, x355:0, x356:0, x357:0) :|: c = x353:0 + 1 && (x357:0 - 1 >= x353:0 && x357:0 > -1 && x363:0 <= x350:0 && x364:0 + 3 <= x350:0 && x364:0 <= x351:0 && x364:0 <= x352:0 && x365:0 + 3 <= x350:0 && x365:0 <= x351:0 && x365:0 <= x352:0 && x350:0 > 3 && x351:0 > 0 && x352:0 > 0 && x363:0 > 3 && x364:0 > 0 && x365:0 > 0 && x355:0 + 3 <= x350:0 && x354:0 + 3 <= x350:0) ---------------------------------------- (37) YES