(0) Obligation:
Clauses:
parse(Xs, T) :- ','(app(As, cons(a, cons(s(A, B, C), cons(b, Bs))), Xs), ','(app(As, cons(s(a, s(A, B, C), b), Bs), Ys), parse(Ys, T))).
parse(Xs, T) :- ','(app(As, cons(a, cons(s(A, B), cons(b, Bs))), Xs), ','(app(As, cons(s(a, s(A, B), b), Bs), Ys), parse(Ys, T))).
parse(Xs, T) :- ','(app(As, cons(a, cons(b, Bs)), Xs), ','(app(As, cons(s(a, b), Bs), Ys), parse(Ys, T))).
parse(cons(s(A, B), nil), s(A, B)).
parse(cons(s(A, B, C), nil), s(A, B, C)).
app(nil, X, X).
app(cons(X, Xs), Ys, cons(X, Zs)) :- app(Xs, Ys, Zs).
Queries:
parse(g,a).
(1) PrologToPrologProblemTransformerProof (SOUND transformation)
Built Prolog problem from termination graph.
(2) Obligation:
Clauses:
app21(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))).
app21(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) :- app21(X212, X213, X214, X215, X216, T41).
parse10(T30, T31) :- app21(X135, X136, X137, X138, X139, T30).
parse10(T30, T37) :- ','(app21(T32, T33, T34, T35, T36, T30), p22(T32, T33, T34, T35, T36, X140, T37)).
parse10(T127, T128) :- p43(X306, X307, X308, X309, T127, X310, T128).
parse10(T208, T209) :- p66(X450, X451, T208, X452, T209).
parse10(cons(s(T251, T252), nil), s(T251, T252)).
parse10(cons(s(T259, T260, T261), nil), s(T259, T260, T261)).
app31(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)).
app31(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) :- app31(T98, T100, T101, T102, T99, X255).
app44(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))).
app44(cons(X370, X371), X372, X373, X374, cons(X370, T137)) :- app44(X371, X372, X373, X374, T137).
app54(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)).
app54(cons(T177, T182), T184, T185, T183, cons(T177, X411)) :- app54(T182, T184, T185, T183, X411).
app67(nil, X470, cons(a, cons(b, X470))).
app67(cons(X490, X491), X492, cons(X490, T216)) :- app67(X491, X492, T216).
app77(nil, T227, cons(s(a, b), T227)).
app77(cons(T234, T237), T238, cons(T234, X525)) :- app77(T237, T238, X525).
p22(T32, T33, T34, T35, T36, X140, T37) :- app31(T32, T33, T34, T35, T36, X140).
p22(T32, T33, T34, T35, T36, T50, T51) :- ','(app31(T32, T33, T34, T35, T36, T50), parse10(T50, T51)).
p43(X306, X307, X308, X309, T127, X310, T128) :- app44(X306, X307, X308, X309, T127).
p43(T129, T130, T131, T132, T127, X310, T133) :- ','(app44(T129, T130, T131, T132, T127), app54(T129, T130, T131, T132, X310)).
p43(T129, T130, T131, T132, T127, T144, T145) :- ','(app44(T129, T130, T131, T132, T127), ','(app54(T129, T130, T131, T132, T144), parse10(T144, T145))).
p66(X450, X451, T208, X452, T209) :- app67(X450, X451, T208).
p66(T210, T211, T208, X452, T212) :- ','(app67(T210, T211, T208), app77(T210, T211, X452)).
p66(T210, T211, T208, T219, T220) :- ','(app67(T210, T211, T208), ','(app77(T210, T211, T219), parse10(T219, T220))).
app9(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)).
parse1(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) :- app9(X32, X33, X34, X35, X10).
parse1(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) :- ','(app9(T9, T10, T11, T12, T13), parse10(T13, T7)).
parse1(cons(X608, T266), T7) :- app21(X609, X610, X611, X612, X613, T266).
parse1(cons(X608, T266), T7) :- ','(app21(T267, T268, T269, T270, T271, T266), p22(cons(X608, T267), T268, T269, T270, T271, X10, T7)).
parse1(T287, T289) :- p43(X682, X683, X684, X685, T287, X686, T289).
parse1(T300, T302) :- p66(X719, X720, T300, X721, T302).
parse1(cons(s(T311, T312), nil), s(T311, T312)).
parse1(cons(s(T319, T320, T321), nil), s(T319, T320, T321)).
Queries:
parse1(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:
parse1_in: (b,f)
parse10_in: (b,f)
app21_in: (f,f,f,f,f,b)
p22_in: (b,b,b,b,b,f,f)
app31_in: (b,b,b,b,b,f)
p43_in: (f,f,f,f,b,f,f)
app44_in: (f,f,f,f,b)
app54_in: (b,b,b,b,f)
p66_in: (f,f,b,f,f)
app67_in: (f,f,b)
app77_in: (b,b,f)
Transforming
Prolog into the following
Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
(4) Obligation:
Pi-finite rewrite system:
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
(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:
PARSE1_IN_GA(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_GA(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
PARSE1_IN_GA(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → APP9_IN_GGGGA(X32, X33, X34, X35, X10)
PARSE1_IN_GA(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_GA(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_GA(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_GA(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
U28_GA(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → PARSE10_IN_GA(T13, T7)
PARSE10_IN_GA(T30, T31) → U2_GA(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
PARSE10_IN_GA(T30, T31) → APP21_IN_AAAAAG(X135, X136, X137, X138, X139, T30)
APP21_IN_AAAAAG(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_AAAAAG(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
APP21_IN_AAAAAG(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → APP21_IN_AAAAAG(X212, X213, X214, X215, X216, T41)
PARSE10_IN_GA(T30, T37) → U3_GA(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_GA(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_GA(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
U3_GA(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → P22_IN_GGGGGAA(T32, T33, T34, T35, T36, X140, T37)
P22_IN_GGGGGAA(T32, T33, T34, T35, T36, X140, T37) → U12_GGGGGAA(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
P22_IN_GGGGGAA(T32, T33, T34, T35, T36, X140, T37) → APP31_IN_GGGGGA(T32, T33, T34, T35, T36, X140)
APP31_IN_GGGGGA(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_GGGGGA(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
APP31_IN_GGGGGA(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → APP31_IN_GGGGGA(T98, T100, T101, T102, T99, X255)
P22_IN_GGGGGAA(T32, T33, T34, T35, T36, T50, T51) → U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → PARSE10_IN_GA(T50, T51)
PARSE10_IN_GA(T127, T128) → U5_GA(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
PARSE10_IN_GA(T127, T128) → P43_IN_AAAAGAA(X306, X307, X308, X309, T127, X310, T128)
P43_IN_AAAAGAA(X306, X307, X308, X309, T127, X310, T128) → U15_AAAAGAA(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
P43_IN_AAAAGAA(X306, X307, X308, X309, T127, X310, T128) → APP44_IN_AAAAG(X306, X307, X308, X309, T127)
APP44_IN_AAAAG(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_AAAAG(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
APP44_IN_AAAAG(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → APP44_IN_AAAAG(X371, X372, X373, X374, T137)
P43_IN_AAAAGAA(T129, T130, T131, T132, T127, X310, T133) → U16_AAAAGAA(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_AAAAGAA(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_AAAAGAA(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
U16_AAAAGAA(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → APP54_IN_GGGGA(T129, T130, T131, T132, X310)
APP54_IN_GGGGA(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_GGGGA(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
APP54_IN_GGGGA(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → APP54_IN_GGGGA(T182, T184, T185, T183, X411)
P43_IN_AAAAGAA(T129, T130, T131, T132, T127, T144, T145) → U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → APP54_IN_GGGGA(T129, T130, T131, T132, T144)
U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → PARSE10_IN_GA(T144, T145)
PARSE10_IN_GA(T208, T209) → U6_GA(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
PARSE10_IN_GA(T208, T209) → P66_IN_AAGAA(X450, X451, T208, X452, T209)
P66_IN_AAGAA(X450, X451, T208, X452, T209) → U21_AAGAA(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
P66_IN_AAGAA(X450, X451, T208, X452, T209) → APP67_IN_AAG(X450, X451, T208)
APP67_IN_AAG(cons(X490, X491), X492, cons(X490, T216)) → U10_AAG(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
APP67_IN_AAG(cons(X490, X491), X492, cons(X490, T216)) → APP67_IN_AAG(X491, X492, T216)
P66_IN_AAGAA(T210, T211, T208, X452, T212) → U22_AAGAA(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_AAGAA(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_AAGAA(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
U22_AAGAA(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → APP77_IN_GGA(T210, T211, X452)
APP77_IN_GGA(cons(T234, T237), T238, cons(T234, X525)) → U11_GGA(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
APP77_IN_GGA(cons(T234, T237), T238, cons(T234, X525)) → APP77_IN_GGA(T237, T238, X525)
P66_IN_AAGAA(T210, T211, T208, T219, T220) → U24_AAGAA(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_AAGAA(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_AAGAA(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U24_AAGAA(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → APP77_IN_GGA(T210, T211, T219)
U25_AAGAA(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_AAGAA(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
U25_AAGAA(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → PARSE10_IN_GA(T219, T220)
PARSE1_IN_GA(cons(X608, T266), T7) → U30_GA(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
PARSE1_IN_GA(cons(X608, T266), T7) → APP21_IN_AAAAAG(X609, X610, X611, X612, X613, T266)
PARSE1_IN_GA(cons(X608, T266), T7) → U31_GA(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_GA(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_GA(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U31_GA(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → P22_IN_GGGGGAA(cons(X608, T267), T268, T269, T270, T271, X10, T7)
PARSE1_IN_GA(T287, T289) → U33_GA(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
PARSE1_IN_GA(T287, T289) → P43_IN_AAAAGAA(X682, X683, X684, X685, T287, X686, T289)
PARSE1_IN_GA(T300, T302) → U34_GA(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
PARSE1_IN_GA(T300, T302) → P66_IN_AAGAA(X719, X720, T300, X721, T302)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
PARSE1_IN_GA(
x1,
x2) =
PARSE1_IN_GA(
x1)
U27_GA(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_GA(
x6)
APP9_IN_GGGGA(
x1,
x2,
x3,
x4,
x5) =
APP9_IN_GGGGA(
x1,
x2,
x3,
x4)
U28_GA(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_GA(
x6)
U29_GA(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_GA(
x6)
PARSE10_IN_GA(
x1,
x2) =
PARSE10_IN_GA(
x1)
U2_GA(
x1,
x2,
x3) =
U2_GA(
x3)
APP21_IN_AAAAAG(
x1,
x2,
x3,
x4,
x5,
x6) =
APP21_IN_AAAAAG(
x6)
U1_AAAAAG(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_AAAAAG(
x1,
x8)
U3_GA(
x1,
x2,
x3) =
U3_GA(
x3)
U4_GA(
x1,
x2,
x3) =
U4_GA(
x3)
P22_IN_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
P22_IN_GGGGGAA(
x1,
x2,
x3,
x4,
x5)
U12_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_GGGGGAA(
x8)
APP31_IN_GGGGGA(
x1,
x2,
x3,
x4,
x5,
x6) =
APP31_IN_GGGGGA(
x1,
x2,
x3,
x4,
x5)
U7_GGGGGA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_GGGGGA(
x1,
x8)
U13_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_GGGGGAA(
x8)
U14_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_GGGGGAA(
x6,
x8)
U5_GA(
x1,
x2,
x3) =
U5_GA(
x3)
P43_IN_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
P43_IN_AAAAGAA(
x5)
U15_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_AAAAGAA(
x8)
APP44_IN_AAAAG(
x1,
x2,
x3,
x4,
x5) =
APP44_IN_AAAAG(
x5)
U8_AAAAG(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_AAAAG(
x1,
x7)
U16_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_AAAAGAA(
x8)
U17_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_AAAAGAA(
x1,
x2,
x3,
x4,
x8)
APP54_IN_GGGGA(
x1,
x2,
x3,
x4,
x5) =
APP54_IN_GGGGA(
x1,
x2,
x3,
x4)
U9_GGGGA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_GGGGA(
x1,
x7)
U18_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_AAAAGAA(
x8)
U19_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_AAAAGAA(
x1,
x2,
x3,
x4,
x8)
U20_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_AAAAGAA(
x1,
x2,
x3,
x4,
x8)
U6_GA(
x1,
x2,
x3) =
U6_GA(
x3)
P66_IN_AAGAA(
x1,
x2,
x3,
x4,
x5) =
P66_IN_AAGAA(
x3)
U21_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_AAGAA(
x6)
APP67_IN_AAG(
x1,
x2,
x3) =
APP67_IN_AAG(
x3)
U10_AAG(
x1,
x2,
x3,
x4,
x5) =
U10_AAG(
x1,
x5)
U22_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_AAGAA(
x6)
U23_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_AAGAA(
x1,
x2,
x6)
APP77_IN_GGA(
x1,
x2,
x3) =
APP77_IN_GGA(
x1,
x2)
U11_GGA(
x1,
x2,
x3,
x4,
x5) =
U11_GGA(
x1,
x5)
U24_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_AAGAA(
x6)
U25_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_AAGAA(
x1,
x2,
x6)
U26_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_AAGAA(
x1,
x2,
x6)
U30_GA(
x1,
x2,
x3,
x4) =
U30_GA(
x4)
U31_GA(
x1,
x2,
x3,
x4) =
U31_GA(
x1,
x4)
U32_GA(
x1,
x2,
x3,
x4) =
U32_GA(
x4)
U33_GA(
x1,
x2,
x3) =
U33_GA(
x3)
U34_GA(
x1,
x2,
x3) =
U34_GA(
x3)
We have to consider all (P,R,Pi)-chains
(6) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
PARSE1_IN_GA(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_GA(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
PARSE1_IN_GA(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → APP9_IN_GGGGA(X32, X33, X34, X35, X10)
PARSE1_IN_GA(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_GA(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_GA(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_GA(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
U28_GA(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → PARSE10_IN_GA(T13, T7)
PARSE10_IN_GA(T30, T31) → U2_GA(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
PARSE10_IN_GA(T30, T31) → APP21_IN_AAAAAG(X135, X136, X137, X138, X139, T30)
APP21_IN_AAAAAG(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_AAAAAG(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
APP21_IN_AAAAAG(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → APP21_IN_AAAAAG(X212, X213, X214, X215, X216, T41)
PARSE10_IN_GA(T30, T37) → U3_GA(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_GA(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_GA(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
U3_GA(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → P22_IN_GGGGGAA(T32, T33, T34, T35, T36, X140, T37)
P22_IN_GGGGGAA(T32, T33, T34, T35, T36, X140, T37) → U12_GGGGGAA(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
P22_IN_GGGGGAA(T32, T33, T34, T35, T36, X140, T37) → APP31_IN_GGGGGA(T32, T33, T34, T35, T36, X140)
APP31_IN_GGGGGA(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_GGGGGA(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
APP31_IN_GGGGGA(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → APP31_IN_GGGGGA(T98, T100, T101, T102, T99, X255)
P22_IN_GGGGGAA(T32, T33, T34, T35, T36, T50, T51) → U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → PARSE10_IN_GA(T50, T51)
PARSE10_IN_GA(T127, T128) → U5_GA(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
PARSE10_IN_GA(T127, T128) → P43_IN_AAAAGAA(X306, X307, X308, X309, T127, X310, T128)
P43_IN_AAAAGAA(X306, X307, X308, X309, T127, X310, T128) → U15_AAAAGAA(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
P43_IN_AAAAGAA(X306, X307, X308, X309, T127, X310, T128) → APP44_IN_AAAAG(X306, X307, X308, X309, T127)
APP44_IN_AAAAG(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_AAAAG(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
APP44_IN_AAAAG(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → APP44_IN_AAAAG(X371, X372, X373, X374, T137)
P43_IN_AAAAGAA(T129, T130, T131, T132, T127, X310, T133) → U16_AAAAGAA(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_AAAAGAA(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_AAAAGAA(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
U16_AAAAGAA(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → APP54_IN_GGGGA(T129, T130, T131, T132, X310)
APP54_IN_GGGGA(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_GGGGA(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
APP54_IN_GGGGA(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → APP54_IN_GGGGA(T182, T184, T185, T183, X411)
P43_IN_AAAAGAA(T129, T130, T131, T132, T127, T144, T145) → U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → APP54_IN_GGGGA(T129, T130, T131, T132, T144)
U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → PARSE10_IN_GA(T144, T145)
PARSE10_IN_GA(T208, T209) → U6_GA(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
PARSE10_IN_GA(T208, T209) → P66_IN_AAGAA(X450, X451, T208, X452, T209)
P66_IN_AAGAA(X450, X451, T208, X452, T209) → U21_AAGAA(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
P66_IN_AAGAA(X450, X451, T208, X452, T209) → APP67_IN_AAG(X450, X451, T208)
APP67_IN_AAG(cons(X490, X491), X492, cons(X490, T216)) → U10_AAG(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
APP67_IN_AAG(cons(X490, X491), X492, cons(X490, T216)) → APP67_IN_AAG(X491, X492, T216)
P66_IN_AAGAA(T210, T211, T208, X452, T212) → U22_AAGAA(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_AAGAA(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_AAGAA(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
U22_AAGAA(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → APP77_IN_GGA(T210, T211, X452)
APP77_IN_GGA(cons(T234, T237), T238, cons(T234, X525)) → U11_GGA(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
APP77_IN_GGA(cons(T234, T237), T238, cons(T234, X525)) → APP77_IN_GGA(T237, T238, X525)
P66_IN_AAGAA(T210, T211, T208, T219, T220) → U24_AAGAA(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_AAGAA(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_AAGAA(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U24_AAGAA(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → APP77_IN_GGA(T210, T211, T219)
U25_AAGAA(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_AAGAA(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
U25_AAGAA(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → PARSE10_IN_GA(T219, T220)
PARSE1_IN_GA(cons(X608, T266), T7) → U30_GA(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
PARSE1_IN_GA(cons(X608, T266), T7) → APP21_IN_AAAAAG(X609, X610, X611, X612, X613, T266)
PARSE1_IN_GA(cons(X608, T266), T7) → U31_GA(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_GA(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_GA(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U31_GA(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → P22_IN_GGGGGAA(cons(X608, T267), T268, T269, T270, T271, X10, T7)
PARSE1_IN_GA(T287, T289) → U33_GA(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
PARSE1_IN_GA(T287, T289) → P43_IN_AAAAGAA(X682, X683, X684, X685, T287, X686, T289)
PARSE1_IN_GA(T300, T302) → U34_GA(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
PARSE1_IN_GA(T300, T302) → P66_IN_AAGAA(X719, X720, T300, X721, T302)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
PARSE1_IN_GA(
x1,
x2) =
PARSE1_IN_GA(
x1)
U27_GA(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_GA(
x6)
APP9_IN_GGGGA(
x1,
x2,
x3,
x4,
x5) =
APP9_IN_GGGGA(
x1,
x2,
x3,
x4)
U28_GA(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_GA(
x6)
U29_GA(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_GA(
x6)
PARSE10_IN_GA(
x1,
x2) =
PARSE10_IN_GA(
x1)
U2_GA(
x1,
x2,
x3) =
U2_GA(
x3)
APP21_IN_AAAAAG(
x1,
x2,
x3,
x4,
x5,
x6) =
APP21_IN_AAAAAG(
x6)
U1_AAAAAG(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_AAAAAG(
x1,
x8)
U3_GA(
x1,
x2,
x3) =
U3_GA(
x3)
U4_GA(
x1,
x2,
x3) =
U4_GA(
x3)
P22_IN_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
P22_IN_GGGGGAA(
x1,
x2,
x3,
x4,
x5)
U12_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_GGGGGAA(
x8)
APP31_IN_GGGGGA(
x1,
x2,
x3,
x4,
x5,
x6) =
APP31_IN_GGGGGA(
x1,
x2,
x3,
x4,
x5)
U7_GGGGGA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_GGGGGA(
x1,
x8)
U13_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_GGGGGAA(
x8)
U14_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_GGGGGAA(
x6,
x8)
U5_GA(
x1,
x2,
x3) =
U5_GA(
x3)
P43_IN_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
P43_IN_AAAAGAA(
x5)
U15_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_AAAAGAA(
x8)
APP44_IN_AAAAG(
x1,
x2,
x3,
x4,
x5) =
APP44_IN_AAAAG(
x5)
U8_AAAAG(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_AAAAG(
x1,
x7)
U16_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_AAAAGAA(
x8)
U17_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_AAAAGAA(
x1,
x2,
x3,
x4,
x8)
APP54_IN_GGGGA(
x1,
x2,
x3,
x4,
x5) =
APP54_IN_GGGGA(
x1,
x2,
x3,
x4)
U9_GGGGA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_GGGGA(
x1,
x7)
U18_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_AAAAGAA(
x8)
U19_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_AAAAGAA(
x1,
x2,
x3,
x4,
x8)
U20_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_AAAAGAA(
x1,
x2,
x3,
x4,
x8)
U6_GA(
x1,
x2,
x3) =
U6_GA(
x3)
P66_IN_AAGAA(
x1,
x2,
x3,
x4,
x5) =
P66_IN_AAGAA(
x3)
U21_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_AAGAA(
x6)
APP67_IN_AAG(
x1,
x2,
x3) =
APP67_IN_AAG(
x3)
U10_AAG(
x1,
x2,
x3,
x4,
x5) =
U10_AAG(
x1,
x5)
U22_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_AAGAA(
x6)
U23_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_AAGAA(
x1,
x2,
x6)
APP77_IN_GGA(
x1,
x2,
x3) =
APP77_IN_GGA(
x1,
x2)
U11_GGA(
x1,
x2,
x3,
x4,
x5) =
U11_GGA(
x1,
x5)
U24_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_AAGAA(
x6)
U25_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_AAGAA(
x1,
x2,
x6)
U26_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_AAGAA(
x1,
x2,
x6)
U30_GA(
x1,
x2,
x3,
x4) =
U30_GA(
x4)
U31_GA(
x1,
x2,
x3,
x4) =
U31_GA(
x1,
x4)
U32_GA(
x1,
x2,
x3,
x4) =
U32_GA(
x4)
U33_GA(
x1,
x2,
x3) =
U33_GA(
x3)
U34_GA(
x1,
x2,
x3) =
U34_GA(
x3)
We have to consider all (P,R,Pi)-chains
(7) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LOPSTR] contains 7 SCCs with 42 less nodes.
(8) Complex Obligation (AND)
(9) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP77_IN_GGA(cons(T234, T237), T238, cons(T234, X525)) → APP77_IN_GGA(T237, T238, X525)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
APP77_IN_GGA(
x1,
x2,
x3) =
APP77_IN_GGA(
x1,
x2)
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:
APP77_IN_GGA(cons(T234, T237), T238, cons(T234, X525)) → APP77_IN_GGA(T237, T238, X525)
R is empty.
The argument filtering Pi contains the following mapping:
cons(
x1,
x2) =
cons(
x1,
x2)
APP77_IN_GGA(
x1,
x2,
x3) =
APP77_IN_GGA(
x1,
x2)
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:
APP77_IN_GGA(cons(T234, T237), T238) → APP77_IN_GGA(T237, T238)
R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.
(14) 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:
- APP77_IN_GGA(cons(T234, T237), T238) → APP77_IN_GGA(T237, T238)
The graph contains the following edges 1 > 1, 2 >= 2
(15) YES
(16) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP67_IN_AAG(cons(X490, X491), X492, cons(X490, T216)) → APP67_IN_AAG(X491, X492, T216)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
APP67_IN_AAG(
x1,
x2,
x3) =
APP67_IN_AAG(
x3)
We have to consider all (P,R,Pi)-chains
(17) UsableRulesProof (EQUIVALENT transformation)
For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.
(18) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP67_IN_AAG(cons(X490, X491), X492, cons(X490, T216)) → APP67_IN_AAG(X491, X492, T216)
R is empty.
The argument filtering Pi contains the following mapping:
cons(
x1,
x2) =
cons(
x1,
x2)
APP67_IN_AAG(
x1,
x2,
x3) =
APP67_IN_AAG(
x3)
We have to consider all (P,R,Pi)-chains
(19) PiDPToQDPProof (SOUND transformation)
Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.
(20) Obligation:
Q DP problem:
The TRS P consists of the following rules:
APP67_IN_AAG(cons(X490, T216)) → APP67_IN_AAG(T216)
R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.
(21) 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:
- APP67_IN_AAG(cons(X490, T216)) → APP67_IN_AAG(T216)
The graph contains the following edges 1 > 1
(22) YES
(23) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP54_IN_GGGGA(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → APP54_IN_GGGGA(T182, T184, T185, T183, X411)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
APP54_IN_GGGGA(
x1,
x2,
x3,
x4,
x5) =
APP54_IN_GGGGA(
x1,
x2,
x3,
x4)
We have to consider all (P,R,Pi)-chains
(24) UsableRulesProof (EQUIVALENT transformation)
For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.
(25) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP54_IN_GGGGA(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → APP54_IN_GGGGA(T182, T184, T185, T183, X411)
R is empty.
The argument filtering Pi contains the following mapping:
cons(
x1,
x2) =
cons(
x1,
x2)
APP54_IN_GGGGA(
x1,
x2,
x3,
x4,
x5) =
APP54_IN_GGGGA(
x1,
x2,
x3,
x4)
We have to consider all (P,R,Pi)-chains
(26) PiDPToQDPProof (SOUND transformation)
Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.
(27) Obligation:
Q DP problem:
The TRS P consists of the following rules:
APP54_IN_GGGGA(cons(T177, T182), T184, T185, T183) → APP54_IN_GGGGA(T182, T184, T185, T183)
R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.
(28) 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:
- APP54_IN_GGGGA(cons(T177, T182), T184, T185, T183) → APP54_IN_GGGGA(T182, T184, T185, T183)
The graph contains the following edges 1 > 1, 2 >= 2, 3 >= 3, 4 >= 4
(29) YES
(30) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP44_IN_AAAAG(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → APP44_IN_AAAAG(X371, X372, X373, X374, T137)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
APP44_IN_AAAAG(
x1,
x2,
x3,
x4,
x5) =
APP44_IN_AAAAG(
x5)
We have to consider all (P,R,Pi)-chains
(31) UsableRulesProof (EQUIVALENT transformation)
For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.
(32) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP44_IN_AAAAG(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → APP44_IN_AAAAG(X371, X372, X373, X374, T137)
R is empty.
The argument filtering Pi contains the following mapping:
cons(
x1,
x2) =
cons(
x1,
x2)
APP44_IN_AAAAG(
x1,
x2,
x3,
x4,
x5) =
APP44_IN_AAAAG(
x5)
We have to consider all (P,R,Pi)-chains
(33) PiDPToQDPProof (SOUND transformation)
Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.
(34) Obligation:
Q DP problem:
The TRS P consists of the following rules:
APP44_IN_AAAAG(cons(X370, T137)) → APP44_IN_AAAAG(T137)
R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.
(35) 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:
- APP44_IN_AAAAG(cons(X370, T137)) → APP44_IN_AAAAG(T137)
The graph contains the following edges 1 > 1
(36) YES
(37) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP31_IN_GGGGGA(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → APP31_IN_GGGGGA(T98, T100, T101, T102, T99, X255)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
APP31_IN_GGGGGA(
x1,
x2,
x3,
x4,
x5,
x6) =
APP31_IN_GGGGGA(
x1,
x2,
x3,
x4,
x5)
We have to consider all (P,R,Pi)-chains
(38) UsableRulesProof (EQUIVALENT transformation)
For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.
(39) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP31_IN_GGGGGA(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → APP31_IN_GGGGGA(T98, T100, T101, T102, T99, X255)
R is empty.
The argument filtering Pi contains the following mapping:
cons(
x1,
x2) =
cons(
x1,
x2)
APP31_IN_GGGGGA(
x1,
x2,
x3,
x4,
x5,
x6) =
APP31_IN_GGGGGA(
x1,
x2,
x3,
x4,
x5)
We have to consider all (P,R,Pi)-chains
(40) PiDPToQDPProof (SOUND transformation)
Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.
(41) Obligation:
Q DP problem:
The TRS P consists of the following rules:
APP31_IN_GGGGGA(cons(T92, T98), T100, T101, T102, T99) → APP31_IN_GGGGGA(T98, T100, T101, T102, T99)
R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.
(42) 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:
- APP31_IN_GGGGGA(cons(T92, T98), T100, T101, T102, T99) → APP31_IN_GGGGGA(T98, T100, T101, T102, T99)
The graph contains the following edges 1 > 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5
(43) YES
(44) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP21_IN_AAAAAG(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → APP21_IN_AAAAAG(X212, X213, X214, X215, X216, T41)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
APP21_IN_AAAAAG(
x1,
x2,
x3,
x4,
x5,
x6) =
APP21_IN_AAAAAG(
x6)
We have to consider all (P,R,Pi)-chains
(45) UsableRulesProof (EQUIVALENT transformation)
For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.
(46) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
APP21_IN_AAAAAG(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → APP21_IN_AAAAAG(X212, X213, X214, X215, X216, T41)
R is empty.
The argument filtering Pi contains the following mapping:
cons(
x1,
x2) =
cons(
x1,
x2)
APP21_IN_AAAAAG(
x1,
x2,
x3,
x4,
x5,
x6) =
APP21_IN_AAAAAG(
x6)
We have to consider all (P,R,Pi)-chains
(47) PiDPToQDPProof (SOUND transformation)
Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.
(48) Obligation:
Q DP problem:
The TRS P consists of the following rules:
APP21_IN_AAAAAG(cons(X211, T41)) → APP21_IN_AAAAAG(T41)
R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.
(49) 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:
- APP21_IN_AAAAAG(cons(X211, T41)) → APP21_IN_AAAAAG(T41)
The graph contains the following edges 1 > 1
(50) YES
(51) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
PARSE10_IN_GA(T30, T37) → U3_GA(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_GA(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → P22_IN_GGGGGAA(T32, T33, T34, T35, T36, X140, T37)
P22_IN_GGGGGAA(T32, T33, T34, T35, T36, T50, T51) → U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → PARSE10_IN_GA(T50, T51)
PARSE10_IN_GA(T127, T128) → P43_IN_AAAAGAA(X306, X307, X308, X309, T127, X310, T128)
P43_IN_AAAAGAA(T129, T130, T131, T132, T127, T144, T145) → U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → PARSE10_IN_GA(T144, T145)
PARSE10_IN_GA(T208, T209) → P66_IN_AAGAA(X450, X451, T208, X452, T209)
P66_IN_AAGAA(T210, T211, T208, T219, T220) → U24_AAGAA(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_AAGAA(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_AAGAA(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_AAGAA(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → PARSE10_IN_GA(T219, T220)
The TRS R consists of the following rules:
parse1_in_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7) → U27_ga(X32, X33, X34, X35, T7, app9_in_gggga(X32, X33, X34, X35, X10))
app9_in_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80)) → app9_out_gggga(X77, X78, X79, X80, cons(s(a, s(X77, X78, X79), b), X80))
U27_ga(X32, X33, X34, X35, T7, app9_out_gggga(X32, X33, X34, X35, X10)) → parse1_out_ga(cons(a, cons(s(X32, X33, X34), cons(b, X35))), T7)
parse1_in_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7) → U28_ga(T9, T10, T11, T12, T7, app9_in_gggga(T9, T10, T11, T12, T13))
U28_ga(T9, T10, T11, T12, T7, app9_out_gggga(T9, T10, T11, T12, T13)) → U29_ga(T9, T10, T11, T12, T7, parse10_in_ga(T13, T7))
parse10_in_ga(T30, T31) → U2_ga(T30, T31, app21_in_aaaaag(X135, X136, X137, X138, X139, T30))
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U2_ga(T30, T31, app21_out_aaaaag(X135, X136, X137, X138, X139, T30)) → parse10_out_ga(T30, T31)
parse10_in_ga(T30, T37) → U3_ga(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_ga(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → U4_ga(T30, T37, p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37))
p22_in_gggggaa(T32, T33, T34, T35, T36, X140, T37) → U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_in_ggggga(T32, T33, T34, T35, T36, X140))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U12_gggggaa(T32, T33, T34, T35, T36, X140, T37, app31_out_ggggga(T32, T33, T34, T35, T36, X140)) → p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)
p22_in_gggggaa(T32, T33, T34, T35, T36, T50, T51) → U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_gggggaa(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_in_ga(T50, T51))
parse10_in_ga(T127, T128) → U5_ga(T127, T128, p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128))
p43_in_aaaagaa(X306, X307, X308, X309, T127, X310, T128) → U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_in_aaaag(X306, X307, X308, X309, T127))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U15_aaaagaa(X306, X307, X308, X309, T127, X310, T128, app44_out_aaaag(X306, X307, X308, X309, T127)) → p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)
p43_in_aaaagaa(T129, T130, T131, T132, T127, X310, T133) → U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_in_aaaag(T129, T130, T131, T132, T127))
U16_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app44_out_aaaag(T129, T130, T131, T132, T127)) → U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_in_gggga(T129, T130, T131, T132, X310))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U17_aaaagaa(T129, T130, T131, T132, T127, X310, T133, app54_out_gggga(T129, T130, T131, T132, X310)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, X310, T133)
p43_in_aaaagaa(T129, T130, T131, T132, T127, T144, T145) → U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_aaaagaa(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_in_ga(T144, T145))
parse10_in_ga(T208, T209) → U6_ga(T208, T209, p66_in_aagaa(X450, X451, T208, X452, T209))
p66_in_aagaa(X450, X451, T208, X452, T209) → U21_aagaa(X450, X451, T208, X452, T209, app67_in_aag(X450, X451, T208))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U21_aagaa(X450, X451, T208, X452, T209, app67_out_aag(X450, X451, T208)) → p66_out_aagaa(X450, X451, T208, X452, T209)
p66_in_aagaa(T210, T211, T208, X452, T212) → U22_aagaa(T210, T211, T208, X452, T212, app67_in_aag(T210, T211, T208))
U22_aagaa(T210, T211, T208, X452, T212, app67_out_aag(T210, T211, T208)) → U23_aagaa(T210, T211, T208, X452, T212, app77_in_gga(T210, T211, X452))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
U23_aagaa(T210, T211, T208, X452, T212, app77_out_gga(T210, T211, X452)) → p66_out_aagaa(T210, T211, T208, X452, T212)
p66_in_aagaa(T210, T211, T208, T219, T220) → U24_aagaa(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_aagaa(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_aagaa(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_aagaa(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → U26_aagaa(T210, T211, T208, T219, T220, parse10_in_ga(T219, T220))
parse10_in_ga(cons(s(T251, T252), nil), s(T251, T252)) → parse10_out_ga(cons(s(T251, T252), nil), s(T251, T252))
parse10_in_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261)) → parse10_out_ga(cons(s(T259, T260, T261), nil), s(T259, T260, T261))
U26_aagaa(T210, T211, T208, T219, T220, parse10_out_ga(T219, T220)) → p66_out_aagaa(T210, T211, T208, T219, T220)
U6_ga(T208, T209, p66_out_aagaa(X450, X451, T208, X452, T209)) → parse10_out_ga(T208, T209)
U20_aaaagaa(T129, T130, T131, T132, T127, T144, T145, parse10_out_ga(T144, T145)) → p43_out_aaaagaa(T129, T130, T131, T132, T127, T144, T145)
U5_ga(T127, T128, p43_out_aaaagaa(X306, X307, X308, X309, T127, X310, T128)) → parse10_out_ga(T127, T128)
U14_gggggaa(T32, T33, T34, T35, T36, T50, T51, parse10_out_ga(T50, T51)) → p22_out_gggggaa(T32, T33, T34, T35, T36, T50, T51)
U4_ga(T30, T37, p22_out_gggggaa(T32, T33, T34, T35, T36, X140, T37)) → parse10_out_ga(T30, T37)
U29_ga(T9, T10, T11, T12, T7, parse10_out_ga(T13, T7)) → parse1_out_ga(cons(a, cons(s(T9, T10, T11), cons(b, T12))), T7)
parse1_in_ga(cons(X608, T266), T7) → U30_ga(X608, T266, T7, app21_in_aaaaag(X609, X610, X611, X612, X613, T266))
U30_ga(X608, T266, T7, app21_out_aaaaag(X609, X610, X611, X612, X613, T266)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(cons(X608, T266), T7) → U31_ga(X608, T266, T7, app21_in_aaaaag(T267, T268, T269, T270, T271, T266))
U31_ga(X608, T266, T7, app21_out_aaaaag(T267, T268, T269, T270, T271, T266)) → U32_ga(X608, T266, T7, p22_in_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7))
U32_ga(X608, T266, T7, p22_out_gggggaa(cons(X608, T267), T268, T269, T270, T271, X10, T7)) → parse1_out_ga(cons(X608, T266), T7)
parse1_in_ga(T287, T289) → U33_ga(T287, T289, p43_in_aaaagaa(X682, X683, X684, X685, T287, X686, T289))
U33_ga(T287, T289, p43_out_aaaagaa(X682, X683, X684, X685, T287, X686, T289)) → parse1_out_ga(T287, T289)
parse1_in_ga(T300, T302) → U34_ga(T300, T302, p66_in_aagaa(X719, X720, T300, X721, T302))
U34_ga(T300, T302, p66_out_aagaa(X719, X720, T300, X721, T302)) → parse1_out_ga(T300, T302)
parse1_in_ga(cons(s(T311, T312), nil), s(T311, T312)) → parse1_out_ga(cons(s(T311, T312), nil), s(T311, T312))
parse1_in_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321)) → parse1_out_ga(cons(s(T319, T320, T321), nil), s(T319, T320, T321))
The argument filtering Pi contains the following mapping:
parse1_in_ga(
x1,
x2) =
parse1_in_ga(
x1)
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
U27_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U27_ga(
x6)
app9_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_in_gggga(
x1,
x2,
x3,
x4)
app9_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app9_out_gggga(
x5)
parse1_out_ga(
x1,
x2) =
parse1_out_ga
U28_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U28_ga(
x6)
U29_ga(
x1,
x2,
x3,
x4,
x5,
x6) =
U29_ga(
x6)
parse10_in_ga(
x1,
x2) =
parse10_in_ga(
x1)
U2_ga(
x1,
x2,
x3) =
U2_ga(
x3)
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
parse10_out_ga(
x1,
x2) =
parse10_out_ga
U3_ga(
x1,
x2,
x3) =
U3_ga(
x3)
U4_ga(
x1,
x2,
x3) =
U4_ga(
x3)
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_in_gggggaa(
x1,
x2,
x3,
x4,
x5)
U12_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U12_gggggaa(
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
p22_out_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p22_out_gggggaa(
x6)
U13_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_gggggaa(
x8)
U14_gggggaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U14_gggggaa(
x6,
x8)
U5_ga(
x1,
x2,
x3) =
U5_ga(
x3)
p43_in_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_in_aaaagaa(
x5)
U15_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U15_aaaagaa(
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
p43_out_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
p43_out_aaaagaa(
x1,
x2,
x3,
x4)
U16_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U16_aaaagaa(
x8)
U17_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U17_aaaagaa(
x1,
x2,
x3,
x4,
x8)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
U18_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_aaaagaa(
x8)
U19_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U20_aaaagaa(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U20_aaaagaa(
x1,
x2,
x3,
x4,
x8)
U6_ga(
x1,
x2,
x3) =
U6_ga(
x3)
p66_in_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_in_aagaa(
x3)
U21_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U21_aagaa(
x6)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
p66_out_aagaa(
x1,
x2,
x3,
x4,
x5) =
p66_out_aagaa(
x1,
x2)
U22_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U22_aagaa(
x6)
U23_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U23_aagaa(
x1,
x2,
x6)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
U24_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_aagaa(
x6)
U25_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_aagaa(
x1,
x2,
x6)
U26_aagaa(
x1,
x2,
x3,
x4,
x5,
x6) =
U26_aagaa(
x1,
x2,
x6)
U30_ga(
x1,
x2,
x3,
x4) =
U30_ga(
x4)
U31_ga(
x1,
x2,
x3,
x4) =
U31_ga(
x1,
x4)
U32_ga(
x1,
x2,
x3,
x4) =
U32_ga(
x4)
U33_ga(
x1,
x2,
x3) =
U33_ga(
x3)
U34_ga(
x1,
x2,
x3) =
U34_ga(
x3)
PARSE10_IN_GA(
x1,
x2) =
PARSE10_IN_GA(
x1)
U3_GA(
x1,
x2,
x3) =
U3_GA(
x3)
P22_IN_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
P22_IN_GGGGGAA(
x1,
x2,
x3,
x4,
x5)
U13_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_GGGGGAA(
x8)
P43_IN_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
P43_IN_AAAAGAA(
x5)
U18_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_AAAAGAA(
x8)
U19_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_AAAAGAA(
x1,
x2,
x3,
x4,
x8)
P66_IN_AAGAA(
x1,
x2,
x3,
x4,
x5) =
P66_IN_AAGAA(
x3)
U24_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_AAGAA(
x6)
U25_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_AAGAA(
x1,
x2,
x6)
We have to consider all (P,R,Pi)-chains
(52) UsableRulesProof (EQUIVALENT transformation)
For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.
(53) Obligation:
Pi DP problem:
The TRS P consists of the following rules:
PARSE10_IN_GA(T30, T37) → U3_GA(T30, T37, app21_in_aaaaag(T32, T33, T34, T35, T36, T30))
U3_GA(T30, T37, app21_out_aaaaag(T32, T33, T34, T35, T36, T30)) → P22_IN_GGGGGAA(T32, T33, T34, T35, T36, X140, T37)
P22_IN_GGGGGAA(T32, T33, T34, T35, T36, T50, T51) → U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_in_ggggga(T32, T33, T34, T35, T36, T50))
U13_GGGGGAA(T32, T33, T34, T35, T36, T50, T51, app31_out_ggggga(T32, T33, T34, T35, T36, T50)) → PARSE10_IN_GA(T50, T51)
PARSE10_IN_GA(T127, T128) → P43_IN_AAAAGAA(X306, X307, X308, X309, T127, X310, T128)
P43_IN_AAAAGAA(T129, T130, T131, T132, T127, T144, T145) → U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_in_aaaag(T129, T130, T131, T132, T127))
U18_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app44_out_aaaag(T129, T130, T131, T132, T127)) → U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_in_gggga(T129, T130, T131, T132, T144))
U19_AAAAGAA(T129, T130, T131, T132, T127, T144, T145, app54_out_gggga(T129, T130, T131, T132, T144)) → PARSE10_IN_GA(T144, T145)
PARSE10_IN_GA(T208, T209) → P66_IN_AAGAA(X450, X451, T208, X452, T209)
P66_IN_AAGAA(T210, T211, T208, T219, T220) → U24_AAGAA(T210, T211, T208, T219, T220, app67_in_aag(T210, T211, T208))
U24_AAGAA(T210, T211, T208, T219, T220, app67_out_aag(T210, T211, T208)) → U25_AAGAA(T210, T211, T208, T219, T220, app77_in_gga(T210, T211, T219))
U25_AAGAA(T210, T211, T208, T219, T220, app77_out_gga(T210, T211, T219)) → PARSE10_IN_GA(T219, T220)
The TRS R consists of the following rules:
app21_in_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185, cons(a, cons(s(X182, X183, X184), cons(b, X185))))
app21_in_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41)) → U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_in_aaaaag(X212, X213, X214, X215, X216, T41))
app31_in_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79)) → app31_out_ggggga(nil, T76, T77, T78, T79, cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255)) → U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_in_ggggga(T98, T100, T101, T102, T99, X255))
app44_in_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346, cons(a, cons(s(X344, X345), cons(b, X346))))
app44_in_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137)) → U8_aaaag(X370, X371, X372, X373, X374, T137, app44_in_aaaag(X371, X372, X373, X374, T137))
app54_in_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166)) → app54_out_gggga(nil, T164, T165, T166, cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411)) → U9_gggga(T177, T182, T184, T185, T183, X411, app54_in_gggga(T182, T184, T185, T183, X411))
app67_in_aag(nil, X470, cons(a, cons(b, X470))) → app67_out_aag(nil, X470, cons(a, cons(b, X470)))
app67_in_aag(cons(X490, X491), X492, cons(X490, T216)) → U10_aag(X490, X491, X492, T216, app67_in_aag(X491, X492, T216))
app77_in_gga(nil, T227, cons(s(a, b), T227)) → app77_out_gga(nil, T227, cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238, cons(T234, X525)) → U11_gga(T234, T237, T238, X525, app77_in_gga(T237, T238, X525))
U1_aaaaag(X211, X212, X213, X214, X215, X216, T41, app21_out_aaaaag(X212, X213, X214, X215, X216, T41)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216, cons(X211, T41))
U7_ggggga(T92, T98, T100, T101, T102, T99, X255, app31_out_ggggga(T98, T100, T101, T102, T99, X255)) → app31_out_ggggga(cons(T92, T98), T100, T101, T102, T99, cons(T92, X255))
U8_aaaag(X370, X371, X372, X373, X374, T137, app44_out_aaaag(X371, X372, X373, X374, T137)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374, cons(X370, T137))
U9_gggga(T177, T182, T184, T185, T183, X411, app54_out_gggga(T182, T184, T185, T183, X411)) → app54_out_gggga(cons(T177, T182), T184, T185, T183, cons(T177, X411))
U10_aag(X490, X491, X492, T216, app67_out_aag(X491, X492, T216)) → app67_out_aag(cons(X490, X491), X492, cons(X490, T216))
U11_gga(T234, T237, T238, X525, app77_out_gga(T237, T238, X525)) → app77_out_gga(cons(T234, T237), T238, cons(T234, X525))
The argument filtering Pi contains the following mapping:
cons(
x1,
x2) =
cons(
x1,
x2)
a =
a
s(
x1,
x2,
x3) =
s(
x1,
x2,
x3)
b =
b
app21_in_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_in_aaaaag(
x6)
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6) =
app21_out_aaaaag(
x1,
x2,
x3,
x4,
x5)
U1_aaaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U1_aaaaag(
x1,
x8)
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_in_ggggga(
x1,
x2,
x3,
x4,
x5)
nil =
nil
app31_out_ggggga(
x1,
x2,
x3,
x4,
x5,
x6) =
app31_out_ggggga(
x6)
U7_ggggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U7_ggggga(
x1,
x8)
app44_in_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_in_aaaag(
x5)
s(
x1,
x2) =
s(
x1,
x2)
app44_out_aaaag(
x1,
x2,
x3,
x4,
x5) =
app44_out_aaaag(
x1,
x2,
x3,
x4)
U8_aaaag(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U8_aaaag(
x1,
x7)
app54_in_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_in_gggga(
x1,
x2,
x3,
x4)
app54_out_gggga(
x1,
x2,
x3,
x4,
x5) =
app54_out_gggga(
x5)
U9_gggga(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
U9_gggga(
x1,
x7)
app67_in_aag(
x1,
x2,
x3) =
app67_in_aag(
x3)
app67_out_aag(
x1,
x2,
x3) =
app67_out_aag(
x1,
x2)
U10_aag(
x1,
x2,
x3,
x4,
x5) =
U10_aag(
x1,
x5)
app77_in_gga(
x1,
x2,
x3) =
app77_in_gga(
x1,
x2)
app77_out_gga(
x1,
x2,
x3) =
app77_out_gga(
x3)
U11_gga(
x1,
x2,
x3,
x4,
x5) =
U11_gga(
x1,
x5)
PARSE10_IN_GA(
x1,
x2) =
PARSE10_IN_GA(
x1)
U3_GA(
x1,
x2,
x3) =
U3_GA(
x3)
P22_IN_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
P22_IN_GGGGGAA(
x1,
x2,
x3,
x4,
x5)
U13_GGGGGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U13_GGGGGAA(
x8)
P43_IN_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7) =
P43_IN_AAAAGAA(
x5)
U18_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U18_AAAAGAA(
x8)
U19_AAAAGAA(
x1,
x2,
x3,
x4,
x5,
x6,
x7,
x8) =
U19_AAAAGAA(
x1,
x2,
x3,
x4,
x8)
P66_IN_AAGAA(
x1,
x2,
x3,
x4,
x5) =
P66_IN_AAGAA(
x3)
U24_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U24_AAGAA(
x6)
U25_AAGAA(
x1,
x2,
x3,
x4,
x5,
x6) =
U25_AAGAA(
x1,
x2,
x6)
We have to consider all (P,R,Pi)-chains
(54) PiDPToQDPProof (SOUND transformation)
Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.
(55) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PARSE10_IN_GA(T30) → U3_GA(app21_in_aaaaag(T30))
U3_GA(app21_out_aaaaag(T32, T33, T34, T35, T36)) → P22_IN_GGGGGAA(T32, T33, T34, T35, T36)
P22_IN_GGGGGAA(T32, T33, T34, T35, T36) → U13_GGGGGAA(app31_in_ggggga(T32, T33, T34, T35, T36))
U13_GGGGGAA(app31_out_ggggga(T50)) → PARSE10_IN_GA(T50)
PARSE10_IN_GA(T127) → P43_IN_AAAAGAA(T127)
P43_IN_AAAAGAA(T127) → U18_AAAAGAA(app44_in_aaaag(T127))
U18_AAAAGAA(app44_out_aaaag(T129, T130, T131, T132)) → U19_AAAAGAA(T129, T130, T131, T132, app54_in_gggga(T129, T130, T131, T132))
U19_AAAAGAA(T129, T130, T131, T132, app54_out_gggga(T144)) → PARSE10_IN_GA(T144)
PARSE10_IN_GA(T208) → P66_IN_AAGAA(T208)
P66_IN_AAGAA(T208) → U24_AAGAA(app67_in_aag(T208))
U24_AAGAA(app67_out_aag(T210, T211)) → U25_AAGAA(T210, T211, app77_in_gga(T210, T211))
U25_AAGAA(T210, T211, app77_out_gga(T219)) → PARSE10_IN_GA(T219)
The TRS R consists of the following rules:
app21_in_aaaaag(cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185)
app21_in_aaaaag(cons(X211, T41)) → U1_aaaaag(X211, app21_in_aaaaag(T41))
app31_in_ggggga(nil, T76, T77, T78, T79) → app31_out_ggggga(cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99) → U7_ggggga(T92, app31_in_ggggga(T98, T100, T101, T102, T99))
app44_in_aaaag(cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346)
app44_in_aaaag(cons(X370, T137)) → U8_aaaag(X370, app44_in_aaaag(T137))
app54_in_gggga(nil, T164, T165, T166) → app54_out_gggga(cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183) → U9_gggga(T177, app54_in_gggga(T182, T184, T185, T183))
app67_in_aag(cons(a, cons(b, X470))) → app67_out_aag(nil, X470)
app67_in_aag(cons(X490, T216)) → U10_aag(X490, app67_in_aag(T216))
app77_in_gga(nil, T227) → app77_out_gga(cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238) → U11_gga(T234, app77_in_gga(T237, T238))
U1_aaaaag(X211, app21_out_aaaaag(X212, X213, X214, X215, X216)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216)
U7_ggggga(T92, app31_out_ggggga(X255)) → app31_out_ggggga(cons(T92, X255))
U8_aaaag(X370, app44_out_aaaag(X371, X372, X373, X374)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374)
U9_gggga(T177, app54_out_gggga(X411)) → app54_out_gggga(cons(T177, X411))
U10_aag(X490, app67_out_aag(X491, X492)) → app67_out_aag(cons(X490, X491), X492)
U11_gga(T234, app77_out_gga(X525)) → app77_out_gga(cons(T234, X525))
The set Q consists of the following terms:
app21_in_aaaaag(x0)
app31_in_ggggga(x0, x1, x2, x3, x4)
app44_in_aaaag(x0)
app54_in_gggga(x0, x1, x2, x3)
app67_in_aag(x0)
app77_in_gga(x0, x1)
U1_aaaaag(x0, x1)
U7_ggggga(x0, x1)
U8_aaaag(x0, x1)
U9_gggga(x0, x1)
U10_aag(x0, x1)
U11_gga(x0, x1)
We have to consider all (P,Q,R)-chains.
(56) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04].
The following pairs can be oriented strictly and are deleted.
P22_IN_GGGGGAA(T32, T33, T34, T35, T36) → U13_GGGGGAA(app31_in_ggggga(T32, T33, T34, T35, T36))
U24_AAGAA(app67_out_aag(T210, T211)) → U25_AAGAA(T210, T211, app77_in_gga(T210, T211))
The remaining pairs can at least be oriented weakly.
Used ordering: Polynomial interpretation [POLO]:
POL(P22_IN_GGGGGAA(x1, x2, x3, x4, x5)) = 1 + x1 + x5
POL(P43_IN_AAAAGAA(x1)) = x1
POL(P66_IN_AAGAA(x1)) = x1
POL(PARSE10_IN_GA(x1)) = x1
POL(U10_aag(x1, x2)) = 1 + x2
POL(U11_gga(x1, x2)) = 1 + x2
POL(U13_GGGGGAA(x1)) = x1
POL(U18_AAAAGAA(x1)) = x1
POL(U19_AAAAGAA(x1, x2, x3, x4, x5)) = x5
POL(U1_aaaaag(x1, x2)) = 1 + x2
POL(U24_AAGAA(x1)) = x1
POL(U25_AAGAA(x1, x2, x3)) = x3
POL(U3_GA(x1)) = x1
POL(U7_ggggga(x1, x2)) = 1 + x2
POL(U8_aaaag(x1, x2)) = 1 + x2
POL(U9_gggga(x1, x2)) = 1 + x2
POL(a) = 0
POL(app21_in_aaaaag(x1)) = x1
POL(app21_out_aaaaag(x1, x2, x3, x4, x5)) = 1 + x1 + x5
POL(app31_in_ggggga(x1, x2, x3, x4, x5)) = x1 + x5
POL(app31_out_ggggga(x1)) = x1
POL(app44_in_aaaag(x1)) = x1
POL(app44_out_aaaag(x1, x2, x3, x4)) = x1 + x4
POL(app54_in_gggga(x1, x2, x3, x4)) = x1 + x4
POL(app54_out_gggga(x1)) = x1
POL(app67_in_aag(x1)) = x1
POL(app67_out_aag(x1, x2)) = 1 + x1 + x2
POL(app77_in_gga(x1, x2)) = x1 + x2
POL(app77_out_gga(x1)) = x1
POL(b) = 0
POL(cons(x1, x2)) = 1 + x2
POL(nil) = 1
POL(s(x1, x2)) = 0
POL(s(x1, x2, x3)) = 0
The following usable rules [FROCOS05] were oriented:
app21_in_aaaaag(cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185)
app21_in_aaaaag(cons(X211, T41)) → U1_aaaaag(X211, app21_in_aaaaag(T41))
app31_in_ggggga(nil, T76, T77, T78, T79) → app31_out_ggggga(cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99) → U7_ggggga(T92, app31_in_ggggga(T98, T100, T101, T102, T99))
app44_in_aaaag(cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346)
app44_in_aaaag(cons(X370, T137)) → U8_aaaag(X370, app44_in_aaaag(T137))
app54_in_gggga(nil, T164, T165, T166) → app54_out_gggga(cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183) → U9_gggga(T177, app54_in_gggga(T182, T184, T185, T183))
app67_in_aag(cons(a, cons(b, X470))) → app67_out_aag(nil, X470)
app67_in_aag(cons(X490, T216)) → U10_aag(X490, app67_in_aag(T216))
app77_in_gga(nil, T227) → app77_out_gga(cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238) → U11_gga(T234, app77_in_gga(T237, T238))
U1_aaaaag(X211, app21_out_aaaaag(X212, X213, X214, X215, X216)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216)
U7_ggggga(T92, app31_out_ggggga(X255)) → app31_out_ggggga(cons(T92, X255))
U8_aaaag(X370, app44_out_aaaag(X371, X372, X373, X374)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374)
U9_gggga(T177, app54_out_gggga(X411)) → app54_out_gggga(cons(T177, X411))
U10_aag(X490, app67_out_aag(X491, X492)) → app67_out_aag(cons(X490, X491), X492)
U11_gga(T234, app77_out_gga(X525)) → app77_out_gga(cons(T234, X525))
(57) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PARSE10_IN_GA(T30) → U3_GA(app21_in_aaaaag(T30))
U3_GA(app21_out_aaaaag(T32, T33, T34, T35, T36)) → P22_IN_GGGGGAA(T32, T33, T34, T35, T36)
U13_GGGGGAA(app31_out_ggggga(T50)) → PARSE10_IN_GA(T50)
PARSE10_IN_GA(T127) → P43_IN_AAAAGAA(T127)
P43_IN_AAAAGAA(T127) → U18_AAAAGAA(app44_in_aaaag(T127))
U18_AAAAGAA(app44_out_aaaag(T129, T130, T131, T132)) → U19_AAAAGAA(T129, T130, T131, T132, app54_in_gggga(T129, T130, T131, T132))
U19_AAAAGAA(T129, T130, T131, T132, app54_out_gggga(T144)) → PARSE10_IN_GA(T144)
PARSE10_IN_GA(T208) → P66_IN_AAGAA(T208)
P66_IN_AAGAA(T208) → U24_AAGAA(app67_in_aag(T208))
U25_AAGAA(T210, T211, app77_out_gga(T219)) → PARSE10_IN_GA(T219)
The TRS R consists of the following rules:
app21_in_aaaaag(cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185)
app21_in_aaaaag(cons(X211, T41)) → U1_aaaaag(X211, app21_in_aaaaag(T41))
app31_in_ggggga(nil, T76, T77, T78, T79) → app31_out_ggggga(cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99) → U7_ggggga(T92, app31_in_ggggga(T98, T100, T101, T102, T99))
app44_in_aaaag(cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346)
app44_in_aaaag(cons(X370, T137)) → U8_aaaag(X370, app44_in_aaaag(T137))
app54_in_gggga(nil, T164, T165, T166) → app54_out_gggga(cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183) → U9_gggga(T177, app54_in_gggga(T182, T184, T185, T183))
app67_in_aag(cons(a, cons(b, X470))) → app67_out_aag(nil, X470)
app67_in_aag(cons(X490, T216)) → U10_aag(X490, app67_in_aag(T216))
app77_in_gga(nil, T227) → app77_out_gga(cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238) → U11_gga(T234, app77_in_gga(T237, T238))
U1_aaaaag(X211, app21_out_aaaaag(X212, X213, X214, X215, X216)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216)
U7_ggggga(T92, app31_out_ggggga(X255)) → app31_out_ggggga(cons(T92, X255))
U8_aaaag(X370, app44_out_aaaag(X371, X372, X373, X374)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374)
U9_gggga(T177, app54_out_gggga(X411)) → app54_out_gggga(cons(T177, X411))
U10_aag(X490, app67_out_aag(X491, X492)) → app67_out_aag(cons(X490, X491), X492)
U11_gga(T234, app77_out_gga(X525)) → app77_out_gga(cons(T234, X525))
The set Q consists of the following terms:
app21_in_aaaaag(x0)
app31_in_ggggga(x0, x1, x2, x3, x4)
app44_in_aaaag(x0)
app54_in_gggga(x0, x1, x2, x3)
app67_in_aag(x0)
app77_in_gga(x0, x1)
U1_aaaaag(x0, x1)
U7_ggggga(x0, x1)
U8_aaaag(x0, x1)
U9_gggga(x0, x1)
U10_aag(x0, x1)
U11_gga(x0, x1)
We have to consider all (P,Q,R)-chains.
(58) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 6 less nodes.
(59) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PARSE10_IN_GA(T127) → P43_IN_AAAAGAA(T127)
P43_IN_AAAAGAA(T127) → U18_AAAAGAA(app44_in_aaaag(T127))
U18_AAAAGAA(app44_out_aaaag(T129, T130, T131, T132)) → U19_AAAAGAA(T129, T130, T131, T132, app54_in_gggga(T129, T130, T131, T132))
U19_AAAAGAA(T129, T130, T131, T132, app54_out_gggga(T144)) → PARSE10_IN_GA(T144)
The TRS R consists of the following rules:
app21_in_aaaaag(cons(a, cons(s(X182, X183, X184), cons(b, X185)))) → app21_out_aaaaag(nil, X182, X183, X184, X185)
app21_in_aaaaag(cons(X211, T41)) → U1_aaaaag(X211, app21_in_aaaaag(T41))
app31_in_ggggga(nil, T76, T77, T78, T79) → app31_out_ggggga(cons(s(a, s(T76, T77, T78), b), T79))
app31_in_ggggga(cons(T92, T98), T100, T101, T102, T99) → U7_ggggga(T92, app31_in_ggggga(T98, T100, T101, T102, T99))
app44_in_aaaag(cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346)
app44_in_aaaag(cons(X370, T137)) → U8_aaaag(X370, app44_in_aaaag(T137))
app54_in_gggga(nil, T164, T165, T166) → app54_out_gggga(cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183) → U9_gggga(T177, app54_in_gggga(T182, T184, T185, T183))
app67_in_aag(cons(a, cons(b, X470))) → app67_out_aag(nil, X470)
app67_in_aag(cons(X490, T216)) → U10_aag(X490, app67_in_aag(T216))
app77_in_gga(nil, T227) → app77_out_gga(cons(s(a, b), T227))
app77_in_gga(cons(T234, T237), T238) → U11_gga(T234, app77_in_gga(T237, T238))
U1_aaaaag(X211, app21_out_aaaaag(X212, X213, X214, X215, X216)) → app21_out_aaaaag(cons(X211, X212), X213, X214, X215, X216)
U7_ggggga(T92, app31_out_ggggga(X255)) → app31_out_ggggga(cons(T92, X255))
U8_aaaag(X370, app44_out_aaaag(X371, X372, X373, X374)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374)
U9_gggga(T177, app54_out_gggga(X411)) → app54_out_gggga(cons(T177, X411))
U10_aag(X490, app67_out_aag(X491, X492)) → app67_out_aag(cons(X490, X491), X492)
U11_gga(T234, app77_out_gga(X525)) → app77_out_gga(cons(T234, X525))
The set Q consists of the following terms:
app21_in_aaaaag(x0)
app31_in_ggggga(x0, x1, x2, x3, x4)
app44_in_aaaag(x0)
app54_in_gggga(x0, x1, x2, x3)
app67_in_aag(x0)
app77_in_gga(x0, x1)
U1_aaaaag(x0, x1)
U7_ggggga(x0, x1)
U8_aaaag(x0, x1)
U9_gggga(x0, x1)
U10_aag(x0, x1)
U11_gga(x0, x1)
We have to consider all (P,Q,R)-chains.
(60) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(61) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PARSE10_IN_GA(T127) → P43_IN_AAAAGAA(T127)
P43_IN_AAAAGAA(T127) → U18_AAAAGAA(app44_in_aaaag(T127))
U18_AAAAGAA(app44_out_aaaag(T129, T130, T131, T132)) → U19_AAAAGAA(T129, T130, T131, T132, app54_in_gggga(T129, T130, T131, T132))
U19_AAAAGAA(T129, T130, T131, T132, app54_out_gggga(T144)) → PARSE10_IN_GA(T144)
The TRS R consists of the following rules:
app54_in_gggga(nil, T164, T165, T166) → app54_out_gggga(cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183) → U9_gggga(T177, app54_in_gggga(T182, T184, T185, T183))
U9_gggga(T177, app54_out_gggga(X411)) → app54_out_gggga(cons(T177, X411))
app44_in_aaaag(cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346)
app44_in_aaaag(cons(X370, T137)) → U8_aaaag(X370, app44_in_aaaag(T137))
U8_aaaag(X370, app44_out_aaaag(X371, X372, X373, X374)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374)
The set Q consists of the following terms:
app21_in_aaaaag(x0)
app31_in_ggggga(x0, x1, x2, x3, x4)
app44_in_aaaag(x0)
app54_in_gggga(x0, x1, x2, x3)
app67_in_aag(x0)
app77_in_gga(x0, x1)
U1_aaaaag(x0, x1)
U7_ggggga(x0, x1)
U8_aaaag(x0, x1)
U9_gggga(x0, x1)
U10_aag(x0, x1)
U11_gga(x0, x1)
We have to consider all (P,Q,R)-chains.
(62) QReductionProof (EQUIVALENT transformation)
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].
app21_in_aaaaag(x0)
app31_in_ggggga(x0, x1, x2, x3, x4)
app67_in_aag(x0)
app77_in_gga(x0, x1)
U1_aaaaag(x0, x1)
U7_ggggga(x0, x1)
U10_aag(x0, x1)
U11_gga(x0, x1)
(63) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PARSE10_IN_GA(T127) → P43_IN_AAAAGAA(T127)
P43_IN_AAAAGAA(T127) → U18_AAAAGAA(app44_in_aaaag(T127))
U18_AAAAGAA(app44_out_aaaag(T129, T130, T131, T132)) → U19_AAAAGAA(T129, T130, T131, T132, app54_in_gggga(T129, T130, T131, T132))
U19_AAAAGAA(T129, T130, T131, T132, app54_out_gggga(T144)) → PARSE10_IN_GA(T144)
The TRS R consists of the following rules:
app54_in_gggga(nil, T164, T165, T166) → app54_out_gggga(cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183) → U9_gggga(T177, app54_in_gggga(T182, T184, T185, T183))
U9_gggga(T177, app54_out_gggga(X411)) → app54_out_gggga(cons(T177, X411))
app44_in_aaaag(cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346)
app44_in_aaaag(cons(X370, T137)) → U8_aaaag(X370, app44_in_aaaag(T137))
U8_aaaag(X370, app44_out_aaaag(X371, X372, X373, X374)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374)
The set Q consists of the following terms:
app44_in_aaaag(x0)
app54_in_gggga(x0, x1, x2, x3)
U8_aaaag(x0, x1)
U9_gggga(x0, x1)
We have to consider all (P,Q,R)-chains.
(64) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04].
The following pairs can be oriented strictly and are deleted.
U19_AAAAGAA(T129, T130, T131, T132, app54_out_gggga(T144)) → PARSE10_IN_GA(T144)
The remaining pairs can at least be oriented weakly.
Used ordering: Matrix interpretation [MATRO]:
POL(PARSE10_IN_GA(x1)) = | 0 | + | | · | x1 |
POL(P43_IN_AAAAGAA(x1)) = | 0 | + | | · | x1 |
POL(U18_AAAAGAA(x1)) = | 0 | + | | · | x1 |
POL(app44_in_aaaag(x1)) = | | + | | · | x1 |
POL(app44_out_aaaag(x1, x2, x3, x4)) = | | + | | · | x1 | + | | · | x2 | + | | · | x3 | + | | · | x4 |
POL(U19_AAAAGAA(x1, x2, x3, x4, x5)) = | 0 | + | | · | x1 | + | | · | x2 | + | | · | x3 | + | | · | x4 | + | | · | x5 |
POL(app54_in_gggga(x1, x2, x3, x4)) = | | + | | · | x1 | + | | · | x2 | + | | · | x3 | + | | · | x4 |
POL(app54_out_gggga(x1)) = | | + | | · | x1 |
POL(cons(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
POL(s(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
POL(U8_aaaag(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
POL(s(x1, x2, x3)) = | | + | | · | x1 | + | | · | x2 | + | | · | x3 |
POL(U9_gggga(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
The following usable rules [FROCOS05] were oriented:
app44_in_aaaag(cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346)
app44_in_aaaag(cons(X370, T137)) → U8_aaaag(X370, app44_in_aaaag(T137))
app54_in_gggga(nil, T164, T165, T166) → app54_out_gggga(cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183) → U9_gggga(T177, app54_in_gggga(T182, T184, T185, T183))
U9_gggga(T177, app54_out_gggga(X411)) → app54_out_gggga(cons(T177, X411))
U8_aaaag(X370, app44_out_aaaag(X371, X372, X373, X374)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374)
(65) Obligation:
Q DP problem:
The TRS P consists of the following rules:
PARSE10_IN_GA(T127) → P43_IN_AAAAGAA(T127)
P43_IN_AAAAGAA(T127) → U18_AAAAGAA(app44_in_aaaag(T127))
U18_AAAAGAA(app44_out_aaaag(T129, T130, T131, T132)) → U19_AAAAGAA(T129, T130, T131, T132, app54_in_gggga(T129, T130, T131, T132))
The TRS R consists of the following rules:
app54_in_gggga(nil, T164, T165, T166) → app54_out_gggga(cons(s(a, s(T164, T165), b), T166))
app54_in_gggga(cons(T177, T182), T184, T185, T183) → U9_gggga(T177, app54_in_gggga(T182, T184, T185, T183))
U9_gggga(T177, app54_out_gggga(X411)) → app54_out_gggga(cons(T177, X411))
app44_in_aaaag(cons(a, cons(s(X344, X345), cons(b, X346)))) → app44_out_aaaag(nil, X344, X345, X346)
app44_in_aaaag(cons(X370, T137)) → U8_aaaag(X370, app44_in_aaaag(T137))
U8_aaaag(X370, app44_out_aaaag(X371, X372, X373, X374)) → app44_out_aaaag(cons(X370, X371), X372, X373, X374)
The set Q consists of the following terms:
app44_in_aaaag(x0)
app54_in_gggga(x0, x1, x2, x3)
U8_aaaag(x0, x1)
U9_gggga(x0, x1)
We have to consider all (P,Q,R)-chains.
(66) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 3 less nodes.
(67) TRUE