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
ACKERMAN1_IN_GGA(s(s(T20)), 0, T22) → U9_GGA(T20, T22, ackerman21_in_ga(T20, X40))
ACKERMAN1_IN_GGA(s(s(T20)), 0, T22) → ACKERMAN21_IN_GA(T20, X40)
ACKERMAN21_IN_GA(T30, X73) → U1_GA(T30, X73, ackerman27_in_ga(T30, X73))
ACKERMAN21_IN_GA(T30, X73) → ACKERMAN27_IN_GA(T30, X73)
ACKERMAN27_IN_GA(s(T34), X97) → U2_GA(T34, X97, ackerman21_in_ga(T34, X96))
ACKERMAN27_IN_GA(s(T34), X97) → ACKERMAN21_IN_GA(T34, X96)
ACKERMAN27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackermanc21_in_ga(T34, T36))
U3_GA(T34, X97, ackermanc21_out_ga(T34, T36)) → U4_GA(T34, X97, ackerman38_in_gga(T34, T36, X97))
U3_GA(T34, X97, ackermanc21_out_ga(T34, T36)) → ACKERMAN38_IN_GGA(T34, T36, X97)
ACKERMAN38_IN_GGA(s(T49), 0, X133) → U5_GGA(T49, X133, ackerman27_in_ga(T49, X133))
ACKERMAN38_IN_GGA(s(T49), 0, X133) → ACKERMAN27_IN_GA(T49, X133)
ACKERMAN38_IN_GGA(s(T54), s(T55), X151) → U6_GGA(T54, T55, X151, ackerman38_in_gga(s(T54), T55, X150))
ACKERMAN38_IN_GGA(s(T54), s(T55), X151) → ACKERMAN38_IN_GGA(s(T54), T55, X150)
ACKERMAN38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackermanc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → U8_GGA(T54, T55, X151, ackerman38_in_gga(T54, T57, X151))
U7_GGA(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → ACKERMAN38_IN_GGA(T54, T57, X151)
ACKERMAN1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackermanc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackermanc21_out_ga(T20, T24)) → U11_GGA(T20, T22, ackerman1_in_gga(T20, T24, T22))
U10_GGA(T20, T22, ackermanc21_out_ga(T20, T24)) → ACKERMAN1_IN_GGA(T20, T24, T22)
ACKERMAN1_IN_GGA(s(T76), s(0), T71) → U12_GGA(T76, T71, ackerman27_in_ga(T76, X200))
ACKERMAN1_IN_GGA(s(T76), s(0), T71) → ACKERMAN27_IN_GA(T76, X200)
ACKERMAN1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackermanc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackermanc27_out_ga(T76, T77)) → U14_GGA(T76, T71, ackerman1_in_gga(T76, T77, T71))
U13_GGA(T76, T71, ackermanc27_out_ga(T76, T77)) → ACKERMAN1_IN_GGA(T76, T77, T71)
ACKERMAN1_IN_GGA(s(T84), s(s(T85)), T71) → U15_GGA(T84, T85, T71, ackerman38_in_gga(s(T84), T85, X221))
ACKERMAN1_IN_GGA(s(T84), s(s(T85)), T71) → ACKERMAN38_IN_GGA(s(T84), T85, X221)
ACKERMAN1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackermanc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackermanc38_out_gga(s(T84), T85, T87)) → U17_GGA(T84, T85, T71, ackerman38_in_gga(T84, T87, X222))
U16_GGA(T84, T85, T71, ackermanc38_out_gga(s(T84), T85, T87)) → ACKERMAN38_IN_GGA(T84, T87, X222)
U16_GGA(T84, T85, T71, ackermanc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackermanc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackermanc38_out_gga(T84, T87, T91)) → U19_GGA(T84, T85, T71, ackerman1_in_gga(T84, T91, T71))
U18_GGA(T84, T85, T71, ackermanc38_out_gga(T84, T87, T91)) → ACKERMAN1_IN_GGA(T84, T91, T71)
ackermanc21_in_ga(T30, X73) → U28_ga(T30, X73, ackermanc27_in_ga(T30, X73))
ackermanc27_in_ga(0, s(s(0))) → ackermanc27_out_ga(0, s(s(0)))
ackermanc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackermanc21_in_ga(T34, T36))
U29_ga(T34, X97, ackermanc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackermanc38_in_gga(T34, T36, X97))
ackermanc38_in_gga(0, T44, s(T44)) → ackermanc38_out_gga(0, T44, s(T44))
ackermanc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackermanc27_in_ga(T49, X133))
U31_gga(T49, X133, ackermanc27_out_ga(T49, X133)) → ackermanc38_out_gga(s(T49), 0, X133)
ackermanc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackermanc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackermanc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackermanc38_out_gga(T54, T57, X151)) → ackermanc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackermanc38_out_gga(T34, T36, X97)) → ackermanc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackermanc27_out_ga(T30, X73)) → ackermanc21_out_ga(T30, X73)
Infinitary Constructor Rewriting Termination of PiDP implies Termination of TRIPLES
ACKERMAN1_IN_GGA(s(s(T20)), 0, T22) → U9_GGA(T20, T22, ackerman21_in_ga(T20, X40))
ACKERMAN1_IN_GGA(s(s(T20)), 0, T22) → ACKERMAN21_IN_GA(T20, X40)
ACKERMAN21_IN_GA(T30, X73) → U1_GA(T30, X73, ackerman27_in_ga(T30, X73))
ACKERMAN21_IN_GA(T30, X73) → ACKERMAN27_IN_GA(T30, X73)
ACKERMAN27_IN_GA(s(T34), X97) → U2_GA(T34, X97, ackerman21_in_ga(T34, X96))
ACKERMAN27_IN_GA(s(T34), X97) → ACKERMAN21_IN_GA(T34, X96)
ACKERMAN27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackermanc21_in_ga(T34, T36))
U3_GA(T34, X97, ackermanc21_out_ga(T34, T36)) → U4_GA(T34, X97, ackerman38_in_gga(T34, T36, X97))
U3_GA(T34, X97, ackermanc21_out_ga(T34, T36)) → ACKERMAN38_IN_GGA(T34, T36, X97)
ACKERMAN38_IN_GGA(s(T49), 0, X133) → U5_GGA(T49, X133, ackerman27_in_ga(T49, X133))
ACKERMAN38_IN_GGA(s(T49), 0, X133) → ACKERMAN27_IN_GA(T49, X133)
ACKERMAN38_IN_GGA(s(T54), s(T55), X151) → U6_GGA(T54, T55, X151, ackerman38_in_gga(s(T54), T55, X150))
ACKERMAN38_IN_GGA(s(T54), s(T55), X151) → ACKERMAN38_IN_GGA(s(T54), T55, X150)
ACKERMAN38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackermanc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → U8_GGA(T54, T55, X151, ackerman38_in_gga(T54, T57, X151))
U7_GGA(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → ACKERMAN38_IN_GGA(T54, T57, X151)
ACKERMAN1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackermanc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackermanc21_out_ga(T20, T24)) → U11_GGA(T20, T22, ackerman1_in_gga(T20, T24, T22))
U10_GGA(T20, T22, ackermanc21_out_ga(T20, T24)) → ACKERMAN1_IN_GGA(T20, T24, T22)
ACKERMAN1_IN_GGA(s(T76), s(0), T71) → U12_GGA(T76, T71, ackerman27_in_ga(T76, X200))
ACKERMAN1_IN_GGA(s(T76), s(0), T71) → ACKERMAN27_IN_GA(T76, X200)
ACKERMAN1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackermanc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackermanc27_out_ga(T76, T77)) → U14_GGA(T76, T71, ackerman1_in_gga(T76, T77, T71))
U13_GGA(T76, T71, ackermanc27_out_ga(T76, T77)) → ACKERMAN1_IN_GGA(T76, T77, T71)
ACKERMAN1_IN_GGA(s(T84), s(s(T85)), T71) → U15_GGA(T84, T85, T71, ackerman38_in_gga(s(T84), T85, X221))
ACKERMAN1_IN_GGA(s(T84), s(s(T85)), T71) → ACKERMAN38_IN_GGA(s(T84), T85, X221)
ACKERMAN1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackermanc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackermanc38_out_gga(s(T84), T85, T87)) → U17_GGA(T84, T85, T71, ackerman38_in_gga(T84, T87, X222))
U16_GGA(T84, T85, T71, ackermanc38_out_gga(s(T84), T85, T87)) → ACKERMAN38_IN_GGA(T84, T87, X222)
U16_GGA(T84, T85, T71, ackermanc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackermanc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackermanc38_out_gga(T84, T87, T91)) → U19_GGA(T84, T85, T71, ackerman1_in_gga(T84, T91, T71))
U18_GGA(T84, T85, T71, ackermanc38_out_gga(T84, T87, T91)) → ACKERMAN1_IN_GGA(T84, T91, T71)
ackermanc21_in_ga(T30, X73) → U28_ga(T30, X73, ackermanc27_in_ga(T30, X73))
ackermanc27_in_ga(0, s(s(0))) → ackermanc27_out_ga(0, s(s(0)))
ackermanc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackermanc21_in_ga(T34, T36))
U29_ga(T34, X97, ackermanc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackermanc38_in_gga(T34, T36, X97))
ackermanc38_in_gga(0, T44, s(T44)) → ackermanc38_out_gga(0, T44, s(T44))
ackermanc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackermanc27_in_ga(T49, X133))
U31_gga(T49, X133, ackermanc27_out_ga(T49, X133)) → ackermanc38_out_gga(s(T49), 0, X133)
ackermanc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackermanc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackermanc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackermanc38_out_gga(T54, T57, X151)) → ackermanc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackermanc38_out_gga(T34, T36, X97)) → ackermanc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackermanc27_out_ga(T30, X73)) → ackermanc21_out_ga(T30, X73)
ACKERMAN21_IN_GA(T30, X73) → ACKERMAN27_IN_GA(T30, X73)
ACKERMAN27_IN_GA(s(T34), X97) → ACKERMAN21_IN_GA(T34, X96)
ACKERMAN27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackermanc21_in_ga(T34, T36))
U3_GA(T34, X97, ackermanc21_out_ga(T34, T36)) → ACKERMAN38_IN_GGA(T34, T36, X97)
ACKERMAN38_IN_GGA(s(T49), 0, X133) → ACKERMAN27_IN_GA(T49, X133)
ACKERMAN38_IN_GGA(s(T54), s(T55), X151) → ACKERMAN38_IN_GGA(s(T54), T55, X150)
ACKERMAN38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackermanc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → ACKERMAN38_IN_GGA(T54, T57, X151)
ackermanc21_in_ga(T30, X73) → U28_ga(T30, X73, ackermanc27_in_ga(T30, X73))
ackermanc27_in_ga(0, s(s(0))) → ackermanc27_out_ga(0, s(s(0)))
ackermanc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackermanc21_in_ga(T34, T36))
U29_ga(T34, X97, ackermanc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackermanc38_in_gga(T34, T36, X97))
ackermanc38_in_gga(0, T44, s(T44)) → ackermanc38_out_gga(0, T44, s(T44))
ackermanc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackermanc27_in_ga(T49, X133))
U31_gga(T49, X133, ackermanc27_out_ga(T49, X133)) → ackermanc38_out_gga(s(T49), 0, X133)
ackermanc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackermanc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackermanc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackermanc38_out_gga(T54, T57, X151)) → ackermanc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackermanc38_out_gga(T34, T36, X97)) → ackermanc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackermanc27_out_ga(T30, X73)) → ackermanc21_out_ga(T30, X73)
ACKERMAN21_IN_GA(T30) → ACKERMAN27_IN_GA(T30)
ACKERMAN27_IN_GA(s(T34)) → ACKERMAN21_IN_GA(T34)
ACKERMAN27_IN_GA(s(T34)) → U3_GA(T34, ackermanc21_in_ga(T34))
U3_GA(T34, ackermanc21_out_ga(T34, T36)) → ACKERMAN38_IN_GGA(T34, T36)
ACKERMAN38_IN_GGA(s(T49), 0) → ACKERMAN27_IN_GA(T49)
ACKERMAN38_IN_GGA(s(T54), s(T55)) → ACKERMAN38_IN_GGA(s(T54), T55)
ACKERMAN38_IN_GGA(s(T54), s(T55)) → U7_GGA(T54, T55, ackermanc38_in_gga(s(T54), T55))
U7_GGA(T54, T55, ackermanc38_out_gga(s(T54), T55, T57)) → ACKERMAN38_IN_GGA(T54, T57)
ackermanc21_in_ga(T30) → U28_ga(T30, ackermanc27_in_ga(T30))
ackermanc27_in_ga(0) → ackermanc27_out_ga(0, s(s(0)))
ackermanc27_in_ga(s(T34)) → U29_ga(T34, ackermanc21_in_ga(T34))
U29_ga(T34, ackermanc21_out_ga(T34, T36)) → U30_ga(T34, ackermanc38_in_gga(T34, T36))
ackermanc38_in_gga(0, T44) → ackermanc38_out_gga(0, T44, s(T44))
ackermanc38_in_gga(s(T49), 0) → U31_gga(T49, ackermanc27_in_ga(T49))
U31_gga(T49, ackermanc27_out_ga(T49, X133)) → ackermanc38_out_gga(s(T49), 0, X133)
ackermanc38_in_gga(s(T54), s(T55)) → U32_gga(T54, T55, ackermanc38_in_gga(s(T54), T55))
U32_gga(T54, T55, ackermanc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, ackermanc38_in_gga(T54, T57))
U33_gga(T54, T55, ackermanc38_out_gga(T54, T57, X151)) → ackermanc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, ackermanc38_out_gga(T34, T36, X97)) → ackermanc27_out_ga(s(T34), X97)
U28_ga(T30, ackermanc27_out_ga(T30, X73)) → ackermanc21_out_ga(T30, X73)
ackermanc21_in_ga(x0)
ackermanc27_in_ga(x0)
U29_ga(x0, x1)
ackermanc38_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:
ACKERMAN1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackermanc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackermanc21_out_ga(T20, T24)) → ACKERMAN1_IN_GGA(T20, T24, T22)
ACKERMAN1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackermanc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackermanc27_out_ga(T76, T77)) → ACKERMAN1_IN_GGA(T76, T77, T71)
ACKERMAN1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackermanc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackermanc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackermanc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackermanc38_out_gga(T84, T87, T91)) → ACKERMAN1_IN_GGA(T84, T91, T71)
ackermanc21_in_ga(T30, X73) → U28_ga(T30, X73, ackermanc27_in_ga(T30, X73))
ackermanc27_in_ga(0, s(s(0))) → ackermanc27_out_ga(0, s(s(0)))
ackermanc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackermanc21_in_ga(T34, T36))
U29_ga(T34, X97, ackermanc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackermanc38_in_gga(T34, T36, X97))
ackermanc38_in_gga(0, T44, s(T44)) → ackermanc38_out_gga(0, T44, s(T44))
ackermanc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackermanc27_in_ga(T49, X133))
U31_gga(T49, X133, ackermanc27_out_ga(T49, X133)) → ackermanc38_out_gga(s(T49), 0, X133)
ackermanc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackermanc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackermanc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackermanc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackermanc38_out_gga(T54, T57, X151)) → ackermanc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackermanc38_out_gga(T34, T36, X97)) → ackermanc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackermanc27_out_ga(T30, X73)) → ackermanc21_out_ga(T30, X73)
ACKERMAN1_IN_GGA(s(s(T20)), 0) → U10_GGA(T20, ackermanc21_in_ga(T20))
U10_GGA(T20, ackermanc21_out_ga(T20, T24)) → ACKERMAN1_IN_GGA(T20, T24)
ACKERMAN1_IN_GGA(s(T76), s(0)) → U13_GGA(T76, ackermanc27_in_ga(T76))
U13_GGA(T76, ackermanc27_out_ga(T76, T77)) → ACKERMAN1_IN_GGA(T76, T77)
ACKERMAN1_IN_GGA(s(T84), s(s(T85))) → U16_GGA(T84, T85, ackermanc38_in_gga(s(T84), T85))
U16_GGA(T84, T85, ackermanc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, ackermanc38_in_gga(T84, T87))
U18_GGA(T84, T85, ackermanc38_out_gga(T84, T87, T91)) → ACKERMAN1_IN_GGA(T84, T91)
ackermanc21_in_ga(T30) → U28_ga(T30, ackermanc27_in_ga(T30))
ackermanc27_in_ga(0) → ackermanc27_out_ga(0, s(s(0)))
ackermanc27_in_ga(s(T34)) → U29_ga(T34, ackermanc21_in_ga(T34))
U29_ga(T34, ackermanc21_out_ga(T34, T36)) → U30_ga(T34, ackermanc38_in_gga(T34, T36))
ackermanc38_in_gga(0, T44) → ackermanc38_out_gga(0, T44, s(T44))
ackermanc38_in_gga(s(T49), 0) → U31_gga(T49, ackermanc27_in_ga(T49))
U31_gga(T49, ackermanc27_out_ga(T49, X133)) → ackermanc38_out_gga(s(T49), 0, X133)
ackermanc38_in_gga(s(T54), s(T55)) → U32_gga(T54, T55, ackermanc38_in_gga(s(T54), T55))
U32_gga(T54, T55, ackermanc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, ackermanc38_in_gga(T54, T57))
U33_gga(T54, T55, ackermanc38_out_gga(T54, T57, X151)) → ackermanc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, ackermanc38_out_gga(T34, T36, X97)) → ackermanc27_out_ga(s(T34), X97)
U28_ga(T30, ackermanc27_out_ga(T30, X73)) → ackermanc21_out_ga(T30, X73)
ackermanc21_in_ga(x0)
ackermanc27_in_ga(x0)
U29_ga(x0, x1)
ackermanc38_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: