i.e. data each of whose symbols may be found within a multi-symbol alphabet. By "compression" of a source data string is meant reducing the amount of data associated with the source data string, without reducing its information content. Thus, by compressing the source data string, output data may be constructed having a lower data content than the original source data, whilst still permitting the source data in its entirety to be reconstructed.