Skip to Main Content
Summary form only given. We propose a novel compression method, static PPM (SP), which supports partial decode (p-decode) with low memory and computation requirement. P-decode is a function that decodes data from an arbitrary position without decoding the whole, which is critical for exploiting large data in a compressed state. While conventional compression methods do not support p-decode, recent self-indexing data structures, such as compressed suffix arrays (CSA) (Sadakane, K., J. Algorithms, vol.48, no.2, p.294-313, 2003) and FM-index (Ferragina, P. and Manzini, G. Proc. ACM-SIAM SODA, p.269-78, 2001), support p-decode. However, they have to store the whole compressed data in memory, since the order of the data is not preserved after compression. This causes a serious problem when the compressed data is larger than memory size. In contrast, SP does not have to store compressed data in memory and, thus, is the first compression method that supports p-decode for very large compressed data. In order to show SP's high compression performance inherited from PPM and its p-decode performance, we compared SP, CSA, FM-index, gzip (with option -9) and bzip (with option -9) in terms of speed and compression ratio. The results show that SP achieves fast p-decode with high compression ratio.