Demo Data from SIGIR 2026 / reviewers in the wild / expert
Giovanni Manzini
dblp:63/1086
· DBLP profile ↗
107ranked-venue papers
25as first author
21since 2021 · last 2026
0000-0002-5047-0196ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 59 · 16 first-author · 8 since 2021Databases, data management, data science and information retrieval · 27 · 4 first-author · 8 since 2021Applied, interdisciplinary, general and emerging computing · 11 · 1 first-author · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 10 · 2 first-author · 5 since 2021Artificial intelligence and machine learning · 3 · 2 first-authorSystems, architecture and hardware · 3 · 1 first-author · 1 since 2021Software engineering, systems software and programming languages · 3 · 1 first-author · 1 since 2021
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Theoretical computer science
21 papers |
Algorithms and data structures · 64% Coding theory · 18% Computational complexity · 13% | |
| Databases, data mining, and information retrieval
8 papers |
Information retrieval · 51% Indexing and storage engines · 23% Machine learning and data management · 17% | |
| Interdisciplinary, comprehensive, and emerging computing
1 paper |
Bioinformatics and computational biology · 100% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Storage systems · 100% |
Topics — the 30 heaviest of 47, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Algorithms and data structures › sequence algorithms › string algorithms › string indexing › suffix tree
compressed suffix tree |
1.0 | 1 | 2026 | Compressing Suffix Trees by Path Decompositions · ICALP 2026 |
Algorithms and data structures › sequence algorithms › string algorithms › string indexing
suffix tree |
1.0 | 1 | 2026 | Compressing Suffix Trees by Path Decompositions · ICALP 2026 |
Algorithms and data structures › sequence algorithms › string algorithms › string indexing
compressed index |
0.8 | 3 | 2023 | A new class of string transformations for compressed text indexing · Inf. Comput. 2023 Efficient Construction of a Complete Index for Pan-Genomics Read Alignment · RECOMB 2019 Opportunistic Data Structures with Applications · FOCS 2000 |
Storage systems
data compression |
0.6 | 1 | 2022 | Improving Matrix-vector Multiplication via Lossless Grammar-Compressed Matrices · Proc. VLDB Endow. 2022 |
Computational complexity › algebraic complexity › matrix multiplication
matrix-vector multiplication |
0.6 | 1 | 2022 | Improving Matrix-vector Multiplication via Lossless Grammar-Compressed Matrices · Proc. VLDB Endow. 2022 |
Coding theory
source coding |
0.4 | 8 | 2023 | A new class of string transformations for compressed text indexing · Inf. Comput. 2023 Boosting textual compression in optimal linear time · J. ACM 2005 Compression boosting in optimal linear time using the Burrows-Wheeler Transform · SODA 2004 |
Bioinformatics and computational biology
genomics |
0.4 | 1 | 2019 | Efficient Construction of a Complete Index for Pan-Genomics Read Alignment · RECOMB 2019 |
Bioinformatics and computational biology › comparative genomics › pangenomics
pangenome indexing |
0.4 | 1 | 2019 | Efficient Construction of a Complete Index for Pan-Genomics Read Alignment · RECOMB 2019 |
Coding theory › source coding
burrows-wheeler transform |
0.3 | 5 | 2023 | A new class of string transformations for compressed text indexing · Inf. Comput. 2023 Compression boosting in optimal linear time using the Burrows-Wheeler Transform · SODA 2004 An analysis of the Burrows-Wheeler transform · J. ACM 2001 |
Machine learning and data management
data management for machine learning |
0.2 | 1 | 2022 | Improving Matrix-vector Multiplication via Lossless Grammar-Compressed Matrices · Proc. VLDB Endow. 2022 |
Information retrieval › indexing
index compression |
0.2 | 3 | 2009 | Compressing and indexing labeled trees, with applications · J. ACM 2009 Indexing compressed text · J. ACM 2005 Compressing and searching XML data via two zips · WWW 2006 |
Algorithms and data structures › space-efficient algorithms › succinct data structures
wavelet trees |
0.2 | 2 | 2009 | The myriad virtues of Wavelet Trees · Inf. Comput. 2009 The Myriad Virtues of Wavelet Trees · ICALP (1) 2006 |
Information theory › information measures › entropy
empirical entropy |
0.2 | 4 | 2007 | Compressed representations of sequences and full-text indexes · ACM Trans. Algorithms 2007 An analysis of the Burrows-Wheeler transform · J. ACM 2001 Opportunistic Data Structures with Applications · FOCS 2000 |
Algorithms and data structures › space-efficient algorithms
succinct data structures |
0.1 | 3 | 2006 | The Myriad Virtues of Wavelet Trees · ICALP (1) 2006 Structuring labeled trees for optimal succinctness, and beyond · FOCS 2005 Opportunistic Data Structures with Applications · FOCS 2000 |
Algorithms and data structures › sequence algorithms › string algorithms
string indexing |
0.1 | 1 | 2019 | Efficient Construction of a Complete Index for Pan-Genomics Read Alignment · RECOMB 2019 |
Information retrieval › indexing › index compression
inverted index compression |
0.1 | 1 | 2010 | On compressing the textual web · WSDM 2010 |
Information retrieval
search engines |
0.1 | 1 | 2010 | On compressing the textual web · WSDM 2010 |
Indexing and storage engines
succinct data structures |
0.1 | 1 | 2009 | The myriad virtues of Wavelet Trees · Inf. Comput. 2009 |
Information theory › information measures
entropy |
0.1 | 4 | 2005 | An analysis of the Burrows-Wheeler transform · J. ACM 2001 Compression of Low Entropy Strings with Lempel-Ziv Algorithms · SIAM J. Comput. 1999 On Computing the Entropy of Cellular Automata · ICALP 1998 |
Coding theory › source coding › tree coding
tree compression |
0.1 | 2 | 2009 | Structuring labeled trees for optimal succinctness, and beyond · FOCS 2005 Compressing and indexing labeled trees, with applications · J. ACM 2009 |
Indexing and storage engines › succinct data structures › self-index
FM-index |
0.1 | 1 | 2007 | Compressed representations of sequences and full-text indexes · ACM Trans. Algorithms 2007 |
Information retrieval › indexing › text indexing
full-text index |
0.1 | 1 | 2007 | Compressed representations of sequences and full-text indexes · ACM Trans. Algorithms 2007 |
Algorithms and data structures › data structure design
compressed data structures |
0.1 | 1 | 2007 | Compressed representations of sequences and full-text indexes · ACM Trans. Algorithms 2007 |
Query processing and optimization
XML query processing |
0.1 | 1 | 2006 | Compressing and searching XML data via two zips · WWW 2006 |
Information retrieval › indexing › text indexing
full-text indexing |
0.1 | 1 | 2005 | Indexing compressed text · J. ACM 2005 |
Computational complexity › learning theory
boosting |
0.1 | 1 | 2005 | Boosting textual compression in optimal linear time · J. ACM 2005 |
Coding theory › source coding › lossless compression
text compression |
0.1 | 1 | 2005 | Boosting textual compression in optimal linear time · J. ACM 2005 |
Coding theory › source coding
lossless compression |
0.0 | 2 | 2004 | An analysis of the Burrows-Wheeler transform · J. ACM 2001 Compression boosting in optimal linear time using the Burrows-Wheeler Transform · SODA 2004 |
Algorithms and data structures
numerical linear algebra |
0.0 | 2 | 1999 | Parallel Complexity of Numerically Accurate Linear System Solvers · SIAM J. Comput. 1999 Inversion of Circulant Matrices over Zm · ICALP 1998 |
Automata and formal languages
cellular automata |
0.0 | 2 | 1998 | On Computing the Entropy of Cellular Automata · ICALP 1998 A Complete and Efficiently Computable Topological Classification of D-dimensional Linear Cellular Automata over Zm · ICALP 1997 |
Methods — techniques the papers use, named apart from their topics
burrows-wheeler transform · 1.8grammar-based compression · 1.7column reordering · 1.7pan-genome indexing · 0.8r-index · 0.7path sorting · 0.2rank and select queries · 0.1compression boosting · 0.1move-to-front · 0.1huffman coding · 0.1gzip · 0.1suffix array · 0.1compression · 0.1run-length encoding · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Compressing Suffix Trees by Path Decompositions
Ruben Becker, Davide Cenzato, Travis Gagie, Ragnar Groot Koerkamp, Giovanni Manzini, Nicola Prezza |
ICALP | 6 |
| 2026 | Generalization of Repetitiveness Measures for Two-Dimensional StringsabstractAbstract The problem of detecting and measuring the repetitiveness of one-dimensional strings has been extensively studied in data compression and text indexing. Our understanding of these issues has been significantly improved by the introduction of the notion of string attractor (Kempa and Prezza 2018) and by the results showing the relationship between attractors and other measures of compressibility. When the input data are structured in a non-linear way, as in two-dimensional strings, inherent redundancy often offers an even richer source for compression. However, systematic studies on repetitiveness measures for two-dimensional strings are still scarce. In this paper, we extend to two or more dimensions the main measures of complexity introduced for one-dimensional strings. We distinguish between the measures $$\delta $$ δ and $$\gamma $$ γ , defined in terms of the substrings of the input, and the measures g , $$g_{rl}$$ g rl , and b , which are based on copy-paste mechanisms. We study the properties and mutual relationships between these two classes and we show that the two classes become incomparable for d -dimensional inputs as soon as $$d\geqslant 2$$ d ⩾ 2 . Moreover, we show that our grammar-based representation of a d -dimensional string of size N enables direct access to any symbol in $$O(\log N)$$ O ( log N ) time. We also compare our measures for two-dimensional strings with the 2D Block Tree data structure (Brisaboa et al., Comput. J. 67 (1), 391–406, 2024) and provide some insights for the design of future effective two-dimensional compressors. A preliminary version of this paper appeared in the proceedings of the conference SPIRE 2024. Lorenzo Carfagna, Giovanni Manzini, Giuseppe Romana, Marinella Sciortino, Cristian Urbina |
Theory Comput. Syst. | 2 |
| 2025 | Scalable Compression of Massive Data Collections on HPC Systems
Loris Belcastro, Paolo Ferragina, Giovanni Manzini, Fabrizio Marozzo, Domenico Talia, Paolo Trunfio |
Euro-Par (2) | 3 |
| 2025 | Depth First Representations of k2-trees
Gabriel Carmona, Giovanni Manzini |
SPIRE | 2 |
| 2025 | Prefix-Free Parsing for Merging Big BWTs
Diego Díaz-Domínguez, Travis Gagie, Veronica Guerrini, Ben Langmead, Zsuzsanna Lipták, Giovanni Manzini, Francesco Masillo, Vikram Shivakumar |
SPIRE | 6 |
| 2025 | On the compressibility of large-scale source code datasetsabstractStoring ultra-large amounts of unstructured data (often called objects or blobs) is a fundamental task for several object-based storage engines, data warehouses, data-lake systems, and key–value stores. These systems cannot currently leverage similarities between objects, which could be vital in improving their space and time performance. An important use case in which we can expect the objects to be highly similar is the storage of large-scale versioned source code datasets, such as the Software Heritage Archive (Di Cosmo and Zacchiroli, 2017). This use case is particularly interesting given the extraordinary size (1.5 PiB), the variegated nature, and the high repetitiveness of the at-issue corpus. In this paper we discuss and experiment with content- and context-based compression techniques for source-code collections that tailor known and novel tools to this setting in combination with state-of-the-art general-purpose compressors and the information coming from the Software Heritage Graph. We experiment with our compressors over a random sample of the entire corpus, and four large samples of source code files written in different popular languages: C/C ++ , Java, JavaScript, and Python. We also consider two scenarios of usage for our compressors, called Backup and File-Access scenario, where the latter adds to the former the support for single file retrieval. As a net result, our experiments show (i) how much “compressible” each language is, (ii) which content- or context-based techniques compress better and are faster to (de)compress by possibly supporting individual file access, and (iii) the ultimate compressed size that, according to our estimate, our best solution could achieve in storing all the source code written in these languages and available in the Software Heritage Archive: namely, in 3 TiB (down from their original 78 TiB total size, with an average compression ratio of 4%). Antonio Boffa, Roberto Di Cosmo, Paolo Ferragina, Andrea Guerra, Giovanni Manzini, Giorgio Vinciguerra, Stefano Zacchiroli |
J. Syst. Softw. | 5 |
| 2024 | Computing the LCP Array of a Labeled GraphabstractThe LCP array is an important tool in stringology, allowing to speed up pattern matching algorithms and enabling compact representations of the suffix tree. Recently, Conte et al. [DCC 2023] and Cotumaccio et al. [SPIRE 2023] extended the definition of this array to Wheeler DFAs and, ultimately, to arbitrary labeled graphs, proving that it can be used to efficiently solve matching statistics queries on the graph’s paths. In this paper, we provide the first efficient algorithm building the LCP array of a directed labeled graph with n nodes and m edges labeled over an alphabet of size σ. The first step is to transform the input graph G into a deterministic Wheeler pseudoforest G_{is} with O(n) edges encoding the lexicographically- smallest and largest strings entering in each node of the original graph. Using state-of-the-art algorithms, this step runs in O(min{mlog n, m+n²}) time on arbitrary labeled graphs, and in O(m) time on Wheeler DFAs. The LCP array of G stores the longest common prefixes between those strings, i.e. it can easily be derived from the LCP array of G_{is}. After arguing that the natural generalization of a compact-space LCP-construction algorithm by Beller et al. [J. Discrete Algorithms 2013] runs in time Ω(nσ) on pseudoforests, we present a new algorithm based on dynamic range stabbing building the LCP array of G_{is} in O(nlog σ) time and O(nlogσ) bits of working space. Combined with our reduction, we obtain the first efficient algorithm to build the LCP array of an arbitrary labeled graph. An implementation of our algorithm is publicly available at https://github.com/regindex/Labeled-Graph-LCP. Jarno Alanko, Davide Cenzato, Nicola Cotumaccio, Giovanni Manzini, Nicola Prezza |
CPM | 5 |
| 2024 | The Rational Construction of a Wheeler DFA
Giovanni Manzini, Alberto Policriti, Nicola Prezza, Brian Riccardi |
CPM | 1 |
| 2024 | Generalization of Repetitiveness Measures for Two-Dimensional Strings
Lorenzo Carfagna, Giovanni Manzini, Giuseppe Romana, Marinella Sciortino, Cristian Urbina |
SPIRE | 2 |
| 2024 | Taxonomic Classification with Maximal Exact Matches in KATKA Kernels and Minimizer Digestsabstract; a minimizer digest; ■ a KATKA kernel of a minimizer digest. With a test dataset and these three representations of it, simulated reads and various parameter settings, we checked how many reads' longest MEMs occurred only in the sequences from which those reads were generated ("true positive" reads). For some parameter settings we achieved significant compression while only slightly decreasing the true-positive rate. Dominika Draesslerová, Omar Y. Ahmed, Travis Gagie, Jan Holub 0001, Ben Langmead, Giovanni Manzini, Gonzalo Navarro 0001 |
SEA | 6 |
| 2023 | Computing matching statistics on Wheeler DFAsabstractMatching statistics were introduced to solve the approximate string matching problem, which is a recurrent subroutine in bioinformatics applications. In 2010, Ohlebusch et al. [SPIRE 2010] proposed a time and space efficient algorithm for computing matching statistics which relies on some components of a compressed suffix tree - notably, the longest common prefix (LCP) array. In this paper, we show how their algorithm can be generalized from strings to Wheeler deterministic finite automata. Most importantly, we introduce a notion of LCP array for Wheeler automata, thus establishing a first clear step towards extending (compressed) suffix tree functionalities to labeled graphs. Alessio Conte, Nicola Cotumaccio, Travis Gagie, Giovanni Manzini, Nicola Prezza, Marinella Sciortino |
DCC | 4 |
| 2023 | Compressibility Measures for Two-Dimensional Data
Lorenzo Carfagna, Giovanni Manzini |
SPIRE | 2 |
| 2023 | A new class of string transformations for compressed text indexingabstractIntroduced about thirty years ago in the field of data compression, the Burrows-Wheeler Transform (BWT) is a string transformation that, besides being a booster of the performance of memoryless compressors, plays a fundamental role in the design of efficient self-indexing compressed data structures. Finding other string transformations with the same remarkable properties of BWT has been a challenge for many researchers for a long time. Among the known BWT variants, the only one that has been recently shown to be a valid alternative to BWT is the Alternating BWT (ABWT), an invertible string transformation introduced about ten years ago in connection with a generalization of Lyndon words. In this paper, we introduce a whole class of new string transformations, called local orderings-based transformations, which have all the “myriad virtues” of BWT. We show that this new family is a special case of a much larger class of transformations, based on context adaptive alphabet orderings, that includes BWT and ABWT. Although all transformations support pattern search, we show that, in the general case, the transformations within our larger class may take quadratic time for inversion and pattern search. As a further result, we show that the local orderings-based transformations can be used for the construction of the recently introduced r-index, which makes them suitable also for highly repetitive collections. In this context, we consider the problem of finding, for a given string, the BWT variant that minimizes the number of runs in the transformed string, and we provide an algorithm solving this problem in linear time. Raffaele Giancarlo, Giovanni Manzini, Antonio Restivo, Giovanna Rosone, Marinella Sciortino |
Inf. Comput. | 2 |
| 2022 | Space Efficient Merging of de Bruijn Graphs and Wheeler Graphs
Lavinia Egidi, Felipe A. Louza, Giovanni Manzini |
Algorithmica | 3 |
| 2022 | Improving Matrix-vector Multiplication via Lossless Grammar-Compressed MatricesabstractAs nowadays Machine Learning (ML) techniques are generating huge data collections, the problem of how to efficiently engineer their storage and operations is becoming of paramount importance. In this article we propose a new lossless compression scheme for real-valued matrices which achieves efficient performance in terms of compression ratio and time for linear-algebra operations. Experiments show that, as a compressor, our tool is clearly superior to gzip and it is usually within 20% of xz in terms of compression ratio. In addition, our compressed format supports matrix-vector multiplications in time and space proportional to the size of the compressed representation, unlike gzip and xz that require the full decompression of the compressed matrix. To our knowledge our lossless compressor is the first one achieving time and space complexities which match the theoretical limit expressed by the k -th order statistical entropy of the input. To achieve further time/space reductions, we propose column-reordering algorithms hinging on a novel column-similarity score. Our experiments on various data sets of ML matrices show that our column reordering can yield a further reduction of up to 16% in the peak memory usage during matrix-vector multiplication. Finally, we compare our proposal against the state-of-the-art Compressed Linear Algebra (CLA) approach showing that ours runs always at least twice faster (in a multi-thread setting), and achieves better compressed space occupancy and peak memory usage. This experimentally confirms the provably effective theoretical bounds we show for our compressed-matrix approach. Paolo Ferragina, Giovanni Manzini, Travis Gagie, Dominik Köppl, Gonzalo Navarro 0001, Manuel Striani, Francesco Tosoni 0001 |
Proc. VLDB Endow. | 2 |
| 2022 | Efficient and compact representations of some non-canonical prefix-free codes
Antonio Fariña, Travis Gagie, Szymon Grabowski, Giovanni Manzini, Gonzalo Navarro 0001, Alberto Ordóñez Pereira |
Theor. Comput. Sci. | 4 |
| 2021 | PFP Compressed Suffix TreesabstractPrefix-free parsing (PFP) was introduced by Boucher et al. (2019) as a preprocessing step to ease the computation of Burrows-Wheeler Transforms (BWTs) of genomic databases. Given a string S, it produces a dictionary D and a parse P of overlapping phrases such that BWT(S) can be computed from D and P in time and workspace bounded in terms of their combined size |PFP(S)|. In practice D and P are significantly smaller than S and computing BWT(S) from them is more efficient than computing it from S directly, at least when S is the concatenation of many genomes. In this paper, we consider PFP(S) as a data structure and show how it can be augmented to support full suffix tree functionality, still built and fitting within O(|PFP(S)|) space. This entails the efficient computation of various primitives to simulate the suffix tree: computing a longest common extension (LCE) of two positions in S; reading any cell of its suffix array (SA), of its inverse (ISA), of its BWT, and of its longest common prefix array (LCP); and computing minima over ranges and next/previous smaller value queries over the LCP. Our experimental results show that the PFP suffix tree can be efficiently constructed for very large repetitive datasets and that its operations perform competitively with other compressed suffix trees that can only handle much smaller datasets. Christina Boucher 0001, Ondrej Cvacho, Travis Gagie, Jan Holub 0001, Giovanni Manzini, Gonzalo Navarro 0001, Massimiliano Rossi 0001 |
ALENEX | 5 |
| 2021 | PHONI: Streamed Matching Statistics with Multi-Genome ReferencesabstractComputing the matching statistics of patterns with respect to a text is a fundamental task in bioinformatics, but a formidable one when the text is a highly compressed genomic database. Bannai et al. gave an efficient solution for this case, which Rossi et al. recently implemented, but it uses two passes over the patterns and buffers a pointer for each character during the first pass. In this paper, we simplify their solution and make it streaming, at the cost of slowing it down slightly. This means that, first, we can compute the matching statistics of several long patterns (such as whole human chromosomes) in parallel while still using a reasonable amount of RAM; second, we can compute matching statistics online with low latency and thus quickly recognize when a pattern becomes incompressible relative to the database. Our code is available at https://github.com/koeppl/phoni. Christina Boucher 0001, Travis Gagie, Tomohiro I, Dominik Köppl, Ben Langmead, Giovanni Manzini, Gonzalo Navarro 0001, Alejandro Pacheco, Massimiliano Rossi 0001 |
DCC | 6 |
| 2021 | Efficiently Merging r-indexesabstractLarge sequencing projects, such as GenomeTrakr and MetaSub, are updated frequently (sometimes daily, in the case of GenomeTrakr) with new data. Therefore, it is imperative that any data structure indexing such data supports efficient updates. Toward this goal, Bannai et al. (TCS, 2020) proposed a data structure named dynamic r-index which is suitable for large genome collections and supports incremental construction; however, it is still not powerful enough to support substantial updates. Here, we develop a novel algorithm for updating the r-index, which we refer to as RIMERGE. Fundamental to our algorithm is the combination of the basics of the dynamic r-index with a known algorithm for merging Burrows-Wheeler Transforms (BWTs). As a result, RIMERGE is capable of performing batch updates in a manner that exploits parallelism while keeping the memory overhead small. We compare our method to the dynamic r-index of Bannai et al. using two different datasets, and show that RIMERGE is between 1.88 to 5.34 times faster on reasonably large inputs. Marco Oliva, Massimiliano Rossi 0001, Jouni Sirén, Giovanni Manzini, Tamer Kahveci, Travis Gagie, Christina Boucher 0001 |
DCC | 4 |
| 2021 | Repetition- and Linearity-Aware Rank/Select DictionariesabstractWe revisit the fundamental problem of compressing an integer dictionary that supports efficient rank and select operations by exploiting two kinds of regularities arising in real data: repetitiveness and approximate linearity. Our first contribution is a Lempel-Ziv parsing properly enriched to also capture approximate linearity in the data and still be compressed to the kth order entropy. Our second contribution is a variant of the block tree structure whose space complexity takes advantage of both repetitiveness and approximate linearity, and results highly competitive in time too. Our third and final contribution is an implementation and experimentation of this last data structure, which achieves new space-time trade-offs compared to known data structures that exploit only one of the two regularities. Paolo Ferragina, Giovanni Manzini, Giorgio Vinciguerra |
ISAAC | 2 |
| 2021 | Compressing and Indexing Aligned ReadsetsabstractCompressed full-text indexes are one of the main success stories of bioinformatics data structures but even they struggle to handle some DNA readsets. This may seem surprising since, at least when dealing with short reads from the same individual, the readset will be highly repetitive and, thus, highly compressible. If we are not careful, however, this advantage can be more than offset by two disadvantages: first, since most base pairs are included in at least tens reads each, the uncompressed readset is likely to be at least an order of magnitude larger than the individual's uncompressed genome; second, these indexes usually pay some space overhead for each string they store, and the total overhead can be substantial when dealing with millions of reads. The most successful compressed full-text indexes for readsets so far are based on the Extended Burrows-Wheeler Transform (EBWT) and use a sorting heuristic to try to reduce the space overhead per read, but they still treat the reads as separate strings and thus may not take full advantage of the readset's structure. For example, if we have already assembled an individual's genome from the readset, then we can usually use it to compress the readset well: e.g., we store the gap-coded list of reads' starting positions; we store the list of their lengths, which is often highly compressible; and we store information about the sequencing errors, which are rare with short reads. There is nowhere, however, where we can plug an assembled genome into the EBWT. In this paper we show how to use one or more assembled or partially assembled genome as the basis for a compressed full-text index of its readset. Specifically, we build a labelled tree by taking the assembled genome as a trunk and grafting onto it the reads that align to it, at the starting positions of their alignments. Next, we compute the eXtended Burrows-Wheeler Transform (XBWT) of the resulting labelled tree and build a compressed full-text index on that. Although this index can occasionally return false positives, it is usually much more compact than the alternatives. Following the established practice for datasets with many repetitions, we compare different full-text indices by looking at the number of runs in the transformed strings. For a human Chr19 readset our preliminary experiments show that eliminating separators characters from the EBWT reduces the number of runs by 19%, from 220 million to 178 million, and using the XBWT reduces it by a further 15%, to 150 million. Travis Gagie, Garance Gourdel, Giovanni Manzini |
WABI | 3 |
| 2020 | Practical Random Access to SLP-Compressed Texts
Travis Gagie, Tomohiro I, Giovanni Manzini, Gonzalo Navarro 0001, Hiroshi Sakamoto, Louisa Seelbach Benkner, Yoshimasa Takabatake |
SPIRE | 3 |
| 2020 | Lightweight merging of compressed indices based on BWT variants
Lavinia Egidi, Giovanni Manzini |
Theor. Comput. Sci. | 2 |
| 2020 | The Alternating BWT: An algorithmic perspective
Raffaele Giancarlo, Giovanni Manzini, Antonio Restivo, Giovanna Rosone, Marinella Sciortino |
Theor. Comput. Sci. | 2 |
| 2019 | A New Class of Searchable and Provably Highly Compressible String TransformationsabstractThe Burrows-Wheeler Transform is a string transformation that plays a fundamental role for the design of self-indexing compressed data structures. Over the years, researchers have successfully extended this transformation outside the domains of strings. However, efforts to find non-trivial alternatives of the original, now 25 years old, Burrows-Wheeler string transformation have met limited success. In this paper we bring new lymph to this area by introducing a whole new family of transformations that have all the "myriad virtues" of the BWT: they can be computed and inverted in linear time, they produce provably highly compressible strings, and they support linear time pattern search directly on the transformed string. This new family is a special case of a more general class of transformations based on context adaptive alphabet orderings, a concept introduced here. This more general class includes also the Alternating BWT, another invertible string transforms recently introduced in connection with a generalization of Lyndon words. Raffaele Giancarlo, Giovanni Manzini, Giovanna Rosone, Marinella Sciortino |
CPM | 2 |
| 2019 | Efficient Construction of a Complete Index for Pan-Genomics Read Alignment
Alan Kuhnle, Taher Mun, Christina Boucher 0001, Travis Gagie, Ben Langmead, Giovanni Manzini |
RECOMB | 6 |
| 2019 | Space-Efficient Merging of Succinct de Bruijn Graphs
Lavinia Egidi, Felipe A. Louza, Giovanni Manzini |
SPIRE | 3 |
| 2019 | Rpair: Rescaling RePair with Rsync
Travis Gagie, Tomohiro I, Giovanni Manzini, Gonzalo Navarro 0001, Hiroshi Sakamoto, Yoshimasa Takabatake |
SPIRE | 3 |
| 2019 | Inducing the Lyndon Array
Felipe A. Louza, Sabrina Mantaci, Giovanni Manzini, Marinella Sciortino, Guilherme P. Telles |
SPIRE | 3 |
| 2019 | A compact index for order-preserving pattern matchingabstractSummary Order‐preserving pattern matching has been introduced recently, but it has already attracted much attention. Given a reference sequence and a pattern, we want to locate all substrings of the reference sequence whose elements have the same relative order as the pattern elements. For this problem, we consider the offline version in which we build an index for the reference sequence so that subsequent searches can be completed very efficiently. We propose a space‐efficient index that works well in practice despite its lack of good worst‐case time bounds. Our solution is based on the new approach of decomposing the indexed sequence into an order component, containing ordering information, and a δ component, containing information on the absolute values. Experiments show that this approach is viable, is faster than the available alternatives, and is the first one offering simultaneously small space usage and fast retrieval. Gianni Decaroli, Travis Gagie, Giovanni Manzini |
Softw. Pract. Exp. | 3 |
| 2018 | Block Sorting-Based Transformations on Words: Beyond the Magic BWT
Raffaele Giancarlo, Giovanni Manzini, Antonio Restivo, Giovanna Rosone, Marinella Sciortino |
DLT | 2 |
| 2018 | Prefix-Free Parsing for Building Big BWTs
Christina Boucher 0001, Travis Gagie, Alan Kuhnle, Giovanni Manzini |
WABI | 4 |
| 2018 | External memory BWT and LCP computation for sequence collections with applicationsabstractWe propose an external memory algorithm for the computation of the BWT and LCP array for a collection of sequences. Our algorithm takes the amount of available memory as an input parameter, and tries to make the best use of it by splitting the input collection into subcollections sufficiently small that it can compute their BWT in RAM using an optimal linear time algorithm. Next, it merges the partial BWTs in external memory and in the process it also computes the LCP values. We prove that our algorithm performs O(n AveLcp) sequential I/Os, where n is the total length of the collection, and AveLcp is the average Longest Common Prefix of the collection. This bound is an improvement over the known algorithms for the same task. The experimental results show that our algorithm outperforms the current best algorithm for collections of sequences with different lengths and for collections with relatively small average Longest Common Prefix. In the second part of the paper, we show that our algorithm can be modified to output two additional arrays that, used with the BWT and LCP arrays, provide simple, scan based, external memory algorithms for three well known problems in bioinformatics: the computation of maximal repeats, the all pairs suffix-prefix overlaps, and the construction of succinct de Bruijn graphs. To our knowledge, there are no other known external memory algorithms for these problems. Lavinia Egidi, Felipe A. Louza, Giovanni Manzini, Guilherme P. Telles |
WABI | 3 |
| 2018 | STAble: a novel approach to de novo assembly of RNA-seq data and its application in a metabolic model network based metatranscriptomic workflowabstractBACKGROUND: De novo assembly of RNA-seq data allows the study of transcriptome in absence of a reference genome either if data is obtained from a single organism or from a mixed sample as in metatranscriptomics studies. Given the high number of sequences obtained from NGS approaches, a critical step in any analysis workflow is the assembly of reads to reconstruct transcripts thus reducing the complexity of the analysis. Despite many available tools show a good sensitivity, there is a high percentage of false positives due to the high number of assemblies considered and it is likely that the high frequency of false positive is underestimated by currently used benchmarks. The reconstruction of not existing transcripts may false the biological interpretation of results as - for example - may overestimate the identification of "novel" transcripts. Moreover, benchmarks performed are usually based on RNA-seq data from annotated genomes and assembled transcripts are compared to annotations and genomes to identify putative good and wrong reconstructions, but these tests alone may lead to accept a particular type of false positive as true, as better described below. RESULTS: Here we present a novel methodology of de novo assembly, implemented in a software named STAble (Short-reads Transcriptome Assembler). The novel concept of this assembler is that the whole reads are used to determine possible alignments instead of using smaller k-mers, with the aim of reducing the number of chimeras produced. Furthermore, we applied a new set of benchmarks based on simulated data to better define the performance of assembly method and carefully identifying true reconstructions. STAble was also used to build a prototype workflow to analyse metatranscriptomics data in connection to a steady state metabolic modelling algorithm. This algorithm was used to produce high quality metabolic interpretations of small gene expression sets obtained from already published RNA-seq data that we assembled with STAble. CONCLUSIONS: The presented results, albeit preliminary, clearly suggest that with this approach is possible to identify informative reactions not directly revealed by raw transcriptomic data. Igor Saggese, Elisa Bona, Maxwell Conway, Francesco Favero, Marco Ladetto, Pietro Liò, Giovanni Manzini, Flavio Mignone |
BMC Bioinform. | 7 |
| 2017 | Wheeler Graphs: Variations on a Theme by Burrows and WheelerabstractThe famous Burrows-Wheeler Transform was originally defined for single strings but variations have been developed for sets of strings, labelled trees, de Bruijn graphs, alignments, etc. In this talk we propose a unifying view that includes many of these variations and that we hope will simplify the search for more. Somewhat surprisingly we get our unifying view by considering the Nondeterministic Finite Automata related to different pattern-matching problems. We show that the state graphs associated with these automata have common properties that we summarize with the concept of a Wheeler graph. Using the notion of a Wheeler graph, we show that it is possible to process strings efficiently even if the automaton is nondeterministic. In addition, we show that Wheeler graphs can be compactly represented and traversed using up to three arrays with additional data structures supporting efficient rank and select operations. It turns out that these arrays coincide with, or are substantially equivalent to, the output of many Burrows-Wheeler Transform variants described in the literature. This is joint work with Travis Gagie and Jouni Sirén. Giovanni Manzini |
CPM | 1 |
| 2017 | A Compact Index for Order-Preserving Pattern MatchingabstractOrder-preserving pattern matching was first studied surprisingly recently buthas already attracted much attention. For this problem we propose aspace-efficient index that works well in practice despite its lack of goodworst-case time bounds. Our solution is based on the new approach ofdecomposing the indexed sequence into an em order component, containingordering information, and a δ component, containing informationon the absolute values. Experiments show that this approach is viable and itis the first one offering simultaneously small space usage and fast retrieval. Gianni Decaroli, Travis Gagie, Giovanni Manzini |
DCC | 3 |
| 2017 | An Encoding for Order-Preserving MatchingabstractEncoding data structures store enough information to answer the queries they are meant to support but not enough to recover their underlying datasets. In this paper we give the first encoding data structure for the challenging problem of order-preserving pattern matching. This problem was introduced only a few years ago but has already attracted significant attention because of its applications in data analysis. Two strings are said to be an order-preserving match if the relative order of their characters is the same: e.g., (4, 1, 3, 2) and (10, 3, 7, 5) are an order-preserving match. We show how, given a string S[1..n] over an arbitrary alphabet of size sigma and a constant c >=1, we can build an O(n log log n)-bit encoding such that later, given a pattern P[1..m] with m >= log^c n, we can return the number of order-preserving occurrences of P in S in O(m) time. Within the same time bound we can also return the starting position of some order-preserving match for P in S (if such a match exists). We prove that our space bound is within a constant factor of optimal if log(sigma) = Omega(log log n); our query time is optimal if log(sigma) = Omega(log n). Our space bound contrasts with the Omega(n log n) bits needed in the worst case to store S itself, an index for order-preserving pattern matching with no restrictions on the pattern length, or an index for standard pattern matching even with restrictions on the pattern length. Moreover, we can build our encoding knowing only how each character compares to O(log^c n) neighbouring characters. Travis Gagie, Giovanni Manzini, Rossano Venturini |
ESA | 2 |
| 2017 | Lightweight BWT and LCP Merging via the Gap Algorithm
Lavinia Egidi, Giovanni Manzini |
SPIRE | 2 |
| 2017 | Wheeler graphs: A framework for BWT-based data structuresabstractThe famous Burrows–Wheeler Transform (BWT) was originally defined for a single string but variations have been developed for sets of strings, labeled trees, de Bruijn graphs, etc. In this paper we propose a framework that includes many of these variations and that we hope will simplify the search for more. We first define Wheeler graphs and show they have a property we call path coherence. We show that if the state diagram of a finite-state automaton is a Wheeler graph then, by its path coherence, we can order the nodes such that, for any string, the nodes reachable from the initial state or states by processing that string are consecutive. This means that even if the automaton is non-deterministic, we can still store it compactly and process strings with it quickly. We then rederive several variations of the BWT by designing straightforward finite-state automata for the relevant problems and showing that their state diagrams are Wheeler graphs. Travis Gagie, Giovanni Manzini, Jouni Sirén |
Theor. Comput. Sci. | 2 |
| 2016 | Efficient and Compact Representations of Some Non-canonical Prefix-Free Codes
Antonio Fariña, Travis Gagie, Giovanni Manzini, Gonzalo Navarro 0001, Alberto Ordóñez Pereira |
SPIRE | 3 |
| 2016 | XBWT Tricks
Giovanni Manzini |
SPIRE | 1 |
| 2015 | Relative Select
Christina Boucher 0001, Alexander Bowe, Travis Gagie, Giovanni Manzini, Jouni Sirén |
SPIRE | 4 |
| 2015 | Longest Common Prefix with Mismatches
Giovanni Manzini |
SPIRE | 1 |
| 2014 | Relative FM-Indexes
Djamal Belazzougui, Travis Gagie, Simon Gog, Giovanni Manzini, Jouni Sirén |
SPIRE | 4 |
| 2014 | Spaced Seed Design Using Perfect RulersabstractA widely used class of approximate pattern matching algorithms work in two stages, the first being a filtering stage that uses spaced seeds to quickly discards regions where a match is not likely to occur. The design of effective spaced seeds is known to be a hard problem. In this setting, we propose a family of lossless spaced seeds for matching with up to two errors based on mathematical objects known as perfect rulers. We analyze these seeds with respect to the tradeoff they offer between seed weight and the minimum length of the pattern to be matched. We identify a specific property of rulers, namely their skewness, which is closely related to the minimum pattern length of the derived seeds. In this context, we study in depth the specific case of Wichmann rulers and investigate the generalization of our approach to the larger class of unrestricted rulers. Although our analysis is mainly of theoretical interest, we show that for pattern lengths of practical relevance our seeds have a larger weight, hence a better filtration efficiency, than the ones known in the literature. Lavinia Egidi, Giovanni Manzini |
Fundam. Informaticae | 2 |
| 2014 | Design and analysis of periodic multiple seeds
Lavinia Egidi, Giovanni Manzini |
Theor. Comput. Sci. | 2 |
| 2013 | Better spaced seeds using Quadratic Residues
Lavinia Egidi, Giovanni Manzini |
J. Comput. Syst. Sci. | 2 |
| 2013 | Foreword
Raffaele Giancarlo, Giovanni Manzini |
Theor. Comput. Sci. | 2 |
| 2012 | Lightweight Data Indexing and Compression in External Memory
Paolo Ferragina, Travis Gagie, Giovanni Manzini |
Algorithmica | 3 |
| 2011 | Spaced Seeds Design Using Perfect Rulers
Lavinia Egidi, Giovanni Manzini |
SPIRE | 2 |
| 2010 | Lightweight Data Indexing and Compression in External Memory
Paolo Ferragina, Travis Gagie, Giovanni Manzini |
LATIN | 3 |
| 2010 | On compressing the textual webabstractNowadays we know how to effectively compress most basic components of any modern search engine, such as, the graphs arising from the Web structure and/or its usage, the posting lists, and the dictionary of terms. But we are not aware of any study which has deeply addressed the issue of compressing the raw Web pages. Many Web applications use simple compression algorithms--- e.g. gzip, or word-based Move-to-Front or Huffman coders-and conclude that, even compressed, raw data take more space than Inverted Lists. Paolo Ferragina, Giovanni Manzini |
WSDM | 2 |
| 2010 | Move-to-Front, Distance Coding, and Inversion Frequencies revisited
Travis Gagie, Giovanni Manzini |
Theor. Comput. Sci. | 2 |
| 2009 | Permuted Longest-Common-Prefix Array
Juha Kärkkäinen, Giovanni Manzini, Simon J. Puglisi |
CPM | 2 |
| 2009 | Succinct Representations of Trees
Giovanni Manzini |
IWOCA | 1 |
| 2009 | The myriad virtues of Wavelet Trees
Paolo Ferragina, Raffaele Giancarlo, Giovanni Manzini |
Inf. Comput. | 3 |
| 2009 | Compressing and indexing labeled trees, with applicationsabstractConsider an ordered, static tree T where each node has a label from alphabet Σ. Tree T may be of arbitrary degree and shape. Our goal is designing a compressed storage scheme of T that supports basic navigational operations among the immediate neighbors of a node (i.e. parent, i th child, or any child with some label,…) as well as more sophisticated path -based search operations over its labeled structure. We present a novel approach to this problem by designing what we call the XBW-transform of the tree in the spirit of the well-known Burrows-Wheeler transform for strings [1994]. The XBW-transform uses path-sorting to linearize the labeled tree T into two coordinated arrays, one capturing the structure and the other the labels. For the first time, by using the properties of the XBW-transform, our compressed indexes go beyond the information-theoretic lower bound, and support navigational and path-search operations over labeled trees within (near-)optimal time bounds and entropy-bounded space. Our XBW-transform is simple and likely to spur new results in the theory of tree compression and indexing, as well as interesting application contexts. As an example, we use the XBW-transform to design and implement a compressed index for XML documents whose compression ratio is significantly better than the one achievable by state-of-the-art tools, and its query time performance is order of magnitudes faster. Paolo Ferragina, Fabrizio Luccio, Giovanni Manzini, S. Muthukrishnan 0001 |
J. ACM | 3 |
| 2007 | Move-to-Front, Distance Coding, and Inversion Frequencies Revisited
Travis Gagie, Giovanni Manzini |
CPM | 2 |
| 2007 | Space-Conscious Compression
Travis Gagie, Giovanni Manzini |
MFCS | 2 |
| 2007 | Compression-based classification of biological sequences and structures via the Universal Similarity Metric: experimental assessmentabstractBACKGROUND: Similarity of sequences is a key mathematical notion for Classification and Phylogenetic studies in Biology. It is currently primarily handled using alignments. However, the alignment methods seem inadequate for post-genomic studies since they do not scale well with data set size and they seem to be confined only to genomic and proteomic sequences. Therefore, alignment-free similarity measures are actively pursued. Among those, USM (Universal Similarity Metric) has gained prominence. It is based on the deep theory of Kolmogorov Complexity and universality is its most novel striking feature. Since it can only be approximated via data compression, USM is a methodology rather than a formula quantifying the similarity of two strings. Three approximations of USM are available, namely UCD (Universal Compression Dissimilarity), NCD (Normalized Compression Dissimilarity) and CD (Compression Dissimilarity). Their applicability and robustness is tested on various data sets yielding a first massive quantitative estimate that the USM methodology and its approximations are of value. Despite the rich theory developed around USM, its experimental assessment has limitations: only a few data compressors have been tested in conjunction with USM and mostly at a qualitative level, no comparison among UCD, NCD and CD is available and no comparison of USM with existing methods, both based on alignments and not, seems to be available. RESULTS: We experimentally test the USM methodology by using 25 compressors, all three of its known approximations and six data sets of relevance to Molecular Biology. This offers the first systematic and quantitative experimental assessment of this methodology, that naturally complements the many theoretical and the preliminary experimental results available. Moreover, we compare the USM methodology both with methods based on alignments and not. We may group our experiments into two sets. The first one, performed via ROC (Receiver Operating Curve) analysis, aims at assessing the intrinsic ability of the methodology to discriminate and classify biological sequences and structures. A second set of experiments aims at assessing how well two commonly available classification algorithms, UPGMA (Unweighted Pair Group Method with Arithmetic Mean) and NJ (Neighbor Joining), can use the methodology to perform their task, their performance being evaluated against gold standards and with the use of well known statistical indexes, i.e., the F-measure and the partition distance. Based on the experiments, several conclusions can be drawn and, from them, novel valuable guidelines for the use of USM on biological data. The main ones are reported next. CONCLUSION: UCD and NCD are indistinguishable, i.e., they yield nearly the same values of the statistical indexes we have used, accross experiments and data sets, while CD is almost always worse than both. UPGMA seems to yield better classification results with respect to NJ, i.e., better values of the statistical indexes (10% difference or above), on a substantial fraction of experiments, compressors and USM approximation choices. The compression program PPMd, based on PPM (Prediction by Partial Matching), for generic data and Gencompress for DNA, are the best performers among the compression algorithms we have used, although the difference in performance, as measured by statistical indexes, between them and the other algorithms depends critically on the data set and may not be as large as expected. PPMd used with UCD or NCD and UPGMA, on sequence data is very close, although worse, in performance with the alignment methods (less than 2% difference on the F-measure). Yet, it scales well with data set size and it can work on data other than sequences. In summary, our quantitative analysis naturally complements the rich theory behind USM and supports the conclusion that the methodology is worth using because of its robustness, flexibility, scalability, and competitiveness with existing techniques. In particular, the methodology applies to all biological data in textual format. The software and data sets are available under the GNU GPL at the supplementary material web page. Paolo Ferragina, Raffaele Giancarlo, Valentina Greco, Giovanni Manzini, Gabriel Valiente |
BMC Bioinform. | 4 |
| 2007 | Compressed representations of sequences and full-text indexesabstractGiven a sequence S = s 1 s 2 … s n of integers smaller than r = O (polylog( n )), we show how S can be represented using nH 0 ( S ) + o ( n ) bits, so that we can know any s q , as well as answer rank and select queries on S , in constant time. H 0 ( S ) is the zero-order empirical entropy of S and nH 0 ( S ) provides an information-theoretic lower bound to the bit storage of any sequence S via a fixed encoding of its symbols. This extends previous results on binary sequences, and improves previous results on general sequences where those queries are answered in O (log r ) time. For larger r , we can still represent S in nH 0 ( S ) + o ( n log r ) bits and answer queries in O (log r /log log n ) time. Another contribution of this article is to show how to combine our compressed representation of integer sequences with a compression boosting technique to design compressed full-text indexes that scale well with the size of the input alphabet Σ. Specifically, we design a variant of the FM-index that indexes a string T [1, n ] within nH k ( T ) + o ( n ) bits of storage, where H k ( T ) is the k th-order empirical entropy of T . This space bound holds simultaneously for all k ≤ α log |Σ| n , constant 0 < α < 1, and |Σ| = O (polylog( n )). This index counts the occurrences of an arbitrary pattern P [1, p ] as a substring of T in O ( p ) time; it locates each pattern occurrence in O (log 1+ε n ) time for any constant 0 < ε < 1; and reports a text substring of length ℓ in O (ℓ + log 1+ε n ) time. Compared to all previous works, our index is the first that removes the alphabet-size dependance from all query times, in particular, counting time is linear in the pattern length. Still, our index uses essentially the same space of the k th-order entropy of the text T , which is the best space obtained in previous work. We can also handle larger alphabets of size |Σ| = O ( n β ), for any 0 < β < 1, by paying o ( n log|Σ|) extra space and multiplying all query times by O (log |Σ|/log log n ). Paolo Ferragina, Giovanni Manzini, Veli Mäkinen, Gonzalo Navarro 0001 |
ACM Trans. Algorithms | 2 |
| 2007 | Foreword
Paolo Ferragina, Giovanni Manzini, S. Muthukrishnan 0001 |
Theor. Comput. Sci. | 2 |
| 2006 | The Engineering of a Compression Boosting Library: Theory vs Practice in BWT Compression
Paolo Ferragina, Raffaele Giancarlo, Giovanni Manzini |
ESA | 3 |
| 2006 | The Myriad Virtues of Wavelet Trees
Paolo Ferragina, Raffaele Giancarlo, Giovanni Manzini |
ICALP (1) | 3 |
| 2006 | Compressing and searching XML data via two zipsabstractXML is fast becoming the standard format to store, exchange and publish over the web, and is getting embedded in applications. Two challenges in handling XML are its size (the XML representation of a document is significantly larger than its native state) and the complexity of its search (XML search involves path and content searches on labeled tree structures). We address the basic problems of compression, navigation and searching of XML documents. In particular, we adopt recently proposed theoretical algorithms [11] for succinct tree representations to design and implement a compressed index for XML, called XBZIPiNDEX, in which the XML document is maintained in a highly compressed format, and both navigation and searching can be done uncompressing only a tiny fraction of the data. This solution relies on compressing and indexing two arrays derived from the XML data. With detailed experiments we compare this with other compressed XML indexing and searching engines to show that XBZIPiNDEX has compression ratio up to 35% better than the ones achievable by those other tools, and its time performance on some path and content search operations is order of magnitudes faster: few milliseconds over hundreds of MBs of XML files versus tens of seconds, on standard XML data sources. Paolo Ferragina, Fabrizio Luccio, Giovanni Manzini, S. Muthukrishnan 0001 |
WWW | 3 |
| 2005 | Structuring labeled trees for optimal succinctness, and beyondabstractConsider an ordered, static tree /spl Tscr/ on t nodes where each node has a label from alphabet set /spl Sigma/. Tree /spl Tscr/ may be of arbitrary degree and of arbitrary shape. Say, we wish to support basic navigational operations such as find the parent of node u, the ith child of u, and any child of it with label /spl alpha/. In a seminal work over fifteen years ago, Jacobson (1989) observed that pointer-based tree representations are wasteful in space and introduced the notion of succinct data structures. He studied the special case of unlabeled trees and presented a succinct data structure of 2t + o(t) bits supporting navigational operations in O(1) time. The space used is asymptotically optimal with the information-theoretic lower bound averaged over all trees. This led to a slew of results on succinct data structures for arrays, trees, strings and multisets. Still, for the fundamental problem of structuring labeled trees succinctly, few results, if any, exist even though labeled trees arise frequently in practice, e.g. in the data as in markup text (XML) or in augmented data structures. We present a novel approach to the problem of succinct manipulation of labeled trees by designing what we call the xbw transform of the tree, in the spirit of the well-known Burrows-Wheeler transform for strings. The xbw transform uses path-sorting and grouping to linearize the labeled tree /spl Tscr/ into two coordinated arrays, one capturing the structure and the other the labels. Using the properties of the xbw transform, we (i) derive the first-known (near-)optimal results for succinct representation of labeled trees with O(1) time for navigation operations, (ii) optimally support the powerful subpath search operation for the first time, and (iii) introduce a notion of tree entropy and present linear time algorithms for compressing a given labeled tree up to its entropy beyond the information-theoretic lower bound averaged over all tree inputs. Our xbw transform is simple and likely to spur new results in the theory of tree compression and indexing, and may have some practical impact in XML data processing. Paolo Ferragina, Fabrizio Luccio, Giovanni Manzini, S. Muthukrishnan 0001 |
FOCS | 3 |
| 2005 | Boosting textual compression in optimal linear timeabstractWe provide a general boosting technique for Textual Data Compression. Qualitatively, it takes a good compression algorithm and turns it into an algorithm with a better compression performance guarantee. It displays the following remarkable properties: (a) it can turn any memoryless compressor into a compression algorithm that uses the “best possible” contexts; (b) it is very simple and optimal in terms of time; and (c) it admits a decompression algorithm again optimal in time. To the best of our knowledge, this is the first boosting technique displaying these properties.Technically, our boosting technique builds upon three main ingredients: the Burrows--Wheeler Transform, the Suffix Tree data structure, and a greedy algorithm to process them. Specifically, we show that there exists a proper partition of the Burrows--Wheeler Transform of a string s that shows a deep combinatorial relation with the k th order entropy of s . That partition can be identified via a greedy processing of the suffix tree of s with the aim of minimizing a proper objective function over its nodes. The final compressed string is then obtained by compressing individually each substring of the partition by means of the base compressor we wish to boost.Our boosting technique is inherently combinatorial because it does not need to assume any prior probabilistic model about the source emitting s , and it does not deploy any training, parameter estimation and learning. Various corollaries are derived from this main achievement. Among the others, we show analytically that using our booster, we get better compression algorithms than some of the best existing ones, that is, LZ77, LZ78, PPMC and the ones derived from the Burrows--Wheeler Transform. Further, we settle analytically some long-standing open problems about the algorithmic structure and the performance of BWT-based compressors. Namely, we provide the first family of BWT algorithms that do not use Move-To-Front or Symbol Ranking as a part of the compression process. Paolo Ferragina, Raffaele Giancarlo, Giovanni Manzini, Marinella Sciortino |
J. ACM | 3 |
| 2005 | Indexing compressed textabstractWe design two compressed data structures for the full-text indexing problem that support efficient substring searches using roughly the space required for storing the text in compressed form.Our first compressed data structure retrieves the occ occurrences of a pattern P [1, p ] within a text T [1, n ] in O ( p + occ log 1+ε n ) time for any chosen ε, 0<ε<1. This data structure uses at most 5 n H k ( T ) + o ( n ) bits of storage, where H k ( T ) is the k th order empirical entropy of T . The space usage is Θ( n ) bits in the worst case and o ( n ) bits for compressible texts. This data structure exploits the relationship between suffix arrays and the Burrows--Wheeler Transform, and can be regarded as a compressed suffix array .Our second compressed data structure achieves O ( p + occ ) query time using O ( n H k ( T )log ε n ) + o ( n ) bits of storage for any chosen ε, 0<ε<1. Therefore, it provides optimal output-sensitive query time using o ( n log n ) bits in the worst case. This second data structure builds upon the first one and exploits the interplay between two compressors: the Burrows--Wheeler Transform and the LZ78 algorithm. Paolo Ferragina, Giovanni Manzini |
J. ACM | 2 |
| 2004 | Compression boosting in optimal linear time using the Burrows-Wheeler Transform
Paolo Ferragina, Giovanni Manzini |
SODA | 2 |
| 2004 | An Alphabet-Friendly FM-Index
Paolo Ferragina, Giovanni Manzini, Veli Mäkinen, Gonzalo Navarro 0001 |
SPIRE | 2 |
| 2004 | Engineering a Lightweight Suffix Array Construction AlgorithmabstractIn this paper we describe a new algorithm for building the suffix array of a string. This task is equivalent to the problem of lexicographically sorting all the suffixes of the input string. Our algorithm is based on a new approach called deep–shallow sorting: we use a “shallow” sorter for the suffixes with a short common prefix, and a “deep” sorter for the suffixes with a long common prefix. All the known algorithms for building the suffix array either require a large amount of space or are inefficient when the input string contains many repeated substrings. Our algorithm has been designed to overcome this dichotomy. Our algorithm is “lightweight” in the sense that it uses very small space in addition to the space required by the suffix array itself. At the same time our algorithm is fast even when the input contains many repetitions: this has been shown by extensive experiments with inputs of size up to 110 Mb. The source code of our algorithm, as well as a C library providing a simple API, is available under the GNU GPL. Giovanni Manzini, Paolo Ferragina |
Algorithmica | 1 |
| 2004 | A simple and fast DNA compressorabstractAbstract In this paper we consider the problem of DNA compression. It is well known that one of the main features of DNA sequences is that they contain substrings which are duplicated except for a few random mutations. For this reason most DNA compressors work by searching and encoding approximate repeats. We depart from this strategy by searching and encoding only exact repeats. However, we use an encoding designed to take advantage of the possible presence of approximate repeats. Our approach leads to an algorithm which is an order of magnitude faster than any other algorithm and achieves a compression ratio very close to the best DNA compressors. Another important feature of our algorithm is its small space occupancy which makes it possible to compress sequences hundreds of megabytes long, well beyond the range of any previous DNA compressor. Copyright © 2004 John Wiley & Sons, Ltd. Giovanni Manzini, Marcella Rastero |
Softw. Pract. Exp. | 1 |
| 2003 | On computing the entropy of cellular automata
Michele d'Amico, Giovanni Manzini, Luciano Margara |
Theor. Comput. Sci. | 2 |
| 2002 | Engineering a Lightweight Suffix Array Construction Algorithm
Giovanni Manzini, Paolo Ferragina |
ESA | 1 |
| 2001 | An experimental study of an opportunistic index
Paolo Ferragina, Giovanni Manzini |
SODA | 2 |
| 2001 | An experimental study of a compressed index
Paolo Ferragina, Giovanni Manzini |
Inf. Sci. | 2 |
| 2001 | An analysis of the Burrows-Wheeler transformabstractThe Burrows—Wheeler Transform (also known as Block-Sorting) is at the base of compression algorithms that are the state of the art in lossless data compression. In this paper, we analyze two algorithms that use this technique. The first one is the original algorithm described by Burrows and Wheeler, which, despite its simplicity outperforms the Gzip compressor. The second one uses an additional run-length encoding step to improve compression. We prove that the compression ratio of both algorithms can be bounded in terms of the k th order empirical entropy of the input string for any k ≥ 0. We make no assumptions on the input and we obtain bounds which hold in the worst case that is for every possible input string. All previous results for Block-Sorting algorithms were concerned with the average compression ratio and have been established assuming that the input comes from a finite-order Markov source. Giovanni Manzini |
J. ACM | 1 |
| 2000 | Opportunistic Data Structures with ApplicationsabstractWe address the issue of compressing and indexing data. We devise a data structure whose space occupancy is a function of the entropy of the underlying data set. We call the data structure opportunistic since its space occupancy is decreased when the input is compressible and this space reduction is achieved at no significant slowdown in the query performance. More precisely, its space occupancy is optimal in an information-content sense because text T[1,u] is stored using O(H/sub k/(T))+o(1) bits per input symbol in the worst case, where H/sub k/(T) is the kth order empirical entropy of T (the bound holds for any fixed k). Given an arbitrary string P[1,p], the opportunistic data structure allows to search for the occurrences of P in T in O(p+occlog/sup /spl epsiv//u) time (for any fixed /spl epsiv/>0). If data are uncompressible we achieve the best space bound currently known (Grossi and Vitter, 2000); on compressible data our solution improves the succinct suffix array of (Grossi and Vitter, 2000) and the classical suffix tree and suffix array data structures either in space or in query time or both. We also study our opportunistic data structure in a dynamic setting and devise a variant achieving effective search and update time bounds. Finally, we show how to plug our opportunistic data structure into the Glimpse tool (Manber and Wu, 1994). The result is an indexing tool which achieves sublinear space and sublinear query time complexity. Paolo Ferragina, Giovanni Manzini |
FOCS | 2 |
| 2000 | Ergodicity, transitivity, and regularity for linear cellular automata over Zm
Gianpiero Cattaneo, Enrico Formenti, Giovanni Manzini, Luciano Margara |
Theor. Comput. Sci. | 3 |
| 1999 | Efficient Algorithms foe On-Line Symbol Ranking Compression
Giovanni Manzini |
ESA | 1 |
| 1999 | Invited Lecture: The Burrows-Wheeler Transform: Theory and Practice
Giovanni Manzini |
MFCS | 1 |
| 1999 | An Analysis of the Burrows-Wheeler Transform
Giovanni Manzini |
SODA | 1 |
| 1999 | Attractors of Linear Cellular Automata
Giovanni Manzini, Luciano Margara |
J. Comput. Syst. Sci. | 1 |
| 1999 | Compression of Low Entropy Strings with Lempel-Ziv AlgorithmsabstractWe compare the compression ratio of the Lempel--Ziv algorithms with the empirical entropy of the input string. This approach makes it possible to analyze the performance of these algorithms without any assumption on the input and to obtain worst case results. We show that in this setting the standard definition of optimal compression algorithm is not satisfactory. In fact, although Lempel--Ziv algorithms are optimal according to the standard definition, there exist families of low entropy strings which are not compressed optimally. More precisely, the compression ratio achieved by LZ78 (resp., LZ77)can be much higher than the zeroth order entropy H 0 (resp., the first order entropy H 1 ). For this reason we introduce the concept of $\lambda$-optimal algorithm. An algorithm is $\lambda$-optimal with respect to H k if, loosely speaking, its compression ratio is asymptotically bounded by $\lambda$ times the kth order empirical entropy H k . We prove that LZ78 cannot be $\lambda$-optimal with respect to any H k with $k\geq 0$. Then, we describe a new algorithm which combines LZ78 with run length encoding (RLE) and is 3-optimal with respect to H 0 . Finally, we prove that LZ77 is 8-optimal with respect to H 0 , and that it cannot be $\lambda$-optimal with respect to H k for any $k\geq 1$. S. Rao Kosaraju, Giovanni Manzini |
SIAM J. Comput. | 2 |
| 1999 | Parallel Complexity of Numerically Accurate Linear System SolversabstractWe prove a number of negative results about practical (i.e., work efficient and numerically accurate) algorithms for computing the main matrix factorizations. In particular, we prove that the popular Householder and Givens methods for computing the QR decomposition are P-complete, and hence presumably inherently sequential, under both real and floating point number models. We also prove that Gaussian elimination (GE) with a weak form of pivoting, which aims only at making the resulting algorithm nondegenerate, is likely to be inherently sequential as well. Finally, we prove that GE with partial pivoting is P-complete over GF(2) or when restricted to symmetric positive definite matrices, for which it is known that even standard GE (no pivoting) does not fail. Altogether, the results of this paper give further formal support to the widespread belief that there is a tradeoff between parallelism and accuracy in numerical algorithms. Mauro Leoncini, Giovanni Manzini, Luciano Margara |
SIAM J. Comput. | 2 |
| 1999 | A Complete and Efficiently Computable Topological Classification of D-dimensional Linear Cellular Automata over Zm
Giovanni Manzini, Luciano Margara |
Theor. Comput. Sci. | 1 |
| 1998 | Inversion of Circulant Matrices over Zm
Dario Bini, Gianna M. Del Corso, Giovanni Manzini, Luciano Margara |
ICALP | 3 |
| 1998 | On Computing the Entropy of Cellular Automata
Michele d'Amico, Giovanni Manzini, Luciano Margara |
ICALP | 2 |
| 1998 | Characterization of Sensitive Linear Cellular Automata with Respect to the Counting Distance
Giovanni Manzini |
MFCS | 1 |
| 1998 | Attractors of D-dimensional Linear Cellular Automata
Giovanni Manzini, Luciano Margara |
STACS | 1 |
| 1998 | Lyapunov Exponents versus Expansivity and Sensitivity in Cellular Automata
Michele Finelli, Giovanni Manzini, Luciano Margara |
J. Complex. | 2 |
| 1998 | Invertible Linear Cellular Automata over Zm: Algorithmic and Dynamical Aspects
Giovanni Manzini, Luciano Margara |
J. Comput. Syst. Sci. | 1 |
| 1997 | A Complete and Efficiently Computable Topological Classification of D-dimensional Linear Cellular Automata over Zm
Giovanni Manzini, Luciano Margara |
ICALP | 1 |
| 1997 | Invertible Linear Cellular Automata over zm: Algorithmic and Dynamical Aspects
Giovanni Manzini, Luciano Margara |
MFCS | 1 |
| 1997 | On the Parallel Complexity of Matrix Factorization Algorithmsabstractll;eprove allulllberof negaLive resultsahout practicaf (i.e., numerically accurate) algorithms for certain matrix factorization.In particular.we prow that the popular (;iwns' method for computing the QR decomposition is inherentl} sequential over the realistic model of floating point arithmetic.We also prove a number of additional results concerning Gaussian Elimination for computing the LIT decon]positiou..iltogether, the results of this paper sllpport the widespread belief that there is a tradeotlbetween palallclism and accuracy in numerical algorithms. 1 Introduction Matrix factorization algorithms form the hackhone of stateof-the-ar[ numerical libraries and packages, such as L.\-PACK and hfATL.%f3[9.1~].indeed, factoring ii matrix is almost always the first.step of mall: scient,ifir collll~ut.ations,ancl usually the one which places the heaviest demand in terms of computing resolwces.Among the rompl]t.ationsthat involve matrix factoriza( ions of sonle sort ~ve I.ccall linear system solution, eigenva]ue and least scll]ares alJproximirtion, and rank revealing 11.ansforlllikti{jlls. in Iicfv of this, some authors have invest j~.+t.e[]the parallel conlldcxity of the most popular matrix f&torizat.ion>.]M]IIVI) tlw (} ')L[" and QR(II) clecompositions (see .Appell~lix .1 for {ldinit,ions and simple properties)..4list of positive known resIIlt.sfol- Io\vs.q LL" clecolnposit,ion is in arithmetic ,1"('.}vlw]lef.erit exists, i.e., pro}"ided that tlw leaditl~Iwil]ripal minors "This Ivork haS lb y Esprit P!',)J@ WIT? (;l~Pl'-(""Oht,and by illurst 4077 and G1l'Zf{[ncls tn,,>art,l,,e,, ra<-ll [Ilsortllatlccl.IJl],,!rrs]t{i di Ptsn, ('~,rsu ltal[a 10, JGI05 pl~a, Italy, ~l)d I?,lc.cNFL \;ia S Nlaria .tli,.ZG12G }>lsO, ]ttl)y 13ma11lemlcin]&l UIIII>I II 'D,pamm,c.nrod, SCIK113: c lcC1lOb~l?,%\,a!1Z;3 ??, (l!>),,,.I'sI(;3 <{1 'IcmnO.\"Ia(.'avoIIr&,1511) 11.iiessailclr]a, [i+' an,{ lNt('-('Nrt \'la s Llal'la.l(i,5612(; Plsa, Italy 1~,111 all IIlal)z llllfl'lllllnl 1! , 'D1part.imento ,:11 Sclrllz.(lell'I 11ror111a7,1c,11,.(Jilivsl.11:1,11 Bologna, Alum A1ltKI 'Zallll)Olll i. .11)1?7 ttolcJ~lla It;ily 1<111311 )Ijargara Mauro Leoncini, Giovanni Manzini, Luciano Margara |
SPAA | 2 |
| 1997 | On Ergodic Linear Cellular Automata over Zm
Gianpiero Cattaneo, Enrico Formenti, Giovanni Manzini, Luciano Margara |
STACS | 3 |
| 1997 | On the Randomized Error of Polynomial Methods for Eigenvector and Eigenvalue Estimates
Gianna M. Del Corso, Giovanni Manzini |
J. Complex. | 2 |
| 1996 | Parallel Complexity of Householder QR Factorization
Mauro Leoncini, Giovanni Manzini, Luciano Margara |
ESA | 2 |
| 1996 | Perturbation: An Efficient Technique for the Solution of Very Large Instances of the Euclidean TSPabstractIn this paper we introduce a technique for developing efficient iterated local search procedures and we apply it to solve very large instances of the Euclidean Traveling Salesman Problem (TSP). This technique, which we call perturbation, uses global information on TSP instances to speed-up the computation and to improve the quality of the tours found by heuristic methods. The main idea is to escape from local optima by introducing perturbations in the problem instance rather than in the solution. The performance of our algorithms has been tested and compared with known methods. To this end, we have executed a number of experiments both on available benchmarks, for which the optimal tour length is known, and on randomly generated instances, for which the comparison is done with the Held-Karp lower bound. The experimental results, performed on up to 100,000 cities, show that our algorithms outperform the known methods for iterating local search for very large instances. Bruno Codenotti, Giovanni Manzini, Luciano Margara, Giovanni Resta |
INFORMS J. Comput. | 2 |
| 1996 | On the Ordering of Sparse Linear Systems
Giovanni Manzini |
Theor. Comput. Sci. | 1 |
| 1995 | BIDA: An Improved Perimeter Search Algorithm
Giovanni Manzini |
Artif. Intell. | 1 |
| 1995 | Algebraic Techniques in Communication Complexity
Bruno Codenotti, Giovanni Manzini, Luciano Margara |
Inf. Process. Lett. | 2 |
| 1994 | Sparse Matrix Vector Multiplication on Distributed Architectures: Lower Bounds and Average Complexity Results
Giovanni Manzini |
Inf. Process. Lett. | 1 |
| 1994 | sparse Matrix Computations on the Hypercube and Related Networks
Giovanni Manzini |
J. Parallel Distributed Comput. | 1 |
| 1993 | Global Strategies for Augmenting the Efficiency of TSP Heuristics
Bruno Codenotti, Giovanni Manzini, Luciano Margara, Giovanni Resta |
WADS | 2 |
| 1991 | Radix Sort on the Hypercube
Giovanni Manzini |
Inf. Process. Lett. | 1 |
| 1991 | Searching graphs using mixed strategiesabstractIn this paper we describe a collection of heuristic search algorithms which use mixed ‘best-first’ and ‘depth-first’ strategies. These algorithms are designed to match the actual features of modern computers that have a large amount of memory but not enough to execute a pure best-first search. Our algorithms start executing a best-first search and when they run out of memory switch to an ‘intelligent’ depth-first search, where the information gathered during the previous phase is utilized to speed up the search process. Giovanni Manzini |
J. Exp. Theor. Artif. Intell. | 1 |