We present a deterministic algorithm producing the number of
$k$-colourings of a graph on $n$ vertices in time
$2^nn^{O(1)}$.
We also show that the chromatic number can be found by a
polynomial space algorithm running in time $O(2.2461^n)$.
Finally, we present a family of polynomial space approximation
algorithms that find a number between $\chi(G)$ and
$(1+\epsilon)\chi(G)$ in time $O(1.2209^n+2.2461^{e^{-\epsilon}n})$.