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
↳23 PiDP
↳24 UsableRulesProof (⇔)
↳25 PiDP
↳26 PiDPToQDPProof (⇐)
↳27 QDP
↳28 QDPOrderProof (⇔)
↳29 QDP
↳30 DependencyGraphProof (⇔)
↳31 TRUE
rem1_in_gga(T7, s(T15), T10) → U4_gga(T7, T15, T10, sub9_in_gga(T7, T15, X7))
sub9_in_gga(s(T29), T30, X41) → U3_gga(T29, T30, X41, sub14_in_gga(T29, T30, X41))
sub14_in_gga(s(T41), s(T42), X68) → U1_gga(T41, T42, X68, sub14_in_gga(T41, T42, X68))
sub14_in_gga(T47, 0, T47) → sub14_out_gga(T47, 0, T47)
U1_gga(T41, T42, X68, sub14_out_gga(T41, T42, X68)) → sub14_out_gga(s(T41), s(T42), X68)
U3_gga(T29, T30, X41, sub14_out_gga(T29, T30, X41)) → sub9_out_gga(s(T29), T30, X41)
U4_gga(T7, T15, T10, sub9_out_gga(T7, T15, X7)) → rem1_out_gga(T7, s(T15), T10)
rem1_in_gga(T7, s(T15), T10) → U5_gga(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_gga(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_gga(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
rem1_in_gga(s(T73), s(T74), s(T73)) → U7_gga(T73, T74, geq34_in_gg(T73, T74))
geq34_in_gg(s(T85), s(T86)) → U2_gg(T85, T86, geq34_in_gg(T85, T86))
geq34_in_gg(T91, 0) → geq34_out_gg(T91, 0)
U2_gg(T85, T86, geq34_out_gg(T85, T86)) → geq34_out_gg(s(T85), s(T86))
U7_gga(T73, T74, geq34_out_gg(T73, T74)) → rem1_out_gga(s(T73), s(T74), s(T73))
U6_gga(T7, T15, T10, rem1_out_gga(T18, s(T15), T10)) → rem1_out_gga(T7, s(T15), T10)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
rem1_in_gga(T7, s(T15), T10) → U4_gga(T7, T15, T10, sub9_in_gga(T7, T15, X7))
sub9_in_gga(s(T29), T30, X41) → U3_gga(T29, T30, X41, sub14_in_gga(T29, T30, X41))
sub14_in_gga(s(T41), s(T42), X68) → U1_gga(T41, T42, X68, sub14_in_gga(T41, T42, X68))
sub14_in_gga(T47, 0, T47) → sub14_out_gga(T47, 0, T47)
U1_gga(T41, T42, X68, sub14_out_gga(T41, T42, X68)) → sub14_out_gga(s(T41), s(T42), X68)
U3_gga(T29, T30, X41, sub14_out_gga(T29, T30, X41)) → sub9_out_gga(s(T29), T30, X41)
U4_gga(T7, T15, T10, sub9_out_gga(T7, T15, X7)) → rem1_out_gga(T7, s(T15), T10)
rem1_in_gga(T7, s(T15), T10) → U5_gga(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_gga(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_gga(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
rem1_in_gga(s(T73), s(T74), s(T73)) → U7_gga(T73, T74, geq34_in_gg(T73, T74))
geq34_in_gg(s(T85), s(T86)) → U2_gg(T85, T86, geq34_in_gg(T85, T86))
geq34_in_gg(T91, 0) → geq34_out_gg(T91, 0)
U2_gg(T85, T86, geq34_out_gg(T85, T86)) → geq34_out_gg(s(T85), s(T86))
U7_gga(T73, T74, geq34_out_gg(T73, T74)) → rem1_out_gga(s(T73), s(T74), s(T73))
U6_gga(T7, T15, T10, rem1_out_gga(T18, s(T15), T10)) → rem1_out_gga(T7, s(T15), T10)
REM1_IN_GGA(T7, s(T15), T10) → U4_GGA(T7, T15, T10, sub9_in_gga(T7, T15, X7))
REM1_IN_GGA(T7, s(T15), T10) → SUB9_IN_GGA(T7, T15, X7)
SUB9_IN_GGA(s(T29), T30, X41) → U3_GGA(T29, T30, X41, sub14_in_gga(T29, T30, X41))
SUB9_IN_GGA(s(T29), T30, X41) → SUB14_IN_GGA(T29, T30, X41)
SUB14_IN_GGA(s(T41), s(T42), X68) → U1_GGA(T41, T42, X68, sub14_in_gga(T41, T42, X68))
SUB14_IN_GGA(s(T41), s(T42), X68) → SUB14_IN_GGA(T41, T42, X68)
REM1_IN_GGA(T7, s(T15), T10) → U5_GGA(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_GGA(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_GGA(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
U5_GGA(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → REM1_IN_GGA(T18, s(T15), T10)
REM1_IN_GGA(s(T73), s(T74), s(T73)) → U7_GGA(T73, T74, geq34_in_gg(T73, T74))
REM1_IN_GGA(s(T73), s(T74), s(T73)) → GEQ34_IN_GG(T73, T74)
GEQ34_IN_GG(s(T85), s(T86)) → U2_GG(T85, T86, geq34_in_gg(T85, T86))
GEQ34_IN_GG(s(T85), s(T86)) → GEQ34_IN_GG(T85, T86)
rem1_in_gga(T7, s(T15), T10) → U4_gga(T7, T15, T10, sub9_in_gga(T7, T15, X7))
sub9_in_gga(s(T29), T30, X41) → U3_gga(T29, T30, X41, sub14_in_gga(T29, T30, X41))
sub14_in_gga(s(T41), s(T42), X68) → U1_gga(T41, T42, X68, sub14_in_gga(T41, T42, X68))
sub14_in_gga(T47, 0, T47) → sub14_out_gga(T47, 0, T47)
U1_gga(T41, T42, X68, sub14_out_gga(T41, T42, X68)) → sub14_out_gga(s(T41), s(T42), X68)
U3_gga(T29, T30, X41, sub14_out_gga(T29, T30, X41)) → sub9_out_gga(s(T29), T30, X41)
U4_gga(T7, T15, T10, sub9_out_gga(T7, T15, X7)) → rem1_out_gga(T7, s(T15), T10)
rem1_in_gga(T7, s(T15), T10) → U5_gga(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_gga(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_gga(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
rem1_in_gga(s(T73), s(T74), s(T73)) → U7_gga(T73, T74, geq34_in_gg(T73, T74))
geq34_in_gg(s(T85), s(T86)) → U2_gg(T85, T86, geq34_in_gg(T85, T86))
geq34_in_gg(T91, 0) → geq34_out_gg(T91, 0)
U2_gg(T85, T86, geq34_out_gg(T85, T86)) → geq34_out_gg(s(T85), s(T86))
U7_gga(T73, T74, geq34_out_gg(T73, T74)) → rem1_out_gga(s(T73), s(T74), s(T73))
U6_gga(T7, T15, T10, rem1_out_gga(T18, s(T15), T10)) → rem1_out_gga(T7, s(T15), T10)
REM1_IN_GGA(T7, s(T15), T10) → U4_GGA(T7, T15, T10, sub9_in_gga(T7, T15, X7))
REM1_IN_GGA(T7, s(T15), T10) → SUB9_IN_GGA(T7, T15, X7)
SUB9_IN_GGA(s(T29), T30, X41) → U3_GGA(T29, T30, X41, sub14_in_gga(T29, T30, X41))
SUB9_IN_GGA(s(T29), T30, X41) → SUB14_IN_GGA(T29, T30, X41)
SUB14_IN_GGA(s(T41), s(T42), X68) → U1_GGA(T41, T42, X68, sub14_in_gga(T41, T42, X68))
SUB14_IN_GGA(s(T41), s(T42), X68) → SUB14_IN_GGA(T41, T42, X68)
REM1_IN_GGA(T7, s(T15), T10) → U5_GGA(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_GGA(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_GGA(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
U5_GGA(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → REM1_IN_GGA(T18, s(T15), T10)
REM1_IN_GGA(s(T73), s(T74), s(T73)) → U7_GGA(T73, T74, geq34_in_gg(T73, T74))
REM1_IN_GGA(s(T73), s(T74), s(T73)) → GEQ34_IN_GG(T73, T74)
GEQ34_IN_GG(s(T85), s(T86)) → U2_GG(T85, T86, geq34_in_gg(T85, T86))
GEQ34_IN_GG(s(T85), s(T86)) → GEQ34_IN_GG(T85, T86)
rem1_in_gga(T7, s(T15), T10) → U4_gga(T7, T15, T10, sub9_in_gga(T7, T15, X7))
sub9_in_gga(s(T29), T30, X41) → U3_gga(T29, T30, X41, sub14_in_gga(T29, T30, X41))
sub14_in_gga(s(T41), s(T42), X68) → U1_gga(T41, T42, X68, sub14_in_gga(T41, T42, X68))
sub14_in_gga(T47, 0, T47) → sub14_out_gga(T47, 0, T47)
U1_gga(T41, T42, X68, sub14_out_gga(T41, T42, X68)) → sub14_out_gga(s(T41), s(T42), X68)
U3_gga(T29, T30, X41, sub14_out_gga(T29, T30, X41)) → sub9_out_gga(s(T29), T30, X41)
U4_gga(T7, T15, T10, sub9_out_gga(T7, T15, X7)) → rem1_out_gga(T7, s(T15), T10)
rem1_in_gga(T7, s(T15), T10) → U5_gga(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_gga(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_gga(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
rem1_in_gga(s(T73), s(T74), s(T73)) → U7_gga(T73, T74, geq34_in_gg(T73, T74))
geq34_in_gg(s(T85), s(T86)) → U2_gg(T85, T86, geq34_in_gg(T85, T86))
geq34_in_gg(T91, 0) → geq34_out_gg(T91, 0)
U2_gg(T85, T86, geq34_out_gg(T85, T86)) → geq34_out_gg(s(T85), s(T86))
U7_gga(T73, T74, geq34_out_gg(T73, T74)) → rem1_out_gga(s(T73), s(T74), s(T73))
U6_gga(T7, T15, T10, rem1_out_gga(T18, s(T15), T10)) → rem1_out_gga(T7, s(T15), T10)
GEQ34_IN_GG(s(T85), s(T86)) → GEQ34_IN_GG(T85, T86)
rem1_in_gga(T7, s(T15), T10) → U4_gga(T7, T15, T10, sub9_in_gga(T7, T15, X7))
sub9_in_gga(s(T29), T30, X41) → U3_gga(T29, T30, X41, sub14_in_gga(T29, T30, X41))
sub14_in_gga(s(T41), s(T42), X68) → U1_gga(T41, T42, X68, sub14_in_gga(T41, T42, X68))
sub14_in_gga(T47, 0, T47) → sub14_out_gga(T47, 0, T47)
U1_gga(T41, T42, X68, sub14_out_gga(T41, T42, X68)) → sub14_out_gga(s(T41), s(T42), X68)
U3_gga(T29, T30, X41, sub14_out_gga(T29, T30, X41)) → sub9_out_gga(s(T29), T30, X41)
U4_gga(T7, T15, T10, sub9_out_gga(T7, T15, X7)) → rem1_out_gga(T7, s(T15), T10)
rem1_in_gga(T7, s(T15), T10) → U5_gga(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_gga(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_gga(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
rem1_in_gga(s(T73), s(T74), s(T73)) → U7_gga(T73, T74, geq34_in_gg(T73, T74))
geq34_in_gg(s(T85), s(T86)) → U2_gg(T85, T86, geq34_in_gg(T85, T86))
geq34_in_gg(T91, 0) → geq34_out_gg(T91, 0)
U2_gg(T85, T86, geq34_out_gg(T85, T86)) → geq34_out_gg(s(T85), s(T86))
U7_gga(T73, T74, geq34_out_gg(T73, T74)) → rem1_out_gga(s(T73), s(T74), s(T73))
U6_gga(T7, T15, T10, rem1_out_gga(T18, s(T15), T10)) → rem1_out_gga(T7, s(T15), T10)
GEQ34_IN_GG(s(T85), s(T86)) → GEQ34_IN_GG(T85, T86)
GEQ34_IN_GG(s(T85), s(T86)) → GEQ34_IN_GG(T85, T86)
From the DPs we obtained the following set of size-change graphs:
SUB14_IN_GGA(s(T41), s(T42), X68) → SUB14_IN_GGA(T41, T42, X68)
rem1_in_gga(T7, s(T15), T10) → U4_gga(T7, T15, T10, sub9_in_gga(T7, T15, X7))
sub9_in_gga(s(T29), T30, X41) → U3_gga(T29, T30, X41, sub14_in_gga(T29, T30, X41))
sub14_in_gga(s(T41), s(T42), X68) → U1_gga(T41, T42, X68, sub14_in_gga(T41, T42, X68))
sub14_in_gga(T47, 0, T47) → sub14_out_gga(T47, 0, T47)
U1_gga(T41, T42, X68, sub14_out_gga(T41, T42, X68)) → sub14_out_gga(s(T41), s(T42), X68)
U3_gga(T29, T30, X41, sub14_out_gga(T29, T30, X41)) → sub9_out_gga(s(T29), T30, X41)
U4_gga(T7, T15, T10, sub9_out_gga(T7, T15, X7)) → rem1_out_gga(T7, s(T15), T10)
rem1_in_gga(T7, s(T15), T10) → U5_gga(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_gga(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_gga(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
rem1_in_gga(s(T73), s(T74), s(T73)) → U7_gga(T73, T74, geq34_in_gg(T73, T74))
geq34_in_gg(s(T85), s(T86)) → U2_gg(T85, T86, geq34_in_gg(T85, T86))
geq34_in_gg(T91, 0) → geq34_out_gg(T91, 0)
U2_gg(T85, T86, geq34_out_gg(T85, T86)) → geq34_out_gg(s(T85), s(T86))
U7_gga(T73, T74, geq34_out_gg(T73, T74)) → rem1_out_gga(s(T73), s(T74), s(T73))
U6_gga(T7, T15, T10, rem1_out_gga(T18, s(T15), T10)) → rem1_out_gga(T7, s(T15), T10)
SUB14_IN_GGA(s(T41), s(T42), X68) → SUB14_IN_GGA(T41, T42, X68)
SUB14_IN_GGA(s(T41), s(T42)) → SUB14_IN_GGA(T41, T42)
From the DPs we obtained the following set of size-change graphs:
REM1_IN_GGA(T7, s(T15), T10) → U5_GGA(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_GGA(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → REM1_IN_GGA(T18, s(T15), T10)
rem1_in_gga(T7, s(T15), T10) → U4_gga(T7, T15, T10, sub9_in_gga(T7, T15, X7))
sub9_in_gga(s(T29), T30, X41) → U3_gga(T29, T30, X41, sub14_in_gga(T29, T30, X41))
sub14_in_gga(s(T41), s(T42), X68) → U1_gga(T41, T42, X68, sub14_in_gga(T41, T42, X68))
sub14_in_gga(T47, 0, T47) → sub14_out_gga(T47, 0, T47)
U1_gga(T41, T42, X68, sub14_out_gga(T41, T42, X68)) → sub14_out_gga(s(T41), s(T42), X68)
U3_gga(T29, T30, X41, sub14_out_gga(T29, T30, X41)) → sub9_out_gga(s(T29), T30, X41)
U4_gga(T7, T15, T10, sub9_out_gga(T7, T15, X7)) → rem1_out_gga(T7, s(T15), T10)
rem1_in_gga(T7, s(T15), T10) → U5_gga(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_gga(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → U6_gga(T7, T15, T10, rem1_in_gga(T18, s(T15), T10))
rem1_in_gga(s(T73), s(T74), s(T73)) → U7_gga(T73, T74, geq34_in_gg(T73, T74))
geq34_in_gg(s(T85), s(T86)) → U2_gg(T85, T86, geq34_in_gg(T85, T86))
geq34_in_gg(T91, 0) → geq34_out_gg(T91, 0)
U2_gg(T85, T86, geq34_out_gg(T85, T86)) → geq34_out_gg(s(T85), s(T86))
U7_gga(T73, T74, geq34_out_gg(T73, T74)) → rem1_out_gga(s(T73), s(T74), s(T73))
U6_gga(T7, T15, T10, rem1_out_gga(T18, s(T15), T10)) → rem1_out_gga(T7, s(T15), T10)
REM1_IN_GGA(T7, s(T15), T10) → U5_GGA(T7, T15, T10, sub9_in_gga(T7, T15, T18))
U5_GGA(T7, T15, T10, sub9_out_gga(T7, T15, T18)) → REM1_IN_GGA(T18, s(T15), T10)
sub9_in_gga(s(T29), T30, X41) → U3_gga(T29, T30, X41, sub14_in_gga(T29, T30, X41))
U3_gga(T29, T30, X41, sub14_out_gga(T29, T30, X41)) → sub9_out_gga(s(T29), T30, X41)
sub14_in_gga(s(T41), s(T42), X68) → U1_gga(T41, T42, X68, sub14_in_gga(T41, T42, X68))
sub14_in_gga(T47, 0, T47) → sub14_out_gga(T47, 0, T47)
U1_gga(T41, T42, X68, sub14_out_gga(T41, T42, X68)) → sub14_out_gga(s(T41), s(T42), X68)
REM1_IN_GGA(T7, s(T15)) → U5_GGA(T15, sub9_in_gga(T7, T15))
U5_GGA(T15, sub9_out_gga(T18)) → REM1_IN_GGA(T18, s(T15))
sub9_in_gga(s(T29), T30) → U3_gga(sub14_in_gga(T29, T30))
U3_gga(sub14_out_gga(X41)) → sub9_out_gga(X41)
sub14_in_gga(s(T41), s(T42)) → U1_gga(sub14_in_gga(T41, T42))
sub14_in_gga(T47, 0) → sub14_out_gga(T47)
U1_gga(sub14_out_gga(X68)) → sub14_out_gga(X68)
sub9_in_gga(x0, x1)
U3_gga(x0)
sub14_in_gga(x0, x1)
U1_gga(x0)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
REM1_IN_GGA(T7, s(T15)) → U5_GGA(T15, sub9_in_gga(T7, T15))
POL( U5_GGA(x1, x2) ) = x2
POL( sub9_in_gga(x1, x2) ) = x1
POL( s(x1) ) = 2x1 + 2
POL( U3_gga(x1) ) = x1
POL( sub14_in_gga(x1, x2) ) = 2x1 + 2
POL( U1_gga(x1) ) = 2x1 + 2
POL( 0 ) = 2
POL( sub14_out_gga(x1) ) = 2x1 + 2
POL( sub9_out_gga(x1) ) = 2x1 + 2
POL( REM1_IN_GGA(x1, x2) ) = 2x1 + 2
sub9_in_gga(s(T29), T30) → U3_gga(sub14_in_gga(T29, T30))
sub14_in_gga(s(T41), s(T42)) → U1_gga(sub14_in_gga(T41, T42))
sub14_in_gga(T47, 0) → sub14_out_gga(T47)
U3_gga(sub14_out_gga(X41)) → sub9_out_gga(X41)
U1_gga(sub14_out_gga(X68)) → sub14_out_gga(X68)
U5_GGA(T15, sub9_out_gga(T18)) → REM1_IN_GGA(T18, s(T15))
sub9_in_gga(s(T29), T30) → U3_gga(sub14_in_gga(T29, T30))
U3_gga(sub14_out_gga(X41)) → sub9_out_gga(X41)
sub14_in_gga(s(T41), s(T42)) → U1_gga(sub14_in_gga(T41, T42))
sub14_in_gga(T47, 0) → sub14_out_gga(T47)
U1_gga(sub14_out_gga(X68)) → sub14_out_gga(X68)
sub9_in_gga(x0, x1)
U3_gga(x0)
sub14_in_gga(x0, x1)
U1_gga(x0)