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