Demo Data from SIGIR 2026 / reviewers in the wild / expert
Roberto Grossi
dblp:g/RobertoGrossi
· DBLP profile ↗
150ranked-venue papers
33as first author
27since 2021 · last 2026
0000-0002-7985-4222ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 104 · 26 first-author · 13 since 2021Databases, data management, data science and information retrieval · 30 · 6 first-author · 11 since 2021Graphics, computer vision, multimedia, augmented reality and games · 10 · 2 first-author · 1 since 2021Applied, interdisciplinary, general and emerging computing · 9 · 2 first-author · 3 since 2021Artificial intelligence and machine learning · 7 · 1 since 2021Systems, architecture and hardware · 2 · 1 first-authorHuman-computer interaction and ubiquitous computing · 1
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
41 papers |
Algorithms and data structures · 39% Graph algorithms and graph theory · 30% Computational complexity · 25% | |
| Databases, data mining, and information retrieval
12 papers |
Data mining · 78% Indexing and storage engines · 17% Information retrieval · 3% | |
| Network and information security
2 papers |
Privacy and data protection · 100% |
Topics — the 30 heaviest of 92, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Algorithms and data structures › sequence algorithms › string algorithms
string matching |
1.2 | 9 | 2023 | On the Complexity of String Matching for Graphs · ACM Trans. Algorithms 2023 On the Complexity of String Matching for Graphs · ICALP 2019 Compressed Suffix Arrays and Suffix Trees with Applications to Text Indexing and String Matching · SIAM J. Comput. 2005 |
Graph algorithms and graph theory
graph algorithms |
1.2 | 3 | 2022 | Proximity Search for Maximal Subgraph Enumeration · SIAM J. Comput. 2022 D2K: Scalable Community Detection in Massive Networks via Small-Diameter k-Plexes · KDD 2018 New Bounds for Approximating Extremal Distances in Undirected Graphs · SODA 2016 |
Indexing and storage engines
string indexing |
1.1 | 3 | 2025 | Indexing Strings with Utilities · ICDE 2025 The wavelet trie: maintaining an indexed sequence of strings in compressed space · PODS 2012 On searching compressed string collections cache-obliviously · PODS 2008 |
Data mining › pattern mining
frequent pattern mining |
1.1 | 2 | 2023 | Hide and Mine in Strings: Hardness, Algorithms, and Experiments · IEEE Trans. Knowl. Data Eng. 2023 Hide and Mine in Strings: Hardness and Algorithms · ICDM 2020 |
Privacy and data protection › anonymization
data sanitization |
1.1 | 2 | 2023 | Hide and Mine in Strings: Hardness, Algorithms, and Experiments · IEEE Trans. Knowl. Data Eng. 2023 Hide and Mine in Strings: Hardness and Algorithms · ICDM 2020 |
Computational complexity › fine-grained complexity
conditional lower bounds |
1.0 | 2 | 2023 | On the Complexity of String Matching for Graphs · ACM Trans. Algorithms 2023 On the Complexity of String Matching for Graphs · ICALP 2019 |
Computational complexity › fine-grained complexity
strong exponential time hypothesis |
1.0 | 2 | 2023 | On the Complexity of String Matching for Graphs · ACM Trans. Algorithms 2023 On the Complexity of String Matching for Graphs · ICALP 2019 |
Data mining › pattern mining › string mining
frequent substring mining |
0.9 | 1 | 2025 | Indexing Strings with Utilities · ICDE 2025 |
Algorithms and data structures › combinatorial algorithms
enumeration algorithms |
0.8 | 2 | 2022 | Proximity Search for Maximal Subgraph Enumeration · SIAM J. Comput. 2022 Sublinear-Space Bounded-Delay Enumeration for Massive Network Analytics: Maximal Cliques · ICALP 2016 |
Data mining › structured data mining
graph mining |
0.7 | 2 | 2018 | D2K: Scalable Community Detection in Massive Networks via Small-Diameter k-Plexes · KDD 2018 Node Similarity with q -Grams for Real-World Labeled Networks · KDD 2018 |
Data mining › pattern mining
sequential pattern mining |
0.7 | 1 | 2023 | Hide and Mine in Strings: Hardness, Algorithms, and Experiments · IEEE Trans. Knowl. Data Eng. 2023 |
Algorithms and data structures › space-efficient algorithms
succinct data structures |
0.7 | 5 | 2017 | Asymptotically Optimal Encodings of Range Data Structures for Selection and Top-k Queries · ACM Trans. Algorithms 2017 Dynamic Compressed Strings with Random Access · ICALP (1) 2013 Optimal Trade-Offs for Succinct String Indexes · ICALP (1) 2010 |
Algorithms and data structures › combinatorial algorithms › enumeration algorithms
maximal subgraph enumeration |
0.6 | 1 | 2022 | Proximity Search for Maximal Subgraph Enumeration · SIAM J. Comput. 2022 |
Graph algorithms and graph theory › graph algorithms
subgraph enumeration |
0.6 | 1 | 2022 | Proximity Search for Maximal Subgraph Enumeration · SIAM J. Comput. 2022 |
Graph algorithms and graph theory › graph theory › graph transformation
graph modification |
0.5 | 1 | 2021 | On Breaking Truss-Based Communities · KDD 2021 |
Graph algorithms and graph theory › dense subgraph discovery
k-truss |
0.5 | 1 | 2021 | On Breaking Truss-Based Communities · KDD 2021 |
Data mining
pattern mining |
0.4 | 1 | 2020 | Hide and Mine in Strings: Hardness and Algorithms · ICDM 2020 |
Graph algorithms and graph theory › graph theory › graph covering
clique cover |
0.4 | 1 | 2020 | Large-scale clique cover of real-world networks · Inf. Comput. 2020 |
Computational complexity
computational hardness |
0.4 | 1 | 2020 | Hide and Mine in Strings: Hardness and Algorithms · ICDM 2020 |
Computational complexity
hardness of approximation |
0.4 | 1 | 2020 | Hide and Mine in Strings: Hardness and Algorithms · ICDM 2020 |
Graph algorithms and graph theory › graph algorithms
graph pattern matching |
0.4 | 1 | 2019 | On the Complexity of String Matching for Graphs · ICALP 2019 |
Algorithms and data structures
dynamic data structures |
0.4 | 3 | 2014 | Managing Unbounded-Length Keys in Comparison-Driven Data Structures with Applications to Online Indexing · SIAM J. Comput. 2014 Dynamic Compressed Strings with Random Access · ICALP (1) 2013 Optimal On-Line Search and Sublinear Time Update in String Matching · FOCS 1995 |
Data mining › structured data mining › graph mining
community detection |
0.3 | 1 | 2018 | D2K: Scalable Community Detection in Massive Networks via Small-Diameter k-Plexes · KDD 2018 |
Data mining › structured data mining › graph mining › dense subgraph mining
k-plex enumeration |
0.3 | 1 | 2018 | D2K: Scalable Community Detection in Massive Networks via Small-Diameter k-Plexes · KDD 2018 |
Data mining › network analysis
labeled network analysis |
0.3 | 1 | 2018 | Node Similarity with q -Grams for Real-World Labeled Networks · KDD 2018 |
Data mining › structured data mining › graph mining › network structure analysis
node similarity |
0.3 | 1 | 2018 | Node Similarity with q -Grams for Real-World Labeled Networks · KDD 2018 |
Coding theory
source coding |
0.3 | 5 | 2017 | Optimal Trade-Offs for Succinct String Indexes · ICALP (1) 2010 Asymptotically Optimal Encodings of Range Data Structures for Selection and Top-k Queries · ACM Trans. Algorithms 2017 When indexing equals compression: experiments with compressing suffix arrays and applications · SODA 2004 |
Computational geometry
range searching |
0.3 | 1 | 2017 | Asymptotically Optimal Encodings of Range Data Structures for Selection and Top-k Queries · ACM Trans. Algorithms 2017 |
Algorithms and data structures › space-efficient algorithms › succinct data structures
space-efficient data structures |
0.3 | 1 | 2025 | Indexing Strings with Utilities · ICDE 2025 |
Graph algorithms and graph theory
dominating set |
0.2 | 1 | 2016 | New Bounds for Approximating Extremal Distances in Undirected Graphs · SODA 2016 |
Methods — techniques the papers use, named apart from their topics
integer linear programming · 2.2linear-space data structure · 1.7frequency estimation · 1.7hardness analysis · 1.3greedy heuristic · 1.3truss decomposition · 1.0heuristic · 1.0exponential-time algorithm · 1.0reduction · 0.7fine-grained complexity · 0.7reverse search · 0.6proximity search · 0.6canonical reconstruction · 0.6probabilistic counting · 0.3parallel and distributed implementation · 0.3graph degeneracy · 0.3color coding · 0.3space-efficient techniques · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Finding the cyclic covers of a stringabstractWe introduce the concept of cyclic covers, which generalizes the classical notion of covers in strings. Given any string X , a factor W of X is called a cyclic cover if each position of X belongs to an occurrence of a cyclic shift of W in X . Two cyclic covers are distinct if one is not a cyclic shift of the other. The cyclic covers problem asks for all distinct cyclic covers of an input string X . We present an algorithm that solves the cyclic covers problem in O ( n log n ) time, where n is the length of X . It is based on finding a well-structured set of standard occurrences of a constant number of factors of a cyclic cover candidate W , computing the regions of X covered by cyclic shifts of W , extending those factors, and taking the union of the results. • We introduce the cyclic cover problem. • Two cyclic covers are distinct if one is not a cyclic shift of the other. • The cyclic cover problem requires finding all distinct cyclic covers of X . • We show that for a string of length n, the cyclic cover problem can be solved in O ( n log n ) time. Roberto Grossi, Costas S. Iliopoulos, Jesper Jansson 0001, Zara Lim, Wing-Kin Sung, Wiktor Zuba |
Inf. Process. Lett. | 1 |
| 2026 | On Strings Having the Same Length-k SubstringsabstractAbstract Let $$\varvec{\textsf {Substr}}_{\varvec{k}}\varvec{(X)}$$ Substr k ( X ) denote the set of length- $$\varvec{k}$$ k substrings of a given string $$\varvec{X}$$ X for a given integer $$\varvec{k}>\varvec{0}$$ k > 0 . We study the following basic string problem, called $$\varvec{z}$$ z - Shortest $$\varvec{\mathcal {S}}_{\varvec{k}}$$ S k - Equivalent Strings : Given a set $$\varvec{\mathcal {S}}_{\varvec{k}}$$ S k of $$\varvec{n}$$ n length- $$\varvec{k}$$ k strings and an integer $$\varvec{z}>\varvec{0}$$ z > 0 , list $$\varvec{z}$$ z shortest distinct strings $$\varvec{T}_{\varvec{1}}\varvec{,\ldots ,}\varvec{T}_{\varvec{z}}$$ T 1 , … , T z such that $$\varvec{\textsf {Substr}}_{\varvec{k}}\varvec{(}\varvec{T}_{\varvec{i}}\varvec{)}=\varvec{\mathcal {S}}_{\varvec{k}}$$ Substr k ( T Giulia Bernardini 0001, Alessio Conte, Estéban Gabory, Roberto Grossi, Grigorios Loukides, Solon P. Pissis, Giulia Punzi, Michelle Sweering |
Theory Comput. Syst. | 4 |
| 2026 | Fast Assessment of Eulerian Trails in Graphs with ApplicationsabstractEnumerating or counting combinatorial objects in graphs is a fundamental data mining task. We consider the problem of assessing the number of Eulerian trails in directed graphs, which is formalized as follows: Given a directed graph \(G=(V,E)\) , with \(|V|=n\) nodes and \(|E|=m\) edges, and an integer \( z \) , assess whether the number \(\#ET(G)\) of Eulerian trails of \( G \) is at least \( z \) . This problem underlies many applications in domains ranging from data privacy to computational biology, data compression, and transportation networks. Practitioners currently address this problem by applying the famous BEST theorem, which, in fact, counts \(\#ET(G)\) instead of just assessing whether \(\#ET(G)\geq z\) . Unfortunately, this solution takes \(\mathcal{O}(n^{\omega})\) arithmetic operations, where \(\omega < 2.373\) denotes the matrix multiplication exponent . Since in most real-world graphs, the number \( m \) of edges is comparable to the number \( n \) of nodes, and \( z \) is moderate in practice, the algorithmic challenge is: Can we solve the problem faster for certain values of \( m \) and \( z \) ? We want to design a combinatorial algorithm for assessing whether \(\#ET(G)\geq z\) , which does not resort to the BEST theorem and has a predictably bounded cost as a function of \( m \) and \( z \) . We address this challenge as follows. We first introduce a general algorithmic scheme for assessing (and enumerating) Eulerian trails. We then introduce a novel tree data structure to reduce the number of iterations in this general scheme. Finally, we complement the above with further combinatorial insight leading to an algorithm with a worst-case bound of \(\mathcal{O}(m\cdot\min\{z,\#ET(G)\})\) time. Our experiments using six benchmark datasets with multi-million edges from different domains show that our implementations are up to two orders of magnitude faster than the BEST theorem, perform much fewer than \(mz\) iterations and scale near-linearly with \( m \) in most cases. Our experiments further show that our implementations bring substantial efficiency benefits in a data privacy application which employs the BEST theorem for the assessment. Alessio Conte, Roberto Grossi, Grigorios Loukides, Nadia Pisanti, Solon P. Pissis, Giulia Punzi |
ACM Trans. Knowl. Discov. Data | 2 |
| 2025 | Indexing Strings with UtilitiesabstractApplications in domains ranging from bioinformatics to advertising feature strings (sequences of letters over some alphabet) that come with numerical scores (utilities). The utilities quantify the importance, interest, profit, or risk of the letters occurring at every position of a string. For instance, DNA fragments generated by sequencing machines come with a confidence score per position. Motivated by the ever-increasing rate of generating such data, as well as by their importance in several domains, we introduce Useful String Indexing (USI), a natural generalization of the classic String Indexing problem. Given a string$S$(the text) of length$n$, USI asks for preprocessing$S$into a compact data structure supporting the following queries efficiently: given a shorter string$P$(the pattern), return the global utility$U(P)$of$P$in$S$, where$U$is a function that maps any string$P$to a utility score based on the utilities of the letters of every occurrence of$P$in$S$. Our work also makes the following contributions: (1) We propose a novel and efficient data structure for USI based on finding the top-$K$frequent substrings of$S$. (2) We propose a linear-space data structure that can be used to mine the top-$K$frequent substrings of$S$or to tune the parameters of the USI data structure. (3) We propose a novel space-efficient algorithm for estimating the set of the top-$K$frequent substrings of$S$, thus improving the construction space of the data structure for USI. (4) We show that popular space-efficient top-$K$frequent item mining strategies employed by state-of-the-art algorithms do not smoothly translate from items to substrings. (5) Using billion-letter datasets, we experimentally demonstrate that: (i) our top-$K$frequent substring mining algorithms are accurate and scalable, unlike two state-of-the-art methods; and (ii) our USI data structures are up to 15 times faster in querying than 4 nontrivial baselines while occupying the same space with them. Giulia Bernardini 0001, Huiping Chen 0001, Alessio Conte, Roberto Grossi, Veronica Guerrini, Grigorios Loukides, Nadia Pisanti, Solon P. Pissis |
ICDE | 4 |
| 2025 | Enumerating Graphlets with Amortized Time Complexity Independent of Graph SizeabstractAbstract Graphlets of order k in a graph G are connected subgraphs induced by k nodes (called k-graphlets) or by k edges (called edge k-graphlets). They are among the interesting subgraphs in network analysis to get insights on both the local and global structure of a network. While several algorithms exist for discovering and enumerating graphlets, the amortized time complexity of such algorithms typically depends on the size of the graph G, or its maximum degree. In real networks, even the latter can be in the order of millions, whereas k is typically required to be a small value. In this paper we provide the first algorithm to list all graphlets of order k in a graph $$G=(V,E)$$ G = ( V , E ) with an amortized time complexity depending solely on the order k, contrarily to previous approaches where the cost depends also on the size of G or its maximum degree. Specifically, we show that it is possible to list k-graphlets in $$O(k^2)$$ O ( k 2 ) time per solution, and to list edge k-graphlets in O(k) time per solution. Furthermore we show that, if the input graph has bounded degree, then the amortized time for listing k-graphlets is reduced to O(k). Whenever $$k = O(1)$$ k = O ( 1 ) , as it is often the case in practical settings, these algorithms are the first to achieve constant time per solution. Alessio Conte, Roberto Grossi, Yasuaki Kobayashi, Kazuhiro Kurita, Davide Rucci, Takeaki Uno, Kunihiro Wasa |
Algorithmica | 2 |
| 2025 | Output-sensitive enumeration of maximal cliques in temporal graphs
Filippo Brunelli, Alessio Conte, Roberto Grossi, Andrea Marino 0001 |
Discret. Appl. Math. | 3 |
| 2025 | Listing maximal H-free subgraphsabstractGiven two graphs G and H , where H is the forbidden subgraph or pattern, G is called H -free if no vertex subset V ′ ⊆ V ( G ) induces a subgraph G [ V ′ ] isomorphic to H . In the edge-induced version of the notion, G is called H -free if no edge subset E ′ ⊆ E ( G ) induces a subgraph G [ E ′ ] isomorphic to H . The goal is to list all the inclusion-maximal subgraphs of G that are H -free, according to both the edge-induced and vertex-induced versions. Apart from its theoretical interest, the problem has application in data modeling, as it corresponds to data cleaning/repairing tasks, where the entire dataset is inconsistent with respect to the constraints given in H , and maximal consistent portions are sought. Several output-sensitive algorithms for the vertex-induced version are presented, which depend on the constraints on H and on G . As for the edge-induced version, we show how output-sensitive algorithms are possible for specific cases, but an efficient general technique is unlikely to exist as simply certifying a solution can be co-NP-complete. Alessio Conte, Roberto Grossi, Mamadou Moustapha Kanté, Andrea Marino 0001, Takeaki Uno |
Discret. Appl. Math. | 2 |
| 2024 | Utility-Oriented String MiningabstractA string is often provided with numerical scores (utilities) which quantify the importance, interest, profit, or risk of the letters occurring at every position of the string. For example, every DNA fragment produced by modern sequencing machines comes with a confidence score per position. Motivated by the abundance of strings with utilities, we introduce Utility-oriented String Mining (USM), a natural generalization of the classic frequent substring mining problem. Given a string S of length n and a threshold 𝒱, USM asks for every string R whose utility U (R) is at least 𝒱, where U is a function that maps R to a utility score based on the utilities of all letters of every occurrence of R in S. In addition, our work makes the following contributions: (1) We identify a class 𝕌 of utility functions for which USM admits an 𝒪 (n2)-time algorithm. (2) We prove that no listing algorithm solves the USM problem in subquadratic time for every utility function, or even for every function in 𝕌. (3) We propose an 𝒪 (n log n)-time algorithm that solves USM for a class of monotone functions from 𝕌. (4) We design another 𝒪 (n log n)-time algorithm for the same problem that is comparable in runtime but offers drastic space savings in practice when, in addition, a lower bound on the length of the output strings is provided as input. (5) We demonstrate experimentally using publicly available, billion-letter datasets that our algorithms are many times more efficient, in terms of runtime and/or space, compared to an Apriori-like baseline which employs advanced string processing tools. Giulia Bernardini 0001, Huiping Chen 0001, Alessio Conte, Roberto Grossi, Veronica Guerrini, Grigorios Loukides, Nadia Pisanti, Solon P. Pissis |
SDM | 4 |
| 2024 | A Unifying Taxonomy of Pattern Matching in Degenerate Strings and Founder GraphsabstractElastic Degenerate (ED) strings and Elastic Founder (EF) graphs are two versions of acyclic components of pangenomes. Both ED strings and EF graphs (which we collectively name variable strings) extend the well-known notion of indeterminate string. Recent work has extensively investigated algorithmic tasks over these structures, and over several other variable strings notions that they generalise. Among such tasks, the basic operation of matching a pattern into a text, which can serve as a toolkit for many pangenomic data analyses using these data structures, deserves special attention. In this paper we: (1) highlight a clear taxonomy within both ED strings and EF graphs ranging through variable strings of all types, from the linear string up to the most general one; (2) investigate the problem PvarT(X,Y) of matching a solid or variable pattern of type X into a variable text of type Y; (3) using as a reference the quadratic conditional lower bounds that are known for PvarT(solid,ED) and PvarT(solid,EF), for all possible types of variable strings X and Y we either prove the quadratic conditional lower bound for PvarT(X,Y), or provide non-trivial, often sub-quadratic, upper bounds, also exploiting the above-mentioned taxonomy. Rocco Ascone, Giulia Bernardini 0001, Alessio Conte, Massimo Equi, Estéban Gabory, Roberto Grossi, Nadia Pisanti |
WABI | 6 |
| 2024 | McDag: Indexing Maximal Common Subsequences in PracticeabstractAnalyzing and comparing sequences of symbols is among the most fundamental problems in computer science, possibly even more so in bioinformatics. Maximal Common Subsequences (MCSs), i.e., inclusion-maximal sequences of non-contiguous symbols common to two or more strings, have only recently received attention in this area, despite being a basic notion and a natural generalization of more common tools like Longest Common Substrings/Subsequences. In this paper we simplify and engineer recent advancements on MCSs into a practical tool called McDag, the first publicly available tool that can index MCSs of real genomic data. We demonstrate that our tool can index sequences exceeding 10,000 base pairs within minutes, utilizing only 4-7% more than the minimum required nodes, while also extracting relevant insights. Giovanni Buzzega, Alessio Conte, Roberto Grossi, Giulia Punzi |
WABI | 3 |
| 2024 | Refined Bounds on the Number of Eulerian Tours in Undirected Graphs
Giulia Punzi, Alessio Conte, Roberto Grossi, Romeo Rizzi |
Algorithmica | 3 |
| 2024 | On Breaking Truss-based and Core-based CommunitiesabstractWe introduce the general problem of identifying a smallest edge subset of a given graph whose deletion makes the graph community-free. We consider this problem under two community notions that have attracted significant attention: k -truss and k -core. We also introduce a problem variant where the identified subset contains edges incident to a given set of nodes and ensures that these nodes are not contained in any community: k -truss or k -core, in our case. These problems are directly applicable in social networks: The identified edges can be hidden by users or sanitized from the output graph; or in communication networks: the identified edges correspond to vital network connections. We present a series of theoretical and practical results. On the theoretical side, we show through non-trivial reductions that the problems we introduce are NP-hard and, in fact, hard to approximate. For the k -truss-based problems, we also show exact exponential-time algorithms, as well as a non-trivial lower bound on the size of an optimal solution. On the practical side, we develop a series of heuristics that are sped up by efficient data structures that we propose for updating the truss or core decomposition under edge deletions. In addition, we develop an algorithm to compute the lower bound. Extensive experiments on 11 real-world and synthetic graphs show that our heuristics are effective, outperforming natural baselines, and also efficient (up to two orders of magnitude faster than a natural baseline), thanks to our data structures. Furthermore, we present a case study on a co-authorship network and experiments showing that the removal of edges identified by our heuristics does not substantially affect the clustering structure of the input graph. This work extends a KDD 2021 paper, providing new theoretical results as well as introducing core-based problems and algorithms. Huiping Chen 0001, Alessio Conte, Roberto Grossi, Grigorios Loukides, Solon P. Pissis, Michelle Sweering |
ACM Trans. Knowl. Discov. Data | 3 |
| 2023 | A Compact DAG for Storing and Searching Maximal Common SubsequencesabstractMaximal Common Subsequences (MCSs) between two strings X and Y are subsequences of both X and Y that are maximal under inclusion. MCSs relax and generalize the well known and widely used concept of Longest Common Subsequences (LCSs), which can be seen as MCSs of maximum length. While the number both LCSs and MCSs can be exponential in the length of the strings, LCSs have been long exploited for string and text analysis, as simple compact representations of all LCSs between two strings, built via dynamic programming or automata, have been known since the '70s. MCSs appear to have a more challenging structure: even listing them efficiently was an open problem open until recently, thus narrowing the complexity difference between the two problems, but the gap remained significant. In this paper we close the complexity gap: we show how to build DAG of polynomial size-in polynomial time-which allows for efficient operations on the set of all MCSs such as enumeration in Constant Amortized Time per solution (CAT), counting, and random access to the i-th element (i.e., rank and select operations). Other than improving known algorithmic results, this work paves the way for new sequence analysis methods based on MCSs. Alessio Conte, Roberto Grossi, Giulia Punzi, Takeaki Uno |
ISAAC | 2 |
| 2023 | An Efficient Algorithm for Assessing the Number of st-Paths in Large GraphsabstractCounting the number of subgraphs, or patterns, of a certain kind is at the heart of data mining, and st-paths are one of the most basic graph patterns to express connectivity. The problem of counting the number of st-paths in a graph, both directed and undirected, has been studied since the 70s, and is one of the original #P-complete problems introduced by Valiant [25]. However, counting can be a heavy task and known algorithms already struggle on graphs with hundreds of nodes. For this reason we propose a novel approach: we assess whether the number of st-paths of an undirected graph is at least a given number z. Instead of finding paths one-by-one (i.e., listing), our algorithm is based on decomposing and collapsing computational tasks arranged in a tree-like structure to enhance the effectiveness of each step in growing the number of paths found. Extensive experimental results on real-world datasets show the algorithm scaling to graphs with millions of nodes and edges, with z in the trillions. Its performance is orders of magnitude better than state-of-the-art listing algorithms adapted to this task. Giulia Punzi, Alessio Conte, Roberto Grossi, Andrea Marino 0001 |
SDM | 3 |
| 2023 | CAGE: Cache-Aware Graphlet Enumeration
Alessio Conte, Roberto Grossi, Davide Rucci |
SPIRE | 2 |
| 2023 | Succinct representation for (non)deterministic finite automataabstract(Non)-Deterministic finite automata are one of the simplest models of computation studied in automata theory. Here we study them through the lens of succinct data structures. Towards this goal, we design a data structure for any deterministic automaton D having n states over a σ-letter alphabet Σ using (σ−1)nlogn(1+o(1)) bits, that determines, given a string x, whether D accepts x in optimal O(|x|) time. We also consider the case when there are N<σn non-failure transitions, and obtain various time-space trade-offs. Here some of our results are better than the recent work of Cotumaccio and Prezza (SODA 2021). We also exhibit a data structure for non-deterministic automaton N using σn2+n bits that takes O(n2|x|) time for string membership checking. Finally, we also provide time and space efficient algorithms for performing several standard operations on the languages accepted by finite automata. Sankardeep Chakraborty, Roberto Grossi, Kunihiko Sadakane, S. Srinivasa Rao 0001 |
J. Comput. Syst. Sci. | 2 |
| 2023 | On the Complexity of String Matching for GraphsabstractExact string matching in labeled graphs is the problem of searching paths of a graph G=(V, E) such that the concatenation of their node labels is equal to a given pattern string P [1. m ]. This basic problem can be found at the heart of more complex operations on variation graphs in computational biology, of query operations in graph databases, and of analysis operations in heterogeneous networks. We prove a conditional lower bound stating that, for any constant ε > 0, an O (| E | 1 - ε m ) time, or an O (| E | m 1 - ε )time algorithm for exact string matching in graphs, with node labels and pattern drawn from a binary alphabet, cannot be achieved unless the Strong Exponential Time Hypothesis ( SETH ) is false. This holds even if restricted to undirected graphs with maximum node degree 2—that is, to zig-zag matching in bidirectional strings , or to deterministic directed acyclic graphs whose nodes have maximum sum of indegree and outdegree 3. These restricted cases make the lower bound stricter than what can be directly derived from related bounds on regular expression matching (Backurs and Indyk, FOCS’16). In fact, our bounds are tight in the sense that lowering the degree or the alphabet size yields linear time solvable problems. An interesting corollary is that exact and approximate matching are equally hard (i.e., quadratic time) in graphs under SETH . In comparison, the same problems restricted to strings have linear time vs quadratic time solutions, respectively (approximate pattern matching having also a matching SETH lower bound (Backurs and Indyk, STOC’15)). Massimo Equi, Veli Mäkinen, Alexandru I. Tomescu, Roberto Grossi |
ACM Trans. Algorithms | 4 |
| 2023 | Hide and Mine in Strings: Hardness, Algorithms, and ExperimentsabstractData sanitization and frequent pattern mining are two well-studied topics in data mining. Our work initiates a study on the fundamental relation between data sanitization and frequent pattern mining in the context of sequential (string) data. Current methods for string sanitization hide confidential patterns. This, however, may lead to spurious patterns that harm the utility of frequent pattern mining. The main computational problem is to minimize this harm. Our contribution here is as follows. First, we present several hardness results, for different variants of this problem, essentially showing that these variants cannot be solved or even be approximated in polynomial time. Second, we propose integer linear programming formulations for these variants and algorithms to solve them, which work in polynomial time under realistic assumptions on the input parameters. We complement the integer linear programming algorithms with a greedy heuristic. Third, we present an extensive experimental study, using both synthetic and real-world datasets, that demonstrates the effectiveness and efficiency of our methods. Beyond sanitization, the process of missing value replacement may also lead to spurious patterns. Interestingly, our results apply in this context as well. Giulia Bernardini 0001, Alessio Conte, Garance Gourdel, Roberto Grossi, Grigorios Loukides, Nadia Pisanti, Solon P. Pissis, Giulia Punzi, Leen Stougie, Michelle Sweering |
IEEE Trans. Knowl. Data Eng. | 4 |
| 2022 | On Strings Having the Same Length- k SubstringsabstractLet Substr_k(X) denote the set of length-k substrings of a given string X for a given integer k > 0. We study the following basic string problem, called z-Shortest 𝒮_k-Equivalent Strings: Given a set 𝒮_k of n length-k strings and an integer z > 0, list z shortest distinct strings T₁,…,T_z such that Substr_k(T_i) = 𝒮_k, for all i ∈ [1,z]. The z-Shortest 𝒮_k-Equivalent Strings problem arises naturally as an encoding problem in many real-world applications; e.g., in data privacy, in data compression, and in bioinformatics. The 1-Shortest 𝒮_k-Equivalent Strings, referred to as Shortest 𝒮_k-Equivalent String, asks for a shortest string X such that Substr_k(X) = 𝒮_k. Our main contributions are summarized below: - Given a directed graph G(V,E), the Directed Chinese Postman (DCP) problem asks for a shortest closed walk that visits every edge of G at least once. DCP can be solved in 𝒪̃(|E||V|) time using an algorithm for min-cost flow. We show, via a non-trivial reduction, that if Shortest 𝒮_k-Equivalent String over a binary alphabet has a near-linear-time solution then so does DCP. - We show that the length of a shortest string output by Shortest 𝒮_k-Equivalent String is in 𝒪(k+n²). We generalize this bound by showing that the total length of z shortest strings is in 𝒪(zk+zn²+z²n). We derive these upper bounds by showing (asymptotically tight) bounds on the total length of z shortest Eulerian walks in general directed graphs. - We present an algorithm for solving z-Shortest 𝒮_k-Equivalent Strings in 𝒪(nk+n²log²n+zn²log n+|output|) time. If z = 1, the time becomes 𝒪(nk+n²log²n) by the fact that the size of the input is Θ(nk) and the size of the output is 𝒪(k+n²). Giulia Bernardini 0001, Alessio Conte, Estéban Gabory, Roberto Grossi, Grigorios Loukides, Solon P. Pissis, Giulia Punzi, Michelle Sweering |
CPM | 4 |
| 2022 | phyBWT: Alignment-Free Phylogeny via eBWT Positional ClusteringabstractMolecular phylogenetics is a fundamental branch of biology. It studies the evolutionary relationships among the individuals of a population through their biological sequences, and may provide insights about the origin and the evolution of viral diseases, or highlight complex evolutionary trajectories. In this paper we develop a method called phyBWT, describing how to use the extended Burrows-Wheeler Transform (eBWT) for a collection of DNA sequences to directly reconstruct phylogeny, bypassing the alignment against a reference genome or de novo assembly. Our phyBWT hinges on the combinatorial properties of the eBWT positional clustering framework. We employ eBWT to detect relevant blocks of the longest shared substrings of varying length (unlike the k-mer-based approaches that need to fix the length k a priori), and build a suitable decomposition leading to a phylogenetic tree, step by step. As a result, phyBWT is a new alignment-, assembly-, and reference-free method that builds a partition tree without relying on the pairwise comparison of sequences, thus avoiding to use a distance matrix to infer phylogeny. The preliminary experimental results on sequencing data show that our method can handle datasets of different types (short reads, contigs, or entire genomes), producing trees of quality comparable to that found in the benchmark phylogeny. Veronica Guerrini, Alessio Conte, Roberto Grossi, Gianni Liti, Giovanna Rosone, Lorenzo Tattini |
WABI | 3 |
| 2022 | Enumeration of Maximal Common Subsequences Between Two Strings
Alessio Conte, Roberto Grossi, Giulia Punzi, Takeaki Uno |
Algorithmica | 2 |
| 2022 | Proximity Search for Maximal Subgraph EnumerationabstractAbstract. This paper proposes a new general technique for maximal subgraph enumeration which we call proximity search, whose aim is to design efficient enumeration algorithms for problems that could not be solved by existing frameworks. To support this claim and illustrate the technique we include output-polynomial algorithms for several problems for which output-polynomial algorithms were not known, including the enumeration of maximal bipartite subgraphs, maximal [Formula: see text]-degenerate subgraphs (for bounded [Formula: see text]), maximal induced chordal subgraphs, and maximal induced trees. Using known techniques, such as reverse search, the space of all maximal solutions induces an implicit directed graph called “solution graph” or “supergraph,” and solutions are enumerated by traversing it; however, nodes in this graph can have exponential out-degree, thus requiring exponential time to be spent on each solution. The novelty of proximity search is a formalization that allows us to define a better solution graph, and a technique, which we call canonical reconstruction, by which we can exploit the properties of given problems to build such graphs. This results in solution graphs whose nodes have significantly smaller (i.e., polynomial) out-degree with respect to existing approaches, but that remain strongly connected, so that all solutions can be enumerated in polynomial delay by a traversal. A drawback of this approach is the space required to keep track of visited solutions, which can be exponential; we further propose a technique to induce a parent-child relationship among solutions and achieve polynomial space when suitable conditions are met. Alessio Conte, Roberto Grossi, Andrea Marino 0001, Takeaki Uno, Luca Versari |
SIAM J. Comput. | 2 |
| 2021 | Beyond the BEST Theorem: Fast Assessment of Eulerian Trails
Alessio Conte, Roberto Grossi, Grigorios Loukides, Nadia Pisanti, Solon P. Pissis, Giulia Punzi |
FCT | 2 |
| 2021 | On Breaking Truss-Based CommunitiesabstractA k-truss is a graph such that each edge is contained in at least k-2 triangles. This notion has attracted much attention, because it models meaningful cohesive subgraphs of a graph. We introduce the problem of identifying a smallest edge subset of a given graph whose removal makes the graph k-truss-free. We also introduce a problem variant where the identified subset contains only edges incident to a given set of nodes and ensures that these nodes are not contained in any k-truss. These problems are directly applicable in communication networks: the identified edges correspond to vital network connections; or in social networks: the identified edges can be hidden by users or sanitized from the output graph. We show that these problems are NP-hard. We thus develop exact exponential-time algorithms to solve them. To process large networks, we also develop heuristics sped up by an efficient data structure for updating the truss decomposition under edge deletions. We complement our heuristics with a lower bound on the size of an optimal solution to rigorously evaluate their effectiveness. Extensive experiments on 10 real-world graphs show that our heuristics are effective (close to the optimal or to the lower bound) and also efficient (up to two orders of magnitude faster than a natural baseline). Huiping Chen 0001, Alessio Conte, Roberto Grossi, Grigorios Loukides, Solon P. Pissis, Michelle Sweering |
KDD | 3 |
| 2021 | Succinct Representations for (Non)Deterministic Finite Automata
Sankardeep Chakraborty, Roberto Grossi, Kunihiko Sadakane, S. Srinivasa Rao 0001 |
LATA | 2 |
| 2021 | K-plex cover pooling for graph neural networksabstractAbstract Graph pooling methods provide mechanisms for structure reduction that are intended to ease the diffusion of context between nodes further in the graph, and that typically leverage community discovery mechanisms or node and edge pruning heuristics. In this paper, we introduce a novel pooling technique which borrows from classical results in graph theory that is non-parametric and generalizes well to graphs of different nature and connectivity patterns. Our pooling method, namedKPlexPool, builds on the concepts of graph covers andk-plexes, i.e. pseudo-cliques where each node can miss up toklinks. The experimental evaluation on benchmarks on molecular and social graph classification shows thatKPlexPoolachieves state of the art performances against both parametric and non-parametric pooling methods in the literature, despite generating pooled graphs based solely on topological information. Davide Bacciu, Alessio Conte, Roberto Grossi, Francesco Landolfi, Andrea Marino 0001 |
Data Min. Knowl. Discov. | 3 |
| 2021 | Combinatorial Algorithms for String SanitizationabstractString data are often disseminated to support applications such as location-based service provision or DNA sequence analysis. This dissemination, however, may expose sensitive patterns that model confidential knowledge (e.g., trips to mental health clinics from a string representing a user’s location history). In this article, we consider the problem of sanitizing a string by concealing the occurrences of sensitive patterns, while maintaining data utility, in two settings that are relevant to many common string processing tasks. In the first setting, we aim to generate the minimal-length string that preserves the order of appearance and frequency of all non-sensitive patterns. Such a string allows accurately performing tasks based on the sequential nature and pattern frequencies of the string. To construct such a string, we propose a time-optimal algorithm, TFS-ALGO. We also propose another time-optimal algorithm, PFS-ALGO, which preserves a partial order of appearance of non-sensitive patterns but produces a much shorter string that can be analyzed more efficiently. The strings produced by either of these algorithms are constructed by concatenating non-sensitive parts of the input string. However, it is possible to detect the sensitive patterns by “reversing” the concatenation operations. In response, we propose a heuristic, MCSR-ALGO, which replaces letters in the strings output by the algorithms with carefully selected letters, so that sensitive patterns are not reinstated, implausible patterns are not introduced, and occurrences of spurious patterns are prevented. In the second setting, we aim to generate a string that is at minimal edit distance from the original string, in addition to preserving the order of appearance and frequency of all non-sensitive patterns. To construct such a string, we propose an algorithm, ETFS-ALGO, based on solving specific instances of approximate regular expression matching. We implemented our sanitization approach that applies TFS-ALGO, PFS-ALGO, and then MCSR-ALGO, and experimentally show that it is effective and efficient. We also show that TFS-ALGO is nearly as effective at minimizing the edit distance as ETFS-ALGO, while being substantially more efficient than ETFS-ALGO. Giulia Bernardini 0001, Huiping Chen 0001, Alessio Conte, Roberto Grossi, Grigorios Loukides, Nadia Pisanti, Solon P. Pissis, Giovanna Rosone, Michelle Sweering |
ACM Trans. Knowl. Discov. Data | 4 |
| 2020 | High-Quality Prediction of Tourist Movements using Temporal Trajectories in GraphsabstractIn this paper, we study the problem of predicting the next position of a tourist given his history. In particular, we propose a model to identify the next point of interest that a tourist will visit in the future, by making use of similarity between trajectories on a graph and taking into account the spatial-temporal aspect of trajectories. We compare our method with a well-known machine learning-based technique, as well as with a popularity baseline, using three public real-world datasets. Our experimental results show that our technique outperforms state-of-the-art machine learning-based methods effectively, by providing at least twice more accurate results. Shima Moghtasedi, Cristina Ioana Muntean, Franco Maria Nardini, Roberto Grossi, Andrea Marino 0001 |
ASONAM | 4 |
| 2020 | Finding the Anticover of a StringabstractA k-anticover of a string x is a set of pairwise distinct factors of x of equal length k, such that every symbol of x is contained into an occurrence of at least one of those factors. The existence of a k-anticover can be seen as a notion of non-redundancy, which has application in computational biology, where they are associated with various non-regulatory mechanisms. In this paper we address the complexity of the problem of finding a k-anticover of a string x if it exists, showing that the decision problem is NP-complete on general strings for k ≥ 3. We also show that the problem admits a polynomial-time solution for k=2. For unbounded k, we provide an exact exponential algorithm to find a k-anticover of a string of length n (or determine that none exists), which runs in O*(min {3^{(n-k)/3)}, ((k(k+1))/2)^{n/(k+1)) time using polynomial space. Mai Abdulaziz Alzamel, Alessio Conte, Shuhei Denzumi, Roberto Grossi, Costas S. Iliopoulos, Kazuhiro Kurita, Kunihiro Wasa |
CPM | 4 |
| 2020 | Hide and Mine in Strings: Hardness and AlgorithmsabstractWe initiate a study on the fundamental relation between data sanitization (i.e., the process of hiding confidential information in a given dataset) and frequent pattern mining, in the context of sequential (string) data. Current methods for string sanitization hide confidential patterns introducing, however, a number of spurious patterns that may harm the utility of frequent pattern mining. The main computational problem is to minimize this harm. Our contribution here is twofold. First, we present several hardness results, for different variants of this problem, essentially showing that these variants cannot be solved or even be approximated in polynomial time. Second, we propose integer linear programming formulations for these variants and algorithms to solve them, which work in polynomial time under certain realistic assumptions on the problem parameters. Giulia Bernardini 0001, Alessio Conte, Garance Gourdel, Roberto Grossi, Grigorios Loukides, Nadia Pisanti, Solon P. Pissis, Giulia Punzi, Leen Stougie, Michelle Sweering |
ICDM | 4 |
| 2020 | Finding Structurally and Temporally Similar Trajectories in GraphsabstractThe analysis of similar motions in a network provides useful information for different applications like route recommendation. We are interested in algorithms to efficiently retrieve trajectories that are similar to a given query trajectory. For this task many studies have focused on extracting the geometrical information of trajectories. In this paper we investigate the properties of trajectories moving along the paths of a network. We provide a similarity function by making use of both the temporal aspect of trajectories and the structure of the underlying network. We propose an approximation technique that offers the top-k similar trajectories with respect to a query trajectory in an efficient way with acceptable precision. We investigate our method over real-world networks, and our experimental results show the effectiveness of the proposed method. Roberto Grossi, Andrea Marino 0001, Shima Moghtasedi |
SEA | 1 |
| 2020 | On Bubble Generators in Directed Graphs
Vicente Acuña, Roberto Grossi, Giuseppe F. Italiano, Leandro Lima, Romeo Rizzi, Gustavo Sacomoto, Marie-France Sagot, Blerina Sinaimeri |
Algorithmica | 2 |
| 2020 | Sublinear-Space and Bounded-Delay Algorithms for Maximal Clique Enumeration in Graphs
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Luca Versari |
Algorithmica | 2 |
| 2020 | Comparing Degenerate StringsabstractUncertain sequences are compact representations of sets of similar strings. They highlight common segments by collapsing them, and explicitly represent varying segments by listing all possible options. A generalized degenerate string (GD string) is a type of uncertain sequence. Formally, a GD string Ŝ is a sequence of n sets of strings of total size N, where the ith set contains strings of the same length ki but this length can vary between different sets. We denote by W the sum of these lengths k0, k1, . . . , kn-1. Our main result is an 𝒪(N + M)-time algorithm for deciding whether two GD strings of total sizes N and M, respectively, over an integer alphabet, have a non-empty intersection. This result is based on a combinatorial result of independent interest: although the intersection of two GD strings can be exponential in the total size of the two strings, it can be represented in linear space. We then apply our string comparison tool to devise a simple algorithm for computing all palindromes in Ŝ in 𝒪(min{W, n2}N)-time. We complement this upper bound by showing a similar conditional lower bound for computing maximal palindromes in Ŝ. We also show that a result, which is essentially the same as our string comparison linear-time algorithm, can be obtained by employing an automata-based approach. Mai Abdulaziz Alzamel, Lorraine A. K. Ayad, Giulia Bernardini 0001, Roberto Grossi, Costas S. Iliopoulos, Nadia Pisanti, Solon P. Pissis, Giovanna Rosone |
Fundam. Informaticae | 4 |
| 2020 | Large-scale clique cover of real-world networks
Alessio Conte, Roberto Grossi, Andrea Marino 0001 |
Inf. Comput. | 2 |
| 2020 | Editorial: Special Issue on International Workshop on Combinatorial Algorithms (IWOCA 2019)
Nadia Pisanti, Charles J. Colbourn, Roberto Grossi |
Theory Comput. Syst. | 3 |
| 2020 | Longest property-preserved common factor: A new string-processing framework
Lorraine A. K. Ayad, Giulia Bernardini 0001, Roberto Grossi, Costas S. Iliopoulos, Nadia Pisanti, Solon P. Pissis, Giovanna Rosone |
Theor. Comput. Sci. | 3 |
| 2019 | On the Complexity of String Matching for GraphsabstractExact pattern matching in labeled graphs is the problem of searching paths of a graph $G=(V,E)$ that spell the same string as the pattern $P[1..m]$. This basic problem can be found at the heart of more complex operations on variation graphs in computational biology, of query operations in graph databases, and of analysis operations in heterogeneous networks, where the nodes of some paths must match a sequence of labels or types. We describe a simple conditional lower bound that, for any constant $ε>0$, an $O(|E|^{1 - ε} \, m)$-time or an $O(|E| \, m^{1 - ε})$-time algorithm for exact pattern matching on graphs, with node labels and patterns drawn from a binary alphabet, cannot be achieved unless the Strong Exponential Time Hypothesis (SETH) is false. The result holds even if restricted to undirected graphs of maximum degree three or directed acyclic graphs of maximum sum of indegree and outdegree three. Although a conditional lower bound of this kind can be somehow derived from previous results (Backurs and Indyk, FOCS'16), we give a direct reduction from SETH for dissemination purposes, as the result might interest researchers from several areas, such as computational biology, graph database, and graph mining, as mentioned before. Indeed, as approximate pattern matching on graphs can be solved in $O(|E|\,m)$ time, exact and approximate matching are thus equally hard (quadratic time) on graphs under the SETH assumption. In comparison, the same problems restricted to strings have linear time vs quadratic time solutions, respectively, where the latter ones have a matching SETH lower bound on computing the edit distance of two strings (Backurs and Indyk, STOC'15). Massimo Equi, Roberto Grossi, Veli Mäkinen, Alexandru I. Tomescu |
ICALP | 2 |
| 2019 | Listing Induced Steiner Subgraphs as a Compact Way to Discover Steiner Trees in GraphsabstractThis paper investigates induced Steiner subgraphs as a variant of the classical Steiner trees, so as to compactly represent the (exponentially many) Steiner trees sharing the same underlying induced subgraph. We prove that the enumeration of all (inclusion-minimal) induced Steiner subgraphs is harder than the well-known Hypergraph Transversal enumeration problem if the number of terminals is not fixed. When the number of terminals is fixed, we propose a polynomial delay algorithm for listing all induced Steiner subgraphs of minimum size. We also propose a polynomial delay algorithm for listing the set of minimal induced Steiner subgraphs when the number of terminals is 3. Alessio Conte, Roberto Grossi, Mamadou Moustapha Kanté, Andrea Marino 0001, Takeaki Uno, Kunihiro Wasa |
MFCS | 2 |
| 2019 | String Sanitization: A Combinatorial Approach
Giulia Bernardini 0001, Huiping Chen 0001, Alessio Conte, Roberto Grossi, Grigorios Loukides, Nadia Pisanti, Solon P. Pissis, Giovanna Rosone |
ECML/PKDD (1) | 4 |
| 2019 | Polynomial-Delay Enumeration of Maximal Common Subsequences
Alessio Conte, Roberto Grossi, Giulia Punzi, Takeaki Uno |
SPIRE | 2 |
| 2019 | A fast discovery algorithm for large common connected induced subgraphs
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Lorenzo Tattini, Luca Versari |
Discret. Appl. Math. | 2 |
| 2019 | Listing Maximal Subgraphs Satisfying Strongly Accessible PropertiesabstractAlgorithms for listing the subgraphs satisfying a given property (e.g., being a clique, a cut, a cycle) fall within the general framework of set systems. A set system $(\mathcal{U}, \mathcal{F})$ consists of a ground set $\mathcal{U}$ (e.g., a network's nodes) and a family $\mathcal{F} \subseteq 2^{\mathcal{U}}$ of subsets of $\mathcal{U}$ that have the required property. For the problem of listing all sets in $\mathcal{F}$ maximal under inclusion, the ambitious goal is to cover a large class of set systems, preserving at the same time the efficiency of the enumeration. Among the existing algorithms, the best-known ones list the maximal subsets in time proportional to their number but may require exponential space. In this paper we improve the state of the art in two directions by introducing an algorithmic framework based on reverse search that, under standard suitable conditions, simultaneously (i) extends the class of problems that can be solved efficiently to strongly accessible set systems and (ii) reduces the additional space usage from exponential in $|\mathcal{U}|$ to stateless, i.e., with no additional memory usage other than that proportional to the solution size, thus accounting for just polynomial space. Alessio Conte, Roberto Grossi, Andrea Marino 0001, Luca Versari |
SIAM J. Discret. Math. | 2 |
| 2018 | Finding Maximal Common Subgraphs via Time-Space Efficient Reverse Search
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Luca Versari |
COCOON | 2 |
| 2018 | Round-Hashing for Data Storage: Distributed Servers and External-Memory TablesabstractThis paper proposes round-hashing, which is suitable for data storage on distributed servers and for implementing external-memory tables in which each lookup retrieves at most one single block of external memory, using a stash. For data storage, round-hashing is like consistent hashing as it avoids a full rehashing of the keys when new servers are added. Experiments show that the speed to serve requests is tenfold or more than the state of the art. In distributed data storage, this guarantees better throughput for serving requests and, moreover, greatly reduces decision times for which data should move to new servers as rescanning data is much faster. Roberto Grossi, Luca Versari |
ESA | 1 |
| 2018 | Node Similarity with q -Grams for Real-World Labeled NetworksabstractWe study node similarity in labeled networks, using the label sequences found in paths of bounded length q leading to the nodes. (This recalls the q-grams employed in document resemblance, based on the Jaccard distance.) When applied to networks, the challenge is two-fold: the number of q-grams generated from labeled paths grows exponentially with q, and their frequency should be taken into account: this leads to a variation of the Jaccard index known as Bray-Curtis index for multisets. We describe nSimGram, a suite of fast algorithms for node similarity with q-grams, based on a novel blend of color coding, probabilistic counting, sketches, and string algorithms, where the universe of elements to sample is exponential. We provide experimental evidence that our measure is effective and our running times scale to deal with large real-world networks. Alessio Conte, Gaspare Ferraro, Roberto Grossi, Andrea Marino 0001, Kunihiko Sadakane, Takeaki Uno |
KDD | 3 |
| 2018 | D2K: Scalable Community Detection in Massive Networks via Small-Diameter k-PlexesabstractThis paper studies k-plexes, a well known pseudo-clique model for network communities. In a k-plex, each node can miss at most k-1 links. Our goal is to detect large communities in today's real-world graphs which can have hundreds of millions of edges. While many have tried, this task has been elusive so far due to its computationally challenging nature: k-plexes and other pseudo-cliques are harder to find and more numerous than cliques, a well known hard problem. We present D2K, which is the first algorithm able to find large k-plexes of very large graphs in just a few minutes. The good performance of our algorithm follows from a combination of graph-theoretical concepts, careful algorithm engineering and a high-performance implementation. In particular, we exploit the low degeneracy of real-world graphs, and the fact that large enough k-plexes have diameter 2. We validate a sequential and a parallel/distributed implementation of D2K on real graphs with up to half a billion edges. Alessio Conte, Tiziano De Matteis, Daniele De Sensi, Roberto Grossi, Andrea Marino 0001, Luca Versari |
KDD | 4 |
| 2018 | Efficient Algorithms for Listing k Disjoint st-Paths in Graphs
Roberto Grossi, Andrea Marino 0001, Luca Versari |
LATIN | 1 |
| 2018 | Listing Subgraphs by Cartesian DecompositionabstractInternational audience Alessio Conte, Roberto Grossi, Andrea Marino 0001, Romeo Rizzi, Luca Versari |
MFCS | 2 |
| 2018 | Longest Property-Preserved Common Factor
Lorraine A. K. Ayad, Giulia Bernardini 0001, Roberto Grossi, Costas S. Iliopoulos, Nadia Pisanti, Solon P. Pissis, Giovanna Rosone |
SPIRE | 3 |
| 2018 | Compressed Communication Complexity of Longest Common Prefixes
Philip Bille, Mikko Berggren Ettienne, Roberto Grossi, Inge Li Gørtz, Eva Rotenberg |
SPIRE | 3 |
| 2018 | Degenerate String Comparison and ApplicationsabstractA generalised degenerate string (GD string) S^ is a sequence of n sets of strings of total size N, where the ith set contains strings of the same length k_i but this length can vary between different sets. We denote the sum of these lengths k_0, k_1,...,k_{n-1} by W. This type of uncertain sequence can represent, for example, a gapless multiple sequence alignment of width W in a compact form. Our first result in this paper is an O(N+M)-time algorithm for deciding whether the intersection of two GD strings of total sizes N and M, respectively, over an integer alphabet, is non-empty. This result is based on a combinatorial result of independent interest: although the intersection of two GD strings can be exponential in the total size of the two strings, it can be represented in only linear space. A similar result can be obtained by employing an automata-based approach but its cost is alphabet-dependent. We then apply our string comparison algorithm to compute palindromes in GD strings. We present an O(min{W,n^2}N)-time algorithm for computing all palindromes in S^. Furthermore, we show a similar conditional lower bound for computing maximal palindromes in S^. Finally, proof-of-concept experimental results are presented using real protein datasets. Mai Abdulaziz Alzamel, Lorraine A. K. Ayad, Giulia Bernardini 0001, Roberto Grossi, Costas S. Iliopoulos, Nadia Pisanti, Solon P. Pissis, Giovanna Rosone |
WABI | 4 |
| 2018 | Tight Lower Bounds for the Number of Inclusion-Minimal st-Cuts
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Romeo Rizzi, Takeaki Uno, Luca Versari |
WG | 2 |
| 2018 | Efficient enumeration of graph orientations with sources
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Romeo Rizzi |
Discret. Appl. Math. | 2 |
| 2018 | Motif trie: An efficient text index for pattern discovery with don't cares
Roberto Grossi, Giulia Menconi, Nadia Pisanti, Roberto Trani, Søren Vind |
Theor. Comput. Sci. | 1 |
| 2017 | On-Line Pattern Matching on Similar TextsabstractPattern matching on a set of similar texts has received much attention, especially recently, mainly due to its application in cataloguing human genetic variation. In particular, many different algorithms have been proposed for the off-line version of this problem; that is, constructing a compressed index for a set of similar texts in order to answer pattern matching queries efficiently. However, the on-line, more fundamental, version of this problem is a rather undeveloped topic. Solutions to the on-line version can be beneficial for a number of reasons; for instance, efficient on-line solutions can be used in combination with partial indexes as practical trade-offs. We make here an attempt to close this gap via proposing two efficient algorithms for this problem. Notably, one of the algorithms requires time linear in the size of the texts' representation, for short patterns. Furthermore, experimental results confirm our theoretical findings in practical terms. Roberto Grossi, Costas S. Iliopoulos, Chang Liu 0035, Nadia Pisanti, Solon P. Pissis, Ahmad Retha, Giovanna Rosone, Fatima Vayani, Luca Versari |
CPM | 1 |
| 2017 | Listing Maximal Independent Sets with Minimal Space and Bounded Delay
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Takeaki Uno, Luca Versari |
SPIRE | 2 |
| 2017 | On Bubble Generators in Directed Graphs
Vicente Acuña, Roberto Grossi, Giuseppe F. Italiano, Leandro Lima, Romeo Rizzi, Gustavo Sacomoto, Marie-France Sagot, Blerina Sinaimeri |
WG | 2 |
| 2017 | Asymptotically Optimal Encodings of Range Data Structures for Selection and Top-k QueriesabstractGiven an array A [1, n ] of elements with a total order, we consider the problem of building a data structure that solves two queries: ( a ) selection queries receive a range [ i , j ] and an integer k and return the position of the k th largest element in A [ i , j ]; ( b ) top- k queries receive [ i , j ] and k and return the positions of the k largest elements in A [ i , j ]. These problems can be solved in optimal time, O (1+lg k /lg lg n ) and O ( k ), respectively, using linear-space data structures. We provide the first study of the encoding data structures for the above problems, where A cannot be accessed at query time. Several applications are interested in the relative order of the entries of A , and their positions, rather their actual values, and thus we do not need to keep A at query time. In those cases, encodings save storage space: we first show that any encoding answering such queries requires n lg k - O ( n + k lg k ) bits of space; then, we design encodings using O ( n lg k ) bits, that is, asymptotically optimal up to constant factors, while preserving optimal query time. Roberto Grossi, John Iacono, Gonzalo Navarro 0001, Rajeev Raman, S. Srinivasa Rao 0001 |
ACM Trans. Algorithms | 1 |
| 2016 | Sublinear-Space Bounded-Delay Enumeration for Massive Network Analytics: Maximal CliquesabstractDue to the sheer size of real-world networks, delay and space become quite relevant measures for the cost of enumeration in network analytics. This paper presents efficient algorithms for listing maximum cliques in networks, providing the first sublinear-space bounds with guaranteed delay per enumerated clique, thus comparing favorably with the known literature. Alessio Conte, Roberto Grossi, Andrea Marino 0001, Luca Versari |
ICALP | 2 |
| 2016 | Directing Road Networks by Listing Strong Orientations
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Romeo Rizzi, Luca Versari |
IWOCA | 2 |
| 2016 | Listing Acyclic Orientations of Graphs with Single and Multiple Sources
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Romeo Rizzi |
LATIN | 2 |
| 2016 | New Bounds for Approximating Extremal Distances in Undirected GraphsabstractWe provide new bounds for the approximation of extremal distances (the diameter, the radius, and the eccentricities of all nodes) of an undirected graph with n nodes and m edges. First, we show under the Strong Exponential Time Hypothesis (SETH) of Impagliazzo, Paturi and Zane [JCSS01] that it is impossible to get a (3/2 – ∊)-approximation of the diameter or a (5/3 – ∊)-approximation of all the eccentricities in O(m2–δ) time for any ∊, δ > 0, even allowing for a constant additive term in the approximation. Second, we present an algorithmic scheme that gives a (2 – 1/2k)-approximation of the diameter and the radius and a (3 – 4/(2k + 1))-approximation of all eccentricities in expected time for any k ≥ 0. For k ≥ 2, this gives a family of previously unknown bounds, and approaches near-linear running time as k grows. Third, we observe a connection between the approximation of the diameter and the h-dominating sets, which are subsets of nodes at distance ≤ h from every other node. We give bounds for the size of these sets, related with the diameter. Massimo Cairo, Roberto Grossi, Romeo Rizzi |
SODA | 2 |
| 2016 | Linear-size suffix tries
Maxime Crochemore, Chiara Epifanio, Roberto Grossi, Filippo Mignosi |
Theor. Comput. Sci. | 3 |
| 2015 | Enumerating Cyclic Orientations of a Graph
Alessio Conte, Roberto Grossi, Andrea Marino 0001, Romeo Rizzi |
IWOCA | 2 |
| 2015 | Circular Sequence Comparison with q-grams
Roberto Grossi, Costas S. Iliopoulos, Robert Mercas, Nadia Pisanti, Solon P. Pissis, Ahmad Retha, Fatima Vayani |
WABI | 1 |
| 2014 | Amortized Õ(|V|) -Delay Algorithm for Listing Chordless Cycles in Undirected Graphs
Rui A. Ferreira, Roberto Grossi, Romeo Rizzi, Gustavo Sacomoto, Marie-France Sagot |
ESA | 2 |
| 2014 | Output-Sensitive Pattern Extraction in SequencesabstractGenomic Analysis, Plagiarism Detection, Data Mining, Intrusion Detection, Spam Fighting and Time Series Analysis are just some examples of applications where extraction of recurring patterns in sequences of objects is one of the main computational challenges. Several notions of patterns exist, and many share the common idea of strictly specifying some parts of the pattern and to don't care about the remaining parts. Since the number of patterns can be exponential in the length of the sequences, pattern extraction focuses on statistically relevant patterns, where any attempt to further refine or extend them causes a loss of significant information (where the number of occurrences changes). Output-sensitive algorithms have been proposed to enumerate and list these patterns, taking polynomial time O(n^c) per pattern for constant c > 1, which is impractical for massive sequences of very large length n. We address the problem of extracting maximal patterns with at most k don't care symbols and at least q occurrences. Our contribution is to give the first algorithm that attains a stronger notion of output-sensitivity, borrowed from the analysis of data structures: the cost is proportional to the actual number of occurrences of each pattern, which is at most n and practically much smaller than n in real applications, thus avoiding the aforementioned cost of O(n^c) per pattern. Roberto Grossi, Giulia Menconi, Nadia Pisanti, Roberto Trani, Søren Vind |
FSTTCS | 1 |
| 2014 | Managing Unbounded-Length Keys in Comparison-Driven Data Structures with Applications to Online IndexingabstractThis paper presents a general technique for optimally transforming any dynamic data structure that operates on atomic and indivisible keys by constant-time comparisons, into a data structure that handles unbounded-length keys whose comparison cost is not a constant. Examples of these keys are strings, multidimensional points, multiple-precision numbers, multikey data (e.g., records), XML paths, URL addresses, etc. The technique is more general than what has been done in previous work as no particular exploitation of the underlying structure is required. The only requirement is that the insertion of a key must identify its predecessor or its successor. Using the proposed technique, online suffix tree construction can be done in worst case time $O(\log n)$ per input symbol (as opposed to amortized $O(\log n)$ time per symbol, achieved by previously known algorithms). To our knowledge, our algorithm is the first that achieves $O(\log n)$ worst case time per input symbol. Searching for a pattern of length $m$ in the resulting suffix tree takes $O(\min(m \log |\Sigma|, m + \log n) + tocc)$ time, where $tocc$ is the number of occurrences of the pattern. The paper also describes more applications and shows how to obtain alternative methods for dealing with suffix sorting, dynamic lowest common ancestors, and order maintenance. The technical features of the proposed technique for a given data structure $\mathscr{D}$ are the following ones. The new data structure $\mathscr{D}'$ is obtained from $\mathscr{D}$ by augmenting the latter with an oracle for strings, extending the functionalities of the Dietz--Sleator list for order maintenance [P. F. Dietz and D. D. Sleator, Proceedings of the Nineteenth Annual ACM Symposium on Theory of Computing, ACM, New York, 1987, pp. 365--372; A. Tsakalidis, Acta Inform., 21 (1984), pp. 101--112]. The space complexity of $\mathscr{D}'$ is $\mathscr{S}(n) + O(n)$ memory cells for storing $n$ keys, where $\mathscr{S}(n)$ denotes the space complexity of $\mathscr{D}$. Then, each operation involving $O(1)$ keys taken from $\mathscr{D}'$ requires $O(\mathscr{T}(n))$ time, where $\mathscr{T}(n)$ denotes the time complexity of the corresponding operation originally supported in $\mathscr{D}$. Each operation involving a key $y$ not stored in $\mathscr{D}'$ takes $O(\mathscr{T}(n) + |y|)$ time, where $|y|$ denotes the length of $y$. For the special case where the oracle handles suffixes of a string, the achieved insertion time is $O(\mathscr{T}(n))$. Amihood Amir, Gianni Franceschini, Roberto Grossi, Tsvi Kopelowitz, Moshe Lewenstein, Noa Lewenstein |
SIAM J. Comput. | 3 |
| 2014 | Towards optimal packed string matching
Oren Ben-Kiki, Philip Bille, Dany Breslauer, Leszek Gasieniec, Roberto Grossi, Oren Weimann |
Theor. Comput. Sci. | 5 |
| 2013 | A Constant-Space Comparison-Based Algorithm for Computing the Burrows-Wheeler Transform
Maxime Crochemore, Roberto Grossi, Juha Kärkkäinen, Gad M. Landau |
CPM | 2 |
| 2013 | Encodings for Range Selection and Top-k Queries
Roberto Grossi, John Iacono, Gonzalo Navarro 0001, Rajeev Raman, S. Srinivasa Rao 0001 |
ESA | 1 |
| 2013 | Dynamic Compressed Strings with Random Access
Roberto Grossi, Rajeev Raman, S. Srinivasa Rao 0001, Rossano Venturini |
ICALP (1) | 1 |
| 2013 | Optimal Listing of Cycles and st-Paths in Undirected GraphsabstractThe classical problem of efficiently listing all the simple cycles in a graph has been studied since the early 70s. For a graph with n vertices and m edges, containing η cycles, the most efficient solution was presented by Johnson [SIAM J. Computing, 1975] and takes O((η + 1)(m + n)) time. This solution is not optimal for undirected graphs: nevertheless, no theoretical improvements have been proposed in the past decades. We present the first optimal solution to list all the simple cycles in an undirected graph G. Specifically, let (G) denote the set of all these cycles (| (G)| = η). For a cycle c ∊ (G), let |c| denote the number of edges in c. Our algorithm requires time and is asymptotically optimal: Ω(m) time is necessarily required to read G as input, and time is required to list the output. We also present the first optimal solution to list all the simple paths from s to t (shortly, st-paths) in an undirected graph G. Let st(G) denote the set of st-paths in G and, for an st-path π ∊ st(G), let |π| be the number of edges in π. Our algorithm lists all the st-paths in G optimally in time. Etienne Birmelé, Rui A. Ferreira, Roberto Grossi, Andrea Marino 0001, Nadia Pisanti, Romeo Rizzi, Gustavo Sacomoto |
SODA | 3 |
| 2013 | Pattern Discovery and Listing in Graphs
Roberto Grossi |
SPIRE | 1 |
| 2013 | Design of Practical Succinct Data Structures for Large Data Collections
Roberto Grossi, Giuseppe Ottaviano |
SEA | 1 |
| 2013 | Mobilomics in Saccharomyces cerevisiae strainsabstractBACKGROUND: Mobile Genetic Elements (MGEs) are selfish DNA integrated in the genomes. Their detection is mainly based on consensus-like searches by scanning the investigated genome against the sequence of an already identified MGE. Mobilomics aims at discovering all the MGEs in a genome and understanding their dynamic behavior: The data for this kind of investigation can be provided by comparative genomics of closely related organisms. The amount of data thus involved requires a strong computational effort, which should be alleviated. RESULTS: Our approach proposes to exploit the high similarity among homologous chromosomes of different strains of the same species, following a progressive comparative genomics philosophy. We introduce a software tool based on our new fast algorithm, called regender, which is able to identify the conserved regions between chromosomes. Our case study is represented by a unique recently available dataset of 39 different strains of S.cerevisiae, which regender is able to compare in few minutes. By exploring the non-conserved regions, where MGEs are mainly retrotransposons called Tys, and marking the candidate Tys based on their length, we are able to locate a priori and automatically all the already known Tys and map all the putative Tys in all the strains. The remaining putative mobile elements (PMEs) emerging from this intra-specific comparison are sharp markers of inter-specific evolution: indeed, many events of non-conservation among different yeast strains correspond to PMEs. A clustering based on the presence/absence of the candidate Tys in the strains suggests an evolutionary interconnection that is very similar to classic phylogenetic trees based on SNPs analysis, even though it is computed without using phylogenetic information. CONCLUSIONS: The case study indicates that the proposed methodology brings two major advantages: (a) it does not require any template sequence for the wanted MGEs and (b) it can be applied to infer MGEs also for low coverage genomes with unresolved bases, where traditional approaches are largely ineffective. Giulia Menconi, Giovanni Battaglia, Roberto Grossi, Nadia Pisanti, Roberto Marangoni |
BMC Bioinform. | 3 |
| 2013 | Simple real-time constant-space string matching
Dany Breslauer, Roberto Grossi, Filippo Mignosi |
Theor. Comput. Sci. | 2 |
| 2013 | On computing the diameter of real-world undirected graphs
Pierluigi Crescenzi, Roberto Grossi, Michel Habib, Leonardo Lanzi, Andrea Marino 0001 |
Theor. Comput. Sci. | 2 |
| 2012 | Fast Compressed Tries through Path DecompositionsabstractTries are popular data structures for storing a set of strings, where common prefixes are represented by common root-to-node paths. Over fifty years of usage have produced many variants and implementations to overcome some of their limitations. We explore new succinct representations of path-decomposed tries and experimentally evaluate the corresponding reduction in space usage and memory latency, comparing with the state of the art. We study two cases of applications: (1) a compressed dictionary for (compressed) strings, and (2) a monotone minimal perfect hash for strings that preserves their lexicographic order. For (1), we obtain data structures that outperform other state-of-the-art compressed dictionaries in space efficiency, while obtaining predictable query times that are competitive with data structures preferred by the practitioners. In (2), our tries perform several times faster than other trie-based monotone perfect hash functions, while occupying nearly the same space. Giuseppe Ottaviano, Roberto Grossi |
ALENEX | 2 |
| 2012 | Constant-Time Word-Size String Matching
Dany Breslauer, Leszek Gasieniec, Roberto Grossi |
CPM | 3 |
| 2012 | The wavelet trie: maintaining an indexed sequence of strings in compressed spaceabstractAn indexed sequence of strings is a data structure for storing a string sequence that supports random access, searching, range counting and analytics operations, both for exact matches and prefix search. String sequences lie at the core of column-oriented databases, log processing, and other storage and query tasks. In these applications each string can appear several times and the order of the strings in the sequence is relevant. The prefix structure of the strings is relevant as well: common prefixes are sought in strings to extract interesting features from the sequence. Moreover, space-efficiency is highly desirable as it translates directly into higher performance, since more data can fit in fast memory. Roberto Grossi, Giuseppe Ottaviano |
PODS | 1 |
| 2012 | Efficient Bubble Enumeration in Directed Graphs
Etienne Birmelé, Pierluigi Crescenzi, Rui A. Ferreira, Roberto Grossi, Vincent Lacroix, Andrea Marino 0001, Nadia Pisanti, Gustavo Sacomoto, Marie-France Sagot |
SPIRE | 4 |
| 2012 | On Computing the Diameter of Real-World Directed (Weighted) Graphs
Pierluigi Crescenzi, Roberto Grossi, Leonardo Lanzi, Andrea Marino 0001 |
SEA | 2 |
| 2012 | Consecutive ones property and PQ-trees for multisets: Hardness of counting their orderings
Giovanni Battaglia, Roberto Grossi, Noemi Scutellà |
Inf. Comput. | 2 |
| 2011 | Semi-indexing semi-structured data in tiny spaceabstractSemi-structured textual formats are gaining increasing popularity for the storage of document collections and rich logs. Their flexibility comes at the cost of having to load and parse a document entirely even if just a small part of it needs to be accessed. For instance, in data analytics massive collections are usually scanned sequentially, selecting a small number of attributes from each document. We propose a technique to attach to a raw, unparsed document (even in compressed form) a "semi-index": a succinct data structure that supports operations on the document tree at speed comparable with an in-memory deserialized object, thus bridging textual formats with binary formats. After describing the general technique, we focus on the JSON format: our experiments show that avoiding the full loading and parsing step can give speedups of up to 12 times for on-disk documents using a small space overhead. Giuseppe Ottaviano, Roberto Grossi |
CIKM | 2 |
| 2011 | Simple Real-Time Constant-Space String Matching
Dany Breslauer, Roberto Grossi, Filippo Mignosi |
CPM | 2 |
| 2011 | Counting the Orderings for Multisets in Consecutive Ones Property and PQ-Trees
Giovanni Battaglia, Roberto Grossi, Noemi Scutellà |
Developments in Language Theory | 2 |
| 2011 | Output-Sensitive Listing of Bounded-Size Trees in Undirected Graphs
Rui A. Ferreira, Roberto Grossi, Romeo Rizzi |
ESA | 2 |
| 2011 | Optimal Packed String MatchingabstractIn the packed string matching problem, each machine word accomodates alpha characters, thus an n-character text occupies n/alpha memory words. We extend the Crochemore-Perrin constant-space O(n)-time string matching algorithm to run in optimal O(n/alpha) time and even in real-time, achieving a factor alpha speedup over traditional algorithms that examine each character individually. Our solution can be efficiently implemented, unlike prior theoretical packed string matching work. We adapt the standard RAM model and only use its AC0 instructions (i.e. no multiplication) plus two specialized AC0 packed string instructions. The main string-matching instruction is available in commodity processors (i.e. Intel's SSE4.2 and AVX Advanced String Operations); the other maximal-suffix instruction is only required during pattern preprocessing. In the absence of these two specialized instructions, we propose theoretically-efficient emulation using integer multiplication (not AC0) and table lookup. Oren Ben-Kiki, Philip Bille, Dany Breslauer, Leszek Gasieniec, Roberto Grossi, Oren Weimann |
FSTTCS | 5 |
| 2011 | A quick tour on suffix arrays and compressed suffix arrays
Roberto Grossi |
Theor. Comput. Sci. | 1 |
| 2010 | Finding the Diameter in Real-World Graphs - Experimentally Turning a Lower Bound into an Upper Bound
Pierluigi Crescenzi, Roberto Grossi, Claudio Imbrenda, Leonardo Lanzi, Andrea Marino 0001 |
ESA (1) | 2 |
| 2010 | Optimal Trade-Offs for Succinct String Indexes
Roberto Grossi, Alessio Orlandi, Rajeev Raman |
ICALP (1) | 1 |
| 2009 | Text Indexing, Suffix Sorting, and Data Compression: Common Problems and Techniques
Roberto Grossi |
CPM | 1 |
| 2009 | Optimal Cache-Aware Suffix SelectionabstractGiven string $S[1..N]$ and integer $k$, the {\em suffix selection} problem is to determine the $k$th lexicographically smallest amongst the suffixes $S[i\ldots N]$, $1 \leq i \leq N$. We study the suffix selection problem in the cache-aware model that captures two-level memory inherent in computing systems, for a \emph{cache} of limited size $M$ and block size $B$. The complexity of interest is the number of block transfers. We present an optimal suffix selection algorithm in the cache-aware model, requiring $\Theta\left(N/B\right)$ block transfers, for any string $S$ over an unbounded alphabet (where characters can only be compared), under the common tall-cache assumption (i.e. $M=\Omega\left(B^{1+\epsilon}\right)$, where $\epsilon<1$). Our algorithm beats the bottleneck bound for permuting an input array to the desired output array, which holds for nearly any nontrivial problem in hierarchical memory models. Gianni Franceschini, Roberto Grossi, S. Muthukrishnan 0001 |
STACS | 2 |
| 2009 | More Haste, Less Waste: Lowering the Redundancy in Fully Indexable DictionariesabstractWe consider the problem of representing, in a compressed format, a bit-vector~$S$ of $m$ bits with $n$ $\mathbf{1}$s, supporting the following operations, where $b \in \{ \mathbf{0}, \mathbf{1} \}$: \begin{itemize} \item $\mathtt{rank}_b(S,i)$ returns the number of occurrences of bit $b$ in the prefix $S\left[1..i\right]$; \item $\mathtt{select}_b(S,i)$ returns the position of the $i$th occurrence of bit $b$ in $S$. \end{itemize} Such a data structure is called \emph{fully indexable dictionary (\textsc{fid})} [Raman, Raman, and Rao, 2007], and is at least as powerful as predecessor data structures. Viewing $S$ as a set $X = \{ x_1, x_2, \ldots, x_n \}$ of $n$ distinct integers drawn from a universe $[m] = \{1, \ldots, m\}$, the predecessor of integer $y \in [m]$ in $X$ is given by $\ensuremath{\mathtt{select}^{}_1}(S, \ensuremath{\mathtt{rank}_1}(S,y-1))$. {\textsc{fid}}s have many applications in succinct and compressed data structures, as they are often involved in the construction of succinct representation for a variety of abstract data types. Our focus is on space-efficient {\textsc{fid}}s on the \textsc{ram} model with word size $\Theta(\lg m)$ and constant time for all operations, so that the time cost is independent of the input size. Given the bitstring $S$ to be encoded, having length $m$ and containing $n$ ones, the minimal amount of information that needs to be stored is $B(n,m) = \lceil \log {{m}\choose{n}} \rceil$. The state of the art in building a \textsc{fid}\ for~$S$ is given in~\mbox{}[P\v{a}tra\c{s}cu, 2008] using $B(m,n)+O( m / ( (\log m/ t) ^t) ) + O(m^{3/4}) $ bits, to support the operations in $O(t)$ time. Here, we propose a parametric data structure exhibiting a time/space trade-off such that, for any real constants $0 < \delta \leq 1/2$, $0 < \varepsilon \leq 1$, and integer $s > 0$, it uses \[ B(n,m) + O\left(n^{1+\delta} + n \left(\frac{m}{n^s}\right)^\varepsilon\right) \] bits and performs all the operations in time $O(s\delta^{-1} + \varepsilon^{-1})$. The improvement is twofold: our redundancy can be lowered parametrically and, fixing $s = O(1)$, we get a constant-time \textsc{fid}\ whose space is $B(n,m) + O(m^\varepsilon/\mathrm{poly}(n))$ bits, for sufficiently large $m$. This is a significant improvement compared to the previous bounds for the general case. Roberto Grossi, Alessio Orlandi, Rajeev Raman, S. Srinivasa Rao 0001 |
STACS | 1 |
| 2009 | MADMX: A Novel Strategy for Maximal Dense Motif Extraction
Roberto Grossi, Andrea Pietracaprina, Nadia Pisanti, Geppino Pucci, Eli Upfal, Fabio Vandin |
WABI | 1 |
| 2009 | Masking patterns in sequences: A new class of motif discovery with don't cares
Giovanni Battaglia, Davide Cangelosi, Roberto Grossi, Nadia Pisanti |
Theor. Comput. Sci. | 3 |
| 2008 | On searching compressed string collections cache-obliviouslyabstractCurrent data structures for searching large string collections either fail to achieve minimum space or cause too many cache misses. In this paper we discuss some edge linearizations of the classic trie data structure that are simultaneously cache-friendly and compressed. We provide new insights on front coding [24], introduce other novel linearizations, and study how close their space occupancy is to the information-theoretic minimum. The moral is that they are not just heuristics. Our second contribution is a novel dictionary encoding scheme that builds upon such linearizations and achieves nearly optimal space, offers competitive I/O-search time, and is also conscious of the query distribution. Finally, we combine those data structures with cache-oblivious tries [2, 5] and obtain a succinct variant whose space is close to the information-theoretic minimum. Paolo Ferragina, Roberto Grossi, Ankur Gupta 0003, Rahul Shah 0001, Jeffrey Scott Vitter |
PODS | 2 |
| 2008 | No sorting? better searching!abstractQuestions about order versus disorder in systems and models have been fascinating scientists over the years. In computer science, order is intimately related to sorting, commonly meant as the task of arranging keys in increasing or decreasing order with respect to an underlying total order relation. The sorted organization is amenable for searching a set of n keys, since each search requires Θ(log n ) comparisons in the worst case, which is optimal if the cost of a single comparison can be considered a constant. Nevertheless, we prove that disorder implicitly provides more information than order does. For the general case of searching an array of multidimensional keys whose comparison cost is proportional to their length (and hence which cannot be considered a constant), we demonstrate that “suitable” disorder gives better bounds than those derivable by using the natural lexicographic order. We start from previous work done by Andersson et al. [2001], who proved that Θ( k log log n /log log(4 + k log log n /log n ) + k + log n ) character comparisons (or probes) comprise the tight complexity for searching a plain sorted array of n keys, each of length k , arranged in lexicographic order. We describe a novel permutation of the n keys that is different from the sorted order. When keys are kept “unsorted” in the array according to this permutation, the complexity of searching drops to Θ( k + log n ) character comparisons (or probes) in the worst case, which is optimal among all possible permutations, up to a constant factor. Consequently, disorder carries more information than does order; this fact was not observable before, since the latter two bounds are Θ(log n ) when k = O (1). More implications are discussed in the article, including searching in the bit-probe model. Gianni Franceschini, Roberto Grossi |
ACM Trans. Algorithms | 2 |
| 2007 | On the Size of Succinct Indices
Alexander Golynski, Roberto Grossi, Ankur Gupta 0003, Rajeev Raman, S. Srinivasa Rao 0001 |
ESA | 2 |
| 2006 | Squeezing succinct data structures into entropy bounds
Kunihiko Sadakane, Roberto Grossi |
SODA | 2 |
| 2006 | Amortized Rigidness in Dynamic Cartesian Trees
Iwona Bialynicka-Birula, Roberto Grossi |
STACS | 2 |
| 2006 | Foreword
Paolo Ferragina, Roberto Grossi, Fabrizio Luccio |
Theory Comput. Syst. | 2 |
| 2006 | Optimal Implicit Dictionaries over Unbounded Universes
Gianni Franceschini, Roberto Grossi |
Theory Comput. Syst. | 2 |
| 2006 | When indexing equals compression: Experiments with compressing suffix arrays and applicationsabstractWe report on a new experimental analysis of high-order entropy-compressed suffix arrays, which retains the theoretical performance of previous work and represents an improvement in practice. Our experiments indicate that the resulting text index offers state-of-the-art compression. In particular, we require roughly 20% of the original text size---without requiring a separate instance of the text. We can additionally use a simple notion to encode and decode block-sorting transforms (such as the Burrows--Wheeler transform), achieving a compression ratio comparable to that of bzip2. We also provide a compressed representation of suffix trees (and their associated text) in a total space that is comparable to that of the text alone compressed with gzip. Luca Foschini 0002, Roberto Grossi, Ankur Gupta 0003, Jeffrey Scott Vitter |
ACM Trans. Algorithms | 2 |
| 2005 | Optimal In-place Sorting of Vectors and Records
Gianni Franceschini, Roberto Grossi |
ICALP | 2 |
| 2005 | Rank-Sensitive Data Structures
Iwona Bialynicka-Birula, Roberto Grossi |
SPIRE | 2 |
| 2005 | Compressed Suffix Arrays and Suffix Trees with Applications to Text Indexing and String MatchingabstractThe proliferation of online text, such as found on the World Wide Web and in online databases, motivates the need for space-efficient text indexing methods that support fast string searching. We model this scenario as follows: Consider a text T consisting of n symbols drawn from a fixed alphabet $\Sigma$. The text T can be represented in $n \lg |\Sigma|$ bits by encoding each symbol with $\lg |\Sigma|$ bits. The goal is to support fast online queries for searching any string pattern P of m symbols, with T being fully scanned only once, namely, when the index is created at preprocessing time. The text indexing schemes published in the literature are greedy in terms of space usage: they require $\Omega(n \lg n)$ additional bits of space in the worst case. For example, in the standard unit cost RAM, suffix trees and suffix arrays need $\Omega(n)$ memory words, each of $\Omega(\lg n)$ bits. These indexes are larger than the text itself by a multiplicative factor of $\Omega(\smash{\lg_{|\Sigma|} n})$, which is significant when $\Sigma$ is of constant size, such as in \textsc{ascii} or \textsc{unicode}. On the other hand, these indexes support fast searching, either in $O(m \lg |\Sigma|)$ time or in $O(m +\lg n)$ time, plus an output-sensitive cost $O(\mathit{occ})$ for listing the $\mathit{occ}$ pattern occurrences. We present a new text index that is based upon compressed representations of suffix arrays and suffix trees. It achieves a fast $\smash{O(m /\lg_{|\Sigma|} n + \lg_{|\Sigma|}^\epsilon n)}$ search time in the worst case, for any constant $0 < \epsilon \leq 1$, using at most $\smash{\bigl(\epsilon^{-1} + O(1)\bigr) \, n \lg |\Sigma|}$ bits of storage. Our result thus presents for the first time an efficient index whose size is provably linear in the size of the text in the worst case, and for many scenarios, the space is actually sublinear in practice. As a concrete example, the compressed suffix array for a typical 100 MB \textsc{ascii} file can require 30--40 MB or less, while the raw suffix array requires 500 MB. Our theoretical bounds improve \emph{both} time and space of previous indexing schemes. Listing the pattern occurrences introduces a sublogarithmic slowdown factor in the output-sensitive cost, giving $O(\mathit{occ} \, \smash{\lg_{|\Sigma|}^\epsilon n})$ time as a result. When the patterns are sufficiently long, we can use auxiliary data structures in $O(n \lg |\Sigma|)$ bits to obtain a total search bound of $O(m /\lg_{|\Sigma|} n + \mathit{occ})$ time, which is optimal. Roberto Grossi, Jeffrey Scott Vitter |
SIAM J. Comput. | 1 |
| 2005 | Bases of Motifs for Generating Repeated Patterns with Wild CardsabstractMotif inference represents one of the most important areas of research in computational biology, and one of its oldest ones. Despite this, the problem remains very much open in the sense that no existing definition is fully satisfying, either in formal terms, or in relation to the biological questions that involve finding such motifs. Two main types of motifs have been considered in the literature: matrices (of letter frequency per position in the motif) and patterns. There is no conclusive evidence in favor of either, and recent work has attempted to integrate the two types into a single model. In this paper, we address the formal issue in relation to motifs as patterns. This is essential to get at a better understanding of motifs in general. In particular, we consider a promising idea that was recently proposed, which attempted to avoid the combinatorial explosion in the number of motifs by means of a generator set for the motifs. Instead of exhibiting a complete list of motifs satisfying some input constraints, what is produced is a basis of such motifs from which all the other ones can be generated. We study the computational cost of determining such a basis of repeated motifs with wild cards in a sequence. We give new upper and lower bounds on such a cost, introducing a notion of basis that is provably contained in (and, thus, smaller) than previously defined ones. Our basis can be computed in less time and space, and is still able to generate the same set of motifs. We also prove that the number of motifs in all bases defined so far grows exponentially with the quorum, that is, with the minimal number of times a motif must appear in a sequence, something unnoticed in previous work. We show that there is no hope to efficiently compute such bases unless the quorum is fixed. Nadia Pisanti, Maxime Crochemore, Roberto Grossi, Marie-France Sagot |
IEEE ACM Trans. Comput. Biol. Bioinform. | 3 |
| 2004 | A Trie-Based Approach for Compacting Automata
Maxime Crochemore, Chiara Epifanio, Roberto Grossi, Filippo Mignosi |
CPM | 3 |
| 2004 | Fast Compression with a Static Model in High-Order EntropyabstractWe report on a simple encoding format called wzip for decompressing block-sorting transforms, such as the Burrows-Wheeler transform (BWT). Our compressor uses the simple notions of gamma encoding and RLE, organized with a wavelet tree, to achieve a slightly better compression ratio than bzip2 in less time. In fact, our compression/decompression time is dependent on H/sub h/, the hth order empirical entropy. This relationship of performance to the compressibility of data is a key new idea among compression algorithms. Another key contribution of our compressor is its simplicity. Our compressor can also operate as a full-text index with a small amount of data, while still preserving backward compatibility with just the compressor. Luca Foschini 0002, Roberto Grossi, Ankur Gupta 0003, Jeffrey Scott Vitter |
Data Compression Conference | 2 |
| 2004 | No Sorting? Better Searching!abstractSorting is commonly meant as the task of arranging keys in increasing or decreasing order (or small variations of this order). Given n keys underlying a total order, the best organization in an array is maintaining them in sorted order. Searching requires /spl Theta/ (log n) comparisons in the worst case, which is optimal. We demonstrate that this basic fact in data structures does not hold for the general case of multidimensional keys, whose comparison cost is proportional to their length. In two papers by Andersson et al. (1994) and Andersson et al. (1995) and the full version in 2001, Andersson et al. study the complexity of searching a sorted array of n keys, each of length k, arranged in lexicographic (or alphabetic) order for an arbitrary, possibly unbounded, ordered alphabet. They give sophisticated arguments for proving a tight bound in the worst case for this basic data organization, up to a constant factor, obtaining /spl Theta/(((k log log n)/(log log (4 + ((k log log n)/log n)))) + k log n) character comparisons (or probes). Note that the bound is /spl Theta/ (log n) when k = 1, which is the case that is well known in algorithmics. We describe a permutation of the n keys that is different from the sorted order, and sorting is just the starting point for describing our preprocessing. When keys are stored according to this "unsorted" order in the array, the complexity of searching drops to /spl Theta/ (k + log n) character comparisons (or probes) in the worst case, which is optimal among all possible permutations of the n keys in the array, up to a constant factor. Again, the bound is /spl Theta/ (log n) when k = 1. Jointly with the aforementioned result of Anders son et al., our finding provably shows that keeping k-dimensional keys sorted in an array is not the best data organization for searching. This fact was not observable before by just considering k = O(1) as sorting is an optimal organization in this case. More implications of our result are commented in the introduction. Gianni Franceschini, Roberto Grossi |
FOCS | 2 |
| 2004 | A General Technique for Managing Strings in Comparison-Driven Data Structures
Gianni Franceschini, Roberto Grossi |
ICALP | 2 |
| 2004 | When indexing equals compression: experiments with compressing suffix arrays and applications
Roberto Grossi, Ankur Gupta 0003, Jeffrey Scott Vitter |
SODA | 1 |
| 2004 | Implicit B-trees: a new data structure for the dictionary problem
Gianni Franceschini, Roberto Grossi, J. Ian Munro, Linda Pagli |
J. Comput. Syst. Sci. | 2 |
| 2003 | Optimal Cache-Oblivious Implicit Dictionaries
Gianni Franceschini, Roberto Grossi |
ICALP | 2 |
| 2003 | A Basis of Tiling Motifs for Generating Repeated Patterns and Its Complexity for Higher Quorum
Nadia Pisanti, Maxime Crochemore, Roberto Grossi, Marie-France Sagot |
MFCS | 3 |
| 2003 | Implicit dictionaries supporting searches and amortized updates in O(log n log log n) time
Gianni Franceschini, Roberto Grossi |
SODA | 2 |
| 2003 | High-order entropy-compressed text indexes
Roberto Grossi, Ankur Gupta 0003, Jeffrey Scott Vitter |
SODA | 1 |
| 2003 | Optimal Worst-Case Operations for Implicit Cache-Oblivious Search Trees
Gianni Franceschini, Roberto Grossi |
WADS | 2 |
| 2003 | Text sparsification via local maxima
Pierluigi Crescenzi, Alberto Del Lungo, Roberto Grossi, Elena Lodi, Linda Pagli, Gianluca Rossi |
Theor. Comput. Sci. | 3 |
| 2002 | Implicit B-Trees: New Results for the Dictionary ProblemabstractWe reopen the issue of finding an implicit data structure for the dictionary problem. In particular, we examine the problem of maintaining n data values in the first n locations of an array in such a way that we can efficiently perform the operations insert, delete and search. No information other than n and the data is to be retained; and the only operations which we may perform on the data values (other than reads and writes) are comparisons. Our structure supports these operations in O(log/sup 2/ n/log log n) time, marking the first improvement on the problem since the mid 1980's. En route we develop a number of space efficient techniques for handling segments of a large array in a memory hierarchy. We achieve a cost of O(log/sub B/ n) block transfers like in regular B-trees, under the realistic assumption that a block stores B = /spl Omega/(log n) keys, so that reporting r consecutive keys in sorted order has a cost of O(log/sub B/n+r/B) block transfers. Being implicit, our B-tree occupies exactly [n/B] blocks after each update. Gianni Franceschini, Roberto Grossi, J. Ian Munro, Linda Pagli |
FOCS | 2 |
| 2002 | Optimal Deterministic Protocols for Mobile Robots on a Grid
Roberto Grossi, Andrea Pietracaprina, Geppino Pucci |
Inf. Comput. | 1 |
| 2000 | Text Sparsification via Local Maxima
Pierluigi Crescenzi, Alberto Del Lungo, Roberto Grossi, Elena Lodi, Linda Pagli, Gianluca Rossi |
FSTTCS | 3 |
| 2000 | Compressed suffix arrays and suffix trees with applications to text indexing and string matching (extended abstract)abstractThe proliferation of online text, such as on the World Wide Web and in databases, motivates the need for space-efficient index methods that support fast search. Consider a text T of n binary symbols to index. Given any query pattern P of m binary symbols, the goal is to search for P in T quickly, with T being fully scanned only once, namely, when the index is created. All indexing schemes published in the last thirty years support searching in \\Theta(m) worst-case time and require \\Theta(n) memory words (or \\Theta(n log n) bits), which is significantly larger than the text itself. In this paper we provide a breakthrough both in searching time and index space under the same model of computation as the one adopted in previous work. Based upon new compressed representations of suffix arrays and suffix trees, we construct an index structure that occupies only O(n) bits and compares favorably with inverted lists in space. We can search any binary pattern P , stored in O(m= log n) words, in only o(m) time. Specifically, searching takes O(1) time for m = o(log n), and O(m= log n + log ffl n) = o(m) time for m =\\Omega\\Gamma239 n) and any fixed 0 ! ffl ! 1. That is, we achieve optimal O(m= log n) search time for sufficiently large m =\\Omega\\Gamma206 1+ffl n). We can list all the occ pattern occurrences in optimal O(occ) additional time when m = \\Omega\\Gamma1 olylog(n)) or when occ = \\Omega\\Gamma n ffl ); otherwise, listing takes O(occ log ffl n) additional time. Roberto Grossi, Jeffrey Scott Vitter |
STOC | 1 |
| 1999 | IP Address Lookup Made Fast and Simple
Pierluigi Crescenzi, Leandro Dardini, Roberto Grossi |
ESA | 3 |
| 1999 | Efficient Techniques for Maintaining Multidimensional Keys in Linked Data Structures
Roberto Grossi, Giuseppe F. Italiano |
ICALP | 1 |
| 1999 | Efficient Splitting and Merging Algorithms for Order Decomposable Problems
Roberto Grossi, Giuseppe F. Italiano |
Inf. Comput. | 1 |
| 1999 | The String B-tree: A New Data Structure for String Search in External Memory and Its ApplicationsabstractWe introduce a new text-indexing data structure, the String B-Tree , that can be seen as a link between some traditional external-memory and string-matching data structures. In a short phrase, it is a combination of B-trees and Patricia tries for internal-node indices that is made more effective by adding extra pointers to speed up search and update operations. Consequently, the String B-Tree overcomes the theoretical limitations of inverted files, B-trees, prefix B-trees, suffix arrays, compacted tries and suffix trees. String B-trees have the same worst-case performance as B-trees but they manage unbounded-length strings and perform much more powerful search operations such as the ones supported by suffix trees. String B-trees are also effective in main memory (RAM model) because they improve the online suffix tree search on a dynamic set of strings. They also can be successfully applied to database indexing and software duplication. Paolo Ferragina, Roberto Grossi |
J. ACM | 2 |
| 1999 | Parallel Construction and Query of Index Data Structures for Pattern Matching on Square Matrices
Raffaele Giancarlo, Roberto Grossi |
J. Complex. | 2 |
| 1998 | Simple Planar Graph Partition into Three Forests
Roberto Grossi, Elena Lodi |
Discret. Appl. Math. | 1 |
| 1998 | Optimal On-Line Search and Sublinear Time Update in String MatchingabstractThis paper investigates the problem of searching on-line for the occurrences (occ) of an arbitrary pattern of length p in a text of length n subjected to some updates after its preprocessing. Each text update consists of inserting or deleting an arbitrary string of length y. We present the first dynamic algorithm that achieves optimal query time, i.e., $\Theta(p+occ)$, sublinear time per update, i.e., $O(\sqrt{n} + y)$, and optimal space, i.e., $\Theta(n)$, in the worst case. As a result, our algorithm obtains the same query time and space usage of suffix trees [McCreight, J. Assoc. Comput. Mach., 23 (1976), pp. 262--272] while improving their O(n + y) update performance. Paolo Ferragina, Roberto Grossi |
SIAM J. Comput. | 2 |
| 1998 | On Updating Suffix Tree Labels
Paolo Ferragina, Roberto Grossi, Manuela Montangero |
Theor. Comput. Sci. | 2 |
| 1997 | A Note on Updating Suffix Tree Labels
Paolo Ferragina, Roberto Grossi, Manuela Montangero |
CIAC | 2 |
| 1997 | Efficient Splitting and Merging Algorithms for Order Decomposable Problems (Extended Abstract)
Roberto Grossi, Giuseppe F. Italiano |
ICALP | 1 |
| 1997 | On Sorting Strings in External Memory (Extended Abstract)abstractIn this paper we address for the first time the I/O complexity of the problem of sorting strings in external memory, which is a fundamental component of many large-scale text applications. In the standard unit-cost RAM comparison model, the complexity of ¤ sorting strings of total ¥ length ¦¨§©¤���������¤��¨¥� � is. By analogy, in the external memory (or I/O) model, where the internal memory has � size and the block transfer size � is, it would be natural to guess that the I/O complexity of sorting strings ¦¨§������������ � � �������� � is, but the known algorithms do not come even close to achieving this bound. Our results show, somewhat counterintuitively, that the I/O complexity of string sorting depends upon the length of the strings relative to the block size. We first consider a simple comparison I/O model, where one is not Lars Arge, Paolo Ferragina, Roberto Grossi, Jeffrey Scott Vitter |
STOC | 3 |
| 1996 | Fast String Searching in Secondary Storage: Theoretical Developments And Experimental Results
Paolo Ferragina, Roberto Grossi |
SODA | 2 |
| 1996 | On the Construction of Classes of Suffix Trees for Square Matrices: Algorithms and Applications
Raffaele Giancarlo, Roberto Grossi |
Inf. Comput. | 2 |
| 1995 | Multi-Dimensional Pattern Matching with Dimensional Wildcards
Raffaele Giancarlo, Roberto Grossi |
CPM | 2 |
| 1995 | Optimal On-Line Search and Sublinear Time Update in String MatchingabstractWe study in a dynamic setting the problem of online searching for the occurrences of an arbitrary pattern string P[1,p] in an indexed text string T[1,n]. That is, we assume that the text T may be updated by inserting or deleting an arbitrary string Y[1,y]. Our main contribution is presenting the first dynamic algorithm that achieves optimal time, i.e. /spl Theta/(p+occ), to find the occ occurrences of P, and sublinear time per update, i.e. O(/spl radic/(n+y)), in the worst case. The required space is optimal /spl Theta/(n). Paolo Ferragina, Roberto Grossi |
FOCS | 2 |
| 1995 | On the Construction of Classes of Suffix Trees for Square Matrices: Algorithms and Applications
Raffaele Giancarlo, Roberto Grossi |
ICALP | 2 |
| 1995 | Fast Incremental Text Editing
Paolo Ferragina, Roberto Grossi |
SODA | 2 |
| 1995 | A fully-dynamic data structure for external substring search (Extended Abstract)abstractWe address the issue of efficiently searching on external dynamic data structures for strings, introducing the External Dynamic Substring Search problem.Consider a set A of (external) text strings kept into secondary storage.The set A can be dynamically changed by inserting or deleting strings, and on-line searched to find all the occurrences of an arbitrary pattern string as a substringof the text strings in A.We introduce the SB-Tree data structure for A, which is the first fully-dynamic data structure allowing the External Dynamic Substring Search problem to be solved with provably good worst-case and amortized 1/0 bounds.It requires optimal space and makes the on-line search alphabet independent also into main memory.The SB-tree can also be used to solve a natural extension of our problem to parameterized strings (p-strings) within the same bounds. Paolo Ferragina, Roberto Grossi |
STOC | 2 |
| 1993 | Parallel Construction and Query of Suffix Trees for Two-Dimensional MatricesabstractWe give efficient CRCW PRAM algorithms for the construction of two data structures, the Lsufiz Tree of a square matrix and the Nested .%@ixTree of a general matrix. Raffaele Giancarlo, Roberto Grossi |
SPAA | 2 |
| 1993 | On Finding Commong Subtrees
Roberto Grossi |
Theor. Comput. Sci. | 1 |
| 1992 | A fast VLSI solution for approximate string matching
Roberto Grossi |
Integr. | 1 |
| 1991 | A Note on the Subtree Isomorphism for Ordered Trees and Related Problems
Roberto Grossi |
Inf. Process. Lett. | 1 |
| 1991 | Further Comments on the Subtree Isomorphism for Ordered Trees
Roberto Grossi |
Inf. Process. Lett. | 1 |
| 1989 | Simple and Efficient String Matching with k Mismatches
Roberto Grossi, Fabrizio Luccio |
Inf. Process. Lett. | 1 |