0 Prolog
↳1 PrologToPrologProblemTransformerProof (⇐)
↳2 Prolog
↳3 PrologToPiTRSProof (⇐)
↳4 PiTRS
↳5 DependencyPairsProof (⇔)
↳6 PiDP
↳7 DependencyGraphProof (⇔)
↳8 PiDP
↳9 UsableRulesProof (⇔)
↳10 PiDP
↳11 PiDPToQDPProof (⇐)
↳12 QDP
↳13 MRRProof (⇔)
↳14 QDP
↳15 QDPSizeChangeProof (⇔)
↳16 YES
avg1_in_gga(s(s(T23)), T24, T26) → U1_gga(T23, T24, T26, avg1_in_gga(T23, s(s(T24)), T26))
avg1_in_gga(s(T42), s(s(T43)), s(T45)) → U2_gga(T42, T43, T45, avg1_in_gga(s(T42), T43, T45))
avg1_in_gga(s(0), 0, 0) → avg1_out_gga(s(0), 0, 0)
avg1_in_gga(s(0), s(0), s(0)) → avg1_out_gga(s(0), s(0), s(0))
avg1_in_gga(s(T61), s(s(s(T62))), s(T64)) → U3_gga(T61, T62, T64, avg1_in_gga(s(s(T61)), T62, T64))
avg1_in_gga(T95, s(s(s(T96))), s(T98)) → U4_gga(T95, T96, T98, avg1_in_gga(T95, s(T96), T98))
avg1_in_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → U5_gga(T114, T115, T117, avg1_in_gga(s(s(T114)), T115, T117))
avg1_in_gga(0, 0, 0) → avg1_out_gga(0, 0, 0)
avg1_in_gga(0, s(0), 0) → avg1_out_gga(0, s(0), 0)
avg1_in_gga(0, s(s(0)), s(0)) → avg1_out_gga(0, s(s(0)), s(0))
U5_gga(T114, T115, T117, avg1_out_gga(s(s(T114)), T115, T117)) → avg1_out_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117)))
U4_gga(T95, T96, T98, avg1_out_gga(T95, s(T96), T98)) → avg1_out_gga(T95, s(s(s(T96))), s(T98))
U3_gga(T61, T62, T64, avg1_out_gga(s(s(T61)), T62, T64)) → avg1_out_gga(s(T61), s(s(s(T62))), s(T64))
U2_gga(T42, T43, T45, avg1_out_gga(s(T42), T43, T45)) → avg1_out_gga(s(T42), s(s(T43)), s(T45))
U1_gga(T23, T24, T26, avg1_out_gga(T23, s(s(T24)), T26)) → avg1_out_gga(s(s(T23)), T24, T26)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
avg1_in_gga(s(s(T23)), T24, T26) → U1_gga(T23, T24, T26, avg1_in_gga(T23, s(s(T24)), T26))
avg1_in_gga(s(T42), s(s(T43)), s(T45)) → U2_gga(T42, T43, T45, avg1_in_gga(s(T42), T43, T45))
avg1_in_gga(s(0), 0, 0) → avg1_out_gga(s(0), 0, 0)
avg1_in_gga(s(0), s(0), s(0)) → avg1_out_gga(s(0), s(0), s(0))
avg1_in_gga(s(T61), s(s(s(T62))), s(T64)) → U3_gga(T61, T62, T64, avg1_in_gga(s(s(T61)), T62, T64))
avg1_in_gga(T95, s(s(s(T96))), s(T98)) → U4_gga(T95, T96, T98, avg1_in_gga(T95, s(T96), T98))
avg1_in_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → U5_gga(T114, T115, T117, avg1_in_gga(s(s(T114)), T115, T117))
avg1_in_gga(0, 0, 0) → avg1_out_gga(0, 0, 0)
avg1_in_gga(0, s(0), 0) → avg1_out_gga(0, s(0), 0)
avg1_in_gga(0, s(s(0)), s(0)) → avg1_out_gga(0, s(s(0)), s(0))
U5_gga(T114, T115, T117, avg1_out_gga(s(s(T114)), T115, T117)) → avg1_out_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117)))
U4_gga(T95, T96, T98, avg1_out_gga(T95, s(T96), T98)) → avg1_out_gga(T95, s(s(s(T96))), s(T98))
U3_gga(T61, T62, T64, avg1_out_gga(s(s(T61)), T62, T64)) → avg1_out_gga(s(T61), s(s(s(T62))), s(T64))
U2_gga(T42, T43, T45, avg1_out_gga(s(T42), T43, T45)) → avg1_out_gga(s(T42), s(s(T43)), s(T45))
U1_gga(T23, T24, T26, avg1_out_gga(T23, s(s(T24)), T26)) → avg1_out_gga(s(s(T23)), T24, T26)
AVG1_IN_GGA(s(s(T23)), T24, T26) → U1_GGA(T23, T24, T26, avg1_in_gga(T23, s(s(T24)), T26))
AVG1_IN_GGA(s(s(T23)), T24, T26) → AVG1_IN_GGA(T23, s(s(T24)), T26)
AVG1_IN_GGA(s(T42), s(s(T43)), s(T45)) → U2_GGA(T42, T43, T45, avg1_in_gga(s(T42), T43, T45))
AVG1_IN_GGA(s(T42), s(s(T43)), s(T45)) → AVG1_IN_GGA(s(T42), T43, T45)
AVG1_IN_GGA(s(T61), s(s(s(T62))), s(T64)) → U3_GGA(T61, T62, T64, avg1_in_gga(s(s(T61)), T62, T64))
AVG1_IN_GGA(s(T61), s(s(s(T62))), s(T64)) → AVG1_IN_GGA(s(s(T61)), T62, T64)
AVG1_IN_GGA(T95, s(s(s(T96))), s(T98)) → U4_GGA(T95, T96, T98, avg1_in_gga(T95, s(T96), T98))
AVG1_IN_GGA(T95, s(s(s(T96))), s(T98)) → AVG1_IN_GGA(T95, s(T96), T98)
AVG1_IN_GGA(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → U5_GGA(T114, T115, T117, avg1_in_gga(s(s(T114)), T115, T117))
AVG1_IN_GGA(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → AVG1_IN_GGA(s(s(T114)), T115, T117)
avg1_in_gga(s(s(T23)), T24, T26) → U1_gga(T23, T24, T26, avg1_in_gga(T23, s(s(T24)), T26))
avg1_in_gga(s(T42), s(s(T43)), s(T45)) → U2_gga(T42, T43, T45, avg1_in_gga(s(T42), T43, T45))
avg1_in_gga(s(0), 0, 0) → avg1_out_gga(s(0), 0, 0)
avg1_in_gga(s(0), s(0), s(0)) → avg1_out_gga(s(0), s(0), s(0))
avg1_in_gga(s(T61), s(s(s(T62))), s(T64)) → U3_gga(T61, T62, T64, avg1_in_gga(s(s(T61)), T62, T64))
avg1_in_gga(T95, s(s(s(T96))), s(T98)) → U4_gga(T95, T96, T98, avg1_in_gga(T95, s(T96), T98))
avg1_in_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → U5_gga(T114, T115, T117, avg1_in_gga(s(s(T114)), T115, T117))
avg1_in_gga(0, 0, 0) → avg1_out_gga(0, 0, 0)
avg1_in_gga(0, s(0), 0) → avg1_out_gga(0, s(0), 0)
avg1_in_gga(0, s(s(0)), s(0)) → avg1_out_gga(0, s(s(0)), s(0))
U5_gga(T114, T115, T117, avg1_out_gga(s(s(T114)), T115, T117)) → avg1_out_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117)))
U4_gga(T95, T96, T98, avg1_out_gga(T95, s(T96), T98)) → avg1_out_gga(T95, s(s(s(T96))), s(T98))
U3_gga(T61, T62, T64, avg1_out_gga(s(s(T61)), T62, T64)) → avg1_out_gga(s(T61), s(s(s(T62))), s(T64))
U2_gga(T42, T43, T45, avg1_out_gga(s(T42), T43, T45)) → avg1_out_gga(s(T42), s(s(T43)), s(T45))
U1_gga(T23, T24, T26, avg1_out_gga(T23, s(s(T24)), T26)) → avg1_out_gga(s(s(T23)), T24, T26)
AVG1_IN_GGA(s(s(T23)), T24, T26) → U1_GGA(T23, T24, T26, avg1_in_gga(T23, s(s(T24)), T26))
AVG1_IN_GGA(s(s(T23)), T24, T26) → AVG1_IN_GGA(T23, s(s(T24)), T26)
AVG1_IN_GGA(s(T42), s(s(T43)), s(T45)) → U2_GGA(T42, T43, T45, avg1_in_gga(s(T42), T43, T45))
AVG1_IN_GGA(s(T42), s(s(T43)), s(T45)) → AVG1_IN_GGA(s(T42), T43, T45)
AVG1_IN_GGA(s(T61), s(s(s(T62))), s(T64)) → U3_GGA(T61, T62, T64, avg1_in_gga(s(s(T61)), T62, T64))
AVG1_IN_GGA(s(T61), s(s(s(T62))), s(T64)) → AVG1_IN_GGA(s(s(T61)), T62, T64)
AVG1_IN_GGA(T95, s(s(s(T96))), s(T98)) → U4_GGA(T95, T96, T98, avg1_in_gga(T95, s(T96), T98))
AVG1_IN_GGA(T95, s(s(s(T96))), s(T98)) → AVG1_IN_GGA(T95, s(T96), T98)
AVG1_IN_GGA(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → U5_GGA(T114, T115, T117, avg1_in_gga(s(s(T114)), T115, T117))
AVG1_IN_GGA(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → AVG1_IN_GGA(s(s(T114)), T115, T117)
avg1_in_gga(s(s(T23)), T24, T26) → U1_gga(T23, T24, T26, avg1_in_gga(T23, s(s(T24)), T26))
avg1_in_gga(s(T42), s(s(T43)), s(T45)) → U2_gga(T42, T43, T45, avg1_in_gga(s(T42), T43, T45))
avg1_in_gga(s(0), 0, 0) → avg1_out_gga(s(0), 0, 0)
avg1_in_gga(s(0), s(0), s(0)) → avg1_out_gga(s(0), s(0), s(0))
avg1_in_gga(s(T61), s(s(s(T62))), s(T64)) → U3_gga(T61, T62, T64, avg1_in_gga(s(s(T61)), T62, T64))
avg1_in_gga(T95, s(s(s(T96))), s(T98)) → U4_gga(T95, T96, T98, avg1_in_gga(T95, s(T96), T98))
avg1_in_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → U5_gga(T114, T115, T117, avg1_in_gga(s(s(T114)), T115, T117))
avg1_in_gga(0, 0, 0) → avg1_out_gga(0, 0, 0)
avg1_in_gga(0, s(0), 0) → avg1_out_gga(0, s(0), 0)
avg1_in_gga(0, s(s(0)), s(0)) → avg1_out_gga(0, s(s(0)), s(0))
U5_gga(T114, T115, T117, avg1_out_gga(s(s(T114)), T115, T117)) → avg1_out_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117)))
U4_gga(T95, T96, T98, avg1_out_gga(T95, s(T96), T98)) → avg1_out_gga(T95, s(s(s(T96))), s(T98))
U3_gga(T61, T62, T64, avg1_out_gga(s(s(T61)), T62, T64)) → avg1_out_gga(s(T61), s(s(s(T62))), s(T64))
U2_gga(T42, T43, T45, avg1_out_gga(s(T42), T43, T45)) → avg1_out_gga(s(T42), s(s(T43)), s(T45))
U1_gga(T23, T24, T26, avg1_out_gga(T23, s(s(T24)), T26)) → avg1_out_gga(s(s(T23)), T24, T26)
AVG1_IN_GGA(s(T42), s(s(T43)), s(T45)) → AVG1_IN_GGA(s(T42), T43, T45)
AVG1_IN_GGA(s(s(T23)), T24, T26) → AVG1_IN_GGA(T23, s(s(T24)), T26)
AVG1_IN_GGA(s(T61), s(s(s(T62))), s(T64)) → AVG1_IN_GGA(s(s(T61)), T62, T64)
AVG1_IN_GGA(T95, s(s(s(T96))), s(T98)) → AVG1_IN_GGA(T95, s(T96), T98)
AVG1_IN_GGA(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → AVG1_IN_GGA(s(s(T114)), T115, T117)
avg1_in_gga(s(s(T23)), T24, T26) → U1_gga(T23, T24, T26, avg1_in_gga(T23, s(s(T24)), T26))
avg1_in_gga(s(T42), s(s(T43)), s(T45)) → U2_gga(T42, T43, T45, avg1_in_gga(s(T42), T43, T45))
avg1_in_gga(s(0), 0, 0) → avg1_out_gga(s(0), 0, 0)
avg1_in_gga(s(0), s(0), s(0)) → avg1_out_gga(s(0), s(0), s(0))
avg1_in_gga(s(T61), s(s(s(T62))), s(T64)) → U3_gga(T61, T62, T64, avg1_in_gga(s(s(T61)), T62, T64))
avg1_in_gga(T95, s(s(s(T96))), s(T98)) → U4_gga(T95, T96, T98, avg1_in_gga(T95, s(T96), T98))
avg1_in_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → U5_gga(T114, T115, T117, avg1_in_gga(s(s(T114)), T115, T117))
avg1_in_gga(0, 0, 0) → avg1_out_gga(0, 0, 0)
avg1_in_gga(0, s(0), 0) → avg1_out_gga(0, s(0), 0)
avg1_in_gga(0, s(s(0)), s(0)) → avg1_out_gga(0, s(s(0)), s(0))
U5_gga(T114, T115, T117, avg1_out_gga(s(s(T114)), T115, T117)) → avg1_out_gga(T114, s(s(s(s(s(s(T115)))))), s(s(T117)))
U4_gga(T95, T96, T98, avg1_out_gga(T95, s(T96), T98)) → avg1_out_gga(T95, s(s(s(T96))), s(T98))
U3_gga(T61, T62, T64, avg1_out_gga(s(s(T61)), T62, T64)) → avg1_out_gga(s(T61), s(s(s(T62))), s(T64))
U2_gga(T42, T43, T45, avg1_out_gga(s(T42), T43, T45)) → avg1_out_gga(s(T42), s(s(T43)), s(T45))
U1_gga(T23, T24, T26, avg1_out_gga(T23, s(s(T24)), T26)) → avg1_out_gga(s(s(T23)), T24, T26)
AVG1_IN_GGA(s(T42), s(s(T43)), s(T45)) → AVG1_IN_GGA(s(T42), T43, T45)
AVG1_IN_GGA(s(s(T23)), T24, T26) → AVG1_IN_GGA(T23, s(s(T24)), T26)
AVG1_IN_GGA(s(T61), s(s(s(T62))), s(T64)) → AVG1_IN_GGA(s(s(T61)), T62, T64)
AVG1_IN_GGA(T95, s(s(s(T96))), s(T98)) → AVG1_IN_GGA(T95, s(T96), T98)
AVG1_IN_GGA(T114, s(s(s(s(s(s(T115)))))), s(s(T117))) → AVG1_IN_GGA(s(s(T114)), T115, T117)
AVG1_IN_GGA(s(T42), s(s(T43))) → AVG1_IN_GGA(s(T42), T43)
AVG1_IN_GGA(s(s(T23)), T24) → AVG1_IN_GGA(T23, s(s(T24)))
AVG1_IN_GGA(s(T61), s(s(s(T62)))) → AVG1_IN_GGA(s(s(T61)), T62)
AVG1_IN_GGA(T95, s(s(s(T96)))) → AVG1_IN_GGA(T95, s(T96))
AVG1_IN_GGA(T114, s(s(s(s(s(s(T115))))))) → AVG1_IN_GGA(s(s(T114)), T115)
AVG1_IN_GGA(s(T42), s(s(T43))) → AVG1_IN_GGA(s(T42), T43)
AVG1_IN_GGA(s(T61), s(s(s(T62)))) → AVG1_IN_GGA(s(s(T61)), T62)
AVG1_IN_GGA(T95, s(s(s(T96)))) → AVG1_IN_GGA(T95, s(T96))
AVG1_IN_GGA(T114, s(s(s(s(s(s(T115))))))) → AVG1_IN_GGA(s(s(T114)), T115)
POL(AVG1_IN_GGA(x1, x2)) = x1 + x2
POL(s(x1)) = 1 + x1
AVG1_IN_GGA(s(s(T23)), T24) → AVG1_IN_GGA(T23, s(s(T24)))
From the DPs we obtained the following set of size-change graphs: