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
ACKERMANN1_IN_GGA(s(s(T20)), 0, T22) → U9_GGA(T20, T22, ackermann21_in_ga(T20, X40))
ACKERMANN1_IN_GGA(s(s(T20)), 0, T22) → ACKERMANN21_IN_GA(T20, X40)
ACKERMANN21_IN_GA(T30, X73) → U1_GA(T30, X73, ackermann27_in_ga(T30, X73))
ACKERMANN21_IN_GA(T30, X73) → ACKERMANN27_IN_GA(T30, X73)
ACKERMANN27_IN_GA(s(T34), X97) → U2_GA(T34, X97, ackermann21_in_ga(T34, X96))
ACKERMANN27_IN_GA(s(T34), X97) → ACKERMANN21_IN_GA(T34, X96)
ACKERMANN27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackermannc21_in_ga(T34, T36))
U3_GA(T34, X97, ackermannc21_out_ga(T34, T36)) → U4_GA(T34, X97, ackermann38_in_gga(T34, T36, X97))
U3_GA(T34, X97, ackermannc21_out_ga(T34, T36)) → ACKERMANN38_IN_GGA(T34, T36, X97)
ACKERMANN38_IN_GGA(s(T49), 0, X133) → U5_GGA(T49, X133, ackermann27_in_ga(T49, X133))
ACKERMANN38_IN_GGA(s(T49), 0, X133) → ACKERMANN27_IN_GA(T49, X133)
ACKERMANN38_IN_GGA(s(T54), s(T55), X151) → U6_GGA(T54, T55, X151, ackermann38_in_gga(s(T54), T55, X150))
ACKERMANN38_IN_GGA(s(T54), s(T55), X151) → ACKERMANN38_IN_GGA(s(T54), T55, X150)
ACKERMANN38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackermannc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → U8_GGA(T54, T55, X151, ackermann38_in_gga(T54, T57, X151))
U7_GGA(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → ACKERMANN38_IN_GGA(T54, T57, X151)
ACKERMANN1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackermannc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackermannc21_out_ga(T20, T24)) → U11_GGA(T20, T22, ackermann1_in_gga(T20, T24, T22))
U10_GGA(T20, T22, ackermannc21_out_ga(T20, T24)) → ACKERMANN1_IN_GGA(T20, T24, T22)
ACKERMANN1_IN_GGA(s(T76), s(0), T71) → U12_GGA(T76, T71, ackermann27_in_ga(T76, X200))
ACKERMANN1_IN_GGA(s(T76), s(0), T71) → ACKERMANN27_IN_GA(T76, X200)
ACKERMANN1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackermannc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackermannc27_out_ga(T76, T77)) → U14_GGA(T76, T71, ackermann1_in_gga(T76, T77, T71))
U13_GGA(T76, T71, ackermannc27_out_ga(T76, T77)) → ACKERMANN1_IN_GGA(T76, T77, T71)
ACKERMANN1_IN_GGA(s(T84), s(s(T85)), T71) → U15_GGA(T84, T85, T71, ackermann38_in_gga(s(T84), T85, X221))
ACKERMANN1_IN_GGA(s(T84), s(s(T85)), T71) → ACKERMANN38_IN_GGA(s(T84), T85, X221)
ACKERMANN1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackermannc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackermannc38_out_gga(s(T84), T85, T87)) → U17_GGA(T84, T85, T71, ackermann38_in_gga(T84, T87, X222))
U16_GGA(T84, T85, T71, ackermannc38_out_gga(s(T84), T85, T87)) → ACKERMANN38_IN_GGA(T84, T87, X222)
U16_GGA(T84, T85, T71, ackermannc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackermannc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackermannc38_out_gga(T84, T87, T91)) → U19_GGA(T84, T85, T71, ackermann1_in_gga(T84, T91, T71))
U18_GGA(T84, T85, T71, ackermannc38_out_gga(T84, T87, T91)) → ACKERMANN1_IN_GGA(T84, T91, T71)
ackermannc21_in_ga(T30, X73) → U28_ga(T30, X73, ackermannc27_in_ga(T30, X73))
ackermannc27_in_ga(0, s(s(0))) → ackermannc27_out_ga(0, s(s(0)))
ackermannc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackermannc21_in_ga(T34, T36))
U29_ga(T34, X97, ackermannc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackermannc38_in_gga(T34, T36, X97))
ackermannc38_in_gga(0, T44, s(T44)) → ackermannc38_out_gga(0, T44, s(T44))
ackermannc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackermannc27_in_ga(T49, X133))
U31_gga(T49, X133, ackermannc27_out_ga(T49, X133)) → ackermannc38_out_gga(s(T49), 0, X133)
ackermannc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackermannc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackermannc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackermannc38_out_gga(T54, T57, X151)) → ackermannc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackermannc38_out_gga(T34, T36, X97)) → ackermannc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackermannc27_out_ga(T30, X73)) → ackermannc21_out_ga(T30, X73)
Infinitary Constructor Rewriting Termination of PiDP implies Termination of TRIPLES
ACKERMANN1_IN_GGA(s(s(T20)), 0, T22) → U9_GGA(T20, T22, ackermann21_in_ga(T20, X40))
ACKERMANN1_IN_GGA(s(s(T20)), 0, T22) → ACKERMANN21_IN_GA(T20, X40)
ACKERMANN21_IN_GA(T30, X73) → U1_GA(T30, X73, ackermann27_in_ga(T30, X73))
ACKERMANN21_IN_GA(T30, X73) → ACKERMANN27_IN_GA(T30, X73)
ACKERMANN27_IN_GA(s(T34), X97) → U2_GA(T34, X97, ackermann21_in_ga(T34, X96))
ACKERMANN27_IN_GA(s(T34), X97) → ACKERMANN21_IN_GA(T34, X96)
ACKERMANN27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackermannc21_in_ga(T34, T36))
U3_GA(T34, X97, ackermannc21_out_ga(T34, T36)) → U4_GA(T34, X97, ackermann38_in_gga(T34, T36, X97))
U3_GA(T34, X97, ackermannc21_out_ga(T34, T36)) → ACKERMANN38_IN_GGA(T34, T36, X97)
ACKERMANN38_IN_GGA(s(T49), 0, X133) → U5_GGA(T49, X133, ackermann27_in_ga(T49, X133))
ACKERMANN38_IN_GGA(s(T49), 0, X133) → ACKERMANN27_IN_GA(T49, X133)
ACKERMANN38_IN_GGA(s(T54), s(T55), X151) → U6_GGA(T54, T55, X151, ackermann38_in_gga(s(T54), T55, X150))
ACKERMANN38_IN_GGA(s(T54), s(T55), X151) → ACKERMANN38_IN_GGA(s(T54), T55, X150)
ACKERMANN38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackermannc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → U8_GGA(T54, T55, X151, ackermann38_in_gga(T54, T57, X151))
U7_GGA(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → ACKERMANN38_IN_GGA(T54, T57, X151)
ACKERMANN1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackermannc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackermannc21_out_ga(T20, T24)) → U11_GGA(T20, T22, ackermann1_in_gga(T20, T24, T22))
U10_GGA(T20, T22, ackermannc21_out_ga(T20, T24)) → ACKERMANN1_IN_GGA(T20, T24, T22)
ACKERMANN1_IN_GGA(s(T76), s(0), T71) → U12_GGA(T76, T71, ackermann27_in_ga(T76, X200))
ACKERMANN1_IN_GGA(s(T76), s(0), T71) → ACKERMANN27_IN_GA(T76, X200)
ACKERMANN1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackermannc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackermannc27_out_ga(T76, T77)) → U14_GGA(T76, T71, ackermann1_in_gga(T76, T77, T71))
U13_GGA(T76, T71, ackermannc27_out_ga(T76, T77)) → ACKERMANN1_IN_GGA(T76, T77, T71)
ACKERMANN1_IN_GGA(s(T84), s(s(T85)), T71) → U15_GGA(T84, T85, T71, ackermann38_in_gga(s(T84), T85, X221))
ACKERMANN1_IN_GGA(s(T84), s(s(T85)), T71) → ACKERMANN38_IN_GGA(s(T84), T85, X221)
ACKERMANN1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackermannc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackermannc38_out_gga(s(T84), T85, T87)) → U17_GGA(T84, T85, T71, ackermann38_in_gga(T84, T87, X222))
U16_GGA(T84, T85, T71, ackermannc38_out_gga(s(T84), T85, T87)) → ACKERMANN38_IN_GGA(T84, T87, X222)
U16_GGA(T84, T85, T71, ackermannc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackermannc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackermannc38_out_gga(T84, T87, T91)) → U19_GGA(T84, T85, T71, ackermann1_in_gga(T84, T91, T71))
U18_GGA(T84, T85, T71, ackermannc38_out_gga(T84, T87, T91)) → ACKERMANN1_IN_GGA(T84, T91, T71)
ackermannc21_in_ga(T30, X73) → U28_ga(T30, X73, ackermannc27_in_ga(T30, X73))
ackermannc27_in_ga(0, s(s(0))) → ackermannc27_out_ga(0, s(s(0)))
ackermannc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackermannc21_in_ga(T34, T36))
U29_ga(T34, X97, ackermannc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackermannc38_in_gga(T34, T36, X97))
ackermannc38_in_gga(0, T44, s(T44)) → ackermannc38_out_gga(0, T44, s(T44))
ackermannc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackermannc27_in_ga(T49, X133))
U31_gga(T49, X133, ackermannc27_out_ga(T49, X133)) → ackermannc38_out_gga(s(T49), 0, X133)
ackermannc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackermannc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackermannc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackermannc38_out_gga(T54, T57, X151)) → ackermannc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackermannc38_out_gga(T34, T36, X97)) → ackermannc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackermannc27_out_ga(T30, X73)) → ackermannc21_out_ga(T30, X73)
ACKERMANN21_IN_GA(T30, X73) → ACKERMANN27_IN_GA(T30, X73)
ACKERMANN27_IN_GA(s(T34), X97) → ACKERMANN21_IN_GA(T34, X96)
ACKERMANN27_IN_GA(s(T34), X97) → U3_GA(T34, X97, ackermannc21_in_ga(T34, T36))
U3_GA(T34, X97, ackermannc21_out_ga(T34, T36)) → ACKERMANN38_IN_GGA(T34, T36, X97)
ACKERMANN38_IN_GGA(s(T49), 0, X133) → ACKERMANN27_IN_GA(T49, X133)
ACKERMANN38_IN_GGA(s(T54), s(T55), X151) → ACKERMANN38_IN_GGA(s(T54), T55, X150)
ACKERMANN38_IN_GGA(s(T54), s(T55), X151) → U7_GGA(T54, T55, X151, ackermannc38_in_gga(s(T54), T55, T57))
U7_GGA(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → ACKERMANN38_IN_GGA(T54, T57, X151)
ackermannc21_in_ga(T30, X73) → U28_ga(T30, X73, ackermannc27_in_ga(T30, X73))
ackermannc27_in_ga(0, s(s(0))) → ackermannc27_out_ga(0, s(s(0)))
ackermannc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackermannc21_in_ga(T34, T36))
U29_ga(T34, X97, ackermannc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackermannc38_in_gga(T34, T36, X97))
ackermannc38_in_gga(0, T44, s(T44)) → ackermannc38_out_gga(0, T44, s(T44))
ackermannc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackermannc27_in_ga(T49, X133))
U31_gga(T49, X133, ackermannc27_out_ga(T49, X133)) → ackermannc38_out_gga(s(T49), 0, X133)
ackermannc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackermannc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackermannc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackermannc38_out_gga(T54, T57, X151)) → ackermannc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackermannc38_out_gga(T34, T36, X97)) → ackermannc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackermannc27_out_ga(T30, X73)) → ackermannc21_out_ga(T30, X73)
ACKERMANN21_IN_GA(T30) → ACKERMANN27_IN_GA(T30)
ACKERMANN27_IN_GA(s(T34)) → ACKERMANN21_IN_GA(T34)
ACKERMANN27_IN_GA(s(T34)) → U3_GA(T34, ackermannc21_in_ga(T34))
U3_GA(T34, ackermannc21_out_ga(T34, T36)) → ACKERMANN38_IN_GGA(T34, T36)
ACKERMANN38_IN_GGA(s(T49), 0) → ACKERMANN27_IN_GA(T49)
ACKERMANN38_IN_GGA(s(T54), s(T55)) → ACKERMANN38_IN_GGA(s(T54), T55)
ACKERMANN38_IN_GGA(s(T54), s(T55)) → U7_GGA(T54, T55, ackermannc38_in_gga(s(T54), T55))
U7_GGA(T54, T55, ackermannc38_out_gga(s(T54), T55, T57)) → ACKERMANN38_IN_GGA(T54, T57)
ackermannc21_in_ga(T30) → U28_ga(T30, ackermannc27_in_ga(T30))
ackermannc27_in_ga(0) → ackermannc27_out_ga(0, s(s(0)))
ackermannc27_in_ga(s(T34)) → U29_ga(T34, ackermannc21_in_ga(T34))
U29_ga(T34, ackermannc21_out_ga(T34, T36)) → U30_ga(T34, ackermannc38_in_gga(T34, T36))
ackermannc38_in_gga(0, T44) → ackermannc38_out_gga(0, T44, s(T44))
ackermannc38_in_gga(s(T49), 0) → U31_gga(T49, ackermannc27_in_ga(T49))
U31_gga(T49, ackermannc27_out_ga(T49, X133)) → ackermannc38_out_gga(s(T49), 0, X133)
ackermannc38_in_gga(s(T54), s(T55)) → U32_gga(T54, T55, ackermannc38_in_gga(s(T54), T55))
U32_gga(T54, T55, ackermannc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, ackermannc38_in_gga(T54, T57))
U33_gga(T54, T55, ackermannc38_out_gga(T54, T57, X151)) → ackermannc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, ackermannc38_out_gga(T34, T36, X97)) → ackermannc27_out_ga(s(T34), X97)
U28_ga(T30, ackermannc27_out_ga(T30, X73)) → ackermannc21_out_ga(T30, X73)
ackermannc21_in_ga(x0)
ackermannc27_in_ga(x0)
U29_ga(x0, x1)
ackermannc38_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:
ACKERMANN1_IN_GGA(s(s(T20)), 0, T22) → U10_GGA(T20, T22, ackermannc21_in_ga(T20, T24))
U10_GGA(T20, T22, ackermannc21_out_ga(T20, T24)) → ACKERMANN1_IN_GGA(T20, T24, T22)
ACKERMANN1_IN_GGA(s(T76), s(0), T71) → U13_GGA(T76, T71, ackermannc27_in_ga(T76, T77))
U13_GGA(T76, T71, ackermannc27_out_ga(T76, T77)) → ACKERMANN1_IN_GGA(T76, T77, T71)
ACKERMANN1_IN_GGA(s(T84), s(s(T85)), T71) → U16_GGA(T84, T85, T71, ackermannc38_in_gga(s(T84), T85, T87))
U16_GGA(T84, T85, T71, ackermannc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, T71, ackermannc38_in_gga(T84, T87, T91))
U18_GGA(T84, T85, T71, ackermannc38_out_gga(T84, T87, T91)) → ACKERMANN1_IN_GGA(T84, T91, T71)
ackermannc21_in_ga(T30, X73) → U28_ga(T30, X73, ackermannc27_in_ga(T30, X73))
ackermannc27_in_ga(0, s(s(0))) → ackermannc27_out_ga(0, s(s(0)))
ackermannc27_in_ga(s(T34), X97) → U29_ga(T34, X97, ackermannc21_in_ga(T34, T36))
U29_ga(T34, X97, ackermannc21_out_ga(T34, T36)) → U30_ga(T34, X97, ackermannc38_in_gga(T34, T36, X97))
ackermannc38_in_gga(0, T44, s(T44)) → ackermannc38_out_gga(0, T44, s(T44))
ackermannc38_in_gga(s(T49), 0, X133) → U31_gga(T49, X133, ackermannc27_in_ga(T49, X133))
U31_gga(T49, X133, ackermannc27_out_ga(T49, X133)) → ackermannc38_out_gga(s(T49), 0, X133)
ackermannc38_in_gga(s(T54), s(T55), X151) → U32_gga(T54, T55, X151, ackermannc38_in_gga(s(T54), T55, T57))
U32_gga(T54, T55, X151, ackermannc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, X151, ackermannc38_in_gga(T54, T57, X151))
U33_gga(T54, T55, X151, ackermannc38_out_gga(T54, T57, X151)) → ackermannc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, X97, ackermannc38_out_gga(T34, T36, X97)) → ackermannc27_out_ga(s(T34), X97)
U28_ga(T30, X73, ackermannc27_out_ga(T30, X73)) → ackermannc21_out_ga(T30, X73)
ACKERMANN1_IN_GGA(s(s(T20)), 0) → U10_GGA(T20, ackermannc21_in_ga(T20))
U10_GGA(T20, ackermannc21_out_ga(T20, T24)) → ACKERMANN1_IN_GGA(T20, T24)
ACKERMANN1_IN_GGA(s(T76), s(0)) → U13_GGA(T76, ackermannc27_in_ga(T76))
U13_GGA(T76, ackermannc27_out_ga(T76, T77)) → ACKERMANN1_IN_GGA(T76, T77)
ACKERMANN1_IN_GGA(s(T84), s(s(T85))) → U16_GGA(T84, T85, ackermannc38_in_gga(s(T84), T85))
U16_GGA(T84, T85, ackermannc38_out_gga(s(T84), T85, T87)) → U18_GGA(T84, T85, ackermannc38_in_gga(T84, T87))
U18_GGA(T84, T85, ackermannc38_out_gga(T84, T87, T91)) → ACKERMANN1_IN_GGA(T84, T91)
ackermannc21_in_ga(T30) → U28_ga(T30, ackermannc27_in_ga(T30))
ackermannc27_in_ga(0) → ackermannc27_out_ga(0, s(s(0)))
ackermannc27_in_ga(s(T34)) → U29_ga(T34, ackermannc21_in_ga(T34))
U29_ga(T34, ackermannc21_out_ga(T34, T36)) → U30_ga(T34, ackermannc38_in_gga(T34, T36))
ackermannc38_in_gga(0, T44) → ackermannc38_out_gga(0, T44, s(T44))
ackermannc38_in_gga(s(T49), 0) → U31_gga(T49, ackermannc27_in_ga(T49))
U31_gga(T49, ackermannc27_out_ga(T49, X133)) → ackermannc38_out_gga(s(T49), 0, X133)
ackermannc38_in_gga(s(T54), s(T55)) → U32_gga(T54, T55, ackermannc38_in_gga(s(T54), T55))
U32_gga(T54, T55, ackermannc38_out_gga(s(T54), T55, T57)) → U33_gga(T54, T55, ackermannc38_in_gga(T54, T57))
U33_gga(T54, T55, ackermannc38_out_gga(T54, T57, X151)) → ackermannc38_out_gga(s(T54), s(T55), X151)
U30_ga(T34, ackermannc38_out_gga(T34, T36, X97)) → ackermannc27_out_ga(s(T34), X97)
U28_ga(T30, ackermannc27_out_ga(T30, X73)) → ackermannc21_out_ga(T30, X73)
ackermannc21_in_ga(x0)
ackermannc27_in_ga(x0)
U29_ga(x0, x1)
ackermannc38_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: