0 Prolog
↳1 PrologToDTProblemTransformerProof (⇐)
↳2 TRIPLES
↳3 TriplesToPiDPProof (⇐)
↳4 PiDP
↳5 DependencyGraphProof (⇔)
↳6 AND
↳7 PiDP
↳8 PiDPToQDPProof (⇐)
↳9 QDP
↳10 QDPSizeChangeProof (⇔)
↳11 YES
↳12 PiDP
↳13 PiDPToQDPProof (⇐)
↳14 QDP
↳15 QDPSizeChangeProof (⇔)
↳16 YES
ACK1_IN_GGA(s(s(T20)), 0, T22) → U9_GGA(T20, T22, ack21_in_ga(T20, X40))
ACK1_IN_GGA(s(s(T20)), 0, T22) → ACK21_IN_GA(T20, X40)
ACK21_IN_GA(T30, X73) → U1_GA(T30, X73, ack27_in_ga(T30, X73))
ACK21_IN_GA(T30, X73) → ACK27_IN_GA(T30, X73)
ACK27_IN_GA(s(T34), X97) → U2_GA(T34, X97, ack21_in_ga(T34, X96))
ACK27_IN_GA(s(T34), X97) → ACK21_IN_GA(T34, X96)
ACK27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackc21_in_ga(T34, T36))
U3_GA(T34, X97, ackc21_out_ga(T34, T36)) → U4_GA(T34, X97, ack38_in_gga(T34, T36, X97))
U3_GA(T34, X97, ackc21_out_ga(T34, T36)) → ACK38_IN_GGA(T34, T36, X97)
ACK38_IN_GGA(s(T49), 0, X133) → U5_GGA(T49, X133, ack27_in_ga(T49, X133))
ACK38_IN_GGA(s(T49), 0, X133) → ACK27_IN_GA(T49, X133)
ACK38_IN_GGA(s(T54), s(T55), X151) → U6_GGA(T54, T55, X151, ack38_in_gga(s(T54), T55, X150))
ACK38_IN_GGA(s(T54), s(T55), X151) → ACK38_IN_GGA(s(T54), T55, X150)
ACK38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → U8_GGA(T54, T55, X151, ack38_in_gga(T54, T57, X151))
U7_GGA(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → ACK38_IN_GGA(T54, T57, X151)
ACK1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackc21_out_ga(T20, T24)) → U11_GGA(T20, T22, ack1_in_gga(T20, T24, T22))
U10_GGA(T20, T22, ackc21_out_ga(T20, T24)) → ACK1_IN_GGA(T20, T24, T22)
ACK1_IN_GGA(s(T76), s(0), T71) → U12_GGA(T76, T71, ack27_in_ga(T76, X200))
ACK1_IN_GGA(s(T76), s(0), T71) → ACK27_IN_GA(T76, X200)
ACK1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackc27_out_ga(T76, T77)) → U14_GGA(T76, T71, ack1_in_gga(T76, T77, T71))
U13_GGA(T76, T71, ackc27_out_ga(T76, T77)) → ACK1_IN_GGA(T76, T77, T71)
ACK1_IN_GGA(s(T84), s(s(T85)), T71) → U15_GGA(T84, T85, T71, ack38_in_gga(s(T84), T85, X221))
ACK1_IN_GGA(s(T84), s(s(T85)), T71) → ACK38_IN_GGA(s(T84), T85, X221)
ACK1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackc38_out_gga(s(T84), T85, T87)) → U17_GGA(T84, T85, T71, ack38_in_gga(T84, T87, X222))
U16_GGA(T84, T85, T71, ackc38_out_gga(s(T84), T85, T87)) → ACK38_IN_GGA(T84, T87, X222)
U16_GGA(T84, T85, T71, ackc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackc38_out_gga(T84, T87, T91)) → U19_GGA(T84, T85, T71, ack1_in_gga(T84, T91, T71))
U18_GGA(T84, T85, T71, ackc38_out_gga(T84, T87, T91)) → ACK1_IN_GGA(T84, T91, T71)
ackc21_in_ga(T30, X73) → U28_ga(T30, X73, ackc27_in_ga(T30, X73))
ackc27_in_ga(0, s(s(0))) → ackc27_out_ga(0, s(s(0)))
ackc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackc21_in_ga(T34, T36))
U29_ga(T34, X97, ackc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackc38_in_gga(T34, T36, X97))
ackc38_in_gga(0, T44, s(T44)) → ackc38_out_gga(0, T44, s(T44))
ackc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackc27_in_ga(T49, X133))
U31_gga(T49, X133, ackc27_out_ga(T49, X133)) → ackc38_out_gga(s(T49), 0, X133)
ackc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackc38_out_gga(T54, T57, X151)) → ackc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackc38_out_gga(T34, T36, X97)) → ackc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackc27_out_ga(T30, X73)) → ackc21_out_ga(T30, X73)
Infinitary Constructor Rewriting Termination of PiDP implies Termination of TRIPLES
ACK1_IN_GGA(s(s(T20)), 0, T22) → U9_GGA(T20, T22, ack21_in_ga(T20, X40))
ACK1_IN_GGA(s(s(T20)), 0, T22) → ACK21_IN_GA(T20, X40)
ACK21_IN_GA(T30, X73) → U1_GA(T30, X73, ack27_in_ga(T30, X73))
ACK21_IN_GA(T30, X73) → ACK27_IN_GA(T30, X73)
ACK27_IN_GA(s(T34), X97) → U2_GA(T34, X97, ack21_in_ga(T34, X96))
ACK27_IN_GA(s(T34), X97) → ACK21_IN_GA(T34, X96)
ACK27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackc21_in_ga(T34, T36))
U3_GA(T34, X97, ackc21_out_ga(T34, T36)) → U4_GA(T34, X97, ack38_in_gga(T34, T36, X97))
U3_GA(T34, X97, ackc21_out_ga(T34, T36)) → ACK38_IN_GGA(T34, T36, X97)
ACK38_IN_GGA(s(T49), 0, X133) → U5_GGA(T49, X133, ack27_in_ga(T49, X133))
ACK38_IN_GGA(s(T49), 0, X133) → ACK27_IN_GA(T49, X133)
ACK38_IN_GGA(s(T54), s(T55), X151) → U6_GGA(T54, T55, X151, ack38_in_gga(s(T54), T55, X150))
ACK38_IN_GGA(s(T54), s(T55), X151) → ACK38_IN_GGA(s(T54), T55, X150)
ACK38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → U8_GGA(T54, T55, X151, ack38_in_gga(T54, T57, X151))
U7_GGA(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → ACK38_IN_GGA(T54, T57, X151)
ACK1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackc21_out_ga(T20, T24)) → U11_GGA(T20, T22, ack1_in_gga(T20, T24, T22))
U10_GGA(T20, T22, ackc21_out_ga(T20, T24)) → ACK1_IN_GGA(T20, T24, T22)
ACK1_IN_GGA(s(T76), s(0), T71) → U12_GGA(T76, T71, ack27_in_ga(T76, X200))
ACK1_IN_GGA(s(T76), s(0), T71) → ACK27_IN_GA(T76, X200)
ACK1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackc27_out_ga(T76, T77)) → U14_GGA(T76, T71, ack1_in_gga(T76, T77, T71))
U13_GGA(T76, T71, ackc27_out_ga(T76, T77)) → ACK1_IN_GGA(T76, T77, T71)
ACK1_IN_GGA(s(T84), s(s(T85)), T71) → U15_GGA(T84, T85, T71, ack38_in_gga(s(T84), T85, X221))
ACK1_IN_GGA(s(T84), s(s(T85)), T71) → ACK38_IN_GGA(s(T84), T85, X221)
ACK1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackc38_out_gga(s(T84), T85, T87)) → U17_GGA(T84, T85, T71, ack38_in_gga(T84, T87, X222))
U16_GGA(T84, T85, T71, ackc38_out_gga(s(T84), T85, T87)) → ACK38_IN_GGA(T84, T87, X222)
U16_GGA(T84, T85, T71, ackc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackc38_out_gga(T84, T87, T91)) → U19_GGA(T84, T85, T71, ack1_in_gga(T84, T91, T71))
U18_GGA(T84, T85, T71, ackc38_out_gga(T84, T87, T91)) → ACK1_IN_GGA(T84, T91, T71)
ackc21_in_ga(T30, X73) → U28_ga(T30, X73, ackc27_in_ga(T30, X73))
ackc27_in_ga(0, s(s(0))) → ackc27_out_ga(0, s(s(0)))
ackc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackc21_in_ga(T34, T36))
U29_ga(T34, X97, ackc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackc38_in_gga(T34, T36, X97))
ackc38_in_gga(0, T44, s(T44)) → ackc38_out_gga(0, T44, s(T44))
ackc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackc27_in_ga(T49, X133))
U31_gga(T49, X133, ackc27_out_ga(T49, X133)) → ackc38_out_gga(s(T49), 0, X133)
ackc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackc38_out_gga(T54, T57, X151)) → ackc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackc38_out_gga(T34, T36, X97)) → ackc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackc27_out_ga(T30, X73)) → ackc21_out_ga(T30, X73)
ACK21_IN_GA(T30, X73) → ACK27_IN_GA(T30, X73)
ACK27_IN_GA(s(T34), X97) → ACK21_IN_GA(T34, X96)
ACK27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackc21_in_ga(T34, T36))
U3_GA(T34, X97, ackc21_out_ga(T34, T36)) → ACK38_IN_GGA(T34, T36, X97)
ACK38_IN_GGA(s(T49), 0, X133) → ACK27_IN_GA(T49, X133)
ACK38_IN_GGA(s(T54), s(T55), X151) → ACK38_IN_GGA(s(T54), T55, X150)
ACK38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → ACK38_IN_GGA(T54, T57, X151)
ackc21_in_ga(T30, X73) → U28_ga(T30, X73, ackc27_in_ga(T30, X73))
ackc27_in_ga(0, s(s(0))) → ackc27_out_ga(0, s(s(0)))
ackc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackc21_in_ga(T34, T36))
U29_ga(T34, X97, ackc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackc38_in_gga(T34, T36, X97))
ackc38_in_gga(0, T44, s(T44)) → ackc38_out_gga(0, T44, s(T44))
ackc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackc27_in_ga(T49, X133))
U31_gga(T49, X133, ackc27_out_ga(T49, X133)) → ackc38_out_gga(s(T49), 0, X133)
ackc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackc38_out_gga(T54, T57, X151)) → ackc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackc38_out_gga(T34, T36, X97)) → ackc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackc27_out_ga(T30, X73)) → ackc21_out_ga(T30, X73)
ACK21_IN_GA(T30) → ACK27_IN_GA(T30)
ACK27_IN_GA(s(T34)) → ACK21_IN_GA(T34)
ACK27_IN_GA(s(T34)) → U3_GA(T34, ackc21_in_ga(T34))
U3_GA(T34, ackc21_out_ga(T34, T36)) → ACK38_IN_GGA(T34, T36)
ACK38_IN_GGA(s(T49), 0) → ACK27_IN_GA(T49)
ACK38_IN_GGA(s(T54), s(T55)) → ACK38_IN_GGA(s(T54), T55)
ACK38_IN_GGA(s(T54), s(T55)) → U7_GGA(T54, T55, ackc38_in_gga(s(T54), T55))
U7_GGA(T54, T55, ackc38_out_gga(s(T54), T55, T57)) → ACK38_IN_GGA(T54, T57)
ackc21_in_ga(T30) → U28_ga(T30, ackc27_in_ga(T30))
ackc27_in_ga(0) → ackc27_out_ga(0, s(s(0)))
ackc27_in_ga(s(T34)) → U29_ga(T34, ackc21_in_ga(T34))
U29_ga(T34, ackc21_out_ga(T34, T36)) → U30_ga(T34, ackc38_in_gga(T34, T36))
ackc38_in_gga(0, T44) → ackc38_out_gga(0, T44, s(T44))
ackc38_in_gga(s(T49), 0) → U31_gga(T49, ackc27_in_ga(T49))
U31_gga(T49, ackc27_out_ga(T49, X133)) → ackc38_out_gga(s(T49), 0, X133)
ackc38_in_gga(s(T54), s(T55)) → U32_gga(T54, T55, ackc38_in_gga(s(T54), T55))
U32_gga(T54, T55, ackc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, ackc38_in_gga(T54, T57))
U33_gga(T54, T55, ackc38_out_gga(T54, T57, X151)) → ackc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, ackc38_out_gga(T34, T36, X97)) → ackc27_out_ga(s(T34), X97)
U28_ga(T30, ackc27_out_ga(T30, X73)) → ackc21_out_ga(T30, X73)
ackc21_in_ga(x0)
ackc27_in_ga(x0)
U29_ga(x0, x1)
ackc38_in_gga(x0, x1)
U31_gga(x0, x1)
U32_gga(x0, x1, x2)
U33_gga(x0, x1, x2)
U30_ga(x0, x1)
U28_ga(x0, x1)
From the DPs we obtained the following set of size-change graphs:
ACK1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackc21_out_ga(T20, T24)) → ACK1_IN_GGA(T20, T24, T22)
ACK1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackc27_out_ga(T76, T77)) → ACK1_IN_GGA(T76, T77, T71)
ACK1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackc38_out_gga(T84, T87, T91)) → ACK1_IN_GGA(T84, T91, T71)
ackc21_in_ga(T30, X73) → U28_ga(T30, X73, ackc27_in_ga(T30, X73))
ackc27_in_ga(0, s(s(0))) → ackc27_out_ga(0, s(s(0)))
ackc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackc21_in_ga(T34, T36))
U29_ga(T34, X97, ackc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackc38_in_gga(T34, T36, X97))
ackc38_in_gga(0, T44, s(T44)) → ackc38_out_gga(0, T44, s(T44))
ackc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackc27_in_ga(T49, X133))
U31_gga(T49, X133, ackc27_out_ga(T49, X133)) → ackc38_out_gga(s(T49), 0, X133)
ackc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackc38_out_gga(T54, T57, X151)) → ackc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackc38_out_gga(T34, T36, X97)) → ackc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackc27_out_ga(T30, X73)) → ackc21_out_ga(T30, X73)
ACK1_IN_GGA(s(s(T20)), 0) → U10_GGA(T20, ackc21_in_ga(T20))
U10_GGA(T20, ackc21_out_ga(T20, T24)) → ACK1_IN_GGA(T20, T24)
ACK1_IN_GGA(s(T76), s(0)) → U13_GGA(T76, ackc27_in_ga(T76))
U13_GGA(T76, ackc27_out_ga(T76, T77)) → ACK1_IN_GGA(T76, T77)
ACK1_IN_GGA(s(T84), s(s(T85))) → U16_GGA(T84, T85, ackc38_in_gga(s(T84), T85))
U16_GGA(T84, T85, ackc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, ackc38_in_gga(T84, T87))
U18_GGA(T84, T85, ackc38_out_gga(T84, T87, T91)) → ACK1_IN_GGA(T84, T91)
ackc21_in_ga(T30) → U28_ga(T30, ackc27_in_ga(T30))
ackc27_in_ga(0) → ackc27_out_ga(0, s(s(0)))
ackc27_in_ga(s(T34)) → U29_ga(T34, ackc21_in_ga(T34))
U29_ga(T34, ackc21_out_ga(T34, T36)) → U30_ga(T34, ackc38_in_gga(T34, T36))
ackc38_in_gga(0, T44) → ackc38_out_gga(0, T44, s(T44))
ackc38_in_gga(s(T49), 0) → U31_gga(T49, ackc27_in_ga(T49))
U31_gga(T49, ackc27_out_ga(T49, X133)) → ackc38_out_gga(s(T49), 0, X133)
ackc38_in_gga(s(T54), s(T55)) → U32_gga(T54, T55, ackc38_in_gga(s(T54), T55))
U32_gga(T54, T55, ackc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, ackc38_in_gga(T54, T57))
U33_gga(T54, T55, ackc38_out_gga(T54, T57, X151)) → ackc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, ackc38_out_gga(T34, T36, X97)) → ackc27_out_ga(s(T34), X97)
U28_ga(T30, ackc27_out_ga(T30, X73)) → ackc21_out_ga(T30, X73)
ackc21_in_ga(x0)
ackc27_in_ga(x0)
U29_ga(x0, x1)
ackc38_in_gga(x0, x1)
U31_gga(x0, x1)
U32_gga(x0, x1, x2)
U33_gga(x0, x1, x2)
U30_ga(x0, x1)
U28_ga(x0, x1)
From the DPs we obtained the following set of size-change graphs: