  The stabiliser formalism allows the efficient description of a sizeable class
of pure as well as mixed quantum states of N-qubit systems. That same formalism
has important applications in the field of quantum error correcting codes,
where mixed stabiliser states correspond to projectors on subspaces associated
with stabiliser codes. Here, we derive efficient reduction procedures to obtain
various useful normal forms for stabiliser states. We explicitly prove that
these procedures will always converge to the correct result and that these
procedures are efficient in that they only require a polynomial number of
operations on the generators of the stabilisers.
  We obtain two single-party normal forms. The simplest, the row-reduced
echelon form, is useful to calculate partial traces of stabiliser states. The
second is the fully reduced form and allows for the efficient calculation of
the overlap between two stabiliser states, as well as of the Uhlmann fidelity
between them, and their Bures distance.
  We also find a reduction procedure of bipartite stabiliser states, where the
operations involved are restricted to be local ones. Using this two-party
normal form, we prove that every bipartite mixed stabiliser state is locally
equivalent to a direct product of a number of maximally entangled states and a
separable state. Using this normal form we can efficiently calculate every
reasonable bipartite entanglement measure of mixed stabiliser states.
