↳ PROLOG
↳ PrologToPiTRSProof
With regard to the inferred argument filtering the predicates were used in the following modes:
balance2: (b,f)
balance5: (b,b,b,b,b)
Transforming PROLOG into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:
balance_2_in_ga2(T, TB) -> if_balance_2_in_1_ga3(T, TB, balance_5_in_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0)))
balance_5_in_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T)) -> balance_5_out_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T))
balance_5_in_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_in_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT)))
if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_out_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))) -> balance_5_out_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT))
if_balance_2_in_1_ga3(T, TB, balance_5_out_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0))) -> balance_2_out_ga2(T, TB)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of PROLOG
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
balance_2_in_ga2(T, TB) -> if_balance_2_in_1_ga3(T, TB, balance_5_in_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0)))
balance_5_in_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T)) -> balance_5_out_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T))
balance_5_in_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_in_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT)))
if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_out_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))) -> balance_5_out_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT))
if_balance_2_in_1_ga3(T, TB, balance_5_out_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0))) -> balance_2_out_ga2(T, TB)
BALANCE_2_IN_GA2(T, TB) -> IF_BALANCE_2_IN_1_GA3(T, TB, balance_5_in_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0)))
BALANCE_2_IN_GA2(T, TB) -> BALANCE_5_IN_GGGGG5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0))
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> BALANCE_5_IN_GGGGG5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))
IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> IF_BALANCE_5_IN_2_GGGGG22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_in_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT)))
IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> BALANCE_5_IN_GGGGG5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))
balance_2_in_ga2(T, TB) -> if_balance_2_in_1_ga3(T, TB, balance_5_in_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0)))
balance_5_in_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T)) -> balance_5_out_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T))
balance_5_in_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_in_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT)))
if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_out_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))) -> balance_5_out_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT))
if_balance_2_in_1_ga3(T, TB, balance_5_out_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0))) -> balance_2_out_ga2(T, TB)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
BALANCE_2_IN_GA2(T, TB) -> IF_BALANCE_2_IN_1_GA3(T, TB, balance_5_in_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0)))
BALANCE_2_IN_GA2(T, TB) -> BALANCE_5_IN_GGGGG5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0))
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> BALANCE_5_IN_GGGGG5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))
IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> IF_BALANCE_5_IN_2_GGGGG22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_in_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT)))
IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> BALANCE_5_IN_GGGGG5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))
balance_2_in_ga2(T, TB) -> if_balance_2_in_1_ga3(T, TB, balance_5_in_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0)))
balance_5_in_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T)) -> balance_5_out_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T))
balance_5_in_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_in_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT)))
if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_out_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))) -> balance_5_out_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT))
if_balance_2_in_1_ga3(T, TB, balance_5_out_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0))) -> balance_2_out_ga2(T, TB)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> BALANCE_5_IN_GGGGG5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))
IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> BALANCE_5_IN_GGGGG5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
balance_2_in_ga2(T, TB) -> if_balance_2_in_1_ga3(T, TB, balance_5_in_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0)))
balance_5_in_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T)) -> balance_5_out_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T))
balance_5_in_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_in_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT)))
if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_out_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))) -> balance_5_out_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT))
if_balance_2_in_1_ga3(T, TB, balance_5_out_ggggg5(T, -2(I, []_0), -2(._22(tuple_22(TB, -2(I, []_0)), X), X), -2(Rest, []_0), -2(Rest, []_0))) -> balance_2_out_ga2(T, TB)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> BALANCE_5_IN_GGGGG5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))
IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> BALANCE_5_IN_GGGGG5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> IF_BALANCE_5_IN_1_GGGGG18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
balance_5_in_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T)) -> balance_5_out_ggggg5(nil_0, -2(X, X), -2(A, B), -2(A, B), -2(._22(tuple_22(nil_0, -2(C, C)), T), T))
balance_5_in_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT)) -> if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_in_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1)))
if_balance_5_in_1_ggggg18(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, balance_5_out_ggggg5(L, -2(IH, ._22(V, IT1)), -2(H, T), -2(HR1, TR1), -2(NH, NT1))) -> if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_in_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT)))
if_balance_5_in_2_ggggg22(L, V, R, IH, IT, LB, VB, RB, A, D, H, X, T, HR, TR, NH, NT, IT1, HR1, TR1, NT1, balance_5_out_ggggg5(R, -2(IT1, IT), -2(HR1, TR1), -2(HR, TR), -2(NT1, NT))) -> balance_5_out_ggggg5(tree_33(L, V, R), -2(IH, IT), -2(._22(tuple_22(tree_33(LB, VB, RB), -2(A, D)), H), ._22(tuple_22(LB, -2(A, ._22(VB, X))), ._22(tuple_22(RB, -2(X, D)), T))), -2(HR, TR), -2(NH, NT))
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ QDPSizeChangeProof
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -, -, -, -) -> BALANCE_5_IN_GGGGG5(L, -, -, -, -)
IF_BALANCE_5_IN_1_GGGGG2(R, balance_5_out_ggggg) -> BALANCE_5_IN_GGGGG5(R, -, -, -, -)
BALANCE_5_IN_GGGGG5(tree_33(L, V, R), -, -, -, -) -> IF_BALANCE_5_IN_1_GGGGG2(R, balance_5_in_ggggg5(L, -, -, -, -))
balance_5_in_ggggg5(nil_0, -, -, -, -) -> balance_5_out_ggggg
balance_5_in_ggggg5(tree_33(L, V, R), -, -, -, -) -> if_balance_5_in_1_ggggg2(R, balance_5_in_ggggg5(L, -, -, -, -))
if_balance_5_in_1_ggggg2(R, balance_5_out_ggggg) -> if_balance_5_in_2_ggggg1(balance_5_in_ggggg5(R, -, -, -, -))
if_balance_5_in_2_ggggg1(balance_5_out_ggggg) -> balance_5_out_ggggg
balance_5_in_ggggg5(x0, x1, x2, x3, x4)
if_balance_5_in_1_ggggg2(x0, x1)
if_balance_5_in_2_ggggg1(x0)
From the DPs we obtained the following set of size-change graphs: