Our recommended occupation representation, e.g. \( | 1,2,4,8 \rangle \), is easy to code, but numerically inefficient when one has hundreds of millions of Slater determinants.
In state-of-the-art shell-model codes, one generally uses bit representation, i.e. \( |1101000100... \rangle \) where one stores the Slater determinant as a single (or a small number of) integer.
This is much more compact, but more intricate to code with considerable more overhead. There exist bit-manipulation functions. This is left as a challenge for those of you who would like to study this topic further for the final project to be presented for the oral examination.