(0) Obligation:

Clauses:

flatten(atom(X), .(X, [])).
flatten(cons(atom(X), U), .(X, Y)) :- flatten(U, Y).
flatten(cons(cons(U, V), W), X) :- flatten(cons(U, cons(V, W)), X).
count(atom(X), s(0)).
count(cons(atom(X), Y), s(Z)) :- count(Y, Z).
count(cons(cons(U, V), W), Z) :- ','(flatten(cons(cons(U, V), W), X), count(X, Z)).

Queries:

count(g,a).

(1) PrologToPrologProblemTransformerProof (SOUND transformation)

Built Prolog problem from termination graph.

(2) Obligation:

Clauses:

flatten40(atom(T111), .(T111, [])).
flatten40(cons(atom(T120), T121), .(T120, X205)) :- flatten40(T121, X205).
flatten40(cons(cons(T130, T131), T132), X225) :- flatten29(T130, T131, T132, X225).
flatten29(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) :- flatten40(T104, X174).
flatten29(atom(T90), cons(T142, T143), T144, .(T90, X250)) :- flatten29(T142, T143, T144, X250).
flatten29(cons(T156, T157), T158, T159, X275) :- flatten29(T156, T157, cons(T158, T159), X275).
flatten24(T72, T73, T74, X117) :- flatten29(T72, T73, T74, X117).
count1(atom(T4), s(0)).
count1(cons(atom(T8), atom(T16)), s(s(0))).
count1(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) :- count1(T30, T32).
count1(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) :- flatten24(T51, T52, T53, X68).
count1(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) :- ','(flatten24(T51, T52, T53, T59), count1(T59, T55)).
count1(cons(cons(T184, T185), T186), T174) :- flatten29(T184, T185, T186, X329).
count1(cons(cons(T184, T185), T186), T174) :- ','(flatten29(T184, T185, T186, T190), count1(T190, T174)).

Queries:

count1(g,a).

(3) PrologToPiTRSProof (SOUND transformation)

We use the technique of [LOPSTR]. With regard to the inferred argument filtering the predicates were used in the following modes:
count1_in: (b,f)
flatten24_in: (b,b,b,f)
flatten29_in: (b,b,b,f)
flatten40_in: (b,f)
Transforming Prolog into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:

count1_in_ga(atom(T4), s(0)) → count1_out_ga(atom(T4), s(0))
count1_in_ga(cons(atom(T8), atom(T16)), s(s(0))) → count1_out_ga(cons(atom(T8), atom(T16)), s(s(0)))
count1_in_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → U7_ga(T8, T29, T30, T32, count1_in_ga(T30, T32))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U8_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, X68))
flatten24_in_ggga(T72, T73, T74, X117) → U6_ggga(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
flatten29_in_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_ggga(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
flatten40_in_ga(atom(T111), .(T111, [])) → flatten40_out_ga(atom(T111), .(T111, []))
flatten40_in_ga(cons(atom(T120), T121), .(T120, X205)) → U1_ga(T120, T121, X205, flatten40_in_ga(T121, X205))
flatten40_in_ga(cons(cons(T130, T131), T132), X225) → U2_ga(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_ggga(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
flatten29_in_ggga(cons(T156, T157), T158, T159, X275) → U5_ggga(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
U5_ggga(T156, T157, T158, T159, X275, flatten29_out_ggga(T156, T157, cons(T158, T159), X275)) → flatten29_out_ggga(cons(T156, T157), T158, T159, X275)
U4_ggga(T90, T142, T143, T144, X250, flatten29_out_ggga(T142, T143, T144, X250)) → flatten29_out_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250))
U2_ga(T130, T131, T132, X225, flatten29_out_ggga(T130, T131, T132, X225)) → flatten40_out_ga(cons(cons(T130, T131), T132), X225)
U1_ga(T120, T121, X205, flatten40_out_ga(T121, X205)) → flatten40_out_ga(cons(atom(T120), T121), .(T120, X205))
U3_ggga(T90, T103, T104, X174, flatten40_out_ga(T104, X174)) → flatten29_out_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174)))
U6_ggga(T72, T73, T74, X117, flatten29_out_ggga(T72, T73, T74, X117)) → flatten24_out_ggga(T72, T73, T74, X117)
U8_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, X68)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → U10_ga(T8, T51, T52, T53, T55, count1_in_ga(T59, T55))
count1_in_ga(cons(cons(T184, T185), T186), T174) → U11_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, X329))
U11_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, X329)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
count1_in_ga(cons(cons(T184, T185), T186), T174) → U12_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → U13_ga(T184, T185, T186, T174, count1_in_ga(T190, T174))
U13_ga(T184, T185, T186, T174, count1_out_ga(T190, T174)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
U10_ga(T8, T51, T52, T53, T55, count1_out_ga(T59, T55)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
U7_ga(T8, T29, T30, T32, count1_out_ga(T30, T32)) → count1_out_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32)))

The argument filtering Pi contains the following mapping:
count1_in_ga(x1, x2)  =  count1_in_ga(x1)
atom(x1)  =  atom(x1)
count1_out_ga(x1, x2)  =  count1_out_ga
cons(x1, x2)  =  cons(x1, x2)
U7_ga(x1, x2, x3, x4, x5)  =  U7_ga(x5)
U8_ga(x1, x2, x3, x4, x5, x6)  =  U8_ga(x6)
flatten24_in_ggga(x1, x2, x3, x4)  =  flatten24_in_ggga(x1, x2, x3)
U6_ggga(x1, x2, x3, x4, x5)  =  U6_ggga(x5)
flatten29_in_ggga(x1, x2, x3, x4)  =  flatten29_in_ggga(x1, x2, x3)
U3_ggga(x1, x2, x3, x4, x5)  =  U3_ggga(x1, x2, x5)
flatten40_in_ga(x1, x2)  =  flatten40_in_ga(x1)
flatten40_out_ga(x1, x2)  =  flatten40_out_ga(x2)
U1_ga(x1, x2, x3, x4)  =  U1_ga(x1, x4)
U2_ga(x1, x2, x3, x4, x5)  =  U2_ga(x5)
U4_ggga(x1, x2, x3, x4, x5, x6)  =  U4_ggga(x1, x6)
U5_ggga(x1, x2, x3, x4, x5, x6)  =  U5_ggga(x6)
flatten29_out_ggga(x1, x2, x3, x4)  =  flatten29_out_ggga(x4)
flatten24_out_ggga(x1, x2, x3, x4)  =  flatten24_out_ggga(x4)
U9_ga(x1, x2, x3, x4, x5, x6)  =  U9_ga(x6)
U10_ga(x1, x2, x3, x4, x5, x6)  =  U10_ga(x6)
U11_ga(x1, x2, x3, x4, x5)  =  U11_ga(x5)
U12_ga(x1, x2, x3, x4, x5)  =  U12_ga(x5)
U13_ga(x1, x2, x3, x4, x5)  =  U13_ga(x5)
.(x1, x2)  =  .(x1, x2)

Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog

(4) Obligation:

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

count1_in_ga(atom(T4), s(0)) → count1_out_ga(atom(T4), s(0))
count1_in_ga(cons(atom(T8), atom(T16)), s(s(0))) → count1_out_ga(cons(atom(T8), atom(T16)), s(s(0)))
count1_in_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → U7_ga(T8, T29, T30, T32, count1_in_ga(T30, T32))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U8_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, X68))
flatten24_in_ggga(T72, T73, T74, X117) → U6_ggga(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
flatten29_in_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_ggga(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
flatten40_in_ga(atom(T111), .(T111, [])) → flatten40_out_ga(atom(T111), .(T111, []))
flatten40_in_ga(cons(atom(T120), T121), .(T120, X205)) → U1_ga(T120, T121, X205, flatten40_in_ga(T121, X205))
flatten40_in_ga(cons(cons(T130, T131), T132), X225) → U2_ga(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_ggga(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
flatten29_in_ggga(cons(T156, T157), T158, T159, X275) → U5_ggga(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
U5_ggga(T156, T157, T158, T159, X275, flatten29_out_ggga(T156, T157, cons(T158, T159), X275)) → flatten29_out_ggga(cons(T156, T157), T158, T159, X275)
U4_ggga(T90, T142, T143, T144, X250, flatten29_out_ggga(T142, T143, T144, X250)) → flatten29_out_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250))
U2_ga(T130, T131, T132, X225, flatten29_out_ggga(T130, T131, T132, X225)) → flatten40_out_ga(cons(cons(T130, T131), T132), X225)
U1_ga(T120, T121, X205, flatten40_out_ga(T121, X205)) → flatten40_out_ga(cons(atom(T120), T121), .(T120, X205))
U3_ggga(T90, T103, T104, X174, flatten40_out_ga(T104, X174)) → flatten29_out_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174)))
U6_ggga(T72, T73, T74, X117, flatten29_out_ggga(T72, T73, T74, X117)) → flatten24_out_ggga(T72, T73, T74, X117)
U8_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, X68)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → U10_ga(T8, T51, T52, T53, T55, count1_in_ga(T59, T55))
count1_in_ga(cons(cons(T184, T185), T186), T174) → U11_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, X329))
U11_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, X329)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
count1_in_ga(cons(cons(T184, T185), T186), T174) → U12_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → U13_ga(T184, T185, T186, T174, count1_in_ga(T190, T174))
U13_ga(T184, T185, T186, T174, count1_out_ga(T190, T174)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
U10_ga(T8, T51, T52, T53, T55, count1_out_ga(T59, T55)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
U7_ga(T8, T29, T30, T32, count1_out_ga(T30, T32)) → count1_out_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32)))

The argument filtering Pi contains the following mapping:
count1_in_ga(x1, x2)  =  count1_in_ga(x1)
atom(x1)  =  atom(x1)
count1_out_ga(x1, x2)  =  count1_out_ga
cons(x1, x2)  =  cons(x1, x2)
U7_ga(x1, x2, x3, x4, x5)  =  U7_ga(x5)
U8_ga(x1, x2, x3, x4, x5, x6)  =  U8_ga(x6)
flatten24_in_ggga(x1, x2, x3, x4)  =  flatten24_in_ggga(x1, x2, x3)
U6_ggga(x1, x2, x3, x4, x5)  =  U6_ggga(x5)
flatten29_in_ggga(x1, x2, x3, x4)  =  flatten29_in_ggga(x1, x2, x3)
U3_ggga(x1, x2, x3, x4, x5)  =  U3_ggga(x1, x2, x5)
flatten40_in_ga(x1, x2)  =  flatten40_in_ga(x1)
flatten40_out_ga(x1, x2)  =  flatten40_out_ga(x2)
U1_ga(x1, x2, x3, x4)  =  U1_ga(x1, x4)
U2_ga(x1, x2, x3, x4, x5)  =  U2_ga(x5)
U4_ggga(x1, x2, x3, x4, x5, x6)  =  U4_ggga(x1, x6)
U5_ggga(x1, x2, x3, x4, x5, x6)  =  U5_ggga(x6)
flatten29_out_ggga(x1, x2, x3, x4)  =  flatten29_out_ggga(x4)
flatten24_out_ggga(x1, x2, x3, x4)  =  flatten24_out_ggga(x4)
U9_ga(x1, x2, x3, x4, x5, x6)  =  U9_ga(x6)
U10_ga(x1, x2, x3, x4, x5, x6)  =  U10_ga(x6)
U11_ga(x1, x2, x3, x4, x5)  =  U11_ga(x5)
U12_ga(x1, x2, x3, x4, x5)  =  U12_ga(x5)
U13_ga(x1, x2, x3, x4, x5)  =  U13_ga(x5)
.(x1, x2)  =  .(x1, x2)

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

COUNT1_IN_GA(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → U7_GA(T8, T29, T30, T32, count1_in_ga(T30, T32))
COUNT1_IN_GA(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → COUNT1_IN_GA(T30, T32)
COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U8_GA(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, X68))
COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → FLATTEN24_IN_GGGA(T51, T52, T53, X68)
FLATTEN24_IN_GGGA(T72, T73, T74, X117) → U6_GGGA(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
FLATTEN24_IN_GGGA(T72, T73, T74, X117) → FLATTEN29_IN_GGGA(T72, T73, T74, X117)
FLATTEN29_IN_GGGA(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_GGGA(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
FLATTEN29_IN_GGGA(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → FLATTEN40_IN_GA(T104, X174)
FLATTEN40_IN_GA(cons(atom(T120), T121), .(T120, X205)) → U1_GA(T120, T121, X205, flatten40_in_ga(T121, X205))
FLATTEN40_IN_GA(cons(atom(T120), T121), .(T120, X205)) → FLATTEN40_IN_GA(T121, X205)
FLATTEN40_IN_GA(cons(cons(T130, T131), T132), X225) → U2_GA(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
FLATTEN40_IN_GA(cons(cons(T130, T131), T132), X225) → FLATTEN29_IN_GGGA(T130, T131, T132, X225)
FLATTEN29_IN_GGGA(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_GGGA(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
FLATTEN29_IN_GGGA(atom(T90), cons(T142, T143), T144, .(T90, X250)) → FLATTEN29_IN_GGGA(T142, T143, T144, X250)
FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159, X275) → U5_GGGA(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159, X275) → FLATTEN29_IN_GGGA(T156, T157, cons(T158, T159), X275)
COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_GA(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_GA(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → U10_GA(T8, T51, T52, T53, T55, count1_in_ga(T59, T55))
U9_GA(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → COUNT1_IN_GA(T59, T55)
COUNT1_IN_GA(cons(cons(T184, T185), T186), T174) → U11_GA(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, X329))
COUNT1_IN_GA(cons(cons(T184, T185), T186), T174) → FLATTEN29_IN_GGGA(T184, T185, T186, X329)
COUNT1_IN_GA(cons(cons(T184, T185), T186), T174) → U12_GA(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_GA(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → U13_GA(T184, T185, T186, T174, count1_in_ga(T190, T174))
U12_GA(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → COUNT1_IN_GA(T190, T174)

The TRS R consists of the following rules:

count1_in_ga(atom(T4), s(0)) → count1_out_ga(atom(T4), s(0))
count1_in_ga(cons(atom(T8), atom(T16)), s(s(0))) → count1_out_ga(cons(atom(T8), atom(T16)), s(s(0)))
count1_in_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → U7_ga(T8, T29, T30, T32, count1_in_ga(T30, T32))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U8_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, X68))
flatten24_in_ggga(T72, T73, T74, X117) → U6_ggga(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
flatten29_in_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_ggga(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
flatten40_in_ga(atom(T111), .(T111, [])) → flatten40_out_ga(atom(T111), .(T111, []))
flatten40_in_ga(cons(atom(T120), T121), .(T120, X205)) → U1_ga(T120, T121, X205, flatten40_in_ga(T121, X205))
flatten40_in_ga(cons(cons(T130, T131), T132), X225) → U2_ga(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_ggga(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
flatten29_in_ggga(cons(T156, T157), T158, T159, X275) → U5_ggga(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
U5_ggga(T156, T157, T158, T159, X275, flatten29_out_ggga(T156, T157, cons(T158, T159), X275)) → flatten29_out_ggga(cons(T156, T157), T158, T159, X275)
U4_ggga(T90, T142, T143, T144, X250, flatten29_out_ggga(T142, T143, T144, X250)) → flatten29_out_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250))
U2_ga(T130, T131, T132, X225, flatten29_out_ggga(T130, T131, T132, X225)) → flatten40_out_ga(cons(cons(T130, T131), T132), X225)
U1_ga(T120, T121, X205, flatten40_out_ga(T121, X205)) → flatten40_out_ga(cons(atom(T120), T121), .(T120, X205))
U3_ggga(T90, T103, T104, X174, flatten40_out_ga(T104, X174)) → flatten29_out_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174)))
U6_ggga(T72, T73, T74, X117, flatten29_out_ggga(T72, T73, T74, X117)) → flatten24_out_ggga(T72, T73, T74, X117)
U8_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, X68)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → U10_ga(T8, T51, T52, T53, T55, count1_in_ga(T59, T55))
count1_in_ga(cons(cons(T184, T185), T186), T174) → U11_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, X329))
U11_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, X329)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
count1_in_ga(cons(cons(T184, T185), T186), T174) → U12_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → U13_ga(T184, T185, T186, T174, count1_in_ga(T190, T174))
U13_ga(T184, T185, T186, T174, count1_out_ga(T190, T174)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
U10_ga(T8, T51, T52, T53, T55, count1_out_ga(T59, T55)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
U7_ga(T8, T29, T30, T32, count1_out_ga(T30, T32)) → count1_out_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32)))

The argument filtering Pi contains the following mapping:
count1_in_ga(x1, x2)  =  count1_in_ga(x1)
atom(x1)  =  atom(x1)
count1_out_ga(x1, x2)  =  count1_out_ga
cons(x1, x2)  =  cons(x1, x2)
U7_ga(x1, x2, x3, x4, x5)  =  U7_ga(x5)
U8_ga(x1, x2, x3, x4, x5, x6)  =  U8_ga(x6)
flatten24_in_ggga(x1, x2, x3, x4)  =  flatten24_in_ggga(x1, x2, x3)
U6_ggga(x1, x2, x3, x4, x5)  =  U6_ggga(x5)
flatten29_in_ggga(x1, x2, x3, x4)  =  flatten29_in_ggga(x1, x2, x3)
U3_ggga(x1, x2, x3, x4, x5)  =  U3_ggga(x1, x2, x5)
flatten40_in_ga(x1, x2)  =  flatten40_in_ga(x1)
flatten40_out_ga(x1, x2)  =  flatten40_out_ga(x2)
U1_ga(x1, x2, x3, x4)  =  U1_ga(x1, x4)
U2_ga(x1, x2, x3, x4, x5)  =  U2_ga(x5)
U4_ggga(x1, x2, x3, x4, x5, x6)  =  U4_ggga(x1, x6)
U5_ggga(x1, x2, x3, x4, x5, x6)  =  U5_ggga(x6)
flatten29_out_ggga(x1, x2, x3, x4)  =  flatten29_out_ggga(x4)
flatten24_out_ggga(x1, x2, x3, x4)  =  flatten24_out_ggga(x4)
U9_ga(x1, x2, x3, x4, x5, x6)  =  U9_ga(x6)
U10_ga(x1, x2, x3, x4, x5, x6)  =  U10_ga(x6)
U11_ga(x1, x2, x3, x4, x5)  =  U11_ga(x5)
U12_ga(x1, x2, x3, x4, x5)  =  U12_ga(x5)
U13_ga(x1, x2, x3, x4, x5)  =  U13_ga(x5)
.(x1, x2)  =  .(x1, x2)
COUNT1_IN_GA(x1, x2)  =  COUNT1_IN_GA(x1)
U7_GA(x1, x2, x3, x4, x5)  =  U7_GA(x5)
U8_GA(x1, x2, x3, x4, x5, x6)  =  U8_GA(x6)
FLATTEN24_IN_GGGA(x1, x2, x3, x4)  =  FLATTEN24_IN_GGGA(x1, x2, x3)
U6_GGGA(x1, x2, x3, x4, x5)  =  U6_GGGA(x5)
FLATTEN29_IN_GGGA(x1, x2, x3, x4)  =  FLATTEN29_IN_GGGA(x1, x2, x3)
U3_GGGA(x1, x2, x3, x4, x5)  =  U3_GGGA(x1, x2, x5)
FLATTEN40_IN_GA(x1, x2)  =  FLATTEN40_IN_GA(x1)
U1_GA(x1, x2, x3, x4)  =  U1_GA(x1, x4)
U2_GA(x1, x2, x3, x4, x5)  =  U2_GA(x5)
U4_GGGA(x1, x2, x3, x4, x5, x6)  =  U4_GGGA(x1, x6)
U5_GGGA(x1, x2, x3, x4, x5, x6)  =  U5_GGGA(x6)
U9_GA(x1, x2, x3, x4, x5, x6)  =  U9_GA(x6)
U10_GA(x1, x2, x3, x4, x5, x6)  =  U10_GA(x6)
U11_GA(x1, x2, x3, x4, x5)  =  U11_GA(x5)
U12_GA(x1, x2, x3, x4, x5)  =  U12_GA(x5)
U13_GA(x1, x2, x3, x4, x5)  =  U13_GA(x5)

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

(6) Obligation:

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

COUNT1_IN_GA(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → U7_GA(T8, T29, T30, T32, count1_in_ga(T30, T32))
COUNT1_IN_GA(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → COUNT1_IN_GA(T30, T32)
COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U8_GA(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, X68))
COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → FLATTEN24_IN_GGGA(T51, T52, T53, X68)
FLATTEN24_IN_GGGA(T72, T73, T74, X117) → U6_GGGA(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
FLATTEN24_IN_GGGA(T72, T73, T74, X117) → FLATTEN29_IN_GGGA(T72, T73, T74, X117)
FLATTEN29_IN_GGGA(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_GGGA(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
FLATTEN29_IN_GGGA(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → FLATTEN40_IN_GA(T104, X174)
FLATTEN40_IN_GA(cons(atom(T120), T121), .(T120, X205)) → U1_GA(T120, T121, X205, flatten40_in_ga(T121, X205))
FLATTEN40_IN_GA(cons(atom(T120), T121), .(T120, X205)) → FLATTEN40_IN_GA(T121, X205)
FLATTEN40_IN_GA(cons(cons(T130, T131), T132), X225) → U2_GA(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
FLATTEN40_IN_GA(cons(cons(T130, T131), T132), X225) → FLATTEN29_IN_GGGA(T130, T131, T132, X225)
FLATTEN29_IN_GGGA(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_GGGA(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
FLATTEN29_IN_GGGA(atom(T90), cons(T142, T143), T144, .(T90, X250)) → FLATTEN29_IN_GGGA(T142, T143, T144, X250)
FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159, X275) → U5_GGGA(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159, X275) → FLATTEN29_IN_GGGA(T156, T157, cons(T158, T159), X275)
COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_GA(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_GA(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → U10_GA(T8, T51, T52, T53, T55, count1_in_ga(T59, T55))
U9_GA(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → COUNT1_IN_GA(T59, T55)
COUNT1_IN_GA(cons(cons(T184, T185), T186), T174) → U11_GA(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, X329))
COUNT1_IN_GA(cons(cons(T184, T185), T186), T174) → FLATTEN29_IN_GGGA(T184, T185, T186, X329)
COUNT1_IN_GA(cons(cons(T184, T185), T186), T174) → U12_GA(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_GA(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → U13_GA(T184, T185, T186, T174, count1_in_ga(T190, T174))
U12_GA(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → COUNT1_IN_GA(T190, T174)

The TRS R consists of the following rules:

count1_in_ga(atom(T4), s(0)) → count1_out_ga(atom(T4), s(0))
count1_in_ga(cons(atom(T8), atom(T16)), s(s(0))) → count1_out_ga(cons(atom(T8), atom(T16)), s(s(0)))
count1_in_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → U7_ga(T8, T29, T30, T32, count1_in_ga(T30, T32))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U8_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, X68))
flatten24_in_ggga(T72, T73, T74, X117) → U6_ggga(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
flatten29_in_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_ggga(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
flatten40_in_ga(atom(T111), .(T111, [])) → flatten40_out_ga(atom(T111), .(T111, []))
flatten40_in_ga(cons(atom(T120), T121), .(T120, X205)) → U1_ga(T120, T121, X205, flatten40_in_ga(T121, X205))
flatten40_in_ga(cons(cons(T130, T131), T132), X225) → U2_ga(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_ggga(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
flatten29_in_ggga(cons(T156, T157), T158, T159, X275) → U5_ggga(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
U5_ggga(T156, T157, T158, T159, X275, flatten29_out_ggga(T156, T157, cons(T158, T159), X275)) → flatten29_out_ggga(cons(T156, T157), T158, T159, X275)
U4_ggga(T90, T142, T143, T144, X250, flatten29_out_ggga(T142, T143, T144, X250)) → flatten29_out_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250))
U2_ga(T130, T131, T132, X225, flatten29_out_ggga(T130, T131, T132, X225)) → flatten40_out_ga(cons(cons(T130, T131), T132), X225)
U1_ga(T120, T121, X205, flatten40_out_ga(T121, X205)) → flatten40_out_ga(cons(atom(T120), T121), .(T120, X205))
U3_ggga(T90, T103, T104, X174, flatten40_out_ga(T104, X174)) → flatten29_out_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174)))
U6_ggga(T72, T73, T74, X117, flatten29_out_ggga(T72, T73, T74, X117)) → flatten24_out_ggga(T72, T73, T74, X117)
U8_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, X68)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → U10_ga(T8, T51, T52, T53, T55, count1_in_ga(T59, T55))
count1_in_ga(cons(cons(T184, T185), T186), T174) → U11_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, X329))
U11_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, X329)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
count1_in_ga(cons(cons(T184, T185), T186), T174) → U12_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → U13_ga(T184, T185, T186, T174, count1_in_ga(T190, T174))
U13_ga(T184, T185, T186, T174, count1_out_ga(T190, T174)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
U10_ga(T8, T51, T52, T53, T55, count1_out_ga(T59, T55)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
U7_ga(T8, T29, T30, T32, count1_out_ga(T30, T32)) → count1_out_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32)))

The argument filtering Pi contains the following mapping:
count1_in_ga(x1, x2)  =  count1_in_ga(x1)
atom(x1)  =  atom(x1)
count1_out_ga(x1, x2)  =  count1_out_ga
cons(x1, x2)  =  cons(x1, x2)
U7_ga(x1, x2, x3, x4, x5)  =  U7_ga(x5)
U8_ga(x1, x2, x3, x4, x5, x6)  =  U8_ga(x6)
flatten24_in_ggga(x1, x2, x3, x4)  =  flatten24_in_ggga(x1, x2, x3)
U6_ggga(x1, x2, x3, x4, x5)  =  U6_ggga(x5)
flatten29_in_ggga(x1, x2, x3, x4)  =  flatten29_in_ggga(x1, x2, x3)
U3_ggga(x1, x2, x3, x4, x5)  =  U3_ggga(x1, x2, x5)
flatten40_in_ga(x1, x2)  =  flatten40_in_ga(x1)
flatten40_out_ga(x1, x2)  =  flatten40_out_ga(x2)
U1_ga(x1, x2, x3, x4)  =  U1_ga(x1, x4)
U2_ga(x1, x2, x3, x4, x5)  =  U2_ga(x5)
U4_ggga(x1, x2, x3, x4, x5, x6)  =  U4_ggga(x1, x6)
U5_ggga(x1, x2, x3, x4, x5, x6)  =  U5_ggga(x6)
flatten29_out_ggga(x1, x2, x3, x4)  =  flatten29_out_ggga(x4)
flatten24_out_ggga(x1, x2, x3, x4)  =  flatten24_out_ggga(x4)
U9_ga(x1, x2, x3, x4, x5, x6)  =  U9_ga(x6)
U10_ga(x1, x2, x3, x4, x5, x6)  =  U10_ga(x6)
U11_ga(x1, x2, x3, x4, x5)  =  U11_ga(x5)
U12_ga(x1, x2, x3, x4, x5)  =  U12_ga(x5)
U13_ga(x1, x2, x3, x4, x5)  =  U13_ga(x5)
.(x1, x2)  =  .(x1, x2)
COUNT1_IN_GA(x1, x2)  =  COUNT1_IN_GA(x1)
U7_GA(x1, x2, x3, x4, x5)  =  U7_GA(x5)
U8_GA(x1, x2, x3, x4, x5, x6)  =  U8_GA(x6)
FLATTEN24_IN_GGGA(x1, x2, x3, x4)  =  FLATTEN24_IN_GGGA(x1, x2, x3)
U6_GGGA(x1, x2, x3, x4, x5)  =  U6_GGGA(x5)
FLATTEN29_IN_GGGA(x1, x2, x3, x4)  =  FLATTEN29_IN_GGGA(x1, x2, x3)
U3_GGGA(x1, x2, x3, x4, x5)  =  U3_GGGA(x1, x2, x5)
FLATTEN40_IN_GA(x1, x2)  =  FLATTEN40_IN_GA(x1)
U1_GA(x1, x2, x3, x4)  =  U1_GA(x1, x4)
U2_GA(x1, x2, x3, x4, x5)  =  U2_GA(x5)
U4_GGGA(x1, x2, x3, x4, x5, x6)  =  U4_GGGA(x1, x6)
U5_GGGA(x1, x2, x3, x4, x5, x6)  =  U5_GGGA(x6)
U9_GA(x1, x2, x3, x4, x5, x6)  =  U9_GA(x6)
U10_GA(x1, x2, x3, x4, x5, x6)  =  U10_GA(x6)
U11_GA(x1, x2, x3, x4, x5)  =  U11_GA(x5)
U12_GA(x1, x2, x3, x4, x5)  =  U12_GA(x5)
U13_GA(x1, x2, x3, x4, x5)  =  U13_GA(x5)

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

(7) DependencyGraphProof (EQUIVALENT transformation)

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

(8) Complex Obligation (AND)

(9) Obligation:

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

FLATTEN29_IN_GGGA(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → FLATTEN40_IN_GA(T104, X174)
FLATTEN40_IN_GA(cons(atom(T120), T121), .(T120, X205)) → FLATTEN40_IN_GA(T121, X205)
FLATTEN40_IN_GA(cons(cons(T130, T131), T132), X225) → FLATTEN29_IN_GGGA(T130, T131, T132, X225)
FLATTEN29_IN_GGGA(atom(T90), cons(T142, T143), T144, .(T90, X250)) → FLATTEN29_IN_GGGA(T142, T143, T144, X250)
FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159, X275) → FLATTEN29_IN_GGGA(T156, T157, cons(T158, T159), X275)

The TRS R consists of the following rules:

count1_in_ga(atom(T4), s(0)) → count1_out_ga(atom(T4), s(0))
count1_in_ga(cons(atom(T8), atom(T16)), s(s(0))) → count1_out_ga(cons(atom(T8), atom(T16)), s(s(0)))
count1_in_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → U7_ga(T8, T29, T30, T32, count1_in_ga(T30, T32))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U8_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, X68))
flatten24_in_ggga(T72, T73, T74, X117) → U6_ggga(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
flatten29_in_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_ggga(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
flatten40_in_ga(atom(T111), .(T111, [])) → flatten40_out_ga(atom(T111), .(T111, []))
flatten40_in_ga(cons(atom(T120), T121), .(T120, X205)) → U1_ga(T120, T121, X205, flatten40_in_ga(T121, X205))
flatten40_in_ga(cons(cons(T130, T131), T132), X225) → U2_ga(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_ggga(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
flatten29_in_ggga(cons(T156, T157), T158, T159, X275) → U5_ggga(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
U5_ggga(T156, T157, T158, T159, X275, flatten29_out_ggga(T156, T157, cons(T158, T159), X275)) → flatten29_out_ggga(cons(T156, T157), T158, T159, X275)
U4_ggga(T90, T142, T143, T144, X250, flatten29_out_ggga(T142, T143, T144, X250)) → flatten29_out_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250))
U2_ga(T130, T131, T132, X225, flatten29_out_ggga(T130, T131, T132, X225)) → flatten40_out_ga(cons(cons(T130, T131), T132), X225)
U1_ga(T120, T121, X205, flatten40_out_ga(T121, X205)) → flatten40_out_ga(cons(atom(T120), T121), .(T120, X205))
U3_ggga(T90, T103, T104, X174, flatten40_out_ga(T104, X174)) → flatten29_out_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174)))
U6_ggga(T72, T73, T74, X117, flatten29_out_ggga(T72, T73, T74, X117)) → flatten24_out_ggga(T72, T73, T74, X117)
U8_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, X68)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → U10_ga(T8, T51, T52, T53, T55, count1_in_ga(T59, T55))
count1_in_ga(cons(cons(T184, T185), T186), T174) → U11_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, X329))
U11_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, X329)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
count1_in_ga(cons(cons(T184, T185), T186), T174) → U12_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → U13_ga(T184, T185, T186, T174, count1_in_ga(T190, T174))
U13_ga(T184, T185, T186, T174, count1_out_ga(T190, T174)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
U10_ga(T8, T51, T52, T53, T55, count1_out_ga(T59, T55)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
U7_ga(T8, T29, T30, T32, count1_out_ga(T30, T32)) → count1_out_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32)))

The argument filtering Pi contains the following mapping:
count1_in_ga(x1, x2)  =  count1_in_ga(x1)
atom(x1)  =  atom(x1)
count1_out_ga(x1, x2)  =  count1_out_ga
cons(x1, x2)  =  cons(x1, x2)
U7_ga(x1, x2, x3, x4, x5)  =  U7_ga(x5)
U8_ga(x1, x2, x3, x4, x5, x6)  =  U8_ga(x6)
flatten24_in_ggga(x1, x2, x3, x4)  =  flatten24_in_ggga(x1, x2, x3)
U6_ggga(x1, x2, x3, x4, x5)  =  U6_ggga(x5)
flatten29_in_ggga(x1, x2, x3, x4)  =  flatten29_in_ggga(x1, x2, x3)
U3_ggga(x1, x2, x3, x4, x5)  =  U3_ggga(x1, x2, x5)
flatten40_in_ga(x1, x2)  =  flatten40_in_ga(x1)
flatten40_out_ga(x1, x2)  =  flatten40_out_ga(x2)
U1_ga(x1, x2, x3, x4)  =  U1_ga(x1, x4)
U2_ga(x1, x2, x3, x4, x5)  =  U2_ga(x5)
U4_ggga(x1, x2, x3, x4, x5, x6)  =  U4_ggga(x1, x6)
U5_ggga(x1, x2, x3, x4, x5, x6)  =  U5_ggga(x6)
flatten29_out_ggga(x1, x2, x3, x4)  =  flatten29_out_ggga(x4)
flatten24_out_ggga(x1, x2, x3, x4)  =  flatten24_out_ggga(x4)
U9_ga(x1, x2, x3, x4, x5, x6)  =  U9_ga(x6)
U10_ga(x1, x2, x3, x4, x5, x6)  =  U10_ga(x6)
U11_ga(x1, x2, x3, x4, x5)  =  U11_ga(x5)
U12_ga(x1, x2, x3, x4, x5)  =  U12_ga(x5)
U13_ga(x1, x2, x3, x4, x5)  =  U13_ga(x5)
.(x1, x2)  =  .(x1, x2)
FLATTEN29_IN_GGGA(x1, x2, x3, x4)  =  FLATTEN29_IN_GGGA(x1, x2, x3)
FLATTEN40_IN_GA(x1, x2)  =  FLATTEN40_IN_GA(x1)

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

(10) UsableRulesProof (EQUIVALENT transformation)

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

(11) Obligation:

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

FLATTEN29_IN_GGGA(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → FLATTEN40_IN_GA(T104, X174)
FLATTEN40_IN_GA(cons(atom(T120), T121), .(T120, X205)) → FLATTEN40_IN_GA(T121, X205)
FLATTEN40_IN_GA(cons(cons(T130, T131), T132), X225) → FLATTEN29_IN_GGGA(T130, T131, T132, X225)
FLATTEN29_IN_GGGA(atom(T90), cons(T142, T143), T144, .(T90, X250)) → FLATTEN29_IN_GGGA(T142, T143, T144, X250)
FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159, X275) → FLATTEN29_IN_GGGA(T156, T157, cons(T158, T159), X275)

R is empty.
The argument filtering Pi contains the following mapping:
atom(x1)  =  atom(x1)
cons(x1, x2)  =  cons(x1, x2)
.(x1, x2)  =  .(x1, x2)
FLATTEN29_IN_GGGA(x1, x2, x3, x4)  =  FLATTEN29_IN_GGGA(x1, x2, x3)
FLATTEN40_IN_GA(x1, x2)  =  FLATTEN40_IN_GA(x1)

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

(12) PiDPToQDPProof (SOUND transformation)

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

(13) Obligation:

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

FLATTEN29_IN_GGGA(atom(T90), atom(T103), T104) → FLATTEN40_IN_GA(T104)
FLATTEN40_IN_GA(cons(atom(T120), T121)) → FLATTEN40_IN_GA(T121)
FLATTEN40_IN_GA(cons(cons(T130, T131), T132)) → FLATTEN29_IN_GGGA(T130, T131, T132)
FLATTEN29_IN_GGGA(atom(T90), cons(T142, T143), T144) → FLATTEN29_IN_GGGA(T142, T143, T144)
FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159) → FLATTEN29_IN_GGGA(T156, T157, cons(T158, T159))

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

(14) UsableRulesReductionPairsProof (EQUIVALENT transformation)

By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well.

The following dependency pairs can be deleted:

FLATTEN29_IN_GGGA(atom(T90), atom(T103), T104) → FLATTEN40_IN_GA(T104)
FLATTEN40_IN_GA(cons(atom(T120), T121)) → FLATTEN40_IN_GA(T121)
FLATTEN40_IN_GA(cons(cons(T130, T131), T132)) → FLATTEN29_IN_GGGA(T130, T131, T132)
FLATTEN29_IN_GGGA(atom(T90), cons(T142, T143), T144) → FLATTEN29_IN_GGGA(T142, T143, T144)
No rules are removed from R.

Used ordering: POLO with Polynomial interpretation [POLO]:

POL(FLATTEN29_IN_GGGA(x1, x2, x3)) = 2·x1 + 2·x2 + 2·x3   
POL(FLATTEN40_IN_GA(x1)) = 1 + 2·x1   
POL(atom(x1)) = 1 + x1   
POL(cons(x1, x2)) = x1 + x2   

(15) Obligation:

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

FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159) → FLATTEN29_IN_GGGA(T156, T157, cons(T158, T159))

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

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

  • FLATTEN29_IN_GGGA(cons(T156, T157), T158, T159) → FLATTEN29_IN_GGGA(T156, T157, cons(T158, T159))
    The graph contains the following edges 1 > 1, 1 > 2

(17) YES

(18) Obligation:

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

COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_GA(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_GA(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → COUNT1_IN_GA(T59, T55)
COUNT1_IN_GA(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → COUNT1_IN_GA(T30, T32)
COUNT1_IN_GA(cons(cons(T184, T185), T186), T174) → U12_GA(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_GA(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → COUNT1_IN_GA(T190, T174)

The TRS R consists of the following rules:

count1_in_ga(atom(T4), s(0)) → count1_out_ga(atom(T4), s(0))
count1_in_ga(cons(atom(T8), atom(T16)), s(s(0))) → count1_out_ga(cons(atom(T8), atom(T16)), s(s(0)))
count1_in_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → U7_ga(T8, T29, T30, T32, count1_in_ga(T30, T32))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U8_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, X68))
flatten24_in_ggga(T72, T73, T74, X117) → U6_ggga(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
flatten29_in_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_ggga(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
flatten40_in_ga(atom(T111), .(T111, [])) → flatten40_out_ga(atom(T111), .(T111, []))
flatten40_in_ga(cons(atom(T120), T121), .(T120, X205)) → U1_ga(T120, T121, X205, flatten40_in_ga(T121, X205))
flatten40_in_ga(cons(cons(T130, T131), T132), X225) → U2_ga(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_ggga(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
flatten29_in_ggga(cons(T156, T157), T158, T159, X275) → U5_ggga(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
U5_ggga(T156, T157, T158, T159, X275, flatten29_out_ggga(T156, T157, cons(T158, T159), X275)) → flatten29_out_ggga(cons(T156, T157), T158, T159, X275)
U4_ggga(T90, T142, T143, T144, X250, flatten29_out_ggga(T142, T143, T144, X250)) → flatten29_out_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250))
U2_ga(T130, T131, T132, X225, flatten29_out_ggga(T130, T131, T132, X225)) → flatten40_out_ga(cons(cons(T130, T131), T132), X225)
U1_ga(T120, T121, X205, flatten40_out_ga(T121, X205)) → flatten40_out_ga(cons(atom(T120), T121), .(T120, X205))
U3_ggga(T90, T103, T104, X174, flatten40_out_ga(T104, X174)) → flatten29_out_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174)))
U6_ggga(T72, T73, T74, X117, flatten29_out_ggga(T72, T73, T74, X117)) → flatten24_out_ggga(T72, T73, T74, X117)
U8_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, X68)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
count1_in_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_ga(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_ga(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → U10_ga(T8, T51, T52, T53, T55, count1_in_ga(T59, T55))
count1_in_ga(cons(cons(T184, T185), T186), T174) → U11_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, X329))
U11_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, X329)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
count1_in_ga(cons(cons(T184, T185), T186), T174) → U12_ga(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_ga(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → U13_ga(T184, T185, T186, T174, count1_in_ga(T190, T174))
U13_ga(T184, T185, T186, T174, count1_out_ga(T190, T174)) → count1_out_ga(cons(cons(T184, T185), T186), T174)
U10_ga(T8, T51, T52, T53, T55, count1_out_ga(T59, T55)) → count1_out_ga(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55))
U7_ga(T8, T29, T30, T32, count1_out_ga(T30, T32)) → count1_out_ga(cons(atom(T8), cons(atom(T29), T30)), s(s(T32)))

The argument filtering Pi contains the following mapping:
count1_in_ga(x1, x2)  =  count1_in_ga(x1)
atom(x1)  =  atom(x1)
count1_out_ga(x1, x2)  =  count1_out_ga
cons(x1, x2)  =  cons(x1, x2)
U7_ga(x1, x2, x3, x4, x5)  =  U7_ga(x5)
U8_ga(x1, x2, x3, x4, x5, x6)  =  U8_ga(x6)
flatten24_in_ggga(x1, x2, x3, x4)  =  flatten24_in_ggga(x1, x2, x3)
U6_ggga(x1, x2, x3, x4, x5)  =  U6_ggga(x5)
flatten29_in_ggga(x1, x2, x3, x4)  =  flatten29_in_ggga(x1, x2, x3)
U3_ggga(x1, x2, x3, x4, x5)  =  U3_ggga(x1, x2, x5)
flatten40_in_ga(x1, x2)  =  flatten40_in_ga(x1)
flatten40_out_ga(x1, x2)  =  flatten40_out_ga(x2)
U1_ga(x1, x2, x3, x4)  =  U1_ga(x1, x4)
U2_ga(x1, x2, x3, x4, x5)  =  U2_ga(x5)
U4_ggga(x1, x2, x3, x4, x5, x6)  =  U4_ggga(x1, x6)
U5_ggga(x1, x2, x3, x4, x5, x6)  =  U5_ggga(x6)
flatten29_out_ggga(x1, x2, x3, x4)  =  flatten29_out_ggga(x4)
flatten24_out_ggga(x1, x2, x3, x4)  =  flatten24_out_ggga(x4)
U9_ga(x1, x2, x3, x4, x5, x6)  =  U9_ga(x6)
U10_ga(x1, x2, x3, x4, x5, x6)  =  U10_ga(x6)
U11_ga(x1, x2, x3, x4, x5)  =  U11_ga(x5)
U12_ga(x1, x2, x3, x4, x5)  =  U12_ga(x5)
U13_ga(x1, x2, x3, x4, x5)  =  U13_ga(x5)
.(x1, x2)  =  .(x1, x2)
COUNT1_IN_GA(x1, x2)  =  COUNT1_IN_GA(x1)
U9_GA(x1, x2, x3, x4, x5, x6)  =  U9_GA(x6)
U12_GA(x1, x2, x3, x4, x5)  =  U12_GA(x5)

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

(19) UsableRulesProof (EQUIVALENT transformation)

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

(20) Obligation:

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

COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53)), s(T55)) → U9_GA(T8, T51, T52, T53, T55, flatten24_in_ggga(T51, T52, T53, T59))
U9_GA(T8, T51, T52, T53, T55, flatten24_out_ggga(T51, T52, T53, T59)) → COUNT1_IN_GA(T59, T55)
COUNT1_IN_GA(cons(atom(T8), cons(atom(T29), T30)), s(s(T32))) → COUNT1_IN_GA(T30, T32)
COUNT1_IN_GA(cons(cons(T184, T185), T186), T174) → U12_GA(T184, T185, T186, T174, flatten29_in_ggga(T184, T185, T186, T190))
U12_GA(T184, T185, T186, T174, flatten29_out_ggga(T184, T185, T186, T190)) → COUNT1_IN_GA(T190, T174)

The TRS R consists of the following rules:

flatten24_in_ggga(T72, T73, T74, X117) → U6_ggga(T72, T73, T74, X117, flatten29_in_ggga(T72, T73, T74, X117))
flatten29_in_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174))) → U3_ggga(T90, T103, T104, X174, flatten40_in_ga(T104, X174))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250)) → U4_ggga(T90, T142, T143, T144, X250, flatten29_in_ggga(T142, T143, T144, X250))
flatten29_in_ggga(cons(T156, T157), T158, T159, X275) → U5_ggga(T156, T157, T158, T159, X275, flatten29_in_ggga(T156, T157, cons(T158, T159), X275))
U6_ggga(T72, T73, T74, X117, flatten29_out_ggga(T72, T73, T74, X117)) → flatten24_out_ggga(T72, T73, T74, X117)
U3_ggga(T90, T103, T104, X174, flatten40_out_ga(T104, X174)) → flatten29_out_ggga(atom(T90), atom(T103), T104, .(T90, .(T103, X174)))
U4_ggga(T90, T142, T143, T144, X250, flatten29_out_ggga(T142, T143, T144, X250)) → flatten29_out_ggga(atom(T90), cons(T142, T143), T144, .(T90, X250))
U5_ggga(T156, T157, T158, T159, X275, flatten29_out_ggga(T156, T157, cons(T158, T159), X275)) → flatten29_out_ggga(cons(T156, T157), T158, T159, X275)
flatten40_in_ga(atom(T111), .(T111, [])) → flatten40_out_ga(atom(T111), .(T111, []))
flatten40_in_ga(cons(atom(T120), T121), .(T120, X205)) → U1_ga(T120, T121, X205, flatten40_in_ga(T121, X205))
flatten40_in_ga(cons(cons(T130, T131), T132), X225) → U2_ga(T130, T131, T132, X225, flatten29_in_ggga(T130, T131, T132, X225))
U1_ga(T120, T121, X205, flatten40_out_ga(T121, X205)) → flatten40_out_ga(cons(atom(T120), T121), .(T120, X205))
U2_ga(T130, T131, T132, X225, flatten29_out_ggga(T130, T131, T132, X225)) → flatten40_out_ga(cons(cons(T130, T131), T132), X225)

The argument filtering Pi contains the following mapping:
atom(x1)  =  atom(x1)
cons(x1, x2)  =  cons(x1, x2)
flatten24_in_ggga(x1, x2, x3, x4)  =  flatten24_in_ggga(x1, x2, x3)
U6_ggga(x1, x2, x3, x4, x5)  =  U6_ggga(x5)
flatten29_in_ggga(x1, x2, x3, x4)  =  flatten29_in_ggga(x1, x2, x3)
U3_ggga(x1, x2, x3, x4, x5)  =  U3_ggga(x1, x2, x5)
flatten40_in_ga(x1, x2)  =  flatten40_in_ga(x1)
flatten40_out_ga(x1, x2)  =  flatten40_out_ga(x2)
U1_ga(x1, x2, x3, x4)  =  U1_ga(x1, x4)
U2_ga(x1, x2, x3, x4, x5)  =  U2_ga(x5)
U4_ggga(x1, x2, x3, x4, x5, x6)  =  U4_ggga(x1, x6)
U5_ggga(x1, x2, x3, x4, x5, x6)  =  U5_ggga(x6)
flatten29_out_ggga(x1, x2, x3, x4)  =  flatten29_out_ggga(x4)
flatten24_out_ggga(x1, x2, x3, x4)  =  flatten24_out_ggga(x4)
.(x1, x2)  =  .(x1, x2)
COUNT1_IN_GA(x1, x2)  =  COUNT1_IN_GA(x1)
U9_GA(x1, x2, x3, x4, x5, x6)  =  U9_GA(x6)
U12_GA(x1, x2, x3, x4, x5)  =  U12_GA(x5)

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

(21) PiDPToQDPProof (SOUND transformation)

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

(22) Obligation:

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

COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53))) → U9_GA(flatten24_in_ggga(T51, T52, T53))
U9_GA(flatten24_out_ggga(T59)) → COUNT1_IN_GA(T59)
COUNT1_IN_GA(cons(atom(T8), cons(atom(T29), T30))) → COUNT1_IN_GA(T30)
COUNT1_IN_GA(cons(cons(T184, T185), T186)) → U12_GA(flatten29_in_ggga(T184, T185, T186))
U12_GA(flatten29_out_ggga(T190)) → COUNT1_IN_GA(T190)

The TRS R consists of the following rules:

flatten24_in_ggga(T72, T73, T74) → U6_ggga(flatten29_in_ggga(T72, T73, T74))
flatten29_in_ggga(atom(T90), atom(T103), T104) → U3_ggga(T90, T103, flatten40_in_ga(T104))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144) → U4_ggga(T90, flatten29_in_ggga(T142, T143, T144))
flatten29_in_ggga(cons(T156, T157), T158, T159) → U5_ggga(flatten29_in_ggga(T156, T157, cons(T158, T159)))
U6_ggga(flatten29_out_ggga(X117)) → flatten24_out_ggga(X117)
U3_ggga(T90, T103, flatten40_out_ga(X174)) → flatten29_out_ggga(.(T90, .(T103, X174)))
U4_ggga(T90, flatten29_out_ggga(X250)) → flatten29_out_ggga(.(T90, X250))
U5_ggga(flatten29_out_ggga(X275)) → flatten29_out_ggga(X275)
flatten40_in_ga(atom(T111)) → flatten40_out_ga(.(T111, []))
flatten40_in_ga(cons(atom(T120), T121)) → U1_ga(T120, flatten40_in_ga(T121))
flatten40_in_ga(cons(cons(T130, T131), T132)) → U2_ga(flatten29_in_ggga(T130, T131, T132))
U1_ga(T120, flatten40_out_ga(X205)) → flatten40_out_ga(.(T120, X205))
U2_ga(flatten29_out_ggga(X225)) → flatten40_out_ga(X225)

The set Q consists of the following terms:

flatten24_in_ggga(x0, x1, x2)
flatten29_in_ggga(x0, x1, x2)
U6_ggga(x0)
U3_ggga(x0, x1, x2)
U4_ggga(x0, x1)
U5_ggga(x0)
flatten40_in_ga(x0)
U1_ga(x0, x1)
U2_ga(x0)

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

(23) UsableRulesReductionPairsProof (EQUIVALENT transformation)

By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well.

The following dependency pairs can be deleted:

COUNT1_IN_GA(cons(atom(T8), cons(cons(T51, T52), T53))) → U9_GA(flatten24_in_ggga(T51, T52, T53))
U9_GA(flatten24_out_ggga(T59)) → COUNT1_IN_GA(T59)
COUNT1_IN_GA(cons(atom(T8), cons(atom(T29), T30))) → COUNT1_IN_GA(T30)
COUNT1_IN_GA(cons(cons(T184, T185), T186)) → U12_GA(flatten29_in_ggga(T184, T185, T186))
U12_GA(flatten29_out_ggga(T190)) → COUNT1_IN_GA(T190)
The following rules are removed from R:

flatten29_in_ggga(atom(T90), atom(T103), T104) → U3_ggga(T90, T103, flatten40_in_ga(T104))
flatten29_in_ggga(atom(T90), cons(T142, T143), T144) → U4_ggga(T90, flatten29_in_ggga(T142, T143, T144))
U4_ggga(T90, flatten29_out_ggga(X250)) → flatten29_out_ggga(.(T90, X250))
flatten40_in_ga(atom(T111)) → flatten40_out_ga(.(T111, []))
flatten40_in_ga(cons(atom(T120), T121)) → U1_ga(T120, flatten40_in_ga(T121))
flatten40_in_ga(cons(cons(T130, T131), T132)) → U2_ga(flatten29_in_ggga(T130, T131, T132))
U2_ga(flatten29_out_ggga(X225)) → flatten40_out_ga(X225)
U1_ga(T120, flatten40_out_ga(X205)) → flatten40_out_ga(.(T120, X205))
U6_ggga(flatten29_out_ggga(X117)) → flatten24_out_ggga(X117)
Used ordering: POLO with Polynomial interpretation [POLO]:

POL(.(x1, x2)) = x1 + x2   
POL(COUNT1_IN_GA(x1)) = 2·x1   
POL(U12_GA(x1)) = 2 + 2·x1   
POL(U1_ga(x1, x2)) = 1 + 2·x1 + x2   
POL(U2_ga(x1)) = 1 + x1   
POL(U3_ggga(x1, x2, x3)) = 2·x1 + 2·x2 + x3   
POL(U4_ggga(x1, x2)) = 1 + 2·x1 + x2   
POL(U5_ggga(x1)) = x1   
POL(U6_ggga(x1)) = 2 + x1   
POL(U9_GA(x1)) = 1 + 2·x1   
POL([]) = 0   
POL(atom(x1)) = 2 + 2·x1   
POL(cons(x1, x2)) = 2 + x1 + x2   
POL(flatten24_in_ggga(x1, x2, x3)) = 2 + x1 + x2 + x3   
POL(flatten24_out_ggga(x1)) = 1 + x1   
POL(flatten29_in_ggga(x1, x2, x3)) = x1 + x2 + x3   
POL(flatten29_out_ggga(x1)) = x1   
POL(flatten40_in_ga(x1)) = x1   
POL(flatten40_out_ga(x1)) = x1   

(24) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

flatten29_in_ggga(cons(T156, T157), T158, T159) → U5_ggga(flatten29_in_ggga(T156, T157, cons(T158, T159)))
U5_ggga(flatten29_out_ggga(X275)) → flatten29_out_ggga(X275)
U3_ggga(T90, T103, flatten40_out_ga(X174)) → flatten29_out_ggga(.(T90, .(T103, X174)))
flatten24_in_ggga(T72, T73, T74) → U6_ggga(flatten29_in_ggga(T72, T73, T74))

The set Q consists of the following terms:

flatten24_in_ggga(x0, x1, x2)
flatten29_in_ggga(x0, x1, x2)
U6_ggga(x0)
U3_ggga(x0, x1, x2)
U4_ggga(x0, x1)
U5_ggga(x0)
flatten40_in_ga(x0)
U1_ga(x0, x1)
U2_ga(x0)

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

(25) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(26) YES