TRS: { g(A()) -> A(), g(B()) -> A(), g(B()) -> B(), g(C()) -> A(), g(C()) -> B(), g(C()) -> C(), foldf(x, nil()) -> x, foldf(x, cons(y, z)) -> f(foldf(x, z), y), f(t, x) -> f'(t, g(x)), f'(triple(a, b, c), C()) -> triple(a, b, cons(C(), c)), f'(triple(a, b, c), B()) -> f(triple(a, b, c), A()), f'(triple(a, b, c), A()) -> f''(foldf(triple(cons(A(), a), nil(), c), b)), f''(triple(a, b, c)) -> foldf(triple(a, b, nil()), c)} Fail