EDBT 2026 Demo / reviewers in the wild / expert
Arnab Ganguly 0002
dblp:116/4616-2
· DBLP profile ↗
27ranked-venue papers
18as first author
7since 2021 · last 2025
0000-0003-3331-0913ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 16 · 11 first-author · 6 since 2021Graphics, computer vision, multimedia, augmented reality and games · 7 · 5 first-authorDatabases, data management, data science and information retrieval · 6 · 4 first-author · 1 since 2021Artificial intelligence and machine learning · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Two-Dimensional Longest Common Extension Queries in Compact Space
Arnab Ganguly 0002, Daniel Gibney, Rahul Shah 0001, Sharma V. Thankachan |
STACS | 1 |
| 2024 | Bounded-Ratio Gapped String Indexing
Arnab Ganguly 0002, Daniel Gibney, Paul Macnichol, Sharma V. Thankachan |
SPIRE | 1 |
| 2022 | Fully Functional Parameterized Suffix Trees in Compact Space
Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
ICALP | 1 |
| 2022 | The Heaviest Induced Ancestors Problem: Better Data Structures and Applications
Paniz Abedin, Sahar Hooshmand, Arnab Ganguly 0002, Sharma V. Thankachan |
Algorithmica | 3 |
| 2021 | LF Successor: Compact Space Indexing for Order-Isomorphic Pattern MatchingabstractTwo strings are order isomorphic iff the relative ordering of their characters is the same at all positions. For a given text T[1,n] over an ordered alphabet of size σ, we can maintain an order-isomorphic suffix tree/array in O(nlog n) bits and support (order-isomorphic) pattern/substring matching queries efficiently. It is interesting to know if we can encode these structures in space close to the text’s size of nlogσ bits. We answer this question positively by presenting an O(nlog σ)-bit index that allows access to any entry in order-isomorphic suffix array (and its inverse array) in t_{SA} = {O}(log²n/logσ) time. For any pattern P given as a query, this index can count the number of substrings of T that are order-isomorphic to P (denoted by occ) in {O}((|P|logσ+t_{SA})log n) time using standard techniques. Also, it can report the locations of those substrings in additional O(occ ⋅ t_{SA}) time. Arnab Ganguly 0002, Dhrumil Patel, Rahul Shah 0001, Sharma V. Thankachan |
ICALP | 1 |
| 2021 | I/O-optimal categorical 3-sided skyline queries
Arnab Ganguly 0002, Daniel Gibney, Sharma V. Thankachan, Rahul Shah 0001 |
Theor. Comput. Sci. | 1 |
| 2021 | A framework for designing space-efficient dictionaries for parameterized and order-preserving matching
Arnab Ganguly 0002, Wing-Kai Hon, Kunihiko Sadakane, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 1 |
| 2020 | FM-Index Reveals the Reverse Suffix ArrayabstractGiven a text T[1,n] over an alphabet Σ of size σ, the suffix array of T stores the lexicographic order of the suffixes of T. The suffix array needs Θ(nlog n) bits of space compared to the n log σ bits needed to store T itself. A major breakthrough [FM - Index, FOCS'00] in the last two decades has been encoding the suffix array in near-optimal number of bits (≈ log σ bits per character). One can decode a suffix array value using the FM-Index in log^{O(1)} n time. We study an extension of the problem in which we have to also decode the suffix array values of the reverse text. This problem has numerous applications such as in approximate pattern matching [Lam et al., BIBM' 09]. Known approaches maintain the FM - Index of both the forward and the reverse text which drives up the space occupancy to 2nlog σ bits (plus lower order terms). This brings in the natural question of whether we can decode the suffix array values of both the forward and the reverse text, but by using nlog σ bits (plus lower order terms). We answer this question positively, and show that given the FM - Index of the forward text, we can decode the suffix array value of the reverse text in near logarithmic average time. Additionally, our experimental results are competitive when compared to the standard approach of maintaining the FM - Index for both the forward and the reverse text. We believe that applications that require both the forward and reverse text will benefit from our approach. Arnab Ganguly 0002, Daniel Gibney, Sahar Hooshmand, M. Oguzhan Külekci, Sharma V. Thankachan |
CPM | 1 |
| 2020 | Succinct Non-overlapping Indexing
Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
Algorithmica | 1 |
| 2020 | A linear-space data structure for range-LCP queries in poly-logarithmic time
Paniz Abedin, Arnab Ganguly 0002, Wing-Kai Hon, Kotaro Matsuda, Yakov Nekrich, Kunihiko Sadakane, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 2 |
| 2019 | Parameterized Text Indexing with One WildcardabstractTwo equal-length strings X and Y over an alphabet Σ of size σ are a parameterized match iff X can be transformed to Y by renaming the character X[i] to the character Y[i] for 1 ≤ i ≤ |X| using a one-to-one function from the set of characters in X to the set of characters in Y. The parameterized text indexing problem is defined as: Index a text T of n characters over an alphabet set Σ of size σ, such that whenever a pattern P[1, p] comes as a query, we can report all occ parameterized occurrences of P in T. A position i ϵ [1, n] is a parameterized occurrence of P in T, iff P and T[i,(i+p-1)] are a parameterized match. We study an interesting generalization of this problem, where the pattern contains one wildcard character φ ∉ Σ that matches with any other character in Σ. Therefore, for a pattern P[1, p] = P1φP2, our task is to report all positions i in T, such that the string P_1 P_2 and the string obtained by concatenating T[i,(i+|P1|-1)] and T[(i+|P1|+1),(i+p-1)] are a parameterized match. We show that such queries can be answered in optimal O(p+occ) time per query using an O(n log n) space index. We then show how to compress our index into O(n log σ) space but with a higher query cost of O(p(log log n+logσ)+occ logσ). Arnab Ganguly 0002, Wing-Kai Hon, Solon P. Pissis, Rahul Shah 0001, Sharma V. Thankachan |
DCC | 1 |
| 2019 | Categorical Range Reporting with FrequenciesabstractIn this paper, we consider a variant of the color range reporting problem called color reporting with frequencies. Our goal is to pre-process a set of colored points into a data structure, so that given a query range Q, we can report all colors that appear in Q, along with their respective frequencies. In other words, for each reported color, we also output the number of times it occurs in Q. We describe an external-memory data structure that uses O(N(1+log^2D/log N)) words and answers one-dimensional queries in O(1 +K/B) I/Os, where N is the total number of points in the data structure, D is the total number of colors in the data structure, K is the number of reported colors, and B is the block size. Next we turn to an approximate version of this problem: report all colors sigma that appear in the query range; for every reported color, we provide a constant-factor approximation on its frequency. We consider color reporting with approximate frequencies in two dimensions. Our data structure uses O(N) space and answers two-dimensional queries in O(log_B N +log^*B + K/B) I/Os in the special case when the query range is bounded on two sides. As a corollary, we can also answer one-dimensional approximate queries within the same time and space bounds. Arnab Ganguly 0002, J. Ian Munro, Yakov Nekrich, Rahul Shah 0001, Sharma V. Thankachan |
ICDT | 1 |
| 2019 | Range Shortest Unique Substring Queries
Paniz Abedin, Arnab Ganguly 0002, Solon P. Pissis, Sharma V. Thankachan |
SPIRE | 2 |
| 2018 | A Linear-Space Data Structure for Range-LCP Queries in Poly-Logarithmic Time
Paniz Abedin, Arnab Ganguly 0002, Wing-Kai Hon, Yakov Nekrich, Kunihiko Sadakane, Rahul Shah 0001, Sharma V. Thankachan |
COCOON | 2 |
| 2018 | The Heaviest Induced Ancestors Problem RevisitedabstractWe revisit the heaviest induced ancestors problem, which has several interesting applications in string matching. Let T_1 and T_2 be two weighted trees, where the weight W(u) of a node u in either of the two trees is more than the weight of u's parent. Additionally, the leaves in both trees are labeled and the labeling of the leaves in T_2 is a permutation of those in T_1. A node x in T_1 and a node y in T_2 are induced, iff their subtree have at least one common leaf label. A heaviest induced ancestor query HIA(u_1,u_2) is: given a node u_1 in T_1 and a node u_2 in T_2, output the pair (u_1^*,u_2^*) of induced nodes with the highest combined weight W(u^*_1) + W(u^*_2), such that u_1^* is an ancestor of u_1 and u^*_2 is an ancestor of u_2. Let n be the number of nodes in both trees combined and epsilon >0 be an arbitrarily small constant. Gagie et al. [CCCG' 13] introduced this problem and proposed three solutions with the following space-time trade-offs: - an O(n log^2n)-word data structure with O(log n log log n) query time - an O(n log n)-word data structure with O(log^2 n) query time - an O(n)-word data structure with O(log^{3+epsilon}n) query time. In this paper, we revisit this problem and present new data structures, with improved bounds. Our results are as follows. - an O(n log n)-word data structure with O(log n log log n) query time - an O(n)-word data structure with O(log^2 n/log log n) query time. As a corollary, we also improve the LZ compressed index of Gagie et al. [CCCG' 13] for answering longest common substring (LCS) queries. Additionally, we show that the LCS after one edit problem of size n [Amir et al., SPIRE' 17] can also be reduced to the heaviest induced ancestors problem over two trees of n nodes in total. This yields a straightforward improvement over its current solution of O(n log^3 n) space and O(log^3 n) query time. Paniz Abedin, Sahar Hooshmand, Arnab Ganguly 0002, Sharma V. Thankachan |
CPM | 3 |
| 2018 | A Linear Space Data Structure for Range LCP QueriesabstractRange LCP (longest common prefix) is an extension of the classical LCP problem and is defined as follows: Preprocess a string S[1...n] of n characters, such that whenever an interval [i, j] comes as a query, we can report max{|LCP(Sp, Sq)| | i ≤ p < q ≤ j} Here LCP(Sp, Sq) is the longest common pre fix of the suffixes of S starting at locations p and q, and |LCP(Sp, Sq)| is its length. This problem was first addressed by Amir et al. [ISAAC, 2011]. They showed that the query can be answered in O(log log n) time using an O(n log1+ɛ n) space data structure for an arbitrarily small constant ɛ > 0. In an attempt to reduce the space bound, they presented a linear space data structure of O(d log log n) query time, where d = (j − i + 1). In this paper, we present a new linear space data structure with an improved query time of O(dlogd(logn)1/2−ɛ). Arnab Ganguly 0002, Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
Fundam. Informaticae | 1 |
| 2018 | Ranked document retrieval for multiple patterns
Sudip Biswas, Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 2 |
| 2017 | Stabbing Colors in One DimensionabstractGiven n horizontal segments, each associated with a color from [σ], the Categorical Segment Stabbing problem is to find the distinct K colors stabbed by a vertical line. When the end-points of the segments are distinct and lie in [1, 2n], we present an (2 + ε)n log σ + O(n)-bit index with O(K/ε) query time, where ε∈ (0, 1].When the end-points are arbitrary real numbers, a standard reduction to the above scenario improves the existing bounds of Janardan and Lopez. We also present results for few other variations: • reporting the top-k colors that are stabbed, where each color has a fixed priority. • handling these scenarios when the given segments form a tree range. Arnab Ganguly 0002, Wing-Kai Hon, Rahul Shah 0001 |
DCC | 1 |
| 2017 | Structural Pattern Matching - SuccinctlyabstractLet T be a text of length n containing characters from an alphabet \Sigma, which is the union of two disjoint sets: \Sigma_s containing static characters (s-characters) and \Sigma_p containing parameterized characters (p-characters). Each character in \Sigma_p has an associated complementary character from \Sigma_p. A pattern P (also over \Sigma) matches an equal-length substring $S$ of T iff the s-characters match exactly, there exists a one-to-one function that renames the p-characters in S to the p-characters in P, and if a p-character x is renamed to another p-character y then the complement of x is renamed to the complement of y. The task is to find the starting positions (occurrences) of all such substrings S. Previous indexing solution [Shibuya, SWAT 2000], known as Structural Suffix Tree, requires \Theta(n\log n) bits of space, and can find all occ occurrences in time O(|P|\log \sigma+ occ), where \sigma = |\Sigma|. In this paper, we present the first succinct index for this problem, which occupies n \log \sigma + O(n) bits and offers O(|P|\log\sigma+ occ\cdot \log n \log\sigma) query time. Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
ISAAC | 1 |
| 2017 | pBWT: Achieving Succinct Data Structures for Parameterized Pattern Matching and Related ProblemsabstractThe fields of succinct data structures and compressed text indexing have seen quite a bit of progress over the last two decades. An important achievement, primarily using techniques based on the Burrows-Wheeler Transform (BWT), was obtaining the full functionality of the suffix tree in the optimal number of bits. A crucial property that allows the use of BWT for designing compressed indexes is order-preserving suffix links. Specifically, the relative order between two suffixes in the subtree of an internal node is same as that of the suffixes obtained by truncating the first character of the two suffixes. Unfortunately, in many variants of the text-indexing problem, for e.g., parameterized pattern matching, 2D pattern matching, and order-isomorphic pattern matching, this property does not hold. Consequently, the compressed indexes based on BWT do not directly apply. Furthermore, a compressed index for any of these variants has been elusive throughout the advancement of the field of succinct data structures. We achieve a positive breakthrough on one such problem, namely the Parameterized Pattern Matching problem. Let T be a text that contains η characters from an alphabet Σ, which is the union of two disjoint sets: Ss containing static characters (s-characters) and Σρ containing parameterized characters (p-characters). A pattern P (also over Σ) matches an equal-length substring S of T iff the s-characters match exactly, and there exists a one-to-one function that renames the p-characters in S to that in P. The task is to find the starting positions (occurrences) of all such substrings S. Previous index [Baker, STOC 1993], known as Parameterized Suffix Tree, requires Θ(n log n) bits of space, and can find all occ occurrences in time O(|P| log σ + occ), where σ = |Σ|. We introduce an η log σ + O(n)-bit index with O(|P| log σ+ occ Log η log σ) query time. At the core, lies a new BWT-like transform, which we call the Parameterized Burrows-Wheeler Transform (pBWT). The techniques are extended to obtain a succinct index for the Parameterized Dictionary Matching problem of Idury and Schaffer [CPM, 1994]. Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
SODA | 1 |
| 2017 | Space-time trade-offs for finding shortest unique substrings and maximal unique matches
Arnab Ganguly 0002, Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 1 |
| 2016 | Space-Efficient Dictionaries for Parameterized and Order-Preserving Pattern MatchingabstractLet S and S' be two strings of the same length.We consider the following two variants of string matching. * Parameterized Matching: The characters of S and S' are partitioned into static characters and parameterized characters. The strings are parameterized match iff the static characters match exactly and there exists a one-to-one function which renames the parameterized characters in S to those in S'. * Order-Preserving Matching: The strings are order-preserving match iff for any two integers i,j in [1,|S|], S[i] <= S[j] iff S'[i] <= S'[j]. Let P be a collection of d patterns {P_1, P_2, ..., P_d} of total length n characters, which are chosen from an alphabet Sigma. Given a text T, also over Sigma, we consider the dictionary indexing problem under the above definitions of string matching. Specifically, the task is to index P, such that we can report all positions j where at least one of the patterns P_i in P is a parameterized-match (resp. order-preserving match) with the same-length substring of $T$ starting at j. Previous best-known indexes occupy O(n * log(n)) bits and can report all occ positions in O(|T| * log(|Sigma|) + occ) time. We present space-efficient indexes that occupy O(n * log(|Sigma|+d) * log(n)) bits and reports all occ positions in O(|T| * (log(|Sigma|) + log_{|Sigma|}(n)) + occ) time for parameterized matching and in O(|T| * log(n) + occ) time for order-preserving matching. Arnab Ganguly 0002, Wing-Kai Hon, Kunihiko Sadakane, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 1 |
| 2016 | Space-Time Trade-Offs for the Shortest Unique Substring ProblemabstractGiven a string X[1, n] and a position k in [1, n], the Shortest Unique Substring of X covering k, denoted by S_k, is a substring X[i, j] of X which satisfies the following conditions: (i) i leq k leq j, (ii) i is the only position where there is an occurrence of X[i, j], and (iii) j - i is minimized. The best-known algorithm [Hon et al., ISAAC 2015] can find S k for all k in [1, n] in time O(n) using the string X and additional 2n words of working space. Let tau be a given parameter. We present the following new results. For any given k in [1, n], we can compute S_k via a deterministic algorithm in O(n tau^2 log n tau) time using X and additional O(n/tau) words of working space. For every k in [1, n], we can compute S_k via a deterministic algorithm in O(n tau^2 log n/tau) time using X and additional O(n/tau) words and 4n + o(n) bits of working space. For both problems above, we present an O(n tau log^{c+1} n)-time randomized algorithm that uses n/ log c n words in addition to that mentioned above, where c geq 0 is an arbitrary constant. In this case, the reported string is unique and covers k, but with probability at most n^{-O(1)} , may not be the shortest. As a consequence of our techniques, we also obtain similar space-and-time tradeoffs for a related problem of finding Maximal Unique Matches of two strings [Delcher et al., Nucleic Acids Res. 1999]. Arnab Ganguly 0002, Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan |
ISAAC | 1 |
| 2015 | Ranked Document Retrieval with Forbidden Pattern
Sudip Biswas, Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 2 |
| 2015 | Succinct Non-overlapping Indexing
Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 1 |
| 2015 | Restricted Shortest Path in Temporal Graphs
Sudip Biswas, Arnab Ganguly 0002, Rahul Shah 0001 |
DEXA (1) | 2 |
| 2015 | Forbidden Extension QueriesabstractDocument retrieval is one of the most fundamental problem in information retrieval. The objective is to retrieve all documents from a document collection that are relevant to an input pattern. Several variations of this problem such as ranked document retrieval, document listing with two patterns and forbidden patterns have been studied. We introduce the problem of document retrieval with forbidden extensions. Let D={T_1,T_2,...,T_D} be a collection of D string documents of n characters in total, and P^+ and P^- be two query patterns, where P^+ is a proper prefix of P^-. We call P^- as the forbidden extension of the included pattern P^+. A forbidden extension query < P^+,P^- > asks to report all occ documents in D that contains P^+ as a substring, but does not contain P^- as one. A top-k forbidden extension query < P^+,P^-,k > asks to report those k documents among the occ documents that are most relevant to P^+. We present a linear index (in words) with an O(|P^-| + occ) query time for the document listing problem. For the top-k version of the problem, we achieve the following results, when the relevance of a document is based on PageRank: - an O(n) space (in words) index with O(|P^-|log sigma+ k) query time, where sigma is the size of the alphabet from which characters in D are chosen. For constant alphabets, this yields an optimal query time of O(|P^-|+ k). - for any constant epsilon > 0, a |CSA| + |CSA^*| + Dlog frac{n}{D} + O(n) bits index with O(search(P)+ k cdot tsa cdot log ^{2+epsilon} n) query time, where search(P) is the time to find the suffix range of a pattern P, tsa is the time to find suffix (or inverse suffix) array value, and |CSA^*| denotes the maximum of the space needed to store the compressed suffix array CSA of the concatenated text of all documents, or the total space needed to store the individual CSA of each document. Sudip Biswas, Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
FSTTCS | 2 |