(0) Obligation:

Clauses:

goal(A, B, C) :- ','(s2l(A, D), applast(D, B, C)).
applast(L, X, Last) :- ','(append(L, .(X, []), LX), last(Last, LX)).
last(X, .(X, [])).
last(X, .(H, T)) :- last(X, T).
append([], L, L).
append(.(H, L1), L2, .(H, L3)) :- append(L1, L2, L3).
s2l(s(X), .(Y, Xs)) :- s2l(X, Xs).
s2l(0, []).

Queries:

goal(g,a,a).

(1) PrologToDTProblemTransformerProof (SOUND transformation)

Built DT problem from termination graph.

(2) Obligation:

Triples:

s2l9(s(T24), .(X69, X70)) :- s2l9(T24, X70).
append25(.(T78, T81), T82, .(T78, X165)) :- append25(T81, T82, X165).
last22(T101, .(T99, T102)) :- last22(T101, T102).
goal1(s(T16), T10, T11) :- s2l9(T16, X32).
goal1(s(T16), T64, T45) :- ','(s2lc9(T16, T63), append25(T63, T64, X142)).
goal1(s(T16), T44, T50) :- ','(s2lc9(T16, T43), ','(appendc21(T48, T43, T44, T49), last22(T50, T49))).
goal1(0, T117, T122) :- ','(appendc46(T117, T121), last22(T122, T121)).

Clauses:

s2lc9(s(T24), .(X69, X70)) :- s2lc9(T24, X70).
s2lc9(0, []).
appendc25([], T71, .(T71, [])).
appendc25(.(T78, T81), T82, .(T78, X165)) :- appendc25(T81, T82, X165).
lastc22(T91, .(T91, [])).
lastc22(T101, .(T99, T102)) :- lastc22(T101, T102).
appendc21(X141, T63, T64, .(X141, X142)) :- appendc25(T63, T64, X142).
appendc46(T128, .(T128, [])).

Afs:

goal1(x1, x2, x3)  =  goal1(x1)

(3) TriplesToPiDPProof (SOUND transformation)

We use the technique of [LOPSTR]. With regard to the inferred argument filtering the predicates were used in the following modes:
goal1_in: (b,f,f)
s2l9_in: (b,f)
s2lc9_in: (b,f)
append25_in: (b,f,f)
appendc21_in: (f,b,f,f)
appendc25_in: (b,f,f)
last22_in: (f,b)
Transforming TRIPLES into the following Term Rewriting System:
Pi DP problem:
The TRS P consists of the following rules:

GOAL1_IN_GAA(s(T16), T10, T11) → U4_GAA(T16, T10, T11, s2l9_in_ga(T16, X32))
GOAL1_IN_GAA(s(T16), T10, T11) → S2L9_IN_GA(T16, X32)
S2L9_IN_GA(s(T24), .(X69, X70)) → U1_GA(T24, X69, X70, s2l9_in_ga(T24, X70))
S2L9_IN_GA(s(T24), .(X69, X70)) → S2L9_IN_GA(T24, X70)
GOAL1_IN_GAA(s(T16), T64, T45) → U5_GAA(T16, T64, T45, s2lc9_in_ga(T16, T63))
U5_GAA(T16, T64, T45, s2lc9_out_ga(T16, T63)) → U6_GAA(T16, T64, T45, append25_in_gaa(T63, T64, X142))
U5_GAA(T16, T64, T45, s2lc9_out_ga(T16, T63)) → APPEND25_IN_GAA(T63, T64, X142)
APPEND25_IN_GAA(.(T78, T81), T82, .(T78, X165)) → U2_GAA(T78, T81, T82, X165, append25_in_gaa(T81, T82, X165))
APPEND25_IN_GAA(.(T78, T81), T82, .(T78, X165)) → APPEND25_IN_GAA(T81, T82, X165)
GOAL1_IN_GAA(s(T16), T44, T50) → U7_GAA(T16, T44, T50, s2lc9_in_ga(T16, T43))
U7_GAA(T16, T44, T50, s2lc9_out_ga(T16, T43)) → U8_GAA(T16, T44, T50, appendc21_in_agaa(T48, T43, T44, T49))
U8_GAA(T16, T44, T50, appendc21_out_agaa(T48, T43, T44, T49)) → U9_GAA(T16, T44, T50, last22_in_ag(T50, T49))
U8_GAA(T16, T44, T50, appendc21_out_agaa(T48, T43, T44, T49)) → LAST22_IN_AG(T50, T49)
LAST22_IN_AG(T101, .(T99, T102)) → U3_AG(T101, T99, T102, last22_in_ag(T101, T102))
LAST22_IN_AG(T101, .(T99, T102)) → LAST22_IN_AG(T101, T102)
GOAL1_IN_GAA(0, T117, T122) → U10_GAA(T117, T122, appendc46_in_aa(T117, T121))
U10_GAA(T117, T122, appendc46_out_aa(T117, T121)) → U11_GAA(T117, T122, last22_in_ag(T122, T121))
U10_GAA(T117, T122, appendc46_out_aa(T117, T121)) → LAST22_IN_AG(T122, T121)

The TRS R consists of the following rules:

s2lc9_in_ga(s(T24), .(X69, X70)) → U13_ga(T24, X69, X70, s2lc9_in_ga(T24, X70))
s2lc9_in_ga(0, []) → s2lc9_out_ga(0, [])
U13_ga(T24, X69, X70, s2lc9_out_ga(T24, X70)) → s2lc9_out_ga(s(T24), .(X69, X70))
appendc21_in_agaa(X141, T63, T64, .(X141, X142)) → U16_agaa(X141, T63, T64, X142, appendc25_in_gaa(T63, T64, X142))
appendc25_in_gaa([], T71, .(T71, [])) → appendc25_out_gaa([], T71, .(T71, []))
appendc25_in_gaa(.(T78, T81), T82, .(T78, X165)) → U14_gaa(T78, T81, T82, X165, appendc25_in_gaa(T81, T82, X165))
U14_gaa(T78, T81, T82, X165, appendc25_out_gaa(T81, T82, X165)) → appendc25_out_gaa(.(T78, T81), T82, .(T78, X165))
U16_agaa(X141, T63, T64, X142, appendc25_out_gaa(T63, T64, X142)) → appendc21_out_agaa(X141, T63, T64, .(X141, X142))
appendc46_in_aa(T128, .(T128, [])) → appendc46_out_aa(T128, .(T128, []))

The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
s2l9_in_ga(x1, x2)  =  s2l9_in_ga(x1)
.(x1, x2)  =  .(x2)
s2lc9_in_ga(x1, x2)  =  s2lc9_in_ga(x1)
U13_ga(x1, x2, x3, x4)  =  U13_ga(x1, x4)
0  =  0
s2lc9_out_ga(x1, x2)  =  s2lc9_out_ga(x1, x2)
append25_in_gaa(x1, x2, x3)  =  append25_in_gaa(x1)
appendc21_in_agaa(x1, x2, x3, x4)  =  appendc21_in_agaa(x2)
U16_agaa(x1, x2, x3, x4, x5)  =  U16_agaa(x2, x5)
appendc25_in_gaa(x1, x2, x3)  =  appendc25_in_gaa(x1)
[]  =  []
appendc25_out_gaa(x1, x2, x3)  =  appendc25_out_gaa(x1, x3)
U14_gaa(x1, x2, x3, x4, x5)  =  U14_gaa(x2, x5)
appendc21_out_agaa(x1, x2, x3, x4)  =  appendc21_out_agaa(x2, x4)
last22_in_ag(x1, x2)  =  last22_in_ag(x2)
appendc46_in_aa(x1, x2)  =  appendc46_in_aa
appendc46_out_aa(x1, x2)  =  appendc46_out_aa(x2)
GOAL1_IN_GAA(x1, x2, x3)  =  GOAL1_IN_GAA(x1)
U4_GAA(x1, x2, x3, x4)  =  U4_GAA(x1, x4)
S2L9_IN_GA(x1, x2)  =  S2L9_IN_GA(x1)
U1_GA(x1, x2, x3, x4)  =  U1_GA(x1, x4)
U5_GAA(x1, x2, x3, x4)  =  U5_GAA(x1, x4)
U6_GAA(x1, x2, x3, x4)  =  U6_GAA(x1, x4)
APPEND25_IN_GAA(x1, x2, x3)  =  APPEND25_IN_GAA(x1)
U2_GAA(x1, x2, x3, x4, x5)  =  U2_GAA(x2, x5)
U7_GAA(x1, x2, x3, x4)  =  U7_GAA(x1, x4)
U8_GAA(x1, x2, x3, x4)  =  U8_GAA(x1, x4)
U9_GAA(x1, x2, x3, x4)  =  U9_GAA(x1, x4)
LAST22_IN_AG(x1, x2)  =  LAST22_IN_AG(x2)
U3_AG(x1, x2, x3, x4)  =  U3_AG(x3, x4)
U10_GAA(x1, x2, x3)  =  U10_GAA(x3)
U11_GAA(x1, x2, x3)  =  U11_GAA(x3)

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

Infinitary Constructor Rewriting Termination of PiDP implies Termination of TRIPLES

(4) Obligation:

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

GOAL1_IN_GAA(s(T16), T10, T11) → U4_GAA(T16, T10, T11, s2l9_in_ga(T16, X32))
GOAL1_IN_GAA(s(T16), T10, T11) → S2L9_IN_GA(T16, X32)
S2L9_IN_GA(s(T24), .(X69, X70)) → U1_GA(T24, X69, X70, s2l9_in_ga(T24, X70))
S2L9_IN_GA(s(T24), .(X69, X70)) → S2L9_IN_GA(T24, X70)
GOAL1_IN_GAA(s(T16), T64, T45) → U5_GAA(T16, T64, T45, s2lc9_in_ga(T16, T63))
U5_GAA(T16, T64, T45, s2lc9_out_ga(T16, T63)) → U6_GAA(T16, T64, T45, append25_in_gaa(T63, T64, X142))
U5_GAA(T16, T64, T45, s2lc9_out_ga(T16, T63)) → APPEND25_IN_GAA(T63, T64, X142)
APPEND25_IN_GAA(.(T78, T81), T82, .(T78, X165)) → U2_GAA(T78, T81, T82, X165, append25_in_gaa(T81, T82, X165))
APPEND25_IN_GAA(.(T78, T81), T82, .(T78, X165)) → APPEND25_IN_GAA(T81, T82, X165)
GOAL1_IN_GAA(s(T16), T44, T50) → U7_GAA(T16, T44, T50, s2lc9_in_ga(T16, T43))
U7_GAA(T16, T44, T50, s2lc9_out_ga(T16, T43)) → U8_GAA(T16, T44, T50, appendc21_in_agaa(T48, T43, T44, T49))
U8_GAA(T16, T44, T50, appendc21_out_agaa(T48, T43, T44, T49)) → U9_GAA(T16, T44, T50, last22_in_ag(T50, T49))
U8_GAA(T16, T44, T50, appendc21_out_agaa(T48, T43, T44, T49)) → LAST22_IN_AG(T50, T49)
LAST22_IN_AG(T101, .(T99, T102)) → U3_AG(T101, T99, T102, last22_in_ag(T101, T102))
LAST22_IN_AG(T101, .(T99, T102)) → LAST22_IN_AG(T101, T102)
GOAL1_IN_GAA(0, T117, T122) → U10_GAA(T117, T122, appendc46_in_aa(T117, T121))
U10_GAA(T117, T122, appendc46_out_aa(T117, T121)) → U11_GAA(T117, T122, last22_in_ag(T122, T121))
U10_GAA(T117, T122, appendc46_out_aa(T117, T121)) → LAST22_IN_AG(T122, T121)

The TRS R consists of the following rules:

s2lc9_in_ga(s(T24), .(X69, X70)) → U13_ga(T24, X69, X70, s2lc9_in_ga(T24, X70))
s2lc9_in_ga(0, []) → s2lc9_out_ga(0, [])
U13_ga(T24, X69, X70, s2lc9_out_ga(T24, X70)) → s2lc9_out_ga(s(T24), .(X69, X70))
appendc21_in_agaa(X141, T63, T64, .(X141, X142)) → U16_agaa(X141, T63, T64, X142, appendc25_in_gaa(T63, T64, X142))
appendc25_in_gaa([], T71, .(T71, [])) → appendc25_out_gaa([], T71, .(T71, []))
appendc25_in_gaa(.(T78, T81), T82, .(T78, X165)) → U14_gaa(T78, T81, T82, X165, appendc25_in_gaa(T81, T82, X165))
U14_gaa(T78, T81, T82, X165, appendc25_out_gaa(T81, T82, X165)) → appendc25_out_gaa(.(T78, T81), T82, .(T78, X165))
U16_agaa(X141, T63, T64, X142, appendc25_out_gaa(T63, T64, X142)) → appendc21_out_agaa(X141, T63, T64, .(X141, X142))
appendc46_in_aa(T128, .(T128, [])) → appendc46_out_aa(T128, .(T128, []))

The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
s2l9_in_ga(x1, x2)  =  s2l9_in_ga(x1)
.(x1, x2)  =  .(x2)
s2lc9_in_ga(x1, x2)  =  s2lc9_in_ga(x1)
U13_ga(x1, x2, x3, x4)  =  U13_ga(x1, x4)
0  =  0
s2lc9_out_ga(x1, x2)  =  s2lc9_out_ga(x1, x2)
append25_in_gaa(x1, x2, x3)  =  append25_in_gaa(x1)
appendc21_in_agaa(x1, x2, x3, x4)  =  appendc21_in_agaa(x2)
U16_agaa(x1, x2, x3, x4, x5)  =  U16_agaa(x2, x5)
appendc25_in_gaa(x1, x2, x3)  =  appendc25_in_gaa(x1)
[]  =  []
appendc25_out_gaa(x1, x2, x3)  =  appendc25_out_gaa(x1, x3)
U14_gaa(x1, x2, x3, x4, x5)  =  U14_gaa(x2, x5)
appendc21_out_agaa(x1, x2, x3, x4)  =  appendc21_out_agaa(x2, x4)
last22_in_ag(x1, x2)  =  last22_in_ag(x2)
appendc46_in_aa(x1, x2)  =  appendc46_in_aa
appendc46_out_aa(x1, x2)  =  appendc46_out_aa(x2)
GOAL1_IN_GAA(x1, x2, x3)  =  GOAL1_IN_GAA(x1)
U4_GAA(x1, x2, x3, x4)  =  U4_GAA(x1, x4)
S2L9_IN_GA(x1, x2)  =  S2L9_IN_GA(x1)
U1_GA(x1, x2, x3, x4)  =  U1_GA(x1, x4)
U5_GAA(x1, x2, x3, x4)  =  U5_GAA(x1, x4)
U6_GAA(x1, x2, x3, x4)  =  U6_GAA(x1, x4)
APPEND25_IN_GAA(x1, x2, x3)  =  APPEND25_IN_GAA(x1)
U2_GAA(x1, x2, x3, x4, x5)  =  U2_GAA(x2, x5)
U7_GAA(x1, x2, x3, x4)  =  U7_GAA(x1, x4)
U8_GAA(x1, x2, x3, x4)  =  U8_GAA(x1, x4)
U9_GAA(x1, x2, x3, x4)  =  U9_GAA(x1, x4)
LAST22_IN_AG(x1, x2)  =  LAST22_IN_AG(x2)
U3_AG(x1, x2, x3, x4)  =  U3_AG(x3, x4)
U10_GAA(x1, x2, x3)  =  U10_GAA(x3)
U11_GAA(x1, x2, x3)  =  U11_GAA(x3)

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

(5) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 15 less nodes.

(6) Complex Obligation (AND)

(7) Obligation:

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

LAST22_IN_AG(T101, .(T99, T102)) → LAST22_IN_AG(T101, T102)

The TRS R consists of the following rules:

s2lc9_in_ga(s(T24), .(X69, X70)) → U13_ga(T24, X69, X70, s2lc9_in_ga(T24, X70))
s2lc9_in_ga(0, []) → s2lc9_out_ga(0, [])
U13_ga(T24, X69, X70, s2lc9_out_ga(T24, X70)) → s2lc9_out_ga(s(T24), .(X69, X70))
appendc21_in_agaa(X141, T63, T64, .(X141, X142)) → U16_agaa(X141, T63, T64, X142, appendc25_in_gaa(T63, T64, X142))
appendc25_in_gaa([], T71, .(T71, [])) → appendc25_out_gaa([], T71, .(T71, []))
appendc25_in_gaa(.(T78, T81), T82, .(T78, X165)) → U14_gaa(T78, T81, T82, X165, appendc25_in_gaa(T81, T82, X165))
U14_gaa(T78, T81, T82, X165, appendc25_out_gaa(T81, T82, X165)) → appendc25_out_gaa(.(T78, T81), T82, .(T78, X165))
U16_agaa(X141, T63, T64, X142, appendc25_out_gaa(T63, T64, X142)) → appendc21_out_agaa(X141, T63, T64, .(X141, X142))
appendc46_in_aa(T128, .(T128, [])) → appendc46_out_aa(T128, .(T128, []))

The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
.(x1, x2)  =  .(x2)
s2lc9_in_ga(x1, x2)  =  s2lc9_in_ga(x1)
U13_ga(x1, x2, x3, x4)  =  U13_ga(x1, x4)
0  =  0
s2lc9_out_ga(x1, x2)  =  s2lc9_out_ga(x1, x2)
appendc21_in_agaa(x1, x2, x3, x4)  =  appendc21_in_agaa(x2)
U16_agaa(x1, x2, x3, x4, x5)  =  U16_agaa(x2, x5)
appendc25_in_gaa(x1, x2, x3)  =  appendc25_in_gaa(x1)
[]  =  []
appendc25_out_gaa(x1, x2, x3)  =  appendc25_out_gaa(x1, x3)
U14_gaa(x1, x2, x3, x4, x5)  =  U14_gaa(x2, x5)
appendc21_out_agaa(x1, x2, x3, x4)  =  appendc21_out_agaa(x2, x4)
appendc46_in_aa(x1, x2)  =  appendc46_in_aa
appendc46_out_aa(x1, x2)  =  appendc46_out_aa(x2)
LAST22_IN_AG(x1, x2)  =  LAST22_IN_AG(x2)

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:

LAST22_IN_AG(T101, .(T99, T102)) → LAST22_IN_AG(T101, T102)

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

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:

LAST22_IN_AG(.(T102)) → LAST22_IN_AG(T102)

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:

  • LAST22_IN_AG(.(T102)) → LAST22_IN_AG(T102)
    The graph contains the following edges 1 > 1

(13) YES

(14) Obligation:

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

APPEND25_IN_GAA(.(T78, T81), T82, .(T78, X165)) → APPEND25_IN_GAA(T81, T82, X165)

The TRS R consists of the following rules:

s2lc9_in_ga(s(T24), .(X69, X70)) → U13_ga(T24, X69, X70, s2lc9_in_ga(T24, X70))
s2lc9_in_ga(0, []) → s2lc9_out_ga(0, [])
U13_ga(T24, X69, X70, s2lc9_out_ga(T24, X70)) → s2lc9_out_ga(s(T24), .(X69, X70))
appendc21_in_agaa(X141, T63, T64, .(X141, X142)) → U16_agaa(X141, T63, T64, X142, appendc25_in_gaa(T63, T64, X142))
appendc25_in_gaa([], T71, .(T71, [])) → appendc25_out_gaa([], T71, .(T71, []))
appendc25_in_gaa(.(T78, T81), T82, .(T78, X165)) → U14_gaa(T78, T81, T82, X165, appendc25_in_gaa(T81, T82, X165))
U14_gaa(T78, T81, T82, X165, appendc25_out_gaa(T81, T82, X165)) → appendc25_out_gaa(.(T78, T81), T82, .(T78, X165))
U16_agaa(X141, T63, T64, X142, appendc25_out_gaa(T63, T64, X142)) → appendc21_out_agaa(X141, T63, T64, .(X141, X142))
appendc46_in_aa(T128, .(T128, [])) → appendc46_out_aa(T128, .(T128, []))

The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
.(x1, x2)  =  .(x2)
s2lc9_in_ga(x1, x2)  =  s2lc9_in_ga(x1)
U13_ga(x1, x2, x3, x4)  =  U13_ga(x1, x4)
0  =  0
s2lc9_out_ga(x1, x2)  =  s2lc9_out_ga(x1, x2)
appendc21_in_agaa(x1, x2, x3, x4)  =  appendc21_in_agaa(x2)
U16_agaa(x1, x2, x3, x4, x5)  =  U16_agaa(x2, x5)
appendc25_in_gaa(x1, x2, x3)  =  appendc25_in_gaa(x1)
[]  =  []
appendc25_out_gaa(x1, x2, x3)  =  appendc25_out_gaa(x1, x3)
U14_gaa(x1, x2, x3, x4, x5)  =  U14_gaa(x2, x5)
appendc21_out_agaa(x1, x2, x3, x4)  =  appendc21_out_agaa(x2, x4)
appendc46_in_aa(x1, x2)  =  appendc46_in_aa
appendc46_out_aa(x1, x2)  =  appendc46_out_aa(x2)
APPEND25_IN_GAA(x1, x2, x3)  =  APPEND25_IN_GAA(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:

APPEND25_IN_GAA(.(T78, T81), T82, .(T78, X165)) → APPEND25_IN_GAA(T81, T82, X165)

R is empty.
The argument filtering Pi contains the following mapping:
.(x1, x2)  =  .(x2)
APPEND25_IN_GAA(x1, x2, x3)  =  APPEND25_IN_GAA(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:

APPEND25_IN_GAA(.(T81)) → APPEND25_IN_GAA(T81)

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:

  • APPEND25_IN_GAA(.(T81)) → APPEND25_IN_GAA(T81)
    The graph contains the following edges 1 > 1

(20) YES

(21) Obligation:

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

S2L9_IN_GA(s(T24), .(X69, X70)) → S2L9_IN_GA(T24, X70)

The TRS R consists of the following rules:

s2lc9_in_ga(s(T24), .(X69, X70)) → U13_ga(T24, X69, X70, s2lc9_in_ga(T24, X70))
s2lc9_in_ga(0, []) → s2lc9_out_ga(0, [])
U13_ga(T24, X69, X70, s2lc9_out_ga(T24, X70)) → s2lc9_out_ga(s(T24), .(X69, X70))
appendc21_in_agaa(X141, T63, T64, .(X141, X142)) → U16_agaa(X141, T63, T64, X142, appendc25_in_gaa(T63, T64, X142))
appendc25_in_gaa([], T71, .(T71, [])) → appendc25_out_gaa([], T71, .(T71, []))
appendc25_in_gaa(.(T78, T81), T82, .(T78, X165)) → U14_gaa(T78, T81, T82, X165, appendc25_in_gaa(T81, T82, X165))
U14_gaa(T78, T81, T82, X165, appendc25_out_gaa(T81, T82, X165)) → appendc25_out_gaa(.(T78, T81), T82, .(T78, X165))
U16_agaa(X141, T63, T64, X142, appendc25_out_gaa(T63, T64, X142)) → appendc21_out_agaa(X141, T63, T64, .(X141, X142))
appendc46_in_aa(T128, .(T128, [])) → appendc46_out_aa(T128, .(T128, []))

The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
.(x1, x2)  =  .(x2)
s2lc9_in_ga(x1, x2)  =  s2lc9_in_ga(x1)
U13_ga(x1, x2, x3, x4)  =  U13_ga(x1, x4)
0  =  0
s2lc9_out_ga(x1, x2)  =  s2lc9_out_ga(x1, x2)
appendc21_in_agaa(x1, x2, x3, x4)  =  appendc21_in_agaa(x2)
U16_agaa(x1, x2, x3, x4, x5)  =  U16_agaa(x2, x5)
appendc25_in_gaa(x1, x2, x3)  =  appendc25_in_gaa(x1)
[]  =  []
appendc25_out_gaa(x1, x2, x3)  =  appendc25_out_gaa(x1, x3)
U14_gaa(x1, x2, x3, x4, x5)  =  U14_gaa(x2, x5)
appendc21_out_agaa(x1, x2, x3, x4)  =  appendc21_out_agaa(x2, x4)
appendc46_in_aa(x1, x2)  =  appendc46_in_aa
appendc46_out_aa(x1, x2)  =  appendc46_out_aa(x2)
S2L9_IN_GA(x1, x2)  =  S2L9_IN_GA(x1)

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

(22) UsableRulesProof (EQUIVALENT transformation)

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

(23) Obligation:

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

S2L9_IN_GA(s(T24), .(X69, X70)) → S2L9_IN_GA(T24, X70)

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

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

(24) PiDPToQDPProof (SOUND transformation)

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

(25) Obligation:

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

S2L9_IN_GA(s(T24)) → S2L9_IN_GA(T24)

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

(26) 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:

  • S2L9_IN_GA(s(T24)) → S2L9_IN_GA(T24)
    The graph contains the following edges 1 > 1

(27) YES