↳ PROLOG
↳ PrologToPiTRSProof
With regard to the inferred argument filtering the predicates were used in the following modes:
f3: (b,b,f)
Transforming PROLOG into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:
f_3_in_gga3(RES, []_0, RES) -> f_3_out_gga3(RES, []_0, RES)
f_3_in_gga3([]_0, ._22(Head, Tail), RES) -> if_f_3_in_1_gga4(Head, Tail, RES, f_3_in_gga3(._22(Head, Tail), Tail, RES))
f_3_in_gga3(._22(Head, Tail), Y, RES) -> if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_in_gga3(Y, Tail, RES))
if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_out_gga3(Y, Tail, RES)) -> f_3_out_gga3(._22(Head, Tail), Y, RES)
if_f_3_in_1_gga4(Head, Tail, RES, f_3_out_gga3(._22(Head, Tail), Tail, RES)) -> f_3_out_gga3([]_0, ._22(Head, Tail), RES)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of PROLOG
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
f_3_in_gga3(RES, []_0, RES) -> f_3_out_gga3(RES, []_0, RES)
f_3_in_gga3([]_0, ._22(Head, Tail), RES) -> if_f_3_in_1_gga4(Head, Tail, RES, f_3_in_gga3(._22(Head, Tail), Tail, RES))
f_3_in_gga3(._22(Head, Tail), Y, RES) -> if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_in_gga3(Y, Tail, RES))
if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_out_gga3(Y, Tail, RES)) -> f_3_out_gga3(._22(Head, Tail), Y, RES)
if_f_3_in_1_gga4(Head, Tail, RES, f_3_out_gga3(._22(Head, Tail), Tail, RES)) -> f_3_out_gga3([]_0, ._22(Head, Tail), RES)
F_3_IN_GGA3([]_0, ._22(Head, Tail), RES) -> IF_F_3_IN_1_GGA4(Head, Tail, RES, f_3_in_gga3(._22(Head, Tail), Tail, RES))
F_3_IN_GGA3([]_0, ._22(Head, Tail), RES) -> F_3_IN_GGA3(._22(Head, Tail), Tail, RES)
F_3_IN_GGA3(._22(Head, Tail), Y, RES) -> IF_F_3_IN_2_GGA5(Head, Tail, Y, RES, f_3_in_gga3(Y, Tail, RES))
F_3_IN_GGA3(._22(Head, Tail), Y, RES) -> F_3_IN_GGA3(Y, Tail, RES)
f_3_in_gga3(RES, []_0, RES) -> f_3_out_gga3(RES, []_0, RES)
f_3_in_gga3([]_0, ._22(Head, Tail), RES) -> if_f_3_in_1_gga4(Head, Tail, RES, f_3_in_gga3(._22(Head, Tail), Tail, RES))
f_3_in_gga3(._22(Head, Tail), Y, RES) -> if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_in_gga3(Y, Tail, RES))
if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_out_gga3(Y, Tail, RES)) -> f_3_out_gga3(._22(Head, Tail), Y, RES)
if_f_3_in_1_gga4(Head, Tail, RES, f_3_out_gga3(._22(Head, Tail), Tail, RES)) -> f_3_out_gga3([]_0, ._22(Head, Tail), RES)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
F_3_IN_GGA3([]_0, ._22(Head, Tail), RES) -> IF_F_3_IN_1_GGA4(Head, Tail, RES, f_3_in_gga3(._22(Head, Tail), Tail, RES))
F_3_IN_GGA3([]_0, ._22(Head, Tail), RES) -> F_3_IN_GGA3(._22(Head, Tail), Tail, RES)
F_3_IN_GGA3(._22(Head, Tail), Y, RES) -> IF_F_3_IN_2_GGA5(Head, Tail, Y, RES, f_3_in_gga3(Y, Tail, RES))
F_3_IN_GGA3(._22(Head, Tail), Y, RES) -> F_3_IN_GGA3(Y, Tail, RES)
f_3_in_gga3(RES, []_0, RES) -> f_3_out_gga3(RES, []_0, RES)
f_3_in_gga3([]_0, ._22(Head, Tail), RES) -> if_f_3_in_1_gga4(Head, Tail, RES, f_3_in_gga3(._22(Head, Tail), Tail, RES))
f_3_in_gga3(._22(Head, Tail), Y, RES) -> if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_in_gga3(Y, Tail, RES))
if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_out_gga3(Y, Tail, RES)) -> f_3_out_gga3(._22(Head, Tail), Y, RES)
if_f_3_in_1_gga4(Head, Tail, RES, f_3_out_gga3(._22(Head, Tail), Tail, RES)) -> f_3_out_gga3([]_0, ._22(Head, Tail), RES)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
F_3_IN_GGA3([]_0, ._22(Head, Tail), RES) -> F_3_IN_GGA3(._22(Head, Tail), Tail, RES)
F_3_IN_GGA3(._22(Head, Tail), Y, RES) -> F_3_IN_GGA3(Y, Tail, RES)
f_3_in_gga3(RES, []_0, RES) -> f_3_out_gga3(RES, []_0, RES)
f_3_in_gga3([]_0, ._22(Head, Tail), RES) -> if_f_3_in_1_gga4(Head, Tail, RES, f_3_in_gga3(._22(Head, Tail), Tail, RES))
f_3_in_gga3(._22(Head, Tail), Y, RES) -> if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_in_gga3(Y, Tail, RES))
if_f_3_in_2_gga5(Head, Tail, Y, RES, f_3_out_gga3(Y, Tail, RES)) -> f_3_out_gga3(._22(Head, Tail), Y, RES)
if_f_3_in_1_gga4(Head, Tail, RES, f_3_out_gga3(._22(Head, Tail), Tail, RES)) -> f_3_out_gga3([]_0, ._22(Head, Tail), RES)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
F_3_IN_GGA3([]_0, ._22(Head, Tail), RES) -> F_3_IN_GGA3(._22(Head, Tail), Tail, RES)
F_3_IN_GGA3(._22(Head, Tail), Y, RES) -> F_3_IN_GGA3(Y, Tail, RES)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ QDPSizeChangeProof
F_3_IN_GGA2([]_0, ._22(Head, Tail)) -> F_3_IN_GGA2(._22(Head, Tail), Tail)
F_3_IN_GGA2(._22(Head, Tail), Y) -> F_3_IN_GGA2(Y, Tail)
From the DPs we obtained the following set of size-change graphs: