(0) Obligation:

Clauses:

balance(T, TB) :- balance(T, -(I, []), -(.(','(TB, -(I, [])), X), X), -(Rest, []), -(Rest, [])).
balance(nil, -(X, X), -(A, B), -(A, B), -(.(','(nil, -(C, C)), T), T)).
balance(tree(L, V, R), -(IH, IT), -(.(','(tree(LB, VB, RB), -(A, D)), H), .(','(LB, -(A, .(VB, X))), .(','(RB, -(X, D)), T))), -(HR, TR), -(NH, NT)) :- ','(balance(L, -(IH, .(V, IT1)), -(H, T), -(HR1, TR1), -(NH, NT1)), balance(R, -(IT1, IT), -(HR1, TR1), -(HR, TR), -(NT1, NT))).

Query: balance(g,a)

(1) PrologToPiTRSViaGraphTransformerProof (SOUND transformation)

Transformed Prolog program to (Pi-)TRS.

(2) Obligation:

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

balanceA_in_ga(nil, nil) → balanceA_out_ga(nil, nil)
balanceA_in_ga(tree(T25, T26, T27), tree(T33, T34, T36)) → U1_ga(T25, T26, T27, T33, T34, T36, pB_in_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27))
pB_in_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_in_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57))
balanceG_in_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179) → balanceG_out_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179)
balanceG_in_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253))
pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191))
balanceC_in_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262) → balanceC_out_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
pD_in_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)) → pD_out_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387)
U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_out_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387)
U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253))
U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253)) → pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253)
U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253)) → balanceG_out_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253)
U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_in_gaaaaa(T27, T53, T54, T55, T56, T57))
balanceE_in_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), [])) → balanceE_out_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), []))
balanceE_in_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_in_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436))
pF_in_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_in_gaaaaa(T420, T451, T452, T453, T455, T454))
U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_out_gaaaaa(T420, T451, T452, T453, T455, T454)) → pF_out_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455)
U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_out_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)) → balanceE_out_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435)
U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_out_gaaaaa(T27, T53, T54, T55, T56, T57)) → pB_out_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27)
U1_ga(T25, T26, T27, T33, T34, T36, pB_out_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27)) → balanceA_out_ga(tree(T25, T26, T27), tree(T33, T34, T36))

The argument filtering Pi contains the following mapping:
balanceA_in_ga(x1, x2)  =  balanceA_in_ga(x1)
nil  =  nil
balanceA_out_ga(x1, x2)  =  balanceA_out_ga(x1)
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U1_ga(x1, x2, x3, x4, x5, x6, x7)  =  U1_ga(x1, x2, x3, x7)
pB_in_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_in_gagaaaaaaaaaag(x1, x3, x14)
U5_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U5_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceG_in_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_in_gagaaaaaaaaaa(x1, x3)
balanceG_out_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_out_gagaaaaaaaaaa(x1, x3)
U4_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U4_gagaaaaaaaaaa(x1, x2, x3, x5, x19)
pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U7_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U7_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
balanceC_in_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_in_gagaaaaaaa(x1, x3)
balanceC_out_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_out_gagaaaaaaa(x1, x3)
U2_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_gagaaaaaaa(x1, x2, x3, x5, x19)
pD_in_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_in_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U9_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
U10_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
pD_out_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_out_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U8_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U8_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U6_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U6_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceE_in_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_in_gaaaaa(x1)
balanceE_out_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_out_gaaaaa(x1)
U3_gaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U3_gaaaaa(x1, x2, x3, x15)
pF_in_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_in_gagaaaaaaaga(x1, x3, x11)
U11_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_gagaaaaaaaga(x1, x3, x11, x13)
U12_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U12_gagaaaaaaaga(x1, x3, x11, x13)
pF_out_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_out_gagaaaaaaaga(x1, x3, x11)
pB_out_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_out_gagaaaaaaaaaag(x1, x3, x14)

(3) DependencyPairsProof (EQUIVALENT transformation)

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

BALANCEA_IN_GA(tree(T25, T26, T27), tree(T33, T34, T36)) → U1_GA(T25, T26, T27, T33, T34, T36, pB_in_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27))
BALANCEA_IN_GA(tree(T25, T26, T27), tree(T33, T34, T36)) → PB_IN_GAGAAAAAAAAAAG(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27)
PB_IN_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → U5_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_in_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57))
PB_IN_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → BALANCEG_IN_GAGAAAAAAAAAA(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)
BALANCEG_IN_GAGAAAAAAAAAA(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → U4_GAGAAAAAAAAAA(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253))
BALANCEG_IN_GAGAAAAAAAAAA(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → PH_IN_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253)
PH_IN_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → U7_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191))
PH_IN_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → BALANCEC_IN_GAGAAAAAAA(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)
BALANCEC_IN_GAGAAAAAAA(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_GAGAAAAAAA(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
BALANCEC_IN_GAGAAAAAAA(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)
PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → BALANCEC_IN_GAGAAAAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)
U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → BALANCEC_IN_GAGAAAAAAA(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)
U7_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → U8_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253))
U7_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → BALANCEC_IN_GAGAAAAAAA(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253)
U5_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → U6_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_in_gaaaaa(T27, T53, T54, T55, T56, T57))
U5_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → BALANCEE_IN_GAAAAA(T27, T53, T54, T55, T56, T57)
BALANCEE_IN_GAAAAA(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → U3_GAAAAA(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_in_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436))
BALANCEE_IN_GAAAAA(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → PF_IN_GAGAAAAAAAGA(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)
PF_IN_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
PF_IN_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → BALANCEC_IN_GAGAAAAAAA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)
U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → U12_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_in_gaaaaa(T420, T451, T452, T453, T455, T454))
U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → BALANCEE_IN_GAAAAA(T420, T451, T452, T453, T455, T454)

The TRS R consists of the following rules:

balanceA_in_ga(nil, nil) → balanceA_out_ga(nil, nil)
balanceA_in_ga(tree(T25, T26, T27), tree(T33, T34, T36)) → U1_ga(T25, T26, T27, T33, T34, T36, pB_in_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27))
pB_in_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_in_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57))
balanceG_in_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179) → balanceG_out_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179)
balanceG_in_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253))
pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191))
balanceC_in_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262) → balanceC_out_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
pD_in_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)) → pD_out_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387)
U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_out_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387)
U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253))
U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253)) → pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253)
U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253)) → balanceG_out_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253)
U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_in_gaaaaa(T27, T53, T54, T55, T56, T57))
balanceE_in_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), [])) → balanceE_out_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), []))
balanceE_in_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_in_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436))
pF_in_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_in_gaaaaa(T420, T451, T452, T453, T455, T454))
U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_out_gaaaaa(T420, T451, T452, T453, T455, T454)) → pF_out_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455)
U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_out_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)) → balanceE_out_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435)
U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_out_gaaaaa(T27, T53, T54, T55, T56, T57)) → pB_out_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27)
U1_ga(T25, T26, T27, T33, T34, T36, pB_out_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27)) → balanceA_out_ga(tree(T25, T26, T27), tree(T33, T34, T36))

The argument filtering Pi contains the following mapping:
balanceA_in_ga(x1, x2)  =  balanceA_in_ga(x1)
nil  =  nil
balanceA_out_ga(x1, x2)  =  balanceA_out_ga(x1)
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U1_ga(x1, x2, x3, x4, x5, x6, x7)  =  U1_ga(x1, x2, x3, x7)
pB_in_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_in_gagaaaaaaaaaag(x1, x3, x14)
U5_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U5_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceG_in_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_in_gagaaaaaaaaaa(x1, x3)
balanceG_out_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_out_gagaaaaaaaaaa(x1, x3)
U4_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U4_gagaaaaaaaaaa(x1, x2, x3, x5, x19)
pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U7_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U7_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
balanceC_in_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_in_gagaaaaaaa(x1, x3)
balanceC_out_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_out_gagaaaaaaa(x1, x3)
U2_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_gagaaaaaaa(x1, x2, x3, x5, x19)
pD_in_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_in_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U9_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
U10_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
pD_out_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_out_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U8_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U8_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U6_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U6_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceE_in_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_in_gaaaaa(x1)
balanceE_out_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_out_gaaaaa(x1)
U3_gaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U3_gaaaaa(x1, x2, x3, x15)
pF_in_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_in_gagaaaaaaaga(x1, x3, x11)
U11_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_gagaaaaaaaga(x1, x3, x11, x13)
U12_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U12_gagaaaaaaaga(x1, x3, x11, x13)
pF_out_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_out_gagaaaaaaaga(x1, x3, x11)
pB_out_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_out_gagaaaaaaaaaag(x1, x3, x14)
BALANCEA_IN_GA(x1, x2)  =  BALANCEA_IN_GA(x1)
U1_GA(x1, x2, x3, x4, x5, x6, x7)  =  U1_GA(x1, x2, x3, x7)
PB_IN_GAGAAAAAAAAAAG(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  PB_IN_GAGAAAAAAAAAAG(x1, x3, x14)
U5_GAGAAAAAAAAAAG(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U5_GAGAAAAAAAAAAG(x1, x3, x14, x15)
BALANCEG_IN_GAGAAAAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  BALANCEG_IN_GAGAAAAAAAAAA(x1, x3)
U4_GAGAAAAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U4_GAGAAAAAAAAAA(x1, x2, x3, x5, x19)
PH_IN_GAGAAAAAAAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  PH_IN_GAGAAAAAAAAAAAAAGGAAAA(x1, x3, x17, x18)
U7_GAGAAAAAAAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U7_GAGAAAAAAAAAAAAAGGAAAA(x1, x3, x17, x18, x23)
BALANCEC_IN_GAGAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  BALANCEC_IN_GAGAAAAAAA(x1, x3)
U2_GAGAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_GAGAAAAAAA(x1, x2, x3, x5, x19)
PD_IN_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  PD_IN_GAGAAAAAAAGGAAAA(x1, x3, x11, x12)
U9_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_GAGAAAAAAAGGAAAA(x1, x3, x11, x12, x17)
U10_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_GAGAAAAAAAGGAAAA(x1, x3, x11, x12, x17)
U8_GAGAAAAAAAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U8_GAGAAAAAAAAAAAAAGGAAAA(x1, x3, x17, x18, x23)
U6_GAGAAAAAAAAAAG(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U6_GAGAAAAAAAAAAG(x1, x3, x14, x15)
BALANCEE_IN_GAAAAA(x1, x2, x3, x4, x5, x6)  =  BALANCEE_IN_GAAAAA(x1)
U3_GAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U3_GAAAAA(x1, x2, x3, x15)
PF_IN_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  PF_IN_GAGAAAAAAAGA(x1, x3, x11)
U11_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_GAGAAAAAAAGA(x1, x3, x11, x13)
U12_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U12_GAGAAAAAAAGA(x1, x3, x11, x13)

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

(4) Obligation:

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

BALANCEA_IN_GA(tree(T25, T26, T27), tree(T33, T34, T36)) → U1_GA(T25, T26, T27, T33, T34, T36, pB_in_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27))
BALANCEA_IN_GA(tree(T25, T26, T27), tree(T33, T34, T36)) → PB_IN_GAGAAAAAAAAAAG(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27)
PB_IN_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → U5_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_in_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57))
PB_IN_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → BALANCEG_IN_GAGAAAAAAAAAA(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)
BALANCEG_IN_GAGAAAAAAAAAA(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → U4_GAGAAAAAAAAAA(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253))
BALANCEG_IN_GAGAAAAAAAAAA(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → PH_IN_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253)
PH_IN_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → U7_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191))
PH_IN_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → BALANCEC_IN_GAGAAAAAAA(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)
BALANCEC_IN_GAGAAAAAAA(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_GAGAAAAAAA(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
BALANCEC_IN_GAGAAAAAAA(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)
PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → BALANCEC_IN_GAGAAAAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)
U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → BALANCEC_IN_GAGAAAAAAA(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)
U7_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → U8_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253))
U7_GAGAAAAAAAAAAAAAGGAAAA(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → BALANCEC_IN_GAGAAAAAAA(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253)
U5_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → U6_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_in_gaaaaa(T27, T53, T54, T55, T56, T57))
U5_GAGAAAAAAAAAAG(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → BALANCEE_IN_GAAAAA(T27, T53, T54, T55, T56, T57)
BALANCEE_IN_GAAAAA(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → U3_GAAAAA(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_in_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436))
BALANCEE_IN_GAAAAA(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → PF_IN_GAGAAAAAAAGA(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)
PF_IN_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
PF_IN_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → BALANCEC_IN_GAGAAAAAAA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)
U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → U12_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_in_gaaaaa(T420, T451, T452, T453, T455, T454))
U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → BALANCEE_IN_GAAAAA(T420, T451, T452, T453, T455, T454)

The TRS R consists of the following rules:

balanceA_in_ga(nil, nil) → balanceA_out_ga(nil, nil)
balanceA_in_ga(tree(T25, T26, T27), tree(T33, T34, T36)) → U1_ga(T25, T26, T27, T33, T34, T36, pB_in_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27))
pB_in_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_in_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57))
balanceG_in_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179) → balanceG_out_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179)
balanceG_in_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253))
pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191))
balanceC_in_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262) → balanceC_out_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
pD_in_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)) → pD_out_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387)
U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_out_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387)
U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253))
U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253)) → pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253)
U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253)) → balanceG_out_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253)
U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_in_gaaaaa(T27, T53, T54, T55, T56, T57))
balanceE_in_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), [])) → balanceE_out_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), []))
balanceE_in_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_in_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436))
pF_in_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_in_gaaaaa(T420, T451, T452, T453, T455, T454))
U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_out_gaaaaa(T420, T451, T452, T453, T455, T454)) → pF_out_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455)
U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_out_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)) → balanceE_out_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435)
U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_out_gaaaaa(T27, T53, T54, T55, T56, T57)) → pB_out_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27)
U1_ga(T25, T26, T27, T33, T34, T36, pB_out_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27)) → balanceA_out_ga(tree(T25, T26, T27), tree(T33, T34, T36))

The argument filtering Pi contains the following mapping:
balanceA_in_ga(x1, x2)  =  balanceA_in_ga(x1)
nil  =  nil
balanceA_out_ga(x1, x2)  =  balanceA_out_ga(x1)
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U1_ga(x1, x2, x3, x4, x5, x6, x7)  =  U1_ga(x1, x2, x3, x7)
pB_in_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_in_gagaaaaaaaaaag(x1, x3, x14)
U5_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U5_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceG_in_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_in_gagaaaaaaaaaa(x1, x3)
balanceG_out_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_out_gagaaaaaaaaaa(x1, x3)
U4_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U4_gagaaaaaaaaaa(x1, x2, x3, x5, x19)
pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U7_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U7_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
balanceC_in_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_in_gagaaaaaaa(x1, x3)
balanceC_out_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_out_gagaaaaaaa(x1, x3)
U2_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_gagaaaaaaa(x1, x2, x3, x5, x19)
pD_in_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_in_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U9_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
U10_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
pD_out_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_out_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U8_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U8_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U6_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U6_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceE_in_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_in_gaaaaa(x1)
balanceE_out_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_out_gaaaaa(x1)
U3_gaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U3_gaaaaa(x1, x2, x3, x15)
pF_in_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_in_gagaaaaaaaga(x1, x3, x11)
U11_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_gagaaaaaaaga(x1, x3, x11, x13)
U12_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U12_gagaaaaaaaga(x1, x3, x11, x13)
pF_out_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_out_gagaaaaaaaga(x1, x3, x11)
pB_out_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_out_gagaaaaaaaaaag(x1, x3, x14)
BALANCEA_IN_GA(x1, x2)  =  BALANCEA_IN_GA(x1)
U1_GA(x1, x2, x3, x4, x5, x6, x7)  =  U1_GA(x1, x2, x3, x7)
PB_IN_GAGAAAAAAAAAAG(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  PB_IN_GAGAAAAAAAAAAG(x1, x3, x14)
U5_GAGAAAAAAAAAAG(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U5_GAGAAAAAAAAAAG(x1, x3, x14, x15)
BALANCEG_IN_GAGAAAAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  BALANCEG_IN_GAGAAAAAAAAAA(x1, x3)
U4_GAGAAAAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U4_GAGAAAAAAAAAA(x1, x2, x3, x5, x19)
PH_IN_GAGAAAAAAAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  PH_IN_GAGAAAAAAAAAAAAAGGAAAA(x1, x3, x17, x18)
U7_GAGAAAAAAAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U7_GAGAAAAAAAAAAAAAGGAAAA(x1, x3, x17, x18, x23)
BALANCEC_IN_GAGAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  BALANCEC_IN_GAGAAAAAAA(x1, x3)
U2_GAGAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_GAGAAAAAAA(x1, x2, x3, x5, x19)
PD_IN_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  PD_IN_GAGAAAAAAAGGAAAA(x1, x3, x11, x12)
U9_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_GAGAAAAAAAGGAAAA(x1, x3, x11, x12, x17)
U10_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_GAGAAAAAAAGGAAAA(x1, x3, x11, x12, x17)
U8_GAGAAAAAAAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U8_GAGAAAAAAAAAAAAAGGAAAA(x1, x3, x17, x18, x23)
U6_GAGAAAAAAAAAAG(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U6_GAGAAAAAAAAAAG(x1, x3, x14, x15)
BALANCEE_IN_GAAAAA(x1, x2, x3, x4, x5, x6)  =  BALANCEE_IN_GAAAAA(x1)
U3_GAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U3_GAAAAA(x1, x2, x3, x15)
PF_IN_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  PF_IN_GAGAAAAAAAGA(x1, x3, x11)
U11_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_GAGAAAAAAAGA(x1, x3, x11, x13)
U12_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U12_GAGAAAAAAAGA(x1, x3, x11, x13)

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

(5) DependencyGraphProof (EQUIVALENT transformation)

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

(6) Complex Obligation (AND)

(7) Obligation:

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

BALANCEC_IN_GAGAAAAAAA(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)
PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → BALANCEC_IN_GAGAAAAAAA(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)
PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → BALANCEC_IN_GAGAAAAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)

The TRS R consists of the following rules:

balanceA_in_ga(nil, nil) → balanceA_out_ga(nil, nil)
balanceA_in_ga(tree(T25, T26, T27), tree(T33, T34, T36)) → U1_ga(T25, T26, T27, T33, T34, T36, pB_in_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27))
pB_in_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_in_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57))
balanceG_in_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179) → balanceG_out_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179)
balanceG_in_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253))
pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191))
balanceC_in_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262) → balanceC_out_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
pD_in_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)) → pD_out_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387)
U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_out_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387)
U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253))
U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253)) → pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253)
U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253)) → balanceG_out_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253)
U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_in_gaaaaa(T27, T53, T54, T55, T56, T57))
balanceE_in_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), [])) → balanceE_out_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), []))
balanceE_in_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_in_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436))
pF_in_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_in_gaaaaa(T420, T451, T452, T453, T455, T454))
U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_out_gaaaaa(T420, T451, T452, T453, T455, T454)) → pF_out_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455)
U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_out_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)) → balanceE_out_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435)
U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_out_gaaaaa(T27, T53, T54, T55, T56, T57)) → pB_out_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27)
U1_ga(T25, T26, T27, T33, T34, T36, pB_out_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27)) → balanceA_out_ga(tree(T25, T26, T27), tree(T33, T34, T36))

The argument filtering Pi contains the following mapping:
balanceA_in_ga(x1, x2)  =  balanceA_in_ga(x1)
nil  =  nil
balanceA_out_ga(x1, x2)  =  balanceA_out_ga(x1)
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U1_ga(x1, x2, x3, x4, x5, x6, x7)  =  U1_ga(x1, x2, x3, x7)
pB_in_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_in_gagaaaaaaaaaag(x1, x3, x14)
U5_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U5_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceG_in_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_in_gagaaaaaaaaaa(x1, x3)
balanceG_out_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_out_gagaaaaaaaaaa(x1, x3)
U4_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U4_gagaaaaaaaaaa(x1, x2, x3, x5, x19)
pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U7_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U7_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
balanceC_in_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_in_gagaaaaaaa(x1, x3)
balanceC_out_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_out_gagaaaaaaa(x1, x3)
U2_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_gagaaaaaaa(x1, x2, x3, x5, x19)
pD_in_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_in_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U9_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
U10_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
pD_out_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_out_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U8_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U8_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U6_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U6_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceE_in_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_in_gaaaaa(x1)
balanceE_out_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_out_gaaaaa(x1)
U3_gaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U3_gaaaaa(x1, x2, x3, x15)
pF_in_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_in_gagaaaaaaaga(x1, x3, x11)
U11_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_gagaaaaaaaga(x1, x3, x11, x13)
U12_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U12_gagaaaaaaaga(x1, x3, x11, x13)
pF_out_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_out_gagaaaaaaaga(x1, x3, x11)
pB_out_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_out_gagaaaaaaaaaag(x1, x3, x14)
BALANCEC_IN_GAGAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  BALANCEC_IN_GAGAAAAAAA(x1, x3)
PD_IN_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  PD_IN_GAGAAAAAAAGGAAAA(x1, x3, x11, x12)
U9_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_GAGAAAAAAAGGAAAA(x1, x3, x11, x12, x17)

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

(8) UsableRulesProof (EQUIVALENT transformation)

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

(9) Obligation:

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

BALANCEC_IN_GAGAAAAAAA(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)
PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → BALANCEC_IN_GAGAAAAAAA(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)
PD_IN_GAGAAAAAAAGGAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → BALANCEC_IN_GAGAAAAAAA(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)

The TRS R consists of the following rules:

balanceC_in_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262) → balanceC_out_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_out_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387)
pD_in_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)) → pD_out_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387)

The argument filtering Pi contains the following mapping:
nil  =  nil
tree(x1, x2, x3)  =  tree(x1, x2, x3)
balanceC_in_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_in_gagaaaaaaa(x1, x3)
balanceC_out_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_out_gagaaaaaaa(x1, x3)
U2_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_gagaaaaaaa(x1, x2, x3, x5, x19)
pD_in_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_in_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U9_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
U10_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
pD_out_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_out_gagaaaaaaaggaaaa(x1, x3, x11, x12)
BALANCEC_IN_GAGAAAAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  BALANCEC_IN_GAGAAAAAAA(x1, x3)
PD_IN_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  PD_IN_GAGAAAAAAAGGAAAA(x1, x3, x11, x12)
U9_GAGAAAAAAAGGAAAA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_GAGAAAAAAAGGAAAA(x1, x3, x11, x12, x17)

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

(10) PiDPToQDPProof (SOUND transformation)

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

(11) Obligation:

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

BALANCEC_IN_GAGAAAAAAA(tree(T291, T292, T293), T295) → PD_IN_GAGAAAAAAAGGAAAA(T291, T292, T293, T295)
PD_IN_GAGAAAAAAAGGAAAA(T291, T292, T293, T295) → U9_GAGAAAAAAAGGAAAA(T291, T292, T293, T295, balanceC_in_gagaaaaaaa(T291, T292))
U9_GAGAAAAAAAGGAAAA(T291, T292, T293, T295, balanceC_out_gagaaaaaaa(T291, T292)) → BALANCEC_IN_GAGAAAAAAA(T293, T295)
PD_IN_GAGAAAAAAAGGAAAA(T291, T292, T293, T295) → BALANCEC_IN_GAGAAAAAAA(T291, T292)

The TRS R consists of the following rules:

balanceC_in_gagaaaaaaa(nil, T257) → balanceC_out_gagaaaaaaa(nil, T257)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T295) → U2_gagaaaaaaa(T291, T292, T293, T295, pD_in_gagaaaaaaaggaaaa(T291, T292, T293, T295))
U2_gagaaaaaaa(T291, T292, T293, T295, pD_out_gagaaaaaaaggaaaa(T291, T292, T293, T295)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T295)
pD_in_gagaaaaaaaggaaaa(T291, T292, T293, T295) → U9_gagaaaaaaaggaaaa(T291, T292, T293, T295, balanceC_in_gagaaaaaaa(T291, T292))
U9_gagaaaaaaaggaaaa(T291, T292, T293, T295, balanceC_out_gagaaaaaaa(T291, T292)) → U10_gagaaaaaaaggaaaa(T291, T292, T293, T295, balanceC_in_gagaaaaaaa(T293, T295))
U10_gagaaaaaaaggaaaa(T291, T292, T293, T295, balanceC_out_gagaaaaaaa(T293, T295)) → pD_out_gagaaaaaaaggaaaa(T291, T292, T293, T295)

The set Q consists of the following terms:

balanceC_in_gagaaaaaaa(x0, x1)
U2_gagaaaaaaa(x0, x1, x2, x3, x4)
pD_in_gagaaaaaaaggaaaa(x0, x1, x2, x3)
U9_gagaaaaaaaggaaaa(x0, x1, x2, x3, x4)
U10_gagaaaaaaaggaaaa(x0, x1, x2, x3, x4)

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

(12) QDPSizeChangeProof (EQUIVALENT transformation)

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

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

  • PD_IN_GAGAAAAAAAGGAAAA(T291, T292, T293, T295) → BALANCEC_IN_GAGAAAAAAA(T291, T292)
    The graph contains the following edges 1 >= 1, 2 >= 2

  • PD_IN_GAGAAAAAAAGGAAAA(T291, T292, T293, T295) → U9_GAGAAAAAAAGGAAAA(T291, T292, T293, T295, balanceC_in_gagaaaaaaa(T291, T292))
    The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4

  • U9_GAGAAAAAAAGGAAAA(T291, T292, T293, T295, balanceC_out_gagaaaaaaa(T291, T292)) → BALANCEC_IN_GAGAAAAAAA(T293, T295)
    The graph contains the following edges 3 >= 1, 4 >= 2

  • BALANCEC_IN_GAGAAAAAAA(tree(T291, T292, T293), T295) → PD_IN_GAGAAAAAAAGGAAAA(T291, T292, T293, T295)
    The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 2 >= 4

(13) YES

(14) Obligation:

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

PF_IN_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → BALANCEE_IN_GAAAAA(T420, T451, T452, T453, T455, T454)
BALANCEE_IN_GAAAAA(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → PF_IN_GAGAAAAAAAGA(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)

The TRS R consists of the following rules:

balanceA_in_ga(nil, nil) → balanceA_out_ga(nil, nil)
balanceA_in_ga(tree(T25, T26, T27), tree(T33, T34, T36)) → U1_ga(T25, T26, T27, T33, T34, T36, pB_in_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27))
pB_in_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27) → U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_in_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57))
balanceG_in_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179) → balanceG_out_gagaaaaaaaaaa(nil, .(T107, T108), T107, T108, T109, T110, T111, T112, T113, .(','(T109, -(.(T107, T108), .(T110, T111))), .(','(T112, -(T111, [])), T113)), T113, .(','(nil, -(X178, X178)), X179), X179)
balanceG_in_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253) → U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253))
pH_in_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253) → U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191))
balanceC_in_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262) → balanceC_out_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
pD_in_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)) → pD_out_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387)
U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_out_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387)
U7_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T142, T156, T143, T187, .(','(T158, -(T159, [])), .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157))), T157, T188, T189, T190, T191)) → U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_in_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253))
U8_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253, balanceC_out_gagaaaaaaa(T144, T187, T146, X249, T188, T189, X250, X251, T191, X253)) → pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, T187, T158, T159, T160, T161, T162, T163, T164, T157, T188, T189, T190, T191, T144, T146, X249, X250, X251, X253)
U4_gagaaaaaaaaaa(T142, T143, T144, T156, T146, X249, T160, T161, T163, T164, T159, T158, T162, T157, X250, X251, X252, X253, pH_out_gagaaaaaaaaaaaaaggaaaa(T142, T156, T143, X245, T158, T159, T160, T161, T162, T163, T164, T157, X246, X247, X252, X248, T144, T146, X249, X250, X251, X253)) → balanceG_out_gagaaaaaaaaaa(tree(T142, T143, T144), T156, T146, X249, tree(T160, T161, T163), T164, T159, T158, .(','(T160, -(T156, .(T161, T162))), .(','(T163, -(T162, .(T164, T159))), T157)), X250, X251, X252, X253)
U5_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceG_out_gagaaaaaaaaaa(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57)) → U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_in_gaaaaa(T27, T53, T54, T55, T56, T57))
balanceE_in_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), [])) → balanceE_out_gaaaaa(nil, [], T386, [], T386, .(','(nil, -(T388, T388)), []))
balanceE_in_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_in_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436))
pF_in_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
U11_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_in_gaaaaa(T420, T451, T452, T453, T455, T454))
U12_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceE_out_gaaaaa(T420, T451, T452, T453, T455, T454)) → pF_out_gagaaaaaaaga(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455)
U3_gaaaaa(T418, T419, T420, T432, T422, T423, T424, T425, T426, T433, T428, T434, T436, T435, pF_out_gagaaaaaaaga(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)) → balanceE_out_gaaaaa(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435)
U6_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27, balanceE_out_gaaaaa(T27, T53, T54, T55, T56, T57)) → pB_out_gagaaaaaaaaaag(T25, T31, T26, T53, T33, T34, T35, T36, T32, T54, T55, T56, T57, T27)
U1_ga(T25, T26, T27, T33, T34, T36, pB_out_gagaaaaaaaaaag(T25, T31, T26, X108, T33, T34, T35, T36, T32, X109, X110, X116, X111, T27)) → balanceA_out_ga(tree(T25, T26, T27), tree(T33, T34, T36))

The argument filtering Pi contains the following mapping:
balanceA_in_ga(x1, x2)  =  balanceA_in_ga(x1)
nil  =  nil
balanceA_out_ga(x1, x2)  =  balanceA_out_ga(x1)
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U1_ga(x1, x2, x3, x4, x5, x6, x7)  =  U1_ga(x1, x2, x3, x7)
pB_in_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_in_gagaaaaaaaaaag(x1, x3, x14)
U5_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U5_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceG_in_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_in_gagaaaaaaaaaa(x1, x3)
balanceG_out_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  balanceG_out_gagaaaaaaaaaa(x1, x3)
U4_gagaaaaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U4_gagaaaaaaaaaa(x1, x2, x3, x5, x19)
pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_in_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U7_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U7_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
balanceC_in_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_in_gagaaaaaaa(x1, x3)
balanceC_out_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_out_gagaaaaaaa(x1, x3)
U2_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_gagaaaaaaa(x1, x2, x3, x5, x19)
pD_in_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_in_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U9_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
U10_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
pD_out_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_out_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U8_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)  =  U8_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18, x23)
pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)  =  pH_out_gagaaaaaaaaaaaaaggaaaa(x1, x3, x17, x18)
U6_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U6_gagaaaaaaaaaag(x1, x3, x14, x15)
balanceE_in_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_in_gaaaaa(x1)
balanceE_out_gaaaaa(x1, x2, x3, x4, x5, x6)  =  balanceE_out_gaaaaa(x1)
U3_gaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)  =  U3_gaaaaa(x1, x2, x3, x15)
pF_in_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_in_gagaaaaaaaga(x1, x3, x11)
U11_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_gagaaaaaaaga(x1, x3, x11, x13)
U12_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U12_gagaaaaaaaga(x1, x3, x11, x13)
pF_out_gagaaaaaaaga(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  pF_out_gagaaaaaaaga(x1, x3, x11)
pB_out_gagaaaaaaaaaag(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)  =  pB_out_gagaaaaaaaaaag(x1, x3, x14)
BALANCEE_IN_GAAAAA(x1, x2, x3, x4, x5, x6)  =  BALANCEE_IN_GAAAAA(x1)
PF_IN_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  PF_IN_GAGAAAAAAAGA(x1, x3, x11)
U11_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_GAGAAAAAAAGA(x1, x3, x11, x13)

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

(15) UsableRulesProof (EQUIVALENT transformation)

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

(16) Obligation:

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

PF_IN_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455) → U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_in_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454))
U11_GAGAAAAAAAGA(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454, T420, T455, balanceC_out_gagaaaaaaa(T418, T432, T419, T451, T433, T434, T452, T453, T435, T454)) → BALANCEE_IN_GAAAAA(T420, T451, T452, T453, T455, T454)
BALANCEE_IN_GAAAAA(tree(T418, T419, T420), T432, .(','(tree(T422, T423, T424), -(T425, T426)), T433), .(','(T422, -(T425, .(T423, T428))), .(','(T424, -(T428, T426)), T434)), T436, T435) → PF_IN_GAGAAAAAAAGA(T418, T432, T419, X508, T433, T434, X509, X510, T435, X511, T420, T436)

The TRS R consists of the following rules:

balanceC_in_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262) → balanceC_out_gagaaaaaaa(nil, .(T257, T258), T257, T258, T259, T260, T259, T260, .(','(nil, -(T261, T261)), T262), T262)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387) → U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_in_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387))
U2_gagaaaaaaa(T291, T292, T293, T305, T295, X384, T296, T297, T298, T299, T300, T306, T302, T307, X385, X386, T308, X387, pD_out_gagaaaaaaaggaaaa(T291, T305, T292, X380, T306, T307, X381, X382, T308, X383, T293, T295, X384, X385, X386, X387)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T305, T295, X384, .(','(tree(T296, T297, T298), -(T299, T300)), T306), .(','(T296, -(T299, .(T297, T302))), .(','(T298, -(T302, T300)), T307)), X385, X386, T308, X387)
pD_in_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387) → U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326))
U9_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326)) → U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_in_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387))
U10_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387, balanceC_out_gagaaaaaaa(T293, T323, T295, X384, T324, T325, X385, X386, T326, X387)) → pD_out_gagaaaaaaaggaaaa(T291, T305, T292, T323, T306, T307, T324, T325, T308, T326, T293, T295, X384, X385, X386, X387)

The argument filtering Pi contains the following mapping:
nil  =  nil
tree(x1, x2, x3)  =  tree(x1, x2, x3)
balanceC_in_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_in_gagaaaaaaa(x1, x3)
balanceC_out_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)  =  balanceC_out_gagaaaaaaa(x1, x3)
U2_gagaaaaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)  =  U2_gagaaaaaaa(x1, x2, x3, x5, x19)
pD_in_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_in_gagaaaaaaaggaaaa(x1, x3, x11, x12)
U9_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U9_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
U10_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)  =  U10_gagaaaaaaaggaaaa(x1, x3, x11, x12, x17)
pD_out_gagaaaaaaaggaaaa(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)  =  pD_out_gagaaaaaaaggaaaa(x1, x3, x11, x12)
BALANCEE_IN_GAAAAA(x1, x2, x3, x4, x5, x6)  =  BALANCEE_IN_GAAAAA(x1)
PF_IN_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)  =  PF_IN_GAGAAAAAAAGA(x1, x3, x11)
U11_GAGAAAAAAAGA(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)  =  U11_GAGAAAAAAAGA(x1, x3, x11, x13)

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

(17) PiDPToQDPProof (SOUND transformation)

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

(18) Obligation:

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

PF_IN_GAGAAAAAAAGA(T418, T419, T420) → U11_GAGAAAAAAAGA(T418, T419, T420, balanceC_in_gagaaaaaaa(T418, T419))
U11_GAGAAAAAAAGA(T418, T419, T420, balanceC_out_gagaaaaaaa(T418, T419)) → BALANCEE_IN_GAAAAA(T420)
BALANCEE_IN_GAAAAA(tree(T418, T419, T420)) → PF_IN_GAGAAAAAAAGA(T418, T419, T420)

The TRS R consists of the following rules:

balanceC_in_gagaaaaaaa(nil, T257) → balanceC_out_gagaaaaaaa(nil, T257)
balanceC_in_gagaaaaaaa(tree(T291, T292, T293), T295) → U2_gagaaaaaaa(T291, T292, T293, T295, pD_in_gagaaaaaaaggaaaa(T291, T292, T293, T295))
U2_gagaaaaaaa(T291, T292, T293, T295, pD_out_gagaaaaaaaggaaaa(T291, T292, T293, T295)) → balanceC_out_gagaaaaaaa(tree(T291, T292, T293), T295)
pD_in_gagaaaaaaaggaaaa(T291, T292, T293, T295) → U9_gagaaaaaaaggaaaa(T291, T292, T293, T295, balanceC_in_gagaaaaaaa(T291, T292))
U9_gagaaaaaaaggaaaa(T291, T292, T293, T295, balanceC_out_gagaaaaaaa(T291, T292)) → U10_gagaaaaaaaggaaaa(T291, T292, T293, T295, balanceC_in_gagaaaaaaa(T293, T295))
U10_gagaaaaaaaggaaaa(T291, T292, T293, T295, balanceC_out_gagaaaaaaa(T293, T295)) → pD_out_gagaaaaaaaggaaaa(T291, T292, T293, T295)

The set Q consists of the following terms:

balanceC_in_gagaaaaaaa(x0, x1)
U2_gagaaaaaaa(x0, x1, x2, x3, x4)
pD_in_gagaaaaaaaggaaaa(x0, x1, x2, x3)
U9_gagaaaaaaaggaaaa(x0, x1, x2, x3, x4)
U10_gagaaaaaaaggaaaa(x0, x1, x2, x3, x4)

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

(19) QDPSizeChangeProof (EQUIVALENT transformation)

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

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

  • U11_GAGAAAAAAAGA(T418, T419, T420, balanceC_out_gagaaaaaaa(T418, T419)) → BALANCEE_IN_GAAAAA(T420)
    The graph contains the following edges 3 >= 1

  • BALANCEE_IN_GAAAAA(tree(T418, T419, T420)) → PF_IN_GAGAAAAAAAGA(T418, T419, T420)
    The graph contains the following edges 1 > 1, 1 > 2, 1 > 3

  • PF_IN_GAGAAAAAAAGA(T418, T419, T420) → U11_GAGAAAAAAAGA(T418, T419, T420, balanceC_in_gagaaaaaaa(T418, T419))
    The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3

(20) YES