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, 5604 ms] (4) AND (5) IRSwT (6) IntTRSCompressionProof [EQUIVALENT, 0 ms] (7) IRSwT (8) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (9) IRSwT (10) TempFilterProof [SOUND, 21 ms] (11) IntTRS (12) PolynomialOrderProcessor [EQUIVALENT, 0 ms] (13) YES (14) IRSwT (15) IntTRSCompressionProof [EQUIVALENT, 0 ms] (16) IRSwT (17) IntTRSUnneededArgumentFilterProof [EQUIVALENT, 0 ms] (18) IRSwT (19) TempFilterProof [SOUND, 31 ms] (20) IntTRS (21) RankingReductionPairProof [EQUIVALENT, 0 ms] (22) YES ---------------------------------------- (0) Obligation: Rules: l0(Result_6HAT0, _HAT0, a_128HAT0, a_243HAT0, c_15HAT0, elem_16HAT0, head_9HAT0, i_8HAT0, k_296HAT0, len_246HAT0, len_48HAT0, length_7HAT0, lt_18HAT0, lt_19HAT0, lt_20HAT0, lt_21HAT0, prev_17HAT0, x_13HAT0, x_23HAT0, y_110HAT0, y_14HAT0, y_158HAT0, y_259HAT0, y_309HAT0, y_80HAT0) -> l1(Result_6HATpost, _HATpost, a_128HATpost, a_243HATpost, c_15HATpost, elem_16HATpost, head_9HATpost, i_8HATpost, k_296HATpost, len_246HATpost, len_48HATpost, length_7HATpost, lt_18HATpost, lt_19HATpost, lt_20HATpost, lt_21HATpost, prev_17HATpost, x_13HATpost, x_23HATpost, y_110HATpost, y_14HATpost, y_158HATpost, y_259HATpost, y_309HATpost, y_80HATpost) :|: 0 <= len_48HAT0 && -1 * i_8HAT0 + length_7HAT0 <= 0 && Result_6HATpost = head_9HAT0 && 0 <= len_48HAT0 && 0 <= len_48HAT0 && x_13HAT1 = Result_6HATpost && c_15HAT1 = x_13HAT1 && x_13HAT2 = 0 && 0 <= len_48HAT0 && y_14HAT1 = c_15HAT1 && lt_21HAT1 = y_80HAT0 && c_15HAT2 = lt_21HAT1 && lt_21HAT2 = lt_21HAT2 && elem_16HAT1 = x_13HAT2 && prev_17HAT1 = 0 && 0 <= -1 + len_48HAT0 && elem_16HAT1 <= 0 && 0 <= elem_16HAT1 && prev_17HAT1 <= 0 && 0 <= prev_17HAT1 && x_13HAT3 = y_14HAT1 && 0 <= -1 + len_48HAT0 && a_128HATpost = -2 + len_48HAT0 && y_14HAT2 = c_15HAT2 && lt_21HAT3 = y_110HAT0 && c_15HAT3 = lt_21HAT3 && lt_21HAT4 = lt_21HAT4 && elem_16HAT2 = x_13HAT3 && prev_17HAT2 = 0 && 0 <= a_128HATpost && lt_19HAT1 = lt_19HAT1 && lt_20HAT1 = lt_20HAT1 && 0 <= lt_19HAT1 - lt_20HAT1 && lt_19HATpost = lt_19HATpost && lt_20HATpost = lt_20HATpost && prev_17HAT2 <= 0 && 0 <= prev_17HAT2 && x_13HATpost = y_14HAT2 && 0 <= a_128HATpost && len_246HATpost = 1 && a_243HATpost = -1 + _HAT0 + a_128HATpost && y_14HATpost = c_15HAT3 && lt_21HAT5 = y_158HAT0 && c_15HATpost = lt_21HAT5 && lt_21HATpost = lt_21HATpost && elem_16HATpost = x_13HATpost && prev_17HATpost = 0 && _HAT0 = _HATpost && head_9HAT0 = head_9HATpost && i_8HAT0 = i_8HATpost && k_296HAT0 = k_296HATpost && len_48HAT0 = len_48HATpost && length_7HAT0 = length_7HATpost && lt_18HAT0 = lt_18HATpost && x_23HAT0 = x_23HATpost && y_110HAT0 = y_110HATpost && y_158HAT0 = y_158HATpost && y_259HAT0 = y_259HATpost && y_309HAT0 = y_309HATpost && y_80HAT0 = y_80HATpost l0(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24) -> l2(x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49) :|: x24 = x49 && x23 = x48 && x22 = x47 && x21 = x46 && x20 = x45 && x19 = x44 && x18 = x43 && x17 = x42 && x16 = x41 && x15 = x40 && x14 = x39 && x13 = x38 && x12 = x37 && x11 = x36 && x9 = x34 && x8 = x33 && x5 = x30 && x4 = x29 && x3 = x28 && x2 = x27 && x1 = x26 && x = x25 && x32 = 1 + x7 && x31 = x31 && 0 <= -1 - x7 + x11 && x35 = 1 + x10 && 0 <= x10 l2(x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61, x62, x63, x64, x65, x66, x67, x68, x69, x70, x71, x72, x73, x74) -> l0(x75, x76, x77, x78, x79, x80, x81, x82, x83, x84, x85, x86, x87, x88, x89, x90, x91, x92, x93, x94, x95, x96, x97, x98, x99) :|: x74 = x99 && x73 = x98 && x72 = x97 && x71 = x96 && x70 = x95 && x69 = x94 && x68 = x93 && x67 = x92 && x66 = x91 && x65 = x90 && x64 = x89 && x63 = x88 && x62 = x87 && x61 = x86 && x60 = x85 && x59 = x84 && x58 = x83 && x57 = x82 && x56 = x81 && x55 = x80 && x54 = x79 && x53 = x78 && x52 = x77 && x51 = x76 && x50 = x75 l3(x100, x101, x102, x103, x104, x105, x106, x107, x108, x109, x110, x111, x112, x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123, x124) -> l0(x125, x126, x127, x128, x129, x130, x131, x132, x133, x134, x135, x136, x137, x138, x139, x140, x141, x142, x143, x144, x145, x146, x147, x148, x149) :|: x150 = 0 && x136 = 17 && x142 = x118 && x151 = 0 && x152 = 0 && x135 = x152 && 0 <= -1 - x152 + x136 && x131 = x131 && x132 = 1 + x152 && x100 = x125 && x101 = x126 && x102 = x127 && x103 = x128 && x104 = x129 && x105 = x130 && x108 = x133 && x109 = x134 && x112 = x137 && x113 = x138 && x114 = x139 && x115 = x140 && x116 = x141 && x118 = x143 && x119 = x144 && x120 = x145 && x121 = x146 && x122 = x147 && x123 = x148 && x124 = x149 l1(x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177) -> l4(x178, x179, x180, x181, x182, x183, x184, x185, x186, x187, x188, x189, x190, x191, x192, x193, x194, x195, x196, x197, x198, x199, x200, x201, x202) :|: 0 <= x156 && 0 <= x162 && x186 = x162 && x203 = x203 && x204 = x204 && 0 <= x203 - x204 && x191 = x191 && x192 = x192 && x169 <= 0 && 0 <= x169 && x195 = x173 && x153 = x178 && x154 = x179 && x155 = x180 && x156 = x181 && x157 = x182 && x158 = x183 && x159 = x184 && x160 = x185 && x162 = x187 && x163 = x188 && x164 = x189 && x165 = x190 && x168 = x193 && x169 = x194 && x171 = x196 && x172 = x197 && x173 = x198 && x174 = x199 && x175 = x200 && x176 = x201 && x177 = x202 l1(x205, x206, x207, x208, x209, x210, x211, x212, x213, x214, x215, x216, x217, x218, x219, x220, x221, x222, x223, x224, x225, x226, x227, x228, x229) -> l5(x230, x231, x232, x233, x234, x235, x236, x237, x238, x239, x240, x241, x242, x243, x244, x245, x246, x247, x248, x249, x250, x251, x252, x253, x254) :|: 0 <= x208 && 0 <= x214 && x255 = x255 && x256 = x256 && 1 + x255 - x256 <= 0 && x243 = x243 && x244 = x244 && x246 = x210 && x257 = x227 && x235 = x257 && x242 = x242 && 0 <= x208 && 0 <= -1 + x214 && x205 = x230 && x206 = x231 && x207 = x232 && x208 = x233 && x209 = x234 && x211 = x236 && x212 = x237 && x213 = x238 && x214 = x239 && x215 = x240 && x216 = x241 && x220 = x245 && x222 = x247 && x223 = x248 && x224 = x249 && x225 = x250 && x226 = x251 && x227 = x252 && x228 = x253 && x229 = x254 l4(x258, x259, x260, x261, x262, x263, x264, x265, x266, x267, x268, x269, x270, x271, x272, x273, x274, x275, x276, x277, x278, x279, x280, x281, x282) -> l6(x283, x284, x285, x286, x287, x288, x289, x290, x291, x292, x293, x294, x295, x296, x297, x298, x299, x300, x301, x302, x303, x304, x305, x306, x307) :|: x282 = x307 && x281 = x306 && x280 = x305 && x279 = x304 && x278 = x303 && x277 = x302 && x276 = x301 && x275 = x300 && x274 = x299 && x273 = x298 && x272 = x297 && x271 = x296 && x270 = x295 && x269 = x294 && x268 = x293 && x267 = x292 && x266 = x291 && x265 = x290 && x264 = x289 && x263 = x288 && x262 = x287 && x261 = x286 && x260 = x285 && x259 = x284 && x283 = x283 && 0 <= x262 && x262 <= 0 && 0 <= x266 && 0 <= x261 l4(x308, x309, x310, x311, x312, x313, x314, x315, x316, x317, x318, x319, x320, x321, x322, x323, x324, x325, x326, x327, x328, x329, x330, x331, x332) -> l1(x333, x334, x335, x336, x337, x338, x339, x340, x341, x342, x343, x344, x345, x346, x347, x348, x349, x350, x351, x352, x353, x354, x355, x356, x357) :|: 0 <= x311 && 0 <= x316 && x342 = 1 + x316 && x336 = -1 + x311 && x353 = x312 && x358 = x331 && x337 = x358 && x348 = x348 && x338 = x325 && x349 = 0 && x308 = x333 && x309 = x334 && x310 = x335 && x314 = x339 && x315 = x340 && x316 = x341 && x318 = x343 && x319 = x344 && x320 = x345 && x321 = x346 && x322 = x347 && x325 = x350 && x326 = x351 && x327 = x352 && x329 = x354 && x330 = x355 && x331 = x356 && x332 = x357 l7(x359, x360, x361, x362, x363, x364, x365, x366, x367, x368, x369, x370, x371, x372, x373, x374, x375, x376, x377, x378, x379, x380, x381, x382, x383) -> l3(x384, x385, x386, x387, x388, x389, x390, x391, x392, x393, x394, x395, x396, x397, x398, x399, x400, x401, x402, x403, x404, x405, x406, x407, x408) :|: x383 = x408 && x382 = x407 && x381 = x406 && x380 = x405 && x379 = x404 && x378 = x403 && x377 = x402 && x376 = x401 && x375 = x400 && x374 = x399 && x373 = x398 && x372 = x397 && x371 = x396 && x370 = x395 && x369 = x394 && x368 = x393 && x367 = x392 && x366 = x391 && x365 = x390 && x364 = x389 && x363 = x388 && x362 = x387 && x361 = x386 && x360 = x385 && x359 = x384 Start term: l7(Result_6HAT0, _HAT0, a_128HAT0, a_243HAT0, c_15HAT0, elem_16HAT0, head_9HAT0, i_8HAT0, k_296HAT0, len_246HAT0, len_48HAT0, length_7HAT0, lt_18HAT0, lt_19HAT0, lt_20HAT0, lt_21HAT0, prev_17HAT0, x_13HAT0, x_23HAT0, y_110HAT0, y_14HAT0, y_158HAT0, y_259HAT0, y_309HAT0, y_80HAT0) ---------------------------------------- (1) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (2) Obligation: Rules: l0(Result_6HAT0, _HAT0, a_128HAT0, a_243HAT0, c_15HAT0, elem_16HAT0, head_9HAT0, i_8HAT0, k_296HAT0, len_246HAT0, len_48HAT0, length_7HAT0, lt_18HAT0, lt_19HAT0, lt_20HAT0, lt_21HAT0, prev_17HAT0, x_13HAT0, x_23HAT0, y_110HAT0, y_14HAT0, y_158HAT0, y_259HAT0, y_309HAT0, y_80HAT0) -> l1(Result_6HATpost, _HATpost, a_128HATpost, a_243HATpost, c_15HATpost, elem_16HATpost, head_9HATpost, i_8HATpost, k_296HATpost, len_246HATpost, len_48HATpost, length_7HATpost, lt_18HATpost, lt_19HATpost, lt_20HATpost, lt_21HATpost, prev_17HATpost, x_13HATpost, x_23HATpost, y_110HATpost, y_14HATpost, y_158HATpost, y_259HATpost, y_309HATpost, y_80HATpost) :|: 0 <= len_48HAT0 && -1 * i_8HAT0 + length_7HAT0 <= 0 && Result_6HATpost = head_9HAT0 && 0 <= len_48HAT0 && 0 <= len_48HAT0 && x_13HAT1 = Result_6HATpost && c_15HAT1 = x_13HAT1 && x_13HAT2 = 0 && 0 <= len_48HAT0 && y_14HAT1 = c_15HAT1 && lt_21HAT1 = y_80HAT0 && c_15HAT2 = lt_21HAT1 && lt_21HAT2 = lt_21HAT2 && elem_16HAT1 = x_13HAT2 && prev_17HAT1 = 0 && 0 <= -1 + len_48HAT0 && elem_16HAT1 <= 0 && 0 <= elem_16HAT1 && prev_17HAT1 <= 0 && 0 <= prev_17HAT1 && x_13HAT3 = y_14HAT1 && 0 <= -1 + len_48HAT0 && a_128HATpost = -2 + len_48HAT0 && y_14HAT2 = c_15HAT2 && lt_21HAT3 = y_110HAT0 && c_15HAT3 = lt_21HAT3 && lt_21HAT4 = lt_21HAT4 && elem_16HAT2 = x_13HAT3 && prev_17HAT2 = 0 && 0 <= a_128HATpost && lt_19HAT1 = lt_19HAT1 && lt_20HAT1 = lt_20HAT1 && 0 <= lt_19HAT1 - lt_20HAT1 && lt_19HATpost = lt_19HATpost && lt_20HATpost = lt_20HATpost && prev_17HAT2 <= 0 && 0 <= prev_17HAT2 && x_13HATpost = y_14HAT2 && 0 <= a_128HATpost && len_246HATpost = 1 && a_243HATpost = -1 + _HAT0 + a_128HATpost && y_14HATpost = c_15HAT3 && lt_21HAT5 = y_158HAT0 && c_15HATpost = lt_21HAT5 && lt_21HATpost = lt_21HATpost && elem_16HATpost = x_13HATpost && prev_17HATpost = 0 && _HAT0 = _HATpost && head_9HAT0 = head_9HATpost && i_8HAT0 = i_8HATpost && k_296HAT0 = k_296HATpost && len_48HAT0 = len_48HATpost && length_7HAT0 = length_7HATpost && lt_18HAT0 = lt_18HATpost && x_23HAT0 = x_23HATpost && y_110HAT0 = y_110HATpost && y_158HAT0 = y_158HATpost && y_259HAT0 = y_259HATpost && y_309HAT0 = y_309HATpost && y_80HAT0 = y_80HATpost l0(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24) -> l2(x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49) :|: x24 = x49 && x23 = x48 && x22 = x47 && x21 = x46 && x20 = x45 && x19 = x44 && x18 = x43 && x17 = x42 && x16 = x41 && x15 = x40 && x14 = x39 && x13 = x38 && x12 = x37 && x11 = x36 && x9 = x34 && x8 = x33 && x5 = x30 && x4 = x29 && x3 = x28 && x2 = x27 && x1 = x26 && x = x25 && x32 = 1 + x7 && x31 = x31 && 0 <= -1 - x7 + x11 && x35 = 1 + x10 && 0 <= x10 l2(x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61, x62, x63, x64, x65, x66, x67, x68, x69, x70, x71, x72, x73, x74) -> l0(x75, x76, x77, x78, x79, x80, x81, x82, x83, x84, x85, x86, x87, x88, x89, x90, x91, x92, x93, x94, x95, x96, x97, x98, x99) :|: x74 = x99 && x73 = x98 && x72 = x97 && x71 = x96 && x70 = x95 && x69 = x94 && x68 = x93 && x67 = x92 && x66 = x91 && x65 = x90 && x64 = x89 && x63 = x88 && x62 = x87 && x61 = x86 && x60 = x85 && x59 = x84 && x58 = x83 && x57 = x82 && x56 = x81 && x55 = x80 && x54 = x79 && x53 = x78 && x52 = x77 && x51 = x76 && x50 = x75 l3(x100, x101, x102, x103, x104, x105, x106, x107, x108, x109, x110, x111, x112, x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123, x124) -> l0(x125, x126, x127, x128, x129, x130, x131, x132, x133, x134, x135, x136, x137, x138, x139, x140, x141, x142, x143, x144, x145, x146, x147, x148, x149) :|: x150 = 0 && x136 = 17 && x142 = x118 && x151 = 0 && x152 = 0 && x135 = x152 && 0 <= -1 - x152 + x136 && x131 = x131 && x132 = 1 + x152 && x100 = x125 && x101 = x126 && x102 = x127 && x103 = x128 && x104 = x129 && x105 = x130 && x108 = x133 && x109 = x134 && x112 = x137 && x113 = x138 && x114 = x139 && x115 = x140 && x116 = x141 && x118 = x143 && x119 = x144 && x120 = x145 && x121 = x146 && x122 = x147 && x123 = x148 && x124 = x149 l1(x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177) -> l4(x178, x179, x180, x181, x182, x183, x184, x185, x186, x187, x188, x189, x190, x191, x192, x193, x194, x195, x196, x197, x198, x199, x200, x201, x202) :|: 0 <= x156 && 0 <= x162 && x186 = x162 && x203 = x203 && x204 = x204 && 0 <= x203 - x204 && x191 = x191 && x192 = x192 && x169 <= 0 && 0 <= x169 && x195 = x173 && x153 = x178 && x154 = x179 && x155 = x180 && x156 = x181 && x157 = x182 && x158 = x183 && x159 = x184 && x160 = x185 && x162 = x187 && x163 = x188 && x164 = x189 && x165 = x190 && x168 = x193 && x169 = x194 && x171 = x196 && x172 = x197 && x173 = x198 && x174 = x199 && x175 = x200 && x176 = x201 && x177 = x202 l1(x205, x206, x207, x208, x209, x210, x211, x212, x213, x214, x215, x216, x217, x218, x219, x220, x221, x222, x223, x224, x225, x226, x227, x228, x229) -> l5(x230, x231, x232, x233, x234, x235, x236, x237, x238, x239, x240, x241, x242, x243, x244, x245, x246, x247, x248, x249, x250, x251, x252, x253, x254) :|: 0 <= x208 && 0 <= x214 && x255 = x255 && x256 = x256 && 1 + x255 - x256 <= 0 && x243 = x243 && x244 = x244 && x246 = x210 && x257 = x227 && x235 = x257 && x242 = x242 && 0 <= x208 && 0 <= -1 + x214 && x205 = x230 && x206 = x231 && x207 = x232 && x208 = x233 && x209 = x234 && x211 = x236 && x212 = x237 && x213 = x238 && x214 = x239 && x215 = x240 && x216 = x241 && x220 = x245 && x222 = x247 && x223 = x248 && x224 = x249 && x225 = x250 && x226 = x251 && x227 = x252 && x228 = x253 && x229 = x254 l4(x258, x259, x260, x261, x262, x263, x264, x265, x266, x267, x268, x269, x270, x271, x272, x273, x274, x275, x276, x277, x278, x279, x280, x281, x282) -> l6(x283, x284, x285, x286, x287, x288, x289, x290, x291, x292, x293, x294, x295, x296, x297, x298, x299, x300, x301, x302, x303, x304, x305, x306, x307) :|: x282 = x307 && x281 = x306 && x280 = x305 && x279 = x304 && x278 = x303 && x277 = x302 && x276 = x301 && x275 = x300 && x274 = x299 && x273 = x298 && x272 = x297 && x271 = x296 && x270 = x295 && x269 = x294 && x268 = x293 && x267 = x292 && x266 = x291 && x265 = x290 && x264 = x289 && x263 = x288 && x262 = x287 && x261 = x286 && x260 = x285 && x259 = x284 && x283 = x283 && 0 <= x262 && x262 <= 0 && 0 <= x266 && 0 <= x261 l4(x308, x309, x310, x311, x312, x313, x314, x315, x316, x317, x318, x319, x320, x321, x322, x323, x324, x325, x326, x327, x328, x329, x330, x331, x332) -> l1(x333, x334, x335, x336, x337, x338, x339, x340, x341, x342, x343, x344, x345, x346, x347, x348, x349, x350, x351, x352, x353, x354, x355, x356, x357) :|: 0 <= x311 && 0 <= x316 && x342 = 1 + x316 && x336 = -1 + x311 && x353 = x312 && x358 = x331 && x337 = x358 && x348 = x348 && x338 = x325 && x349 = 0 && x308 = x333 && x309 = x334 && x310 = x335 && x314 = x339 && x315 = x340 && x316 = x341 && x318 = x343 && x319 = x344 && x320 = x345 && x321 = x346 && x322 = x347 && x325 = x350 && x326 = x351 && x327 = x352 && x329 = x354 && x330 = x355 && x331 = x356 && x332 = x357 l7(x359, x360, x361, x362, x363, x364, x365, x366, x367, x368, x369, x370, x371, x372, x373, x374, x375, x376, x377, x378, x379, x380, x381, x382, x383) -> l3(x384, x385, x386, x387, x388, x389, x390, x391, x392, x393, x394, x395, x396, x397, x398, x399, x400, x401, x402, x403, x404, x405, x406, x407, x408) :|: x383 = x408 && x382 = x407 && x381 = x406 && x380 = x405 && x379 = x404 && x378 = x403 && x377 = x402 && x376 = x401 && x375 = x400 && x374 = x399 && x373 = x398 && x372 = x397 && x371 = x396 && x370 = x395 && x369 = x394 && x368 = x393 && x367 = x392 && x366 = x391 && x365 = x390 && x364 = x389 && x363 = x388 && x362 = x387 && x361 = x386 && x360 = x385 && x359 = x384 Start term: l7(Result_6HAT0, _HAT0, a_128HAT0, a_243HAT0, c_15HAT0, elem_16HAT0, head_9HAT0, i_8HAT0, k_296HAT0, len_246HAT0, len_48HAT0, length_7HAT0, lt_18HAT0, lt_19HAT0, lt_20HAT0, lt_21HAT0, prev_17HAT0, x_13HAT0, x_23HAT0, y_110HAT0, y_14HAT0, y_158HAT0, y_259HAT0, y_309HAT0, y_80HAT0) ---------------------------------------- (3) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) l0(Result_6HAT0, _HAT0, a_128HAT0, a_243HAT0, c_15HAT0, elem_16HAT0, head_9HAT0, i_8HAT0, k_296HAT0, len_246HAT0, len_48HAT0, length_7HAT0, lt_18HAT0, lt_19HAT0, lt_20HAT0, lt_21HAT0, prev_17HAT0, x_13HAT0, x_23HAT0, y_110HAT0, y_14HAT0, y_158HAT0, y_259HAT0, y_309HAT0, y_80HAT0) -> l1(Result_6HATpost, _HATpost, a_128HATpost, a_243HATpost, c_15HATpost, elem_16HATpost, head_9HATpost, i_8HATpost, k_296HATpost, len_246HATpost, len_48HATpost, length_7HATpost, lt_18HATpost, lt_19HATpost, lt_20HATpost, lt_21HATpost, prev_17HATpost, x_13HATpost, x_23HATpost, y_110HATpost, y_14HATpost, y_158HATpost, y_259HATpost, y_309HATpost, y_80HATpost) :|: 0 <= len_48HAT0 && -1 * i_8HAT0 + length_7HAT0 <= 0 && Result_6HATpost = head_9HAT0 && 0 <= len_48HAT0 && 0 <= len_48HAT0 && x_13HAT1 = Result_6HATpost && c_15HAT1 = x_13HAT1 && x_13HAT2 = 0 && 0 <= len_48HAT0 && y_14HAT1 = c_15HAT1 && lt_21HAT1 = y_80HAT0 && c_15HAT2 = lt_21HAT1 && lt_21HAT2 = lt_21HAT2 && elem_16HAT1 = x_13HAT2 && prev_17HAT1 = 0 && 0 <= -1 + len_48HAT0 && elem_16HAT1 <= 0 && 0 <= elem_16HAT1 && prev_17HAT1 <= 0 && 0 <= prev_17HAT1 && x_13HAT3 = y_14HAT1 && 0 <= -1 + len_48HAT0 && a_128HATpost = -2 + len_48HAT0 && y_14HAT2 = c_15HAT2 && lt_21HAT3 = y_110HAT0 && c_15HAT3 = lt_21HAT3 && lt_21HAT4 = lt_21HAT4 && elem_16HAT2 = x_13HAT3 && prev_17HAT2 = 0 && 0 <= a_128HATpost && lt_19HAT1 = lt_19HAT1 && lt_20HAT1 = lt_20HAT1 && 0 <= lt_19HAT1 - lt_20HAT1 && lt_19HATpost = lt_19HATpost && lt_20HATpost = lt_20HATpost && prev_17HAT2 <= 0 && 0 <= prev_17HAT2 && x_13HATpost = y_14HAT2 && 0 <= a_128HATpost && len_246HATpost = 1 && a_243HATpost = -1 + _HAT0 + a_128HATpost && y_14HATpost = c_15HAT3 && lt_21HAT5 = y_158HAT0 && c_15HATpost = lt_21HAT5 && lt_21HATpost = lt_21HATpost && elem_16HATpost = x_13HATpost && prev_17HATpost = 0 && _HAT0 = _HATpost && head_9HAT0 = head_9HATpost && i_8HAT0 = i_8HATpost && k_296HAT0 = k_296HATpost && len_48HAT0 = len_48HATpost && length_7HAT0 = length_7HATpost && lt_18HAT0 = lt_18HATpost && x_23HAT0 = x_23HATpost && y_110HAT0 = y_110HATpost && y_158HAT0 = y_158HATpost && y_259HAT0 = y_259HATpost && y_309HAT0 = y_309HATpost && y_80HAT0 = y_80HATpost (2) l0(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24) -> l2(x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49) :|: x24 = x49 && x23 = x48 && x22 = x47 && x21 = x46 && x20 = x45 && x19 = x44 && x18 = x43 && x17 = x42 && x16 = x41 && x15 = x40 && x14 = x39 && x13 = x38 && x12 = x37 && x11 = x36 && x9 = x34 && x8 = x33 && x5 = x30 && x4 = x29 && x3 = x28 && x2 = x27 && x1 = x26 && x = x25 && x32 = 1 + x7 && x31 = x31 && 0 <= -1 - x7 + x11 && x35 = 1 + x10 && 0 <= x10 (3) l2(x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61, x62, x63, x64, x65, x66, x67, x68, x69, x70, x71, x72, x73, x74) -> l0(x75, x76, x77, x78, x79, x80, x81, x82, x83, x84, x85, x86, x87, x88, x89, x90, x91, x92, x93, x94, x95, x96, x97, x98, x99) :|: x74 = x99 && x73 = x98 && x72 = x97 && x71 = x96 && x70 = x95 && x69 = x94 && x68 = x93 && x67 = x92 && x66 = x91 && x65 = x90 && x64 = x89 && x63 = x88 && x62 = x87 && x61 = x86 && x60 = x85 && x59 = x84 && x58 = x83 && x57 = x82 && x56 = x81 && x55 = x80 && x54 = x79 && x53 = x78 && x52 = x77 && x51 = x76 && x50 = x75 (4) l3(x100, x101, x102, x103, x104, x105, x106, x107, x108, x109, x110, x111, x112, x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123, x124) -> l0(x125, x126, x127, x128, x129, x130, x131, x132, x133, x134, x135, x136, x137, x138, x139, x140, x141, x142, x143, x144, x145, x146, x147, x148, x149) :|: x150 = 0 && x136 = 17 && x142 = x118 && x151 = 0 && x152 = 0 && x135 = x152 && 0 <= -1 - x152 + x136 && x131 = x131 && x132 = 1 + x152 && x100 = x125 && x101 = x126 && x102 = x127 && x103 = x128 && x104 = x129 && x105 = x130 && x108 = x133 && x109 = x134 && x112 = x137 && x113 = x138 && x114 = x139 && x115 = x140 && x116 = x141 && x118 = x143 && x119 = x144 && x120 = x145 && x121 = x146 && x122 = x147 && x123 = x148 && x124 = x149 (5) l1(x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177) -> l4(x178, x179, x180, x181, x182, x183, x184, x185, x186, x187, x188, x189, x190, x191, x192, x193, x194, x195, x196, x197, x198, x199, x200, x201, x202) :|: 0 <= x156 && 0 <= x162 && x186 = x162 && x203 = x203 && x204 = x204 && 0 <= x203 - x204 && x191 = x191 && x192 = x192 && x169 <= 0 && 0 <= x169 && x195 = x173 && x153 = x178 && x154 = x179 && x155 = x180 && x156 = x181 && x157 = x182 && x158 = x183 && x159 = x184 && x160 = x185 && x162 = x187 && x163 = x188 && x164 = x189 && x165 = x190 && x168 = x193 && x169 = x194 && x171 = x196 && x172 = x197 && x173 = x198 && x174 = x199 && x175 = x200 && x176 = x201 && x177 = x202 (6) l1(x205, x206, x207, x208, x209, x210, x211, x212, x213, x214, x215, x216, x217, x218, x219, x220, x221, x222, x223, x224, x225, x226, x227, x228, x229) -> l5(x230, x231, x232, x233, x234, x235, x236, x237, x238, x239, x240, x241, x242, x243, x244, x245, x246, x247, x248, x249, x250, x251, x252, x253, x254) :|: 0 <= x208 && 0 <= x214 && x255 = x255 && x256 = x256 && 1 + x255 - x256 <= 0 && x243 = x243 && x244 = x244 && x246 = x210 && x257 = x227 && x235 = x257 && x242 = x242 && 0 <= x208 && 0 <= -1 + x214 && x205 = x230 && x206 = x231 && x207 = x232 && x208 = x233 && x209 = x234 && x211 = x236 && x212 = x237 && x213 = x238 && x214 = x239 && x215 = x240 && x216 = x241 && x220 = x245 && x222 = x247 && x223 = x248 && x224 = x249 && x225 = x250 && x226 = x251 && x227 = x252 && x228 = x253 && x229 = x254 (7) l4(x258, x259, x260, x261, x262, x263, x264, x265, x266, x267, x268, x269, x270, x271, x272, x273, x274, x275, x276, x277, x278, x279, x280, x281, x282) -> l6(x283, x284, x285, x286, x287, x288, x289, x290, x291, x292, x293, x294, x295, x296, x297, x298, x299, x300, x301, x302, x303, x304, x305, x306, x307) :|: x282 = x307 && x281 = x306 && x280 = x305 && x279 = x304 && x278 = x303 && x277 = x302 && x276 = x301 && x275 = x300 && x274 = x299 && x273 = x298 && x272 = x297 && x271 = x296 && x270 = x295 && x269 = x294 && x268 = x293 && x267 = x292 && x266 = x291 && x265 = x290 && x264 = x289 && x263 = x288 && x262 = x287 && x261 = x286 && x260 = x285 && x259 = x284 && x283 = x283 && 0 <= x262 && x262 <= 0 && 0 <= x266 && 0 <= x261 (8) l4(x308, x309, x310, x311, x312, x313, x314, x315, x316, x317, x318, x319, x320, x321, x322, x323, x324, x325, x326, x327, x328, x329, x330, x331, x332) -> l1(x333, x334, x335, x336, x337, x338, x339, x340, x341, x342, x343, x344, x345, x346, x347, x348, x349, x350, x351, x352, x353, x354, x355, x356, x357) :|: 0 <= x311 && 0 <= x316 && x342 = 1 + x316 && x336 = -1 + x311 && x353 = x312 && x358 = x331 && x337 = x358 && x348 = x348 && x338 = x325 && x349 = 0 && x308 = x333 && x309 = x334 && x310 = x335 && x314 = x339 && x315 = x340 && x316 = x341 && x318 = x343 && x319 = x344 && x320 = x345 && x321 = x346 && x322 = x347 && x325 = x350 && x326 = x351 && x327 = x352 && x329 = x354 && x330 = x355 && x331 = x356 && x332 = x357 (9) l7(x359, x360, x361, x362, x363, x364, x365, x366, x367, x368, x369, x370, x371, x372, x373, x374, x375, x376, x377, x378, x379, x380, x381, x382, x383) -> l3(x384, x385, x386, x387, x388, x389, x390, x391, x392, x393, x394, x395, x396, x397, x398, x399, x400, x401, x402, x403, x404, x405, x406, x407, x408) :|: x383 = x408 && x382 = x407 && x381 = x406 && x380 = x405 && x379 = x404 && x378 = x403 && x377 = x402 && x376 = x401 && x375 = x400 && x374 = x399 && x373 = x398 && x372 = x397 && x371 = x396 && x370 = x395 && x369 = x394 && x368 = x393 && x367 = x392 && x366 = x391 && x365 = x390 && x364 = x389 && x363 = x388 && x362 = x387 && x361 = x386 && x360 = x385 && x359 = x384 Arcs: (1) -> (5), (6) (2) -> (3) (3) -> (1), (2) (4) -> (2) (5) -> (7), (8) (8) -> (5), (6) (9) -> (4) This digraph is fully evaluated! ---------------------------------------- (4) Complex Obligation (AND) ---------------------------------------- (5) Obligation: Termination digraph: Nodes: (1) l0(x, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24) -> l2(x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49) :|: x24 = x49 && x23 = x48 && x22 = x47 && x21 = x46 && x20 = x45 && x19 = x44 && x18 = x43 && x17 = x42 && x16 = x41 && x15 = x40 && x14 = x39 && x13 = x38 && x12 = x37 && x11 = x36 && x9 = x34 && x8 = x33 && x5 = x30 && x4 = x29 && x3 = x28 && x2 = x27 && x1 = x26 && x = x25 && x32 = 1 + x7 && x31 = x31 && 0 <= -1 - x7 + x11 && x35 = 1 + x10 && 0 <= x10 (2) l2(x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61, x62, x63, x64, x65, x66, x67, x68, x69, x70, x71, x72, x73, x74) -> l0(x75, x76, x77, x78, x79, x80, x81, x82, x83, x84, x85, x86, x87, x88, x89, x90, x91, x92, x93, x94, x95, x96, x97, x98, x99) :|: x74 = x99 && x73 = x98 && x72 = x97 && x71 = x96 && x70 = x95 && x69 = x94 && x68 = x93 && x67 = x92 && x66 = x91 && x65 = x90 && x64 = x89 && x63 = x88 && x62 = x87 && x61 = x86 && x60 = x85 && x59 = x84 && x58 = x83 && x57 = x82 && x56 = x81 && x55 = x80 && x54 = x79 && x53 = x78 && x52 = x77 && x51 = x76 && x50 = x75 Arcs: (1) -> (2) (2) -> (1) This digraph is fully evaluated! ---------------------------------------- (6) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (7) Obligation: Rules: l0(x25:0, x1:0, x27:0, x28:0, x29:0, x30:0, x6:0, x7:0, x33:0, x34:0, x10:0, x11:0, x12:0, x13:0, x14:0, x15:0, x16:0, x17:0, x18:0, x19:0, x20:0, x21:0, x22:0, x23:0, x24:0) -> l0(x25:0, x1:0, x27:0, x28:0, x29:0, x30:0, x31:0, 1 + x7:0, x33:0, x34:0, 1 + x10:0, x11:0, x12:0, x13:0, x14:0, x15:0, x16:0, x17:0, x18:0, x19:0, x20:0, x21:0, x22:0, x23:0, x24:0) :|: x10:0 > -1 && 0 <= -1 - x7:0 + x11:0 ---------------------------------------- (8) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: l0(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25) -> l0(x8, x11, x12) ---------------------------------------- (9) Obligation: Rules: l0(x7:0, x10:0, x11:0) -> l0(1 + x7:0, 1 + x10:0, x11:0) :|: x10:0 > -1 && 0 <= -1 - x7:0 + x11:0 ---------------------------------------- (10) TempFilterProof (SOUND) Used the following sort dictionary for filtering: l0(INTEGER, INTEGER, INTEGER) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (11) Obligation: Rules: l0(x7:0, x10:0, x11:0) -> l0(c, c1, x11:0) :|: c1 = 1 + x10:0 && c = 1 + x7:0 && (x10:0 > -1 && 0 <= -1 - x7:0 + x11:0) ---------------------------------------- (12) PolynomialOrderProcessor (EQUIVALENT) Found the following polynomial interpretation: [l0(x, x1, x2)] = -x + x2 The following rules are decreasing: l0(x7:0, x10:0, x11:0) -> l0(c, c1, x11:0) :|: c1 = 1 + x10:0 && c = 1 + x7:0 && (x10:0 > -1 && 0 <= -1 - x7:0 + x11:0) The following rules are bounded: l0(x7:0, x10:0, x11:0) -> l0(c, c1, x11:0) :|: c1 = 1 + x10:0 && c = 1 + x7:0 && (x10:0 > -1 && 0 <= -1 - x7:0 + x11:0) ---------------------------------------- (13) YES ---------------------------------------- (14) Obligation: Termination digraph: Nodes: (1) l1(x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177) -> l4(x178, x179, x180, x181, x182, x183, x184, x185, x186, x187, x188, x189, x190, x191, x192, x193, x194, x195, x196, x197, x198, x199, x200, x201, x202) :|: 0 <= x156 && 0 <= x162 && x186 = x162 && x203 = x203 && x204 = x204 && 0 <= x203 - x204 && x191 = x191 && x192 = x192 && x169 <= 0 && 0 <= x169 && x195 = x173 && x153 = x178 && x154 = x179 && x155 = x180 && x156 = x181 && x157 = x182 && x158 = x183 && x159 = x184 && x160 = x185 && x162 = x187 && x163 = x188 && x164 = x189 && x165 = x190 && x168 = x193 && x169 = x194 && x171 = x196 && x172 = x197 && x173 = x198 && x174 = x199 && x175 = x200 && x176 = x201 && x177 = x202 (2) l4(x308, x309, x310, x311, x312, x313, x314, x315, x316, x317, x318, x319, x320, x321, x322, x323, x324, x325, x326, x327, x328, x329, x330, x331, x332) -> l1(x333, x334, x335, x336, x337, x338, x339, x340, x341, x342, x343, x344, x345, x346, x347, x348, x349, x350, x351, x352, x353, x354, x355, x356, x357) :|: 0 <= x311 && 0 <= x316 && x342 = 1 + x316 && x336 = -1 + x311 && x353 = x312 && x358 = x331 && x337 = x358 && x348 = x348 && x338 = x325 && x349 = 0 && x308 = x333 && x309 = x334 && x310 = x335 && x314 = x339 && x315 = x340 && x316 = x341 && x318 = x343 && x319 = x344 && x320 = x345 && x321 = x346 && x322 = x347 && x325 = x350 && x326 = x351 && x327 = x352 && x329 = x354 && x330 = x355 && x331 = x356 && x332 = x357 Arcs: (1) -> (2) (2) -> (1) This digraph is fully evaluated! ---------------------------------------- (15) IntTRSCompressionProof (EQUIVALENT) Compressed rules. ---------------------------------------- (16) Obligation: Rules: l1(x153:0, x154:0, x155:0, x156:0, x157:0, x158:0, x159:0, x160:0, x161:0, x162:0, x163:0, x164:0, x165:0, x166:0, x167:0, x168:0, x169:0, x170:0, x171:0, x172:0, x173:0, x174:0, x175:0, x176:0, x177:0) -> l1(x153:0, x154:0, x155:0, -1 + x156:0, x176:0, x173:0, x159:0, x160:0, x162:0, 1 + x162:0, x163:0, x164:0, x165:0, x191:0, x192:0, x348:0, 0, x173:0, x171:0, x172:0, x157:0, x174:0, x175:0, x176:0, x177:0) :|: x169:0 < 1 && x169:0 > -1 && x203:0 - x204:0 >= 0 && x162:0 > -1 && x156:0 > -1 ---------------------------------------- (17) IntTRSUnneededArgumentFilterProof (EQUIVALENT) Some arguments are removed because they cannot influence termination. We removed arguments according to the following replacements: l1(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25) -> l1(x4, x10, x17) ---------------------------------------- (18) Obligation: Rules: l1(x156:0, x162:0, x169:0) -> l1(-1 + x156:0, 1 + x162:0, 0) :|: x169:0 < 1 && x169:0 > -1 && x203:0 - x204:0 >= 0 && x162:0 > -1 && x156:0 > -1 ---------------------------------------- (19) TempFilterProof (SOUND) Used the following sort dictionary for filtering: l1(INTEGER, INTEGER, VARIABLE) Replaced non-predefined constructor symbols by 0. ---------------------------------------- (20) Obligation: Rules: l1(x156:0, x162:0, x169:0) -> l1(c, c1, c2) :|: c2 = 0 && (c1 = 1 + x162:0 && c = -1 + x156:0) && (x169:0 < 1 && x169:0 > -1 && x203:0 - x204:0 >= 0 && x162:0 > -1 && x156:0 > -1) ---------------------------------------- (21) RankingReductionPairProof (EQUIVALENT) Interpretation: [ l1 ] = l1_1 The following rules are decreasing: l1(x156:0, x162:0, x169:0) -> l1(c, c1, c2) :|: c2 = 0 && (c1 = 1 + x162:0 && c = -1 + x156:0) && (x169:0 < 1 && x169:0 > -1 && x203:0 - x204:0 >= 0 && x162:0 > -1 && x156:0 > -1) The following rules are bounded: l1(x156:0, x162:0, x169:0) -> l1(c, c1, c2) :|: c2 = 0 && (c1 = 1 + x162:0 && c = -1 + x156:0) && (x169:0 < 1 && x169:0 > -1 && x203:0 - x204:0 >= 0 && x162:0 > -1 && x156:0 > -1) ---------------------------------------- (22) YES