ABSTRACT

This chapter describes a few algorithms that compress texts. Compression serves both to save storage space and transmission time.We shall assume that the text is stored in a file. The aim of compression algorithms is to produce a new file, as short as possible, containing the compressed version of the same text.Methods presented here reduce the representation of text without any loss of information, so that decoding the compressed text restores exactly the original data. The term “text” should be understood in a wide sense. It is clear that texts can be written in natural

languages or can be texts usually generated by translators (like various types of compilers). But texts can also be images or other kinds of structures as well provided the data are stored in linear files. Texts considered here are sequence of characters from a finite alphabet Σ of size σ. The interest in data compression techniques remains important even if mass storage systems

improve regularly because the amount of data grows accordingly. Moreover, a consequence of the extension of computer networks is that the quantity of data they exchange grows exponentially. So, it is often necessary to reduce the size of files to reduce proportionally their transmission times. Other advantages in compressing files regard two connected issues: integrity of data and security.