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 TRUE
↳16 PiDP
↳17 UsableRulesProof (⇔)
↳18 PiDP
↳19 PiDPToQDPProof (⇐)
↳20 QDP
↳21 QDPSizeChangeProof (⇔)
↳22 TRUE
select1_in_gga(T12, .(T12, T13), T13) → select1_out_gga(T12, .(T12, T13), T13)
select1_in_gga(T31, .(T23, .(T31, [])), []) → select1_out_gga(T31, .(T23, .(T31, [])), [])
select1_in_gga(T33, .(T23, .(T40, T41)), []) → U2_gga(T33, T23, T40, T41, select46_in_gg(T33, T41))
select46_in_gg(T31, .(T31, [])) → select46_out_gg(T31, .(T31, []))
select46_in_gg(T33, .(T40, T41)) → U1_gg(T33, T40, T41, select46_in_gg(T33, T41))
U1_gg(T33, T40, T41, select46_out_gg(T33, T41)) → select46_out_gg(T33, .(T40, T41))
U2_gga(T33, T23, T40, T41, select46_out_gg(T33, T41)) → select1_out_gga(T33, .(T23, .(T40, T41)), [])
select1_in_gga(T14, .(T47, T46), .(T47, T49)) → U3_gga(T14, T47, T46, T49, select1_in_gga(T14, T46, T49))
select1_in_gga(T14, .(T55, T54), .(T55, T57)) → U4_gga(T14, T55, T54, T57, select1_in_gga(T14, T54, T57))
U4_gga(T14, T55, T54, T57, select1_out_gga(T14, T54, T57)) → select1_out_gga(T14, .(T55, T54), .(T55, T57))
U3_gga(T14, T47, T46, T49, select1_out_gga(T14, T46, T49)) → select1_out_gga(T14, .(T47, T46), .(T47, T49))
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
select1_in_gga(T12, .(T12, T13), T13) → select1_out_gga(T12, .(T12, T13), T13)
select1_in_gga(T31, .(T23, .(T31, [])), []) → select1_out_gga(T31, .(T23, .(T31, [])), [])
select1_in_gga(T33, .(T23, .(T40, T41)), []) → U2_gga(T33, T23, T40, T41, select46_in_gg(T33, T41))
select46_in_gg(T31, .(T31, [])) → select46_out_gg(T31, .(T31, []))
select46_in_gg(T33, .(T40, T41)) → U1_gg(T33, T40, T41, select46_in_gg(T33, T41))
U1_gg(T33, T40, T41, select46_out_gg(T33, T41)) → select46_out_gg(T33, .(T40, T41))
U2_gga(T33, T23, T40, T41, select46_out_gg(T33, T41)) → select1_out_gga(T33, .(T23, .(T40, T41)), [])
select1_in_gga(T14, .(T47, T46), .(T47, T49)) → U3_gga(T14, T47, T46, T49, select1_in_gga(T14, T46, T49))
select1_in_gga(T14, .(T55, T54), .(T55, T57)) → U4_gga(T14, T55, T54, T57, select1_in_gga(T14, T54, T57))
U4_gga(T14, T55, T54, T57, select1_out_gga(T14, T54, T57)) → select1_out_gga(T14, .(T55, T54), .(T55, T57))
U3_gga(T14, T47, T46, T49, select1_out_gga(T14, T46, T49)) → select1_out_gga(T14, .(T47, T46), .(T47, T49))
SELECT1_IN_GGA(T33, .(T23, .(T40, T41)), []) → U2_GGA(T33, T23, T40, T41, select46_in_gg(T33, T41))
SELECT1_IN_GGA(T33, .(T23, .(T40, T41)), []) → SELECT46_IN_GG(T33, T41)
SELECT46_IN_GG(T33, .(T40, T41)) → U1_GG(T33, T40, T41, select46_in_gg(T33, T41))
SELECT46_IN_GG(T33, .(T40, T41)) → SELECT46_IN_GG(T33, T41)
SELECT1_IN_GGA(T14, .(T47, T46), .(T47, T49)) → U3_GGA(T14, T47, T46, T49, select1_in_gga(T14, T46, T49))
SELECT1_IN_GGA(T14, .(T47, T46), .(T47, T49)) → SELECT1_IN_GGA(T14, T46, T49)
SELECT1_IN_GGA(T14, .(T55, T54), .(T55, T57)) → U4_GGA(T14, T55, T54, T57, select1_in_gga(T14, T54, T57))
select1_in_gga(T12, .(T12, T13), T13) → select1_out_gga(T12, .(T12, T13), T13)
select1_in_gga(T31, .(T23, .(T31, [])), []) → select1_out_gga(T31, .(T23, .(T31, [])), [])
select1_in_gga(T33, .(T23, .(T40, T41)), []) → U2_gga(T33, T23, T40, T41, select46_in_gg(T33, T41))
select46_in_gg(T31, .(T31, [])) → select46_out_gg(T31, .(T31, []))
select46_in_gg(T33, .(T40, T41)) → U1_gg(T33, T40, T41, select46_in_gg(T33, T41))
U1_gg(T33, T40, T41, select46_out_gg(T33, T41)) → select46_out_gg(T33, .(T40, T41))
U2_gga(T33, T23, T40, T41, select46_out_gg(T33, T41)) → select1_out_gga(T33, .(T23, .(T40, T41)), [])
select1_in_gga(T14, .(T47, T46), .(T47, T49)) → U3_gga(T14, T47, T46, T49, select1_in_gga(T14, T46, T49))
select1_in_gga(T14, .(T55, T54), .(T55, T57)) → U4_gga(T14, T55, T54, T57, select1_in_gga(T14, T54, T57))
U4_gga(T14, T55, T54, T57, select1_out_gga(T14, T54, T57)) → select1_out_gga(T14, .(T55, T54), .(T55, T57))
U3_gga(T14, T47, T46, T49, select1_out_gga(T14, T46, T49)) → select1_out_gga(T14, .(T47, T46), .(T47, T49))
SELECT1_IN_GGA(T33, .(T23, .(T40, T41)), []) → U2_GGA(T33, T23, T40, T41, select46_in_gg(T33, T41))
SELECT1_IN_GGA(T33, .(T23, .(T40, T41)), []) → SELECT46_IN_GG(T33, T41)
SELECT46_IN_GG(T33, .(T40, T41)) → U1_GG(T33, T40, T41, select46_in_gg(T33, T41))
SELECT46_IN_GG(T33, .(T40, T41)) → SELECT46_IN_GG(T33, T41)
SELECT1_IN_GGA(T14, .(T47, T46), .(T47, T49)) → U3_GGA(T14, T47, T46, T49, select1_in_gga(T14, T46, T49))
SELECT1_IN_GGA(T14, .(T47, T46), .(T47, T49)) → SELECT1_IN_GGA(T14, T46, T49)
SELECT1_IN_GGA(T14, .(T55, T54), .(T55, T57)) → U4_GGA(T14, T55, T54, T57, select1_in_gga(T14, T54, T57))
select1_in_gga(T12, .(T12, T13), T13) → select1_out_gga(T12, .(T12, T13), T13)
select1_in_gga(T31, .(T23, .(T31, [])), []) → select1_out_gga(T31, .(T23, .(T31, [])), [])
select1_in_gga(T33, .(T23, .(T40, T41)), []) → U2_gga(T33, T23, T40, T41, select46_in_gg(T33, T41))
select46_in_gg(T31, .(T31, [])) → select46_out_gg(T31, .(T31, []))
select46_in_gg(T33, .(T40, T41)) → U1_gg(T33, T40, T41, select46_in_gg(T33, T41))
U1_gg(T33, T40, T41, select46_out_gg(T33, T41)) → select46_out_gg(T33, .(T40, T41))
U2_gga(T33, T23, T40, T41, select46_out_gg(T33, T41)) → select1_out_gga(T33, .(T23, .(T40, T41)), [])
select1_in_gga(T14, .(T47, T46), .(T47, T49)) → U3_gga(T14, T47, T46, T49, select1_in_gga(T14, T46, T49))
select1_in_gga(T14, .(T55, T54), .(T55, T57)) → U4_gga(T14, T55, T54, T57, select1_in_gga(T14, T54, T57))
U4_gga(T14, T55, T54, T57, select1_out_gga(T14, T54, T57)) → select1_out_gga(T14, .(T55, T54), .(T55, T57))
U3_gga(T14, T47, T46, T49, select1_out_gga(T14, T46, T49)) → select1_out_gga(T14, .(T47, T46), .(T47, T49))
SELECT46_IN_GG(T33, .(T40, T41)) → SELECT46_IN_GG(T33, T41)
select1_in_gga(T12, .(T12, T13), T13) → select1_out_gga(T12, .(T12, T13), T13)
select1_in_gga(T31, .(T23, .(T31, [])), []) → select1_out_gga(T31, .(T23, .(T31, [])), [])
select1_in_gga(T33, .(T23, .(T40, T41)), []) → U2_gga(T33, T23, T40, T41, select46_in_gg(T33, T41))
select46_in_gg(T31, .(T31, [])) → select46_out_gg(T31, .(T31, []))
select46_in_gg(T33, .(T40, T41)) → U1_gg(T33, T40, T41, select46_in_gg(T33, T41))
U1_gg(T33, T40, T41, select46_out_gg(T33, T41)) → select46_out_gg(T33, .(T40, T41))
U2_gga(T33, T23, T40, T41, select46_out_gg(T33, T41)) → select1_out_gga(T33, .(T23, .(T40, T41)), [])
select1_in_gga(T14, .(T47, T46), .(T47, T49)) → U3_gga(T14, T47, T46, T49, select1_in_gga(T14, T46, T49))
select1_in_gga(T14, .(T55, T54), .(T55, T57)) → U4_gga(T14, T55, T54, T57, select1_in_gga(T14, T54, T57))
U4_gga(T14, T55, T54, T57, select1_out_gga(T14, T54, T57)) → select1_out_gga(T14, .(T55, T54), .(T55, T57))
U3_gga(T14, T47, T46, T49, select1_out_gga(T14, T46, T49)) → select1_out_gga(T14, .(T47, T46), .(T47, T49))
SELECT46_IN_GG(T33, .(T40, T41)) → SELECT46_IN_GG(T33, T41)
SELECT46_IN_GG(T33, .(T40, T41)) → SELECT46_IN_GG(T33, T41)
From the DPs we obtained the following set of size-change graphs:
SELECT1_IN_GGA(T14, .(T47, T46), .(T47, T49)) → SELECT1_IN_GGA(T14, T46, T49)
select1_in_gga(T12, .(T12, T13), T13) → select1_out_gga(T12, .(T12, T13), T13)
select1_in_gga(T31, .(T23, .(T31, [])), []) → select1_out_gga(T31, .(T23, .(T31, [])), [])
select1_in_gga(T33, .(T23, .(T40, T41)), []) → U2_gga(T33, T23, T40, T41, select46_in_gg(T33, T41))
select46_in_gg(T31, .(T31, [])) → select46_out_gg(T31, .(T31, []))
select46_in_gg(T33, .(T40, T41)) → U1_gg(T33, T40, T41, select46_in_gg(T33, T41))
U1_gg(T33, T40, T41, select46_out_gg(T33, T41)) → select46_out_gg(T33, .(T40, T41))
U2_gga(T33, T23, T40, T41, select46_out_gg(T33, T41)) → select1_out_gga(T33, .(T23, .(T40, T41)), [])
select1_in_gga(T14, .(T47, T46), .(T47, T49)) → U3_gga(T14, T47, T46, T49, select1_in_gga(T14, T46, T49))
select1_in_gga(T14, .(T55, T54), .(T55, T57)) → U4_gga(T14, T55, T54, T57, select1_in_gga(T14, T54, T57))
U4_gga(T14, T55, T54, T57, select1_out_gga(T14, T54, T57)) → select1_out_gga(T14, .(T55, T54), .(T55, T57))
U3_gga(T14, T47, T46, T49, select1_out_gga(T14, T46, T49)) → select1_out_gga(T14, .(T47, T46), .(T47, T49))
SELECT1_IN_GGA(T14, .(T47, T46), .(T47, T49)) → SELECT1_IN_GGA(T14, T46, T49)
SELECT1_IN_GGA(T14, .(T47, T46)) → SELECT1_IN_GGA(T14, T46)
From the DPs we obtained the following set of size-change graphs: