0 Prolog
↳1 PrologToPrologProblemTransformerProof (⇐)
↳2 Prolog
↳3 PrologToPiTRSProof (⇐)
↳4 PiTRS
↳5 DependencyPairsProof (⇔)
↳6 PiDP
↳7 DependencyGraphProof (⇔)
↳8 AND
↳9 PiDP
↳10 UsableRulesProof (⇔)
↳11 PiDP
↳12 PiDPToQDPProof (⇐)
↳13 QDP
↳14 QDPSizeChangeProof (⇔)
↳15 YES
↳16 PiDP
↳17 UsableRulesProof (⇔)
↳18 PiDP
↳19 PiDPToQDPProof (⇐)
↳20 QDP
↳21 QDPSizeChangeProof (⇔)
↳22 YES
max1_in_aga(s(T13), 0, s(T13)) → max1_out_aga(s(T13), 0, s(T13))
max1_in_aga(s(T24), s(T22), s(T24)) → U3_aga(T24, T22, less13_in_ga(T22, T24))
less13_in_ga(0, s(T31)) → less13_out_ga(0, s(T31))
less13_in_ga(s(T36), s(T38)) → U1_ga(T36, T38, less13_in_ga(T36, T38))
U1_ga(T36, T38, less13_out_ga(T36, T38)) → less13_out_ga(s(T36), s(T38))
U3_aga(T24, T22, less13_out_ga(T22, T24)) → max1_out_aga(s(T24), s(T22), s(T24))
max1_in_aga(0, T54, T54) → max1_out_aga(0, T54, T54)
max1_in_aga(s(T61), T60, T60) → U4_aga(T61, T60, less32_in_ag(T61, T60))
less32_in_ag(0, s(T68)) → less32_out_ag(0, s(T68))
less32_in_ag(s(T75), s(T74)) → U2_ag(T75, T74, less32_in_ag(T75, T74))
U2_ag(T75, T74, less32_out_ag(T75, T74)) → less32_out_ag(s(T75), s(T74))
U4_aga(T61, T60, less32_out_ag(T61, T60)) → max1_out_aga(s(T61), T60, T60)
max1_in_aga(s(T94), T93, T93) → U5_aga(T94, T93, less32_in_ag(T94, T93))
U5_aga(T94, T93, less32_out_ag(T94, T93)) → max1_out_aga(s(T94), T93, T93)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
max1_in_aga(s(T13), 0, s(T13)) → max1_out_aga(s(T13), 0, s(T13))
max1_in_aga(s(T24), s(T22), s(T24)) → U3_aga(T24, T22, less13_in_ga(T22, T24))
less13_in_ga(0, s(T31)) → less13_out_ga(0, s(T31))
less13_in_ga(s(T36), s(T38)) → U1_ga(T36, T38, less13_in_ga(T36, T38))
U1_ga(T36, T38, less13_out_ga(T36, T38)) → less13_out_ga(s(T36), s(T38))
U3_aga(T24, T22, less13_out_ga(T22, T24)) → max1_out_aga(s(T24), s(T22), s(T24))
max1_in_aga(0, T54, T54) → max1_out_aga(0, T54, T54)
max1_in_aga(s(T61), T60, T60) → U4_aga(T61, T60, less32_in_ag(T61, T60))
less32_in_ag(0, s(T68)) → less32_out_ag(0, s(T68))
less32_in_ag(s(T75), s(T74)) → U2_ag(T75, T74, less32_in_ag(T75, T74))
U2_ag(T75, T74, less32_out_ag(T75, T74)) → less32_out_ag(s(T75), s(T74))
U4_aga(T61, T60, less32_out_ag(T61, T60)) → max1_out_aga(s(T61), T60, T60)
max1_in_aga(s(T94), T93, T93) → U5_aga(T94, T93, less32_in_ag(T94, T93))
U5_aga(T94, T93, less32_out_ag(T94, T93)) → max1_out_aga(s(T94), T93, T93)
MAX1_IN_AGA(s(T24), s(T22), s(T24)) → U3_AGA(T24, T22, less13_in_ga(T22, T24))
MAX1_IN_AGA(s(T24), s(T22), s(T24)) → LESS13_IN_GA(T22, T24)
LESS13_IN_GA(s(T36), s(T38)) → U1_GA(T36, T38, less13_in_ga(T36, T38))
LESS13_IN_GA(s(T36), s(T38)) → LESS13_IN_GA(T36, T38)
MAX1_IN_AGA(s(T61), T60, T60) → U4_AGA(T61, T60, less32_in_ag(T61, T60))
MAX1_IN_AGA(s(T61), T60, T60) → LESS32_IN_AG(T61, T60)
LESS32_IN_AG(s(T75), s(T74)) → U2_AG(T75, T74, less32_in_ag(T75, T74))
LESS32_IN_AG(s(T75), s(T74)) → LESS32_IN_AG(T75, T74)
MAX1_IN_AGA(s(T94), T93, T93) → U5_AGA(T94, T93, less32_in_ag(T94, T93))
max1_in_aga(s(T13), 0, s(T13)) → max1_out_aga(s(T13), 0, s(T13))
max1_in_aga(s(T24), s(T22), s(T24)) → U3_aga(T24, T22, less13_in_ga(T22, T24))
less13_in_ga(0, s(T31)) → less13_out_ga(0, s(T31))
less13_in_ga(s(T36), s(T38)) → U1_ga(T36, T38, less13_in_ga(T36, T38))
U1_ga(T36, T38, less13_out_ga(T36, T38)) → less13_out_ga(s(T36), s(T38))
U3_aga(T24, T22, less13_out_ga(T22, T24)) → max1_out_aga(s(T24), s(T22), s(T24))
max1_in_aga(0, T54, T54) → max1_out_aga(0, T54, T54)
max1_in_aga(s(T61), T60, T60) → U4_aga(T61, T60, less32_in_ag(T61, T60))
less32_in_ag(0, s(T68)) → less32_out_ag(0, s(T68))
less32_in_ag(s(T75), s(T74)) → U2_ag(T75, T74, less32_in_ag(T75, T74))
U2_ag(T75, T74, less32_out_ag(T75, T74)) → less32_out_ag(s(T75), s(T74))
U4_aga(T61, T60, less32_out_ag(T61, T60)) → max1_out_aga(s(T61), T60, T60)
max1_in_aga(s(T94), T93, T93) → U5_aga(T94, T93, less32_in_ag(T94, T93))
U5_aga(T94, T93, less32_out_ag(T94, T93)) → max1_out_aga(s(T94), T93, T93)
MAX1_IN_AGA(s(T24), s(T22), s(T24)) → U3_AGA(T24, T22, less13_in_ga(T22, T24))
MAX1_IN_AGA(s(T24), s(T22), s(T24)) → LESS13_IN_GA(T22, T24)
LESS13_IN_GA(s(T36), s(T38)) → U1_GA(T36, T38, less13_in_ga(T36, T38))
LESS13_IN_GA(s(T36), s(T38)) → LESS13_IN_GA(T36, T38)
MAX1_IN_AGA(s(T61), T60, T60) → U4_AGA(T61, T60, less32_in_ag(T61, T60))
MAX1_IN_AGA(s(T61), T60, T60) → LESS32_IN_AG(T61, T60)
LESS32_IN_AG(s(T75), s(T74)) → U2_AG(T75, T74, less32_in_ag(T75, T74))
LESS32_IN_AG(s(T75), s(T74)) → LESS32_IN_AG(T75, T74)
MAX1_IN_AGA(s(T94), T93, T93) → U5_AGA(T94, T93, less32_in_ag(T94, T93))
max1_in_aga(s(T13), 0, s(T13)) → max1_out_aga(s(T13), 0, s(T13))
max1_in_aga(s(T24), s(T22), s(T24)) → U3_aga(T24, T22, less13_in_ga(T22, T24))
less13_in_ga(0, s(T31)) → less13_out_ga(0, s(T31))
less13_in_ga(s(T36), s(T38)) → U1_ga(T36, T38, less13_in_ga(T36, T38))
U1_ga(T36, T38, less13_out_ga(T36, T38)) → less13_out_ga(s(T36), s(T38))
U3_aga(T24, T22, less13_out_ga(T22, T24)) → max1_out_aga(s(T24), s(T22), s(T24))
max1_in_aga(0, T54, T54) → max1_out_aga(0, T54, T54)
max1_in_aga(s(T61), T60, T60) → U4_aga(T61, T60, less32_in_ag(T61, T60))
less32_in_ag(0, s(T68)) → less32_out_ag(0, s(T68))
less32_in_ag(s(T75), s(T74)) → U2_ag(T75, T74, less32_in_ag(T75, T74))
U2_ag(T75, T74, less32_out_ag(T75, T74)) → less32_out_ag(s(T75), s(T74))
U4_aga(T61, T60, less32_out_ag(T61, T60)) → max1_out_aga(s(T61), T60, T60)
max1_in_aga(s(T94), T93, T93) → U5_aga(T94, T93, less32_in_ag(T94, T93))
U5_aga(T94, T93, less32_out_ag(T94, T93)) → max1_out_aga(s(T94), T93, T93)
LESS32_IN_AG(s(T75), s(T74)) → LESS32_IN_AG(T75, T74)
max1_in_aga(s(T13), 0, s(T13)) → max1_out_aga(s(T13), 0, s(T13))
max1_in_aga(s(T24), s(T22), s(T24)) → U3_aga(T24, T22, less13_in_ga(T22, T24))
less13_in_ga(0, s(T31)) → less13_out_ga(0, s(T31))
less13_in_ga(s(T36), s(T38)) → U1_ga(T36, T38, less13_in_ga(T36, T38))
U1_ga(T36, T38, less13_out_ga(T36, T38)) → less13_out_ga(s(T36), s(T38))
U3_aga(T24, T22, less13_out_ga(T22, T24)) → max1_out_aga(s(T24), s(T22), s(T24))
max1_in_aga(0, T54, T54) → max1_out_aga(0, T54, T54)
max1_in_aga(s(T61), T60, T60) → U4_aga(T61, T60, less32_in_ag(T61, T60))
less32_in_ag(0, s(T68)) → less32_out_ag(0, s(T68))
less32_in_ag(s(T75), s(T74)) → U2_ag(T75, T74, less32_in_ag(T75, T74))
U2_ag(T75, T74, less32_out_ag(T75, T74)) → less32_out_ag(s(T75), s(T74))
U4_aga(T61, T60, less32_out_ag(T61, T60)) → max1_out_aga(s(T61), T60, T60)
max1_in_aga(s(T94), T93, T93) → U5_aga(T94, T93, less32_in_ag(T94, T93))
U5_aga(T94, T93, less32_out_ag(T94, T93)) → max1_out_aga(s(T94), T93, T93)
LESS32_IN_AG(s(T75), s(T74)) → LESS32_IN_AG(T75, T74)
LESS32_IN_AG(s(T74)) → LESS32_IN_AG(T74)
From the DPs we obtained the following set of size-change graphs:
LESS13_IN_GA(s(T36), s(T38)) → LESS13_IN_GA(T36, T38)
max1_in_aga(s(T13), 0, s(T13)) → max1_out_aga(s(T13), 0, s(T13))
max1_in_aga(s(T24), s(T22), s(T24)) → U3_aga(T24, T22, less13_in_ga(T22, T24))
less13_in_ga(0, s(T31)) → less13_out_ga(0, s(T31))
less13_in_ga(s(T36), s(T38)) → U1_ga(T36, T38, less13_in_ga(T36, T38))
U1_ga(T36, T38, less13_out_ga(T36, T38)) → less13_out_ga(s(T36), s(T38))
U3_aga(T24, T22, less13_out_ga(T22, T24)) → max1_out_aga(s(T24), s(T22), s(T24))
max1_in_aga(0, T54, T54) → max1_out_aga(0, T54, T54)
max1_in_aga(s(T61), T60, T60) → U4_aga(T61, T60, less32_in_ag(T61, T60))
less32_in_ag(0, s(T68)) → less32_out_ag(0, s(T68))
less32_in_ag(s(T75), s(T74)) → U2_ag(T75, T74, less32_in_ag(T75, T74))
U2_ag(T75, T74, less32_out_ag(T75, T74)) → less32_out_ag(s(T75), s(T74))
U4_aga(T61, T60, less32_out_ag(T61, T60)) → max1_out_aga(s(T61), T60, T60)
max1_in_aga(s(T94), T93, T93) → U5_aga(T94, T93, less32_in_ag(T94, T93))
U5_aga(T94, T93, less32_out_ag(T94, T93)) → max1_out_aga(s(T94), T93, T93)
LESS13_IN_GA(s(T36), s(T38)) → LESS13_IN_GA(T36, T38)
LESS13_IN_GA(s(T36)) → LESS13_IN_GA(T36)
From the DPs we obtained the following set of size-change graphs: