def n_choose_k(n, k):
return int(reduce(MUL, (Fraction(n-i, i+<NUM_LIT:1>) for i in range(k)), <NUM_LIT:1>))<EOL>
get the number of quartets as n-choose-k. This is used
    in equal splits to decide whether a split should be exhaustively sampled
    or randomly sampled. Edges near tips can be exhaustive while highly nested
    edges probably have too many quartets