1 Introduction
Delta compressors are software tools for compactly encoding the differences between two files or strings in order to reduce communication or storage costs. Examples of such tools are the diff and bdiff utilities for computing edit sequences between two files, and the more recent xdelta [16], vdelta [12], vcdiff [15], and zdelta [26] tools that compute highly compressed representations of file differences. These tools have a number of applications in various networking and storage scenarios; see [21] for a more detailed discussion. In a communication sce-nario, they typically exploit the fact that the sender and receiver both possess a reference file that is similar to the transmitted file; thus transmitting only the difference (or delta) between the two files requires a significantly smaller number of bits. In storage applications such as version control systems, deltas are often orders of magnitude smaller than the compressed target file.