Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Gianni Franceschini

dblp:83/6668 · DBLP profile ↗
← Back
23ranked-venue papers
21as first author
0since 2021 · last 2014
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 22 · 20 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 first-author

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
14 papers
Algorithms and data structures · 95% Computational geometry · 4% Computational complexity · 1%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Memory systems · 100%

Topics — the 24 heaviest of 25, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Algorithms and data structures › sequence algorithms
string algorithms
0.332014
Managing Unbounded-Length Keys in Comparison-Driven Data Structures with Applications to Online Indexing · SIAM J. Comput. 2014
Optimal suffix selection · STOC 2007
In-Place Suffix Sorting · ICALP 2007
Algorithms and data structures › sequence algorithms
sorting
0.372008
No sorting? better searching! · ACM Trans. Algorithms 2008
An in-place sorting with O(nlog n) comparisons and O(n) moves · J. ACM 2005
Optimal In-place Sorting of Vectors and Records · ICALP 2005
Algorithms and data structures
dynamic data structures
0.212014
Managing Unbounded-Length Keys in Comparison-Driven Data Structures with Applications to Online Indexing · SIAM J. Comput. 2014
Algorithms and data structures › sequence algorithms › string algorithms › string indexing
suffix tree construction
0.212014
Managing Unbounded-Length Keys in Comparison-Driven Data Structures with Applications to Online Indexing · SIAM J. Comput. 2014
Algorithms and data structures › sequence algorithms › sorting
in-place sorting
0.242007
An in-place sorting with O(nlog n) comparisons and O(n) moves · J. ACM 2005
Optimal In-place Sorting of Vectors and Records · ICALP 2005
An In-Place Sorting with O(n log n) Comparisons and O(n) Moves · FOCS 2003
Algorithms and data structures › data structure design › search structures
dictionary
0.132006
Implicit dictionaries with O(1) modifications per update and fast search · SODA 2006
Implicit dictionaries supporting searches and amortized updates in O(log n log log n) time · SODA 2003
Optimal Cache-Oblivious Implicit Dictionaries · ICALP 2003
Algorithms and data structures › data structure design › search structures › dictionary
implicit dictionary
0.132006
Implicit dictionaries with O(1) modifications per update and fast search · SODA 2006
Implicit dictionaries supporting searches and amortized updates in O(log n log log n) time · SODA 2003
Optimal Cache-Oblivious Implicit Dictionaries · ICALP 2003
Algorithms and data structures › data structure design
search structures
0.122006
Implicit dictionaries with O(1) modifications per update and fast search · SODA 2006
Implicit dictionaries supporting searches and amortized updates in O(log n log log n) time · SODA 2003
Algorithms and data structures › data structure design › search structures
dictionary problem
0.122004
No Sorting? Better Searching! · FOCS 2004
Implicit B-Trees: New Results for the Dictionary Problem · FOCS 2002
Computational geometry › range searching
multidimensional search
0.112008
No sorting? better searching! · ACM Trans. Algorithms 2008
Algorithms and data structures
selection
0.112007
Optimal suffix selection · STOC 2007
Algorithms and data structures › sequence algorithms › string algorithms › string indexing
suffix array construction
0.112007
In-Place Suffix Sorting · ICALP 2007
Algorithms and data structures › sequence algorithms › sorting
comparison sorting
0.112005
An in-place sorting with O(nlog n) comparisons and O(n) moves · J. ACM 2005
Memory systems › cache
cache-oblivious algorithms
0.012004
Proximity Mergesort: optimal in-place sorting in the cache-oblivious model · SODA 2004
Algorithms and data structures › sequence algorithms › sorting › comparison sorting
merge sort
0.012004
Proximity Mergesort: optimal in-place sorting in the cache-oblivious model · SODA 2004
Algorithms and data structures › memory hierarchy › external memory algorithms
cache-oblivious algorithms
0.012003
Optimal Cache-Oblivious Implicit Dictionaries · ICALP 2003
Algorithms and data structures › analysis of algorithms
comparison complexity
0.012003
An In-Place Sorting with O(n log n) Comparisons and O(n) Moves · FOCS 2003
Algorithms and data structures › data structure design › search structures › search trees › balanced search trees
b-trees
0.012002
Implicit B-Trees: New Results for the Dictionary Problem · FOCS 2002
Algorithms and data structures › space-efficient algorithms › succinct data structures
implicit data structures
0.012002
Implicit B-Trees: New Results for the Dictionary Problem · FOCS 2002
Computational complexity › computational models
bitprobe model
0.012008
No sorting? better searching! · ACM Trans. Algorithms 2008
Algorithms and data structures
lexicographic ordering
0.012004
No Sorting? Better Searching! · FOCS 2004
Algorithms and data structures › analysis of algorithms
amortized analysis
0.012003
Implicit dictionaries supporting searches and amortized updates in O(log n log log n) time · SODA 2003
Memory systems › data movement
block transfer
0.012002
Implicit B-Trees: New Results for the Dictionary Problem · FOCS 2002
Memory systems
memory hierarchy
0.012002
Implicit B-Trees: New Results for the Dictionary Problem · FOCS 2002

Methods — techniques the papers use, named apart from their topics

order maintenance oracle · 0.2comparison-driven augmentation · 0.2implicit data structure · 0.1in-place algorithm · 0.1cache-oblivious analysis · 0.1permutation · 0.1character comparisons · 0.1bit manipulation · 0.1permutation preprocessing · 0.0character comparison analysis · 0.0space-efficient techniques · 0.0comparison model · 0.0
YearPublicationVenuePosition
2014 Managing Unbounded-Length Keys in Comparison-Driven Data Structures with Applications to Online Indexing
abstract
This 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.2
2010 Finding the Maximum Suffix with Fewer Comparisons
Gianni Franceschini, Torben Hagerup
CIAC1
2009 Optimal Cache-Aware Suffix Selection
abstract
Given 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
STACS1
2008 No sorting? better searching!
abstract
Questions 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. Algorithms1
2007 Radix Sorting with No Extra Space
Gianni Franceschini, S. Muthukrishnan 0001, Mihai Patrascu
ESA1
2007 In-Place Suffix Sorting
Gianni Franceschini, S. Muthukrishnan 0001
ICALP1
2007 Optimal suffix selection
abstract
Given a string S[1·s n], the suffix selection problemis to find the kth lexicographically smallest amongst the n suffixes S[i·s n], for i=1,...,n. In particular, the fundamental question is if selection can be performed more efficiently than sorting all the suffixes.
Gianni Franceschini, S. Muthukrishnan 0001
STOC1
2007 Sorting Stably, in Place, with O(n log n) Comparisons and O(n) Moves
Gianni Franceschini
Theory Comput. Syst.1
2006 Implicit dictionaries with O(1) modifications per update and fast search
Gianni Franceschini, J. Ian Munro
SODA1
2006 Optimal Implicit Dictionaries over Unbounded Universes
Gianni Franceschini, Roberto Grossi
Theory Comput. Syst.1
2005 Cache-Oblivious Comparison-Based Algorithms on Multisets
Arash Farzan, Paolo Ferragina, Gianni Franceschini, J. Ian Munro
ESA3
2005 Optimal In-place Sorting of Vectors and Records
Gianni Franceschini, Roberto Grossi
ICALP1
2005 Sorting Stably, In-Place, with O(n log n) Comparisons and O(n) Moves
Gianni Franceschini
STACS1
2005 An in-place sorting with O(nlog n) comparisons and O(n) moves
abstract
We present the first in-place algorithm for sorting an array of size n that performs, in the worst case, at most O ( n log n ) element comparisons and O ( n ) element transports.This solves a long-standing open problem, stated explicitly, for example, in Munro and Raman [1992], of whether there exists a sorting algorithm that matches the asymptotic lower bounds on all computational resources simultaneously.
Gianni Franceschini, Viliam Geffert
J. ACM1
2004 No Sorting? Better Searching!
abstract
Sorting 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
FOCS1
2004 A General Technique for Managing Strings in Comparison-Driven Data Structures
Gianni Franceschini, Roberto Grossi
ICALP1
2004 Proximity Mergesort: optimal in-place sorting in the cache-oblivious model
Gianni Franceschini
SODA1
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.1
2003 An In-Place Sorting with O(n log n) Comparisons and O(n) Moves
abstract
We present the first in-place algorithm for sorting an array of size n that performs, in the worst case, at most O(n log n) element comparisons and O(n) element transports. This solves a long-standing open problem, stated explicitly, e.g., in J.I. Munro and V. Raman (1992), of whether there exists a sorting algorithm that matches the asymptotic lower bounds on all computational resources simultaneously.
Gianni Franceschini, Viliam Geffert
FOCS1
2003 Optimal Cache-Oblivious Implicit Dictionaries
Gianni Franceschini, Roberto Grossi
ICALP1
2003 Implicit dictionaries supporting searches and amortized updates in O(log n log log n) time
Gianni Franceschini, Roberto Grossi
SODA1
2003 Optimal Worst-Case Operations for Implicit Cache-Oblivious Search Trees
Gianni Franceschini, Roberto Grossi
WADS1
2002 Implicit B-Trees: New Results for the Dictionary Problem
abstract
We 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
FOCS1