(0) Obligation:

Clauses:

goal(X) :- ','(s2l(X, Xs), append(Xs, X1, X2)).
append([], Y, Z) :- ','(!, eq(Y, Z)).
append(X, Y, .(H, Z)) :- ','(head(X, H), ','(tail(X, T), append(T, Y, Z))).
s2l(0, L) :- ','(!, eq(L, [])).
s2l(X, .(X3, Xs)) :- ','(p(X, P), s2l(P, Xs)).
head([], X4).
head(.(H, X5), H).
tail([], []).
tail(.(X6, Xs), Xs).
p(0, 0).
p(s(X), X).
eq(X, X).

Query: goal(g)

(1) PrologToPiTRSViaGraphTransformerProof (SOUND transformation)

Transformed Prolog program to (Pi-)TRS.

(2) Obligation:

Pi-finite rewrite system:
The TRS R consists of the following rules:

goalA_in_g(0) → U1_g(appendB_in_aa(X10, X11))
appendB_in_aa(X53, X53) → appendB_out_aa(X53, X53)
U1_g(appendB_out_aa(X10, X11)) → goalA_out_g(0)
goalA_in_g(s(T9)) → U2_g(T9, pC_in_gaaaa(T9, X72, X71, X10, X11))
pC_in_gaaaa(T9, T10, X71, X10, X11) → U7_gaaaa(T9, T10, X71, X10, X11, s2lD_in_ga(T9, T10))
s2lD_in_ga(0, []) → s2lD_out_ga(0, [])
s2lD_in_ga(s(T16), .(X111, X112)) → U3_ga(T16, X111, X112, s2lD_in_ga(T16, X112))
U3_ga(T16, X111, X112, s2lD_out_ga(T16, X112)) → s2lD_out_ga(s(T16), .(X111, X112))
U7_gaaaa(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → U8_gaaaa(T9, T10, X71, X10, X11, appendF_in_agaa(X71, T10, X10, X11))
appendF_in_agaa(X188, T31, X151, .(X188, X153)) → U6_agaa(X188, T31, X151, X153, appendE_in_gaa(T31, X151, X153))
appendE_in_gaa([], X210, X210) → appendE_out_gaa([], X210, X210)
appendE_in_gaa([], X235, .(X251, X237)) → U4_gaa(X235, X251, X237, appendB_in_aa(X235, X237))
U4_gaa(X235, X251, X237, appendB_out_aa(X235, X237)) → appendE_out_gaa([], X235, .(X251, X237))
appendE_in_gaa(.(T50, T52), X235, .(T50, X237)) → U5_gaa(T50, T52, X235, X237, appendE_in_gaa(T52, X235, X237))
U5_gaa(T50, T52, X235, X237, appendE_out_gaa(T52, X235, X237)) → appendE_out_gaa(.(T50, T52), X235, .(T50, X237))
U6_agaa(X188, T31, X151, X153, appendE_out_gaa(T31, X151, X153)) → appendF_out_agaa(X188, T31, X151, .(X188, X153))
U8_gaaaa(T9, T10, X71, X10, X11, appendF_out_agaa(X71, T10, X10, X11)) → pC_out_gaaaa(T9, T10, X71, X10, X11)
U2_g(T9, pC_out_gaaaa(T9, X72, X71, X10, X11)) → goalA_out_g(s(T9))

The argument filtering Pi contains the following mapping:
goalA_in_g(x1)  =  goalA_in_g(x1)
0  =  0
U1_g(x1)  =  U1_g(x1)
appendB_in_aa(x1, x2)  =  appendB_in_aa
appendB_out_aa(x1, x2)  =  appendB_out_aa
goalA_out_g(x1)  =  goalA_out_g(x1)
s(x1)  =  s(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
pC_in_gaaaa(x1, x2, x3, x4, x5)  =  pC_in_gaaaa(x1)
U7_gaaaa(x1, x2, x3, x4, x5, x6)  =  U7_gaaaa(x1, x6)
s2lD_in_ga(x1, x2)  =  s2lD_in_ga(x1)
s2lD_out_ga(x1, x2)  =  s2lD_out_ga(x1, x2)
U3_ga(x1, x2, x3, x4)  =  U3_ga(x1, x4)
.(x1, x2)  =  .(x2)
U8_gaaaa(x1, x2, x3, x4, x5, x6)  =  U8_gaaaa(x1, x2, x6)
appendF_in_agaa(x1, x2, x3, x4)  =  appendF_in_agaa(x2)
U6_agaa(x1, x2, x3, x4, x5)  =  U6_agaa(x2, x5)
appendE_in_gaa(x1, x2, x3)  =  appendE_in_gaa(x1)
[]  =  []
appendE_out_gaa(x1, x2, x3)  =  appendE_out_gaa(x1)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x4)
U5_gaa(x1, x2, x3, x4, x5)  =  U5_gaa(x2, x5)
appendF_out_agaa(x1, x2, x3, x4)  =  appendF_out_agaa(x2)
pC_out_gaaaa(x1, x2, x3, x4, x5)  =  pC_out_gaaaa(x1, x2)

(3) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem:
Pi DP problem:
The TRS P consists of the following rules:

GOALA_IN_G(0) → U1_G(appendB_in_aa(X10, X11))
GOALA_IN_G(0) → APPENDB_IN_AA(X10, X11)
GOALA_IN_G(s(T9)) → U2_G(T9, pC_in_gaaaa(T9, X72, X71, X10, X11))
GOALA_IN_G(s(T9)) → PC_IN_GAAAA(T9, X72, X71, X10, X11)
PC_IN_GAAAA(T9, T10, X71, X10, X11) → U7_GAAAA(T9, T10, X71, X10, X11, s2lD_in_ga(T9, T10))
PC_IN_GAAAA(T9, T10, X71, X10, X11) → S2LD_IN_GA(T9, T10)
S2LD_IN_GA(s(T16), .(X111, X112)) → U3_GA(T16, X111, X112, s2lD_in_ga(T16, X112))
S2LD_IN_GA(s(T16), .(X111, X112)) → S2LD_IN_GA(T16, X112)
U7_GAAAA(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → U8_GAAAA(T9, T10, X71, X10, X11, appendF_in_agaa(X71, T10, X10, X11))
U7_GAAAA(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → APPENDF_IN_AGAA(X71, T10, X10, X11)
APPENDF_IN_AGAA(X188, T31, X151, .(X188, X153)) → U6_AGAA(X188, T31, X151, X153, appendE_in_gaa(T31, X151, X153))
APPENDF_IN_AGAA(X188, T31, X151, .(X188, X153)) → APPENDE_IN_GAA(T31, X151, X153)
APPENDE_IN_GAA([], X235, .(X251, X237)) → U4_GAA(X235, X251, X237, appendB_in_aa(X235, X237))
APPENDE_IN_GAA([], X235, .(X251, X237)) → APPENDB_IN_AA(X235, X237)
APPENDE_IN_GAA(.(T50, T52), X235, .(T50, X237)) → U5_GAA(T50, T52, X235, X237, appendE_in_gaa(T52, X235, X237))
APPENDE_IN_GAA(.(T50, T52), X235, .(T50, X237)) → APPENDE_IN_GAA(T52, X235, X237)

The TRS R consists of the following rules:

goalA_in_g(0) → U1_g(appendB_in_aa(X10, X11))
appendB_in_aa(X53, X53) → appendB_out_aa(X53, X53)
U1_g(appendB_out_aa(X10, X11)) → goalA_out_g(0)
goalA_in_g(s(T9)) → U2_g(T9, pC_in_gaaaa(T9, X72, X71, X10, X11))
pC_in_gaaaa(T9, T10, X71, X10, X11) → U7_gaaaa(T9, T10, X71, X10, X11, s2lD_in_ga(T9, T10))
s2lD_in_ga(0, []) → s2lD_out_ga(0, [])
s2lD_in_ga(s(T16), .(X111, X112)) → U3_ga(T16, X111, X112, s2lD_in_ga(T16, X112))
U3_ga(T16, X111, X112, s2lD_out_ga(T16, X112)) → s2lD_out_ga(s(T16), .(X111, X112))
U7_gaaaa(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → U8_gaaaa(T9, T10, X71, X10, X11, appendF_in_agaa(X71, T10, X10, X11))
appendF_in_agaa(X188, T31, X151, .(X188, X153)) → U6_agaa(X188, T31, X151, X153, appendE_in_gaa(T31, X151, X153))
appendE_in_gaa([], X210, X210) → appendE_out_gaa([], X210, X210)
appendE_in_gaa([], X235, .(X251, X237)) → U4_gaa(X235, X251, X237, appendB_in_aa(X235, X237))
U4_gaa(X235, X251, X237, appendB_out_aa(X235, X237)) → appendE_out_gaa([], X235, .(X251, X237))
appendE_in_gaa(.(T50, T52), X235, .(T50, X237)) → U5_gaa(T50, T52, X235, X237, appendE_in_gaa(T52, X235, X237))
U5_gaa(T50, T52, X235, X237, appendE_out_gaa(T52, X235, X237)) → appendE_out_gaa(.(T50, T52), X235, .(T50, X237))
U6_agaa(X188, T31, X151, X153, appendE_out_gaa(T31, X151, X153)) → appendF_out_agaa(X188, T31, X151, .(X188, X153))
U8_gaaaa(T9, T10, X71, X10, X11, appendF_out_agaa(X71, T10, X10, X11)) → pC_out_gaaaa(T9, T10, X71, X10, X11)
U2_g(T9, pC_out_gaaaa(T9, X72, X71, X10, X11)) → goalA_out_g(s(T9))

The argument filtering Pi contains the following mapping:
goalA_in_g(x1)  =  goalA_in_g(x1)
0  =  0
U1_g(x1)  =  U1_g(x1)
appendB_in_aa(x1, x2)  =  appendB_in_aa
appendB_out_aa(x1, x2)  =  appendB_out_aa
goalA_out_g(x1)  =  goalA_out_g(x1)
s(x1)  =  s(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
pC_in_gaaaa(x1, x2, x3, x4, x5)  =  pC_in_gaaaa(x1)
U7_gaaaa(x1, x2, x3, x4, x5, x6)  =  U7_gaaaa(x1, x6)
s2lD_in_ga(x1, x2)  =  s2lD_in_ga(x1)
s2lD_out_ga(x1, x2)  =  s2lD_out_ga(x1, x2)
U3_ga(x1, x2, x3, x4)  =  U3_ga(x1, x4)
.(x1, x2)  =  .(x2)
U8_gaaaa(x1, x2, x3, x4, x5, x6)  =  U8_gaaaa(x1, x2, x6)
appendF_in_agaa(x1, x2, x3, x4)  =  appendF_in_agaa(x2)
U6_agaa(x1, x2, x3, x4, x5)  =  U6_agaa(x2, x5)
appendE_in_gaa(x1, x2, x3)  =  appendE_in_gaa(x1)
[]  =  []
appendE_out_gaa(x1, x2, x3)  =  appendE_out_gaa(x1)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x4)
U5_gaa(x1, x2, x3, x4, x5)  =  U5_gaa(x2, x5)
appendF_out_agaa(x1, x2, x3, x4)  =  appendF_out_agaa(x2)
pC_out_gaaaa(x1, x2, x3, x4, x5)  =  pC_out_gaaaa(x1, x2)
GOALA_IN_G(x1)  =  GOALA_IN_G(x1)
U1_G(x1)  =  U1_G(x1)
APPENDB_IN_AA(x1, x2)  =  APPENDB_IN_AA
U2_G(x1, x2)  =  U2_G(x1, x2)
PC_IN_GAAAA(x1, x2, x3, x4, x5)  =  PC_IN_GAAAA(x1)
U7_GAAAA(x1, x2, x3, x4, x5, x6)  =  U7_GAAAA(x1, x6)
S2LD_IN_GA(x1, x2)  =  S2LD_IN_GA(x1)
U3_GA(x1, x2, x3, x4)  =  U3_GA(x1, x4)
U8_GAAAA(x1, x2, x3, x4, x5, x6)  =  U8_GAAAA(x1, x2, x6)
APPENDF_IN_AGAA(x1, x2, x3, x4)  =  APPENDF_IN_AGAA(x2)
U6_AGAA(x1, x2, x3, x4, x5)  =  U6_AGAA(x2, x5)
APPENDE_IN_GAA(x1, x2, x3)  =  APPENDE_IN_GAA(x1)
U4_GAA(x1, x2, x3, x4)  =  U4_GAA(x4)
U5_GAA(x1, x2, x3, x4, x5)  =  U5_GAA(x2, x5)

We have to consider all (P,R,Pi)-chains

(4) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

GOALA_IN_G(0) → U1_G(appendB_in_aa(X10, X11))
GOALA_IN_G(0) → APPENDB_IN_AA(X10, X11)
GOALA_IN_G(s(T9)) → U2_G(T9, pC_in_gaaaa(T9, X72, X71, X10, X11))
GOALA_IN_G(s(T9)) → PC_IN_GAAAA(T9, X72, X71, X10, X11)
PC_IN_GAAAA(T9, T10, X71, X10, X11) → U7_GAAAA(T9, T10, X71, X10, X11, s2lD_in_ga(T9, T10))
PC_IN_GAAAA(T9, T10, X71, X10, X11) → S2LD_IN_GA(T9, T10)
S2LD_IN_GA(s(T16), .(X111, X112)) → U3_GA(T16, X111, X112, s2lD_in_ga(T16, X112))
S2LD_IN_GA(s(T16), .(X111, X112)) → S2LD_IN_GA(T16, X112)
U7_GAAAA(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → U8_GAAAA(T9, T10, X71, X10, X11, appendF_in_agaa(X71, T10, X10, X11))
U7_GAAAA(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → APPENDF_IN_AGAA(X71, T10, X10, X11)
APPENDF_IN_AGAA(X188, T31, X151, .(X188, X153)) → U6_AGAA(X188, T31, X151, X153, appendE_in_gaa(T31, X151, X153))
APPENDF_IN_AGAA(X188, T31, X151, .(X188, X153)) → APPENDE_IN_GAA(T31, X151, X153)
APPENDE_IN_GAA([], X235, .(X251, X237)) → U4_GAA(X235, X251, X237, appendB_in_aa(X235, X237))
APPENDE_IN_GAA([], X235, .(X251, X237)) → APPENDB_IN_AA(X235, X237)
APPENDE_IN_GAA(.(T50, T52), X235, .(T50, X237)) → U5_GAA(T50, T52, X235, X237, appendE_in_gaa(T52, X235, X237))
APPENDE_IN_GAA(.(T50, T52), X235, .(T50, X237)) → APPENDE_IN_GAA(T52, X235, X237)

The TRS R consists of the following rules:

goalA_in_g(0) → U1_g(appendB_in_aa(X10, X11))
appendB_in_aa(X53, X53) → appendB_out_aa(X53, X53)
U1_g(appendB_out_aa(X10, X11)) → goalA_out_g(0)
goalA_in_g(s(T9)) → U2_g(T9, pC_in_gaaaa(T9, X72, X71, X10, X11))
pC_in_gaaaa(T9, T10, X71, X10, X11) → U7_gaaaa(T9, T10, X71, X10, X11, s2lD_in_ga(T9, T10))
s2lD_in_ga(0, []) → s2lD_out_ga(0, [])
s2lD_in_ga(s(T16), .(X111, X112)) → U3_ga(T16, X111, X112, s2lD_in_ga(T16, X112))
U3_ga(T16, X111, X112, s2lD_out_ga(T16, X112)) → s2lD_out_ga(s(T16), .(X111, X112))
U7_gaaaa(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → U8_gaaaa(T9, T10, X71, X10, X11, appendF_in_agaa(X71, T10, X10, X11))
appendF_in_agaa(X188, T31, X151, .(X188, X153)) → U6_agaa(X188, T31, X151, X153, appendE_in_gaa(T31, X151, X153))
appendE_in_gaa([], X210, X210) → appendE_out_gaa([], X210, X210)
appendE_in_gaa([], X235, .(X251, X237)) → U4_gaa(X235, X251, X237, appendB_in_aa(X235, X237))
U4_gaa(X235, X251, X237, appendB_out_aa(X235, X237)) → appendE_out_gaa([], X235, .(X251, X237))
appendE_in_gaa(.(T50, T52), X235, .(T50, X237)) → U5_gaa(T50, T52, X235, X237, appendE_in_gaa(T52, X235, X237))
U5_gaa(T50, T52, X235, X237, appendE_out_gaa(T52, X235, X237)) → appendE_out_gaa(.(T50, T52), X235, .(T50, X237))
U6_agaa(X188, T31, X151, X153, appendE_out_gaa(T31, X151, X153)) → appendF_out_agaa(X188, T31, X151, .(X188, X153))
U8_gaaaa(T9, T10, X71, X10, X11, appendF_out_agaa(X71, T10, X10, X11)) → pC_out_gaaaa(T9, T10, X71, X10, X11)
U2_g(T9, pC_out_gaaaa(T9, X72, X71, X10, X11)) → goalA_out_g(s(T9))

The argument filtering Pi contains the following mapping:
goalA_in_g(x1)  =  goalA_in_g(x1)
0  =  0
U1_g(x1)  =  U1_g(x1)
appendB_in_aa(x1, x2)  =  appendB_in_aa
appendB_out_aa(x1, x2)  =  appendB_out_aa
goalA_out_g(x1)  =  goalA_out_g(x1)
s(x1)  =  s(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
pC_in_gaaaa(x1, x2, x3, x4, x5)  =  pC_in_gaaaa(x1)
U7_gaaaa(x1, x2, x3, x4, x5, x6)  =  U7_gaaaa(x1, x6)
s2lD_in_ga(x1, x2)  =  s2lD_in_ga(x1)
s2lD_out_ga(x1, x2)  =  s2lD_out_ga(x1, x2)
U3_ga(x1, x2, x3, x4)  =  U3_ga(x1, x4)
.(x1, x2)  =  .(x2)
U8_gaaaa(x1, x2, x3, x4, x5, x6)  =  U8_gaaaa(x1, x2, x6)
appendF_in_agaa(x1, x2, x3, x4)  =  appendF_in_agaa(x2)
U6_agaa(x1, x2, x3, x4, x5)  =  U6_agaa(x2, x5)
appendE_in_gaa(x1, x2, x3)  =  appendE_in_gaa(x1)
[]  =  []
appendE_out_gaa(x1, x2, x3)  =  appendE_out_gaa(x1)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x4)
U5_gaa(x1, x2, x3, x4, x5)  =  U5_gaa(x2, x5)
appendF_out_agaa(x1, x2, x3, x4)  =  appendF_out_agaa(x2)
pC_out_gaaaa(x1, x2, x3, x4, x5)  =  pC_out_gaaaa(x1, x2)
GOALA_IN_G(x1)  =  GOALA_IN_G(x1)
U1_G(x1)  =  U1_G(x1)
APPENDB_IN_AA(x1, x2)  =  APPENDB_IN_AA
U2_G(x1, x2)  =  U2_G(x1, x2)
PC_IN_GAAAA(x1, x2, x3, x4, x5)  =  PC_IN_GAAAA(x1)
U7_GAAAA(x1, x2, x3, x4, x5, x6)  =  U7_GAAAA(x1, x6)
S2LD_IN_GA(x1, x2)  =  S2LD_IN_GA(x1)
U3_GA(x1, x2, x3, x4)  =  U3_GA(x1, x4)
U8_GAAAA(x1, x2, x3, x4, x5, x6)  =  U8_GAAAA(x1, x2, x6)
APPENDF_IN_AGAA(x1, x2, x3, x4)  =  APPENDF_IN_AGAA(x2)
U6_AGAA(x1, x2, x3, x4, x5)  =  U6_AGAA(x2, x5)
APPENDE_IN_GAA(x1, x2, x3)  =  APPENDE_IN_GAA(x1)
U4_GAA(x1, x2, x3, x4)  =  U4_GAA(x4)
U5_GAA(x1, x2, x3, x4, x5)  =  U5_GAA(x2, x5)

We have to consider all (P,R,Pi)-chains

(5) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LOPSTR] contains 2 SCCs with 14 less nodes.

(6) Complex Obligation (AND)

(7) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

APPENDE_IN_GAA(.(T50, T52), X235, .(T50, X237)) → APPENDE_IN_GAA(T52, X235, X237)

The TRS R consists of the following rules:

goalA_in_g(0) → U1_g(appendB_in_aa(X10, X11))
appendB_in_aa(X53, X53) → appendB_out_aa(X53, X53)
U1_g(appendB_out_aa(X10, X11)) → goalA_out_g(0)
goalA_in_g(s(T9)) → U2_g(T9, pC_in_gaaaa(T9, X72, X71, X10, X11))
pC_in_gaaaa(T9, T10, X71, X10, X11) → U7_gaaaa(T9, T10, X71, X10, X11, s2lD_in_ga(T9, T10))
s2lD_in_ga(0, []) → s2lD_out_ga(0, [])
s2lD_in_ga(s(T16), .(X111, X112)) → U3_ga(T16, X111, X112, s2lD_in_ga(T16, X112))
U3_ga(T16, X111, X112, s2lD_out_ga(T16, X112)) → s2lD_out_ga(s(T16), .(X111, X112))
U7_gaaaa(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → U8_gaaaa(T9, T10, X71, X10, X11, appendF_in_agaa(X71, T10, X10, X11))
appendF_in_agaa(X188, T31, X151, .(X188, X153)) → U6_agaa(X188, T31, X151, X153, appendE_in_gaa(T31, X151, X153))
appendE_in_gaa([], X210, X210) → appendE_out_gaa([], X210, X210)
appendE_in_gaa([], X235, .(X251, X237)) → U4_gaa(X235, X251, X237, appendB_in_aa(X235, X237))
U4_gaa(X235, X251, X237, appendB_out_aa(X235, X237)) → appendE_out_gaa([], X235, .(X251, X237))
appendE_in_gaa(.(T50, T52), X235, .(T50, X237)) → U5_gaa(T50, T52, X235, X237, appendE_in_gaa(T52, X235, X237))
U5_gaa(T50, T52, X235, X237, appendE_out_gaa(T52, X235, X237)) → appendE_out_gaa(.(T50, T52), X235, .(T50, X237))
U6_agaa(X188, T31, X151, X153, appendE_out_gaa(T31, X151, X153)) → appendF_out_agaa(X188, T31, X151, .(X188, X153))
U8_gaaaa(T9, T10, X71, X10, X11, appendF_out_agaa(X71, T10, X10, X11)) → pC_out_gaaaa(T9, T10, X71, X10, X11)
U2_g(T9, pC_out_gaaaa(T9, X72, X71, X10, X11)) → goalA_out_g(s(T9))

The argument filtering Pi contains the following mapping:
goalA_in_g(x1)  =  goalA_in_g(x1)
0  =  0
U1_g(x1)  =  U1_g(x1)
appendB_in_aa(x1, x2)  =  appendB_in_aa
appendB_out_aa(x1, x2)  =  appendB_out_aa
goalA_out_g(x1)  =  goalA_out_g(x1)
s(x1)  =  s(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
pC_in_gaaaa(x1, x2, x3, x4, x5)  =  pC_in_gaaaa(x1)
U7_gaaaa(x1, x2, x3, x4, x5, x6)  =  U7_gaaaa(x1, x6)
s2lD_in_ga(x1, x2)  =  s2lD_in_ga(x1)
s2lD_out_ga(x1, x2)  =  s2lD_out_ga(x1, x2)
U3_ga(x1, x2, x3, x4)  =  U3_ga(x1, x4)
.(x1, x2)  =  .(x2)
U8_gaaaa(x1, x2, x3, x4, x5, x6)  =  U8_gaaaa(x1, x2, x6)
appendF_in_agaa(x1, x2, x3, x4)  =  appendF_in_agaa(x2)
U6_agaa(x1, x2, x3, x4, x5)  =  U6_agaa(x2, x5)
appendE_in_gaa(x1, x2, x3)  =  appendE_in_gaa(x1)
[]  =  []
appendE_out_gaa(x1, x2, x3)  =  appendE_out_gaa(x1)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x4)
U5_gaa(x1, x2, x3, x4, x5)  =  U5_gaa(x2, x5)
appendF_out_agaa(x1, x2, x3, x4)  =  appendF_out_agaa(x2)
pC_out_gaaaa(x1, x2, x3, x4, x5)  =  pC_out_gaaaa(x1, x2)
APPENDE_IN_GAA(x1, x2, x3)  =  APPENDE_IN_GAA(x1)

We have to consider all (P,R,Pi)-chains

(8) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(9) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

APPENDE_IN_GAA(.(T50, T52), X235, .(T50, X237)) → APPENDE_IN_GAA(T52, X235, X237)

R is empty.
The argument filtering Pi contains the following mapping:
.(x1, x2)  =  .(x2)
APPENDE_IN_GAA(x1, x2, x3)  =  APPENDE_IN_GAA(x1)

We have to consider all (P,R,Pi)-chains

(10) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(11) Obligation:

Q DP problem:
The TRS P consists of the following rules:

APPENDE_IN_GAA(.(T52)) → APPENDE_IN_GAA(T52)

R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.

(12) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • APPENDE_IN_GAA(.(T52)) → APPENDE_IN_GAA(T52)
    The graph contains the following edges 1 > 1

(13) YES

(14) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

S2LD_IN_GA(s(T16), .(X111, X112)) → S2LD_IN_GA(T16, X112)

The TRS R consists of the following rules:

goalA_in_g(0) → U1_g(appendB_in_aa(X10, X11))
appendB_in_aa(X53, X53) → appendB_out_aa(X53, X53)
U1_g(appendB_out_aa(X10, X11)) → goalA_out_g(0)
goalA_in_g(s(T9)) → U2_g(T9, pC_in_gaaaa(T9, X72, X71, X10, X11))
pC_in_gaaaa(T9, T10, X71, X10, X11) → U7_gaaaa(T9, T10, X71, X10, X11, s2lD_in_ga(T9, T10))
s2lD_in_ga(0, []) → s2lD_out_ga(0, [])
s2lD_in_ga(s(T16), .(X111, X112)) → U3_ga(T16, X111, X112, s2lD_in_ga(T16, X112))
U3_ga(T16, X111, X112, s2lD_out_ga(T16, X112)) → s2lD_out_ga(s(T16), .(X111, X112))
U7_gaaaa(T9, T10, X71, X10, X11, s2lD_out_ga(T9, T10)) → U8_gaaaa(T9, T10, X71, X10, X11, appendF_in_agaa(X71, T10, X10, X11))
appendF_in_agaa(X188, T31, X151, .(X188, X153)) → U6_agaa(X188, T31, X151, X153, appendE_in_gaa(T31, X151, X153))
appendE_in_gaa([], X210, X210) → appendE_out_gaa([], X210, X210)
appendE_in_gaa([], X235, .(X251, X237)) → U4_gaa(X235, X251, X237, appendB_in_aa(X235, X237))
U4_gaa(X235, X251, X237, appendB_out_aa(X235, X237)) → appendE_out_gaa([], X235, .(X251, X237))
appendE_in_gaa(.(T50, T52), X235, .(T50, X237)) → U5_gaa(T50, T52, X235, X237, appendE_in_gaa(T52, X235, X237))
U5_gaa(T50, T52, X235, X237, appendE_out_gaa(T52, X235, X237)) → appendE_out_gaa(.(T50, T52), X235, .(T50, X237))
U6_agaa(X188, T31, X151, X153, appendE_out_gaa(T31, X151, X153)) → appendF_out_agaa(X188, T31, X151, .(X188, X153))
U8_gaaaa(T9, T10, X71, X10, X11, appendF_out_agaa(X71, T10, X10, X11)) → pC_out_gaaaa(T9, T10, X71, X10, X11)
U2_g(T9, pC_out_gaaaa(T9, X72, X71, X10, X11)) → goalA_out_g(s(T9))

The argument filtering Pi contains the following mapping:
goalA_in_g(x1)  =  goalA_in_g(x1)
0  =  0
U1_g(x1)  =  U1_g(x1)
appendB_in_aa(x1, x2)  =  appendB_in_aa
appendB_out_aa(x1, x2)  =  appendB_out_aa
goalA_out_g(x1)  =  goalA_out_g(x1)
s(x1)  =  s(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
pC_in_gaaaa(x1, x2, x3, x4, x5)  =  pC_in_gaaaa(x1)
U7_gaaaa(x1, x2, x3, x4, x5, x6)  =  U7_gaaaa(x1, x6)
s2lD_in_ga(x1, x2)  =  s2lD_in_ga(x1)
s2lD_out_ga(x1, x2)  =  s2lD_out_ga(x1, x2)
U3_ga(x1, x2, x3, x4)  =  U3_ga(x1, x4)
.(x1, x2)  =  .(x2)
U8_gaaaa(x1, x2, x3, x4, x5, x6)  =  U8_gaaaa(x1, x2, x6)
appendF_in_agaa(x1, x2, x3, x4)  =  appendF_in_agaa(x2)
U6_agaa(x1, x2, x3, x4, x5)  =  U6_agaa(x2, x5)
appendE_in_gaa(x1, x2, x3)  =  appendE_in_gaa(x1)
[]  =  []
appendE_out_gaa(x1, x2, x3)  =  appendE_out_gaa(x1)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x4)
U5_gaa(x1, x2, x3, x4, x5)  =  U5_gaa(x2, x5)
appendF_out_agaa(x1, x2, x3, x4)  =  appendF_out_agaa(x2)
pC_out_gaaaa(x1, x2, x3, x4, x5)  =  pC_out_gaaaa(x1, x2)
S2LD_IN_GA(x1, x2)  =  S2LD_IN_GA(x1)

We have to consider all (P,R,Pi)-chains

(15) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(16) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

S2LD_IN_GA(s(T16), .(X111, X112)) → S2LD_IN_GA(T16, X112)

R is empty.
The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
.(x1, x2)  =  .(x2)
S2LD_IN_GA(x1, x2)  =  S2LD_IN_GA(x1)

We have to consider all (P,R,Pi)-chains

(17) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(18) Obligation:

Q DP problem:
The TRS P consists of the following rules:

S2LD_IN_GA(s(T16)) → S2LD_IN_GA(T16)

R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.

(19) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • S2LD_IN_GA(s(T16)) → S2LD_IN_GA(T16)
    The graph contains the following edges 1 > 1

(20) YES