Italiano (Italian) English (Inglese)
Thursday, 5 December 2024

Technical Reports

Technical Report Details
Authors:Paolo Ferragina
Raffaele Giancarlo
Giovanni Manzini
Scientific Area:Text Compression and Indexing
Title:The Engineering of a Compression Boosting Library: Theory vs Practice in BWT compression
Published on:TR-INF-2006-06-03-UNIPMN
Publisher:Computer Science Department, UPO
Year:2006
URL:http://www.di.unipmn.it...R-INF-2006-06-03-UNIPMN.pdf
Abstract:Data Compression is one of the most challenging arenas both for algorithm design and engineering. This is particularly true for Burrows and Wheeler Compression a technique that is important in itself and for the design of compressed indexes. There has been considerable debate on how to design and engineer compression algorithms based on the BWT paradigm. In particular, Move-to-Front Encoding is generally believed to be an “inefficient” part of the Burrows-Wheeler compression process. However, only recently two theoretically superior alternatives to Move-to-Front have been proposed, namely Compression Boosting and Wavelet Trees. The main contribution of this paper is to provide the first experimental comparison of these three techniques, giving a much needed methodological contribution to the current debate. We do so by providing the first carefully engineered compression boosting library that can be used, on the one hand, to investigate the myriad new compression algorithms that can be based on boosting, and on the other hand, to make the first experimental assessment of how Move-to-Front behaves with respect to its recently proposed competitors. The main conclusion is that Boosting, Wavelet Trees and Move-to-Front yield quite close compression performance. Finally, our extensive experimental study of boosting technique brings to light a new fact overlooked in 10 years of experiments in the area: a fast adapting order-zero compressor is enough to provide state of the art BWT compression by simply compressing the run length encoded transform. In other words, Move-to-Front, Wavelet Trees, and Boosters can all be by-passed by a fast learner.