John Iacono

dblp:96/2606 · DBLP profile ↗
← Back
99ranked-venue papers
21as first author
24since 2021 · last 2026
0000-0001-8885-8172ORCID · verified

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

Theory of computation · 82 · 18 first-author · 22 since 2021Graphics, computer vision, multimedia, augmented reality and games · 14 · 2 first-author · 2 since 2021Artificial intelligence and machine learning · 2 · 1 first-authorSystems, architecture and hardware · 1
YearPublicationVenuePosition
2026 Learning-Augmented Online Sorting and TSP
abstract
The online sorting problem is a natural online analog of classical sorting: n elements arrive one by one and must be placed irrevocably into an array of size n so as to minimize the sum of absolute differences between consecutive elements. Recent work by Aamand et al. [SODA 2023] and Abrahamsen et al. [ESA 2024] showed that the optimal competitive ratio for this problem is Θ(√n), even when randomization is allowed. Bertram [ESA 2025] extended this bound to the online traveling salesman problem (TSP), of which online sorting is a special case on the line metric. These polynomial bounds raise the question of whether additional information can lead to improved performance. In this paper, we initiate the study of online sorting and TSP in the framework of machine-learned predictions. We characterize the exact tradeoff between consistency and robustness for online sorting with predictions, and prove a surprising lower bound showing that robustness is not lossless in this setting. This phenomenon sets online sorting apart from most previously studied online problems with predictions. We extend our results to online TSP with predictions on general metric spaces, where the same consistency-robustness tradeoff persists. Finally, we present a sharp contrast in the case of online TSP on the uniform metric. While Abrahamsen et al. gave an O(log n)-competitive algorithm without predictions for the uniform metric, we show that predictions enable an algorithm that is simultaneously O(1)-consistent and O(log n)-robust. We further extend this result to the setting of multiple predictions.
Ioana O. Bercea, Gerth Stølting Brodal, John Iacono, László Kozma 0002, Debmalya Panigrahi
ESA3
2026 Near-Optimal Working-Set Heaps and Dijkstra on Pointer Machines
abstract
A heap is a dynamic data structure that stores a set of labeled values under the following operations: pop returns the minimum value of the heap, Push(x_i) pushes a new value x_i onto the heap, and DecreaseKey(i, v) decreases the value x_i to v. A working-set heap is a heap that supports the x_i ← pop() operation in O(log Γ(x_i)) time where Γ(x_i) is the size of the working set: the number of elements that were pushed onto the heap while x_i was in the heap. The goal of working set heap design is to maintain the working set property while minimizing the overhead of the Push and DecreaseKey operations. On a word RAM, there exist working set heaps that support Push and DecreaseKey in amortized constant time. In this paper, we show via a simple construction that pointer machines, one of the most general and least-assuming computational models, support working set heaps that support Push in amortized constant time and DecreaseKey in inverse-Ackermann time. A by-product of this analysis is that Dijkstra’s shortest path algorithm can be near-universally optimal on a pointer machine - incurring only an additive O(m α(m)) overhead compared to the optimal running time for distance ordering, where m denotes the number of edges in the graph.
Ivor van der Hoog, John Iacono, Eva Rotenberg, Daniel Rutschmann
ESA2
2026 Incremental k-Lowest Planes and Planar k-Nearest Neighbor with Optimal Query Time
John Iacono, Yakov Nekrich, Martin Seybold
ICALP1
2026 A General Technique for Searching in Implicit Sets via Function Inversion
Boris Aronov, Jean Cardinal, Justin Dallant, John Iacono
Algorithmica4
2026 Fast and Simple Sorting Using Partial Information
Bernhard Haeupler, Richard Hladík, John Iacono, Václav Rozhon, Robert E. Tarjan, Jakub Tetek
Algorithmica3
2025 Incremental Planar Nearest Neighbor Queries with Optimal Query Time
John Iacono, Yakov Nekrich
SoCG1
2025 An Improved Bound for Plane Covering Paths
abstract
A covering path for a finite set P of points in the plane is a polygonal path such that every point of P lies on a segment of the path. The vertices of the path need not be at points of P. A covering path is plane if its segments do not cross each other. Let π(n) be the minimum number such that every set of n points in the plane admits a plane covering path with at most π(n) segments. We prove that π(n) ≤ ⌈6n/7⌉. This improves the previous best-known upper bound of ⌈21n/22⌉, due to Biniaz (SoCG 2023). Our proof is constructive and yields a simple O(n log n)-time algorithm for computing a plane covering path.
Hugo A. Akitaya, Greg Aloupis, Ahmad Biniaz, Prosenjit Bose, Jean-Lou De Carufel, Cyril Gavoille, John Iacono, Linda Kleist, Michiel H. M. Smid, Diane L. Souvaine, Leonidas Theocharous
ESA7
2025 External-Memory Priority Queues with Optimal Insertions
Gerth Stølting Brodal, Michael T. Goodrich, John Iacono, Jared Lo, Ulrich Meyer 0001, Victor Pagan, Nodari Sitchinava, Rolf Svenning
ESA3
2025 Fast and Simple Sorting Using Partial Information
abstract
We consider the problem of sorting n items, given the outcomes of m pre-existing comparisons. We present a simple and natural deterministic algorithm that runs in O(m + log T ) time and does O(log T ) comparisons, where T is the number of total orders consistent with the pre-existing comparisons.
Bernhard Haeupler, Richard Hladík, John Iacono, Václav Rozhon, Robert E. Tarjan, Jakub Tetek
SODA3
2025 Tight Bounds on the Number of Closest Pairs in Vertical Slabs
abstract
Let S be a set of n points in ℝ^d, where d ≥ 2 is a constant, and let H₁,H₂,…,H_{m+1} be a sequence of vertical hyperplanes that are sorted by their first coordinates, such that exactly n/m points of S are between any two successive hyperplanes. Let |A(S,m)| be the number of different closest pairs in the {(m+1) choose 2} vertical slabs that are bounded by H_i and H_j, over all 1 ≤ i < j ≤ m+1. We prove tight bounds for the largest possible value of |A(S,m)|, over all point sets of size n, and for all values of 1 ≤ m ≤ n. As a result of these bounds, we obtain, for any constant ε > 0, a data structure of size O(n), such that for any vertical query slab Q, the closest pair in the set Q ∩ S can be reported in O(n^{1/2+ε}) time. Prior to this work, no linear space data structure with sublinear query time was known.
Ahmad Biniaz, Prosenjit Bose, Chaeyoon Chung, Jean-Lou De Carufel, John Iacono, Anil Maheshwari, Saeed Odak, Michiel H. M. Smid, Csaba D. Tóth
WADS5
2025 Conditional Lower Bounds for Dynamic Geometric Measure Problems
abstract
We give new polynomial lower bounds for a number of dynamic measure problems in computational geometry. These lower bounds hold in the Word RAM model, conditioned on the hardness of 3SUM, APSP, or the Online Matrix-Vector Multiplication problem [Henzinger et al., STOC 2015]. In particular, we get lower bounds in the incremental and fully dynamic settings for counting maximal or extremal points in \(\mathbb{R}^{3}\) , different variants of Klee’s Measure Problem, problems related to finding the largest empty disk in a set of points, and querying the size of the i th convex layer in a planar set of points. We also answer a question of Chan et al. [SODA 2022] by giving a conditional lower bound for dynamic approximate square set cover. While many conditional lower bounds for dynamic data structures have been proven since the seminal work of Pătraşcu [STOC 2010], few of them relate to computational geometry problems. This is the first article focusing on this topic. Most problems we consider can be solved in \(O(n\log n)\) time in the static case, and their dynamic versions have only been approached from the perspective of improving known upper bounds. One exception to this is Klee’s measure problem in \(\mathbb{R}^{2}\) , for which Chan [CGTA 2010] gave an unconditional \(\Omega(\sqrt{n})\) lower bound on the worst-case update time in a variant of the Word RAM machine with large words. By a similar approach, we show that such a lower bound also holds for an important special case of Klee’s measure problem in \(\mathbb{R}^{3}\) known as the Hypervolume Indicator problem, even for amortized runtime in the incremental setting.
Justin Dallant, John Iacono
ACM Trans. Algorithms2
2024 Distances and shortest paths on graphs of bounded highway dimension: simple, fast, dynamic
abstract
Dijkstra's algorithm is the standard method for computing shortest paths on arbitrary graphs. However, it is slow for large graphs, taking at least linear time. It has been long known that for real world road networks, creating a hierarchy of well-chosen shortcuts allows fast distance and path computation, with exact distance queries seemingly being answered in logarithmic time. However, these methods were but heuristics until the work of Abraham et al. [JACM 2016], where they defined a graph parameter called highway dimension which is constant for real-world road networks, and showed that in graphs of constant highway dimension, a shortcut hierarchy exists that guarantees shortest distance computation takes O(log(U+| V|)) time and O(V log(U +| V|)) space, where U is the ratio of the smallest to largest edge, and |V| is the number of vertices. The problem is that they were unable to efficiently compute the hierarchy of shortcuts. Here we present a simple and efficient algorithm to compute the needed hierarchy of shortcuts in time and space O(V log(U + |V|)), as well as supporting updates in time O(log(U + |V|)).
Sébastien Collette, John Iacono
SODA2
2024 The Complexity of Order Type Isomorphism
Greg Aloupis, John Iacono, Stefan Langerman, Özgür Özkan, Stefanie Wuhrer
Discret. Comput. Geom.2
2024 How fast can we play Tetris greedily with rectangular pieces?
Justin Dallant, John Iacono
Theor. Comput. Sci.2
2023 Subquadratic algorithms for some 3Sum-hard geometric problems in the algebraic decision-tree model
abstract
We present subquadratic algorithms in the algebraic decision-tree model for several 3Sum-hard geometric problems, all of which can be reduced to the following question: Given two sets A, B, each consisting of n pairwise disjoint segments in the plane, and a set C of n triangles in the plane, we want to count, for each triangle Δ∈C, the number of intersection points between the segments of A and those of B that lie in Δ. We present solutions in the algebraic decision-tree model whose cost is O(n60/31+ε), for any ε>0. Our approach is based on a primal-dual range searching mechanism, which exploits the multi-level polynomial partitioning machinery recently developed by Agarwal et al. (2021) [3]. A key step in the procedure is a variant of point location in arrangements, say of lines in the plane, which is based solely on the order type of the lines, a “handicap” that turns out to be beneficial for speeding up our algorithm.
Boris Aronov, Mark de Berg, Jean Cardinal, Esther Ezra, John Iacono, Micha Sharir
Comput. Geom.5
2023 Competitive Online Search Trees on Trees
abstract
We consider the design of adaptive data structures for searching elements of a tree-structured space. We use a natural generalization of the rotation-based online binary search tree model in which the underlying search space is the set of vertices of a tree. This model is based on a simple structure for decomposing graphs, previously known under several names including elimination trees, vertex rankings, and tubings. The model is equivalent to the classical binary search tree model exactly when the underlying tree is a path. We describe an online O (log log n )-competitive search tree data structure in this model, where n is the number of vertices. This matches the best-known competitive ratio of binary search trees. Our method is inspired by Tango trees, an online binary search tree algorithm, but critically needs several new notions including one that we call Steiner-closed search trees, which may be of independent interest. Moreover, our technique is based on a novel use of two levels of decomposition, first from search space to a set of Steiner-closed trees and, second, from these trees into paths.
Prosenjit Bose, Jean Cardinal, John Iacono, Grigorios Koumoutsos, Stefan Langerman
ACM Trans. Algorithms3
2022 Conditional Lower Bounds for Dynamic Geometric Measure Problems
abstract
We give new polynomial lower bounds for a number of dynamic measure problems in computational geometry. These lower bounds hold in the Word-RAM model, conditioned on the hardness of either 3SUM, APSP, or the Online Matrix-Vector Multiplication problem [Henzinger et al., STOC 2015]. In particular we get lower bounds in the incremental and fully-dynamic settings for counting maximal or extremal points in ℝ³, different variants of Klee’s Measure Problem, problems related to finding the largest empty disk in a set of points, and querying the size of the i'th convex layer in a planar set of points. We also answer a question of Chan et al. [SODA 2022] by giving a conditional lower bound for dynamic approximate square set cover. While many conditional lower bounds for dynamic data structures have been proven since the seminal work of Pătraşcu [STOC 2010], few of them relate to computational geometry problems. This is the first paper focusing on this topic. Most problems we consider can be solved in O(nlog n) time in the static case and their dynamic versions have only been approached from the perspective of improving known upper bounds. One exception to this is Klee’s measure problem in ℝ², for which Chan [CGTA 2010] gave an unconditional Ω(√n) lower bound on the worst-case update time. By a similar approach, we show that such a lower bound also holds for an important special case of Klee’s measure problem in ℝ³ known as the Hypervolume Indicator problem, even for amortized runtime in the incremental setting.
Justin Dallant, John Iacono
ESA2
2022 External-Memory Dictionaries with Worst-Case Update Cost
Rathish Das, John Iacono, Yakov Nekrich
ISAAC2
2022 Fragile complexity of adaptive algorithms
abstract
The fragile complexity of a comparison-based algorithm is $f(n)$ if each input element participates in $O(f(n))$ comparisons. In this paper, we explore the fragile complexity of algorithms adaptive to various restrictions on the input, i.e., algorithms with a fragile complexity parameterized by a quantity other than the input size~$n$. We show that searching for the predecessor in a sorted array has fragile complexity $\Theta(\log k)$, where $k$ is the rank of the query element, both in a randomized and a deterministic setting. For predecessor searches, we also show how to optimally reduce the amortized fragile complexity of the elements in the array. We also prove the following results: Selecting the $k$th smallest element has expected fragile complexity $O(\log\log k)$ for the element selected. Deterministically finding the minimum element has fragile complexity $\Theta(\log(\INV))$ and $\Theta(\log(\RUNS))$, where $\INV$ is the number of inversions in a sequence and $\RUNS$ is the number of increasing runs in a sequence. Deterministically finding the median has fragile complexity $O(\log(\RUNS) + \log\log n)$ and $\Theta(\log (\INV))$. Deterministic sorting has fragile complexity $\Theta(\log (\INV))$ but it has fragile complexity $\Theta(\log n)$ regardless of the number of runs.
Prosenjit Bose, Pilar Cano, Rolf Fagerberg, John Iacono, Riko Jacob, Stefan Langerman
Theor. Comput. Sci.4
2021 Fragile Complexity of Adaptive Algorithms
Prosenjit Bose, Pilar Cano, Rolf Fagerberg, John Iacono, Riko Jacob, Stefan Langerman
CIAC4
2021 An Instance-Optimal Algorithm for Bichromatic Rectangular Visibility
abstract
Afshani, Barbay and Chan (2017) introduced the notion of instance-optimal algorithm in the order-oblivious setting. An algorithm A is instance-optimal in the order-oblivious setting for a certain class of algorithms 𝒜 if the following hold: - A takes as input a sequence of objects from some domain; - for any instance σ and any algorithm A' ∈ 𝒜, the runtime of A on σ is at most a constant factor removed from the runtime of A' on the worst possible permutation of σ. If we identify permutations of a sequence as representing the same instance, this essentially states that A is optimal on every possible input (and not only in the worst case). We design instance-optimal algorithms for the problem of reporting, given a bichromatic set of points in the plane S, all pairs consisting of points of different color which span an empty axis-aligned rectangle (or reporting all points which appear in such a pair). This problem has applications for training-set reduction in nearest-neighbour classifiers. It is also related to the problem consisting of finding the decision boundaries of a euclidean nearest-neighbour classifier, for which Bremner et al. (2005) gave an optimal output-sensitive algorithm. By showing the existence of an instance-optimal algorithm in the order-oblivious setting for this problem we push the methods of Afshani et al. closer to their limits by adapting and extending them to a setting which exhibits highly non-local features. Previous problems for which instance-optimal algorithms were proven to exist were based solely on local relationships between points in a set.
Jean Cardinal, Justin Dallant, John Iacono
ESA3
2021 Worst-Case Efficient Dynamic Geometric Independent Set
abstract
We consider the problem of maintaining an approximate maximum independent set of geometric objects under insertions and deletions. We present data structures that maintain a constant-factor approximate maximum independent set for broad classes of fat objects in $d$ dimensions, where $d$ is assumed to be a constant, in sublinear \textit{worst-case} update time. This gives the first results for dynamic independent set in a wide variety of geometric settings, such as disks, fat polygons, and their high-dimensional equivalents. Our result is obtained via a two-level approach. First, we develop a dynamic data structure which stores all objects and provides an approximate independent set when queried, with output-sensitive running time. We show that via standard methods such a structure can be used to obtain a dynamic algorithm with \textit{amortized} update time bounds. Then, to obtain worst-case update time algorithms, we develop a generic deamortization scheme that with each insertion/deletion keeps (i) the update time bounded and (ii) the number of changes in the independent set constant. We show that such a scheme is applicable to fat objects by showing an appropriate generalization of a separator theorem. Interestingly, we show that our deamortization scheme is also necessary in order to obtain worst-case update bounds: If for a class of objects our scheme is not applicable, then no constant-factor approximation with sublinear worst-case update time is possible. We show that such a lower bound applies even for seemingly simple classes of geometric objects including axis-aligned rectangles in the plane.
Jean Cardinal, John Iacono, Grigorios Koumoutsos
ESA2
2021 Subquadratic Algorithms for Some 3Sum-Hard Geometric Problems in the Algebraic Decision Tree Model
abstract
We present subquadratic algorithms in the algebraic decision-tree model for several \textsc{3Sum}-hard geometric problems, all of which can be reduced to the following question: Given two sets $A$, $B$, each consisting of $n$ pairwise disjoint segments in the plane, and a set $C$ of $n$ triangles in the plane, we want to count, for each triangle $Δ\in C$, the number of intersection points between the segments of $A$ and those of $B$ that lie in $Δ$. The problems considered in this paper have been studied by Chan~(2020), who gave algorithms that solve them, in the standard real-RAM model, in $O((n^2/\log^2n)\log^{O(1)}\log n)$ time. We present solutions in the algebraic decision-tree model whose cost is $O(n^{60/31+\varepsilon})$, for any $\varepsilon>0$. Our approach is based on a primal-dual range searching mechanism, which exploits the multi-level polynomial partitioning machinery recently developed by Agarwal, Aronov, Ezra, and Zahl~(2020). A key step in the procedure is a variant of point location in arrangements, say of lines in the plane, which is based solely on the \emph{order type} of the lines, a "handicap" that turns out to be beneficial for speeding up our algorithm.
Boris Aronov, Mark de Berg, Jean Cardinal, Esther Ezra, John Iacono, Micha Sharir
ISAAC5
2021 Belga B-Trees
Erik D. Demaine, John Iacono, Grigorios Koumoutsos, Stefan Langerman
Theory Comput. Syst.2
2020 Competitive Online Search Trees on Trees
abstract
We consider the design of adaptive data structures for searching elements of a tree-structured space. We use a natural generalization of the rotation-based online binary search tree model in which the underlying search space is the set of vertices of a tree. This model is based on a simple structure for decomposing graphs, previously known under several names including elimination trees, vertex rankings, and tubings. The model is equivalent to the classical binary search tree model exactly when the underlying tree is a path. We describe an online O(log log n)-competitive search tree data structure in this model, matching the best known competitive ratio of binary search trees. Our method is inspired by Tango trees, an online binary search tree algorithm, but critically needs several new notions including one which we call Steiner-closed search trees, which may be of independent interest. Moreover our technique is based on a novel use of two levels of decomposition, first from search space to a set of Steiner-closed trees, and secondly from these trees into paths.
Prosenjit Bose, Jean Cardinal, John Iacono, Grigorios Koumoutsos, Stefan Langerman
SODA3
2019 External Memory Priority Queues with Decrease-Key and Applications to Graph Algorithms
abstract
We present priority queues in the external memory model with block size B and main memory size M that support on N elements, operation Update (a combination of operations Insert and DecreaseKey) in O(1/Blog_{M/B} N/B) amortized I/Os and operations ExtractMin and Delete in O(ceil[(M^epsilon)/B log_{M/B} N/B] log_{M/B} N/B) amortized I/Os, for any real epsilon in (0,1), using O(N/Blog_{M/B} N/B) blocks. Previous I/O-efficient priority queues either support these operations in O(1/Blog_2 N/B) amortized I/Os [Kumar and Schwabe, SPDP '96] or support only operations Insert, Delete and ExtractMin in optimal O(1/Blog_{M/B} N/B) amortized I/Os, however without supporting DecreaseKey [Fadel et al., TCS '99]. We also present buffered repository trees that support on a multi-set of N elements, operation Insert in O(1/Blog_M/B N/B) I/Os and operation Extract on K extracted elements in O(M^{epsilon} log_M/B N/B + K/B) amortized I/Os, using O(N/B) blocks. Previous results achieve O(1/Blog_2 N/B) I/Os and O(log_2 N/B + K/B) I/Os, respectively [Buchsbaum et al., SODA '00]. Our results imply improved O(E/Blog_{M/B} E/B) I/Os for single-source shortest paths, depth-first search and breadth-first search algorithms on massive directed dense graphs (V,E) with E = Omega (V^(1+epsilon)), epsilon > 0 and V = Omega (M), which is equal to the I/O-optimal bound for sorting E values in external memory.
John Iacono, Riko Jacob, Konstantinos Tsakalidis
ESA1
2019 External Memory Planar Point Location with Fast Updates
abstract
We study dynamic planar point location in the External Memory Model or Disk Access Model (DAM). Previous work in this model achieves polylog query and polylog amortized update time. We present a data structure with O(log_B^2 N) query time and O(1/B^(1-epsilon) log_B N) amortized update time, where N is the number of segments, B the block size and epsilon is a small positive constant, under the assumption that all faces have constant size. This is a B^(1-epsilon) factor faster for updates than the fastest previous structure, and brings the cost of insertion and deletion down to subconstant amortized time for reasonable choices of N and B. Our structure solves the problem of vertical ray-shooting queries among a dynamic set of interior-disjoint line segments; this is well-known to solve dynamic planar point location for a connected subdivision of the plane with faces of constant size.
John Iacono, Benjamin Karsin, Grigorios Koumoutsos
ISAAC1
2019 Subquadratic Algorithms for Algebraic 3SUM
Luis Barba, Jean Cardinal, John Iacono, Stefan Langerman, Aurélien Ooms, Noam Solomon
Discret. Comput. Geom.3
2018 Subquadratic Encodings for Point Configurations
abstract
For many algorithms dealing with sets of points in the plane, the only relevant information carried by the input is the combinatorial configuration of the points: the orientation of each triple of points in the set (clockwise, counterclockwise, or collinear). This information is called the order type of the point set. In the dual, realizable order types and abstract order types are combinatorial analogues of line arrangements and pseudoline arrangements. Too often in the literature we analyze algorithms in the real-RAM model for simplicity, putting aside the fact that computers as we know them cannot handle arbitrary real numbers without some sort of encoding. Encoding an order type by the integer coordinates of a realizing point set is known to yield doubly exponential coordinates in some cases. Other known encodings can achieve quadratic space or fast orientation queries, but not both. In this contribution, we give a compact encoding for abstract order types that allows efficient query of the orientation of any triple: the encoding uses O(n^2) bits and an orientation query takes O(log n) time in the word-RAM model with word size w >= log n. This encoding is space-optimal for abstract order types. We show how to shorten the encoding to O(n^2 {(log log n)}^2 / log n) bits for realizable order types, giving the first subquadratic encoding for those order types with fast orientation queries. We further refine our encoding to attain O(log n/log log n) query time at the expense of a negligibly larger space requirement. In the realizable case, we show that all those encodings can be computed efficiently. Finally, we generalize our results to the encoding of point configurations in higher dimension.
Jean Cardinal, Timothy M. Chan, John Iacono, Stefan Langerman, Aurélien Ooms
SoCG3
2018 Dynamic Trees with Almost-Optimal Access Cost
abstract
An optimal binary search tree for an access sequence on elements is a static tree that minimizes the total search cost. Constructing perfectly optimal binary search trees is expensive so the most efficient algorithms construct almost optimal search trees. There exists a long literature of constructing almost optimal search trees dynamically, i.e., when the access pattern is not known in advance. All of these trees, e.g., splay trees and treaps, provide a multiplicative approximation to the optimal search cost. In this paper we show how to maintain an almost optimal weighted binary search tree under access operations and insertions of new elements where the approximation is an additive constant. More technically, we maintain a tree in which the depth of the leaf holding an element $e_i$ does not exceed $\min(\log(W/w_i),\log n)+O(1)$ where $w_i$ is the number of times $e_i$ was accessed and $W$ is the total length of the access sequence. Our techniques can also be used to encode a sequence of $m$ symbols with a dynamic alphabetic code in $O(m)$ time so that the encoding length is bounded by $m(H+O(1))$, where $H$ is the entropy of the sequence. This is the first efficient algorithm for adaptive alphabetic coding that runs in constant time per symbol.
Mordecai J. Golin, John Iacono, Stefan Langerman, J. Ian Munro, Yakov Nekrich
ESA2
2018 Analysis-driven Engineering of Comparison-based Sorting Algorithms on GPUs
abstract
We study the relationship between memory accesses, bank conflicts, thread multiplicity (also known as over-subscription) and instruction-level parallelism in comparison-based sorting algorithms for Graphics Processing Units (GPUs). We experimentally validate a proposed formula that relates these parameters with asymptotic analysis of the number of memory accesses by an algorithm. Using this formula we analyze and compare several GPU sorting algorithms, identifying key performance bottlenecks in each one of them. Based on this analysis we propose a GPU-efficient multiway merge-sort algorithm, GPU-MMS, which minimizes or eliminates these bottlenecks and balances various limiting factors for specific hardware.
Benjamin Karsin, Volker Weichert, Henri Casanova, John Iacono, Nodari Sitchinava
ICS4
2018 Data Structures for Halfplane Proximity Queries and Incremental Voronoi Diagrams
Boris Aronov, Prosenjit Bose, Erik D. Demaine, Joachim Gudmundsson, John Iacono, Stefan Langerman, Michiel H. M. Smid
Algorithmica5
2018 Encoding nearest larger values
Michael Hoffmann 0002, John Iacono, Patrick K. Nicholson, Rajeev Raman
Theor. Comput. Sci.2
2017 Subquadratic Algorithms for Algebraic Generalizations of 3SUM
Luis Barba, Jean Cardinal, John Iacono, Stefan Langerman, Aurélien Ooms, Noam Solomon
SoCG3
2017 Searching Edges in the Overlap of Two Plane Graphs
John Iacono, Elena Arseneva, Stefan Langerman
WADS1
2017 Incremental Voronoi Diagrams
Sarah R. Allen, Luis Barba, John Iacono, Stefan Langerman
Discret. Comput. Geom.3
2017 Asymptotically Optimal Encodings of Range Data Structures for Selection and Top-k Queries
abstract
Given 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. Algorithms2
2016 A Linear Potential Function for Pairing Heaps
John Iacono, Mark V. Yagnatinsky
COCOA1
2016 Incremental Voronoi diagrams
abstract
We study the amortized number of combinatorial changes (edge insertions and removals) needed to update the graph structure of the Voronoi diagram VD(S) (and several variants thereof) of a set S of n sites in the plane as sites are added to the set. To that effect, we define a general update operation for planar graphs that can be used to model the incremental construction of several variants of Voronoi diagrams as well as the incremental construction of an intersection of halfspaces in R^3. We show that the amortized number of edge insertions and removals needed to add a new site to the Voronoi diagram is O(n^(1/2)). A matching Omega(n^(1/2)) combinatorial lower bound is shown, even in the case where the graph representing the Voronoi diagram is a tree. This contrasts with the O(log(n)) upper bound of Aronov et al. [Aronov et al., in proc. of LATIN, 2006] for farthest-point Voronoi diagrams in the special case where points are inserted in clockwise order along their convex hull. We then present a semi-dynamic data structure that maintains the Voronoi diagram of a set S of n sites in convex position. This data structure supports the insertion of a new site p (and hence the addition of its Voronoi cell) and finds the asymptotically minimal number K of edge insertions and removals needed to obtain the diagram of S U (p) from the diagram of S, in time O(K polylog n) worst case, which is O(n^(1/2) polylog n) amortized by the aforementioned combinatorial result. The most distinctive feature of this data structure is that the graph of the Voronoi diagram is maintained explicitly at all times and can be retrieved and traversed in the natural way; this contrasts with other known data structures supporting nearest neighbor queries. Our data structure supports general search operations on the current Voronoi diagram, which can, for example, be used to perform point location queries in the cells of the current Voronoi diagram in O(log n) time, or to determine whether two given sites are neighbors in the Delaunay triangulation.
Sarah R. Allen, Luis Barba, John Iacono, Stefan Langerman
SoCG3
2016 Solving k-SUM Using Few Linear Queries
abstract
The k-SUM problem is given n input real numbers to determine whether any k of them sum to zero. The problem is of tremendous importance in the emerging field of complexity theory within P, and it is in particular open whether it admits an algorithm of complexity O(n^c) with c
Jean Cardinal, John Iacono, Aurélien Ooms
ESA2
2016 Weighted dynamic finger in binary search trees
abstract
It is shown that the online binary search tree data structure GreedyASS performs asymptotically as well on a sufficiently long sequence of searches as any static binary search tree where each search begins from the previous search (rather than the root). This bound is known to be equivalent to assigning each item i in the search tree a positive weight wi and bounding the search cost of an item in the search sequence s1, …, sm This result is the strongest finger-type bound to be proven for binary search trees. By setting the weights to be equal, one observes that our bound implies the dynamic finger bound. Compared to the previous proof of the dynamic finger bound for Splay trees, our result is significantly shorter, stronger, simpler, and has reasonable constants.
John Iacono, Stefan Langerman
SODA1
2016 The Power and Limitations of Static Binary Search Trees with Lazy Finger
Prosenjit Bose, Karim Douïeb, John Iacono, Stefan Langerman
Algorithmica3
2016 Encoding 2D range maximum queries
Mordecai J. Golin, John Iacono, Danny Krizanc, Rajeev Raman, S. Srinivasa Rao 0001, Sunil M. Shende
Theor. Comput. Sci.2
2015 Range Minimum Query Indexes in Higher Dimensions
Pooya Davoodi, John Iacono, Gad M. Landau, Moshe Lewenstein
CPM2
2015 Worst-Case Optimal Tree Layout in External Memory
Erik D. Demaine, John Iacono, Stefan Langerman
Algorithmica2
2014 Cache-Oblivious Persistence
Pooya Davoodi, Jeremy T. Fineman, John Iacono, Özgür Özkan
ESA3
2014 Why Some Heaps Support Constant-Amortized-Time Decrease-Key Operations, and Others Do Not
John Iacono, Özgür Özkan
ICALP (1)1
2014 The Power and Limitations of Static Binary Search Trees with Lazy Finger
Prosenjit Bose, Karim Douïeb, John Iacono, Stefan Langerman
ISAAC3
2014 The Complexity of Order Type Isomorphism
abstract
The order type of a point set in ℝd maps each (d+1)-tuple of points to its orientation (e.g., clockwise or counterclockwise in ℝ2). Two point sets X and Y have the same order type if there exists a mapping f from X to Y for which every (d+1)-tuple (a1, a2, …, ad+1) of X and the corresponding tuple (f(a1), f(a2), …, f(ad+1)) in Y have the same orientation. In this paper we investigate the complexity of determining whether two point sets have the same order type. We provide an O(nd) algorithm for this task, thereby improving upon the O(n⌊3d/2⌋) algorithm of Goodman and Pollack (1983). The algorithm uses only order type queries and also works for abstract order types (or acyclic oriented matroids). Our algorithm is optimal, both in the abstract setting and for realizable points sets if the algorithm only uses order type queries.
Greg Aloupis, John Iacono, Stefan Langerman, Özgür Özkan, Stefanie Wuhrer
SODA2
2014 Necklaces, Convolutions, and X+Y
David Bremner, Timothy M. Chan, Erik D. Demaine, Jeff Erickson 0001, Ferran Hurtado, John Iacono, Stefan Langerman, Mihai Patrascu, Perouz Taslakian
Algorithmica6
2014 Foreword
Frank Dehne, John Iacono
Comput. Geom.2
2013 Encodings for Range Selection and Top-k Queries
Roberto Grossi, John Iacono, Gonzalo Navarro 0001, Rajeev Raman, S. Srinivasa Rao 0001
ESA2
2013 Combining Binary Search Trees
Erik D. Demaine, John Iacono, Stefan Langerman, Özgür Özkan
ICALP (1)2
2013 On the hierarchy of distribution-sensitive properties for data structures
Amr Elmasry, Arash Farzan, John Iacono
Acta Informatica3
2013 Efficient reconfiguration of lattice-based modular robots
Greg Aloupis, Nadia M. Benbernou, Mirela Damian, Erik D. Demaine, Robin Y. Flatland, John Iacono, Stefanie Wuhrer
Comput. Geom.6
2013 Oja centers and centers of gravity
Dan Chen 0003, Olivier Devillers, John Iacono, Stefan Langerman, Pat Morin
Comput. Geom.3
2012 Confluent persistence revisited
abstract
It is shown how to enhance any data structure in the pointer model to make it confluently persistent, with efficient query and update times and limited space overhead. Updates are performed in O(log n) amortized time, and following a pointer takes O(log c log n) time where c is the in-degree of a node in the data structure. In particular, this proves that confluent persistence can be achieved at a logarithmic cost in the bounded in-degree model used widely in previous work. This is a O(n/ log n)-factor improvement over the previous known transform to make a data structure confluently persistent.
Sébastien Collette, John Iacono, Stefan Langerman
SODA2
2012 Using hashing to solve the dictionary problem
abstract
We consider the dictionary problem in external memory and improve the update time of the well-known buffer tree by roughly a logarithmic factor. For any λ > max(lg lg n, logM/B (n/B)}, we can support updates in time O(λ/B) and queries in sublogarithmic time, O(logλ n). We also present a lower bound in the cell-probe model showing that our data structure is optimal. In the RAM, hash tables have been use to solve the dictionary problem faster than binary search for more than half a century. By contrast, our data structure is the first to beat the comparison barrier in external memory. Ours is also the first data structure to depart convincingly from the indivisibility paradigm.
John Iacono, Mihai Patrascu
SODA1
2012 Entropy, triangulation, and point location in planar subdivisions
abstract
A data structure is presented for point location in connected planar subdivisions when the distribution of queries is known in advance. The data structure has an expected query time that is within a constant factor of optimal. More specifically, an algorithm is presented that preprocesses a connected planar subdivision G of size n and a query distribution D to produce a point location data structure for G . The expected number of point-line comparisons performed by this data structure, when the queries are distributed according to D , is H˜ + O (H˜ 1/2 +1) where H˜=H˜( G,D ) is a lower bound on the expected number of point-line comparisons performed by any linear decision tree for point location in G under the query distribution D . The preprocessing algorithm runs in O ( n log n ) time and produces a data structure of size O ( n ). These results are obtained by creating a Steiner triangulation of G that has near-minimum entropy.
Sébastien Collette, Vida Dujmovic, John Iacono, Stefan Langerman, Pat Morin
ACM Trans. Algorithms3
2011 A static optimality transformation with applications to planar point location
abstract
In the past ten years, there have been a number of data structures that, given a distribution of planar point location queries, produce a planar point location data structure that is tuned for the provided distribution. These structures all suffer from the requirement that the query distribution be provided in advance. For the problem of point location in a triangulation, a data structure is presented that performs asymptotically as well as these structures, but does not require the distribution to be provided in advance. This result is the 2-d analogue of the jump from the optimum binary search trees of Knuth in 1971 which required that the distribution be provided, to the splay trees of Sleator and Tarjan in 1985 where in the static optimality theorem it was proven that splay trees had the same asymptotic performance of optimum search trees without being provided the probability distribution.
John Iacono
SCG1
2011 Encoding 2D Range Maximum Queries
Mordecai J. Golin, John Iacono, Danny Krizanc, Rajeev Raman, S. Srinivasa Rao 0001
ISAAC2
2011 A Unifying Property for Distribution-Sensitive Priority Queues
Amr Elmasry, Arash Farzan, John Iacono
IWOCA3
2011 The Cost of Cache-Oblivious Searching
Michael A. Bender, Gerth Stølting Brodal, Rolf Fagerberg, Dongdong Ge, Simai He, Haodong Hu, John Iacono, Alejandro López-Ortiz
Algorithmica7
2010 Coverage with k-Transmitters in the Presence of Obstacles
Brad Ballinger, Nadia M. Benbernou, Prosenjit Bose, Mirela Damian, Erik D. Demaine, Vida Dujmovic, Robin Y. Flatland, Ferran Hurtado, John Iacono, Anna Lubiw, Pat Morin, Vera Sacristán Adinolfi, Diane L. Souvaine, Ryuhei Uehara
COCOA (2)9
2010 Mergeable Dictionaries
John Iacono, Özgür Özkan
ICALP (1)1
2010 Unit-Time Predecessor Queries on Massive Data Sets
Andrej Brodnik, John Iacono
ISAAC (1)2
2010 Cache-Oblivious Dynamic Dictionaries with Update/Query Tradeoffs
abstract
Several existing cache-oblivious dynamic dictionaries achieve O(logB N) (or slightly better memory transfers per operation, where N is the number of items stored, M is the memory size, and B is the block size, which matches the classic B-tree data structure. One recent structure achieves the same query bound and a sometimes-better amortized update bound of memory transfers. This paper presents a new data structure, the xDict, implementing predecessor queries in worst-case memory transfers and insertions and deletions in amortized memory transfers, for any constant ε with 0 < ε < 1. For example, the xDict achieves subconstant amortized update cost when N = M B°(B1−∊), whereas the B-tree's is subconstant only when N = o(MB), and the previously obtained is subconstant only when . The xDict attains the optimal tradeoff between insertions and queries, even in the broader external-memory model, for the range where inserts cost between and O(1/lg3 N) memory transfers.
Gerth Stølting Brodal, Erik D. Demaine, Jeremy T. Fineman, John Iacono, Stefan Langerman, J. Ian Munro
SODA4
2010 Editorial
John Iacono
Comput. Geom.1
2009 The geometry of binary search trees
abstract
We present a novel connection between binary search trees (BSTs) and points in the plane satisfying a simple property. Using this correspondence, we achieve the following results: 1. A surprisingly clean restatement in geometric terms of many results and conjectures relating to BSTs and dynamic optimality. 2. A new lower bound for searching in the BST model, which subsumes the previous two known bounds of Wilber [FOCS'86]. 3. The first proposal for dynamic optimality not based on splay trees. A natural greedy but offline algorithm was presented by Lucas [1988], and independently by Munro [2000], and was conjectured to be an (additive) approximation of the best binary search tree. We show that there exists an equal-cost online algorithm, transforming the conjecture of Lucas and Munro into the conjecture that the greedy algorithm is dynamically optimal.
Erik D. Demaine, Dion Harmon, John Iacono, Daniel M. Kane, Mihai Patrascu
SODA3
2009 Minimal Locked Trees
Brad Ballinger, David Charlton, Erik D. Demaine, Martin L. Demaine, John Iacono, Ching-Hao Liu, Sheung-Hung Poon
WADS5
2009 Wrapping spheres with flat paper
Erik D. Demaine, Martin L. Demaine, John Iacono, Stefan Langerman
Comput. Geom.3
2008 Distribution-sensitive point location in convex subdivisions
Sébastien Collette, Vida Dujmovic, John Iacono, Stefan Langerman, Pat Morin
SODA3
2007 Geodesic Ham-Sandwich Cuts
Prosenjit Bose, Erik D. Demaine, Ferran Hurtado, John Iacono, Stefan Langerman, Pat Morin
Discret. Comput. Geom.4
2007 Dynamic Optimality - Almost
abstract
We present an $O(\lg \lg n)$‐competitive online binary search tree, improving upon the best previous (trivial) competitive ratio of $O(\lg n)$. This is the first major progress on Sleator and Tarjan’s dynamic optimality conjecture of 1985 that $O(1)$‐competitive binary search trees exist.
Erik D. Demaine, Dion Harmon, John Iacono, Mihai Patrascu
SIAM J. Comput.3
2007 Retroactive data structures
abstract
We introduce a new data structuring paradigm in which operations can be performed on a data structure not only in the present, but also in the past. In this new paradigm, called retroactive data structures , the historical sequence of operations performed on the data structure is not fixed. The data structure allows arbitrary insertion and deletion of operations at arbitrary times, subject only to consistency requirements. We initiate the study of retroactive data structures by formally defining the model and its variants. We prove that, unlike persistence, efficient retroactivity is not always achievable. Thus, we present efficient retroactive data structures for queues, doubly ended queues, priority queues, union-find, and decomposable search structures.
Erik D. Demaine, John Iacono, Stefan Langerman
ACM Trans. Algorithms2
2007 A unified access bound on comparison-based dynamic dictionaries
Mihai Badoiu, Richard Cole 0001, Erik D. Demaine, John Iacono
Theor. Comput. Sci.4
2006 Necklaces, Convolutions, and X + Y
David Bremner, Timothy M. Chan, Erik D. Demaine, Jeff Erickson 0001, Ferran Hurtado, John Iacono, Stefan Langerman, Perouz Taslakian
ESA6
2006 Data Structures for Halfplane Proximity Queries and Incremental Voronoi Diagrams
Boris Aronov, Prosenjit Bose, Erik D. Demaine, Joachim Gudmundsson, John Iacono, Stefan Langerman, Michiel H. M. Smid
LATIN5
2006 The Complexity of Diffuse Reflections in a Simple Polygon
Boris Aronov, Alan R. Davis, John Iacono, Albert Siu Cheong Yu
LATIN3
2005 Key-Independent Optimality
John Iacono
Algorithmica1
2005 Queaps
John Iacono, Stefan Langerman
Algorithmica1
2005 Output-Sensitive Algorithms for Computing Nearest-Neighbour Decision Boundaries
David Bremner, Erik D. Demaine, Jeff Erickson 0001, John Iacono, Stefan Langerman, Pat Morin, Godfried T. Toussaint
Discret. Comput. Geom.4
2004 Geodesic ham-sandwich cuts
abstract
Let P be a simple polygon with m vertices, k of which are reflex, and which contains r red points and b blue points in its interior. Let n=m+r+b. A ham-sandwich geodesic is a shortest path in P between any two points on the boundary of P that simultaneously bisects the red points and the blue points. We present an O (n log k)-time algorithm for finding a ham-sandwich geodesic. We also show that this algorithm is optimal in thealgebraic computation tree model when parameterizing the running time with respect to n and k.
Prosenjit Bose, Erik D. Demaine, Ferran Hurtado, John Iacono, Stefan Langerman, Pat Morin
SCG4
2004 Separating point sets in polygonal environments
abstract
info:eu-repo/semantics/published
Erik D. Demaine, Jeff Erickson 0001, Ferran Hurtado, John Iacono, Stefan Langerman, Henk Meijer, Mark H. Overmars, Sue Whitesides
SCG4
2004 Dynamic Optimality - Almost
abstract
We present an O(lg lg n)-competitive online binary search tree, improving upon the best previous (trivial) competitive ratio of O(lg n). This is the first major progress on Sleator and Tarjan's dynamic optimality conjecture of 1985 that O(1)-competitive binary search trees exist.
Erik D. Demaine, Dion Harmon, John Iacono, Mihai Patrascu
FOCS3
2004 Retroactive data structures
Erik D. Demaine, John Iacono, Stefan Langerman
SODA2
2004 Proximate point searching
Erik D. Demaine, John Iacono, Stefan Langerman
Comput. Geom.2
2004 Expected asymptotically optimal planar point location
John Iacono
Comput. Geom.1
2004 Space-efficient planar convex hull algorithms
Hervé Brönnimann, John Iacono, Jyrki Katajainen, Pat Morin, Jason Morrison, Godfried T. Toussaint
Theor. Comput. Sci.2
2003 A 3-D visualization of kirkpatrick's planar point location algorithm
abstract
info:eu-repo/semantics/published
John Iacono
SCG1
2003 Proximate planar point location
abstract
A new data structure is presented for planar point location that executes a point location query quickly if it is spatially near the previous query. Given a triangulation T of size n and a sequence of point location queries A=q1, qm, the structure presented executes qi in time O(log d(qi-1,qi)). The distance function, d, that is used is a two dimensional generalization of rank distance that counts the number of triangles in a region from qi-1 to qi. The data structure uses O(n log log n) space.
John Iacono, Stefan Langerman
SCG1
2003 The Cost of Cache-Oblivious Searching
abstract
Tight bounds on the cost of cache-oblivious searching are proved. It is shown that no cache-oblivious search structure can guarantee that a search performs fewer than lg e log/sub B/N block transfers between any two levels of the memory hierarchy. This lower bound holds even if all of the block sizes are limited to be powers of 2. A modified version of the van Emde Boas layout is proposed, whose expected block transfers between any two levels of the memory hierarchy arbitrarily close to [lg e + O(lg lg B/ lgB)] logB N + O(1). This factor approaches lg e /spl ap/ 1.443 as B increases. The expectation is taken over the random placement of the first element of the structure in memory. As searching in the disk access model (DAM) can be performed in log/sub B/N + 1 block transfers, this result shows a separation between the 2-level DAM and cache-oblivious memory-hierarchy models. By extending the DAM model to k levels, multilevel memory hierarchies can be modeled. It is shown that as k grows, the search costs of the optimal k-level DAM search structure and of the optimal cache-oblivious search structure rapidly converge. This demonstrates that for a multilevel memory hierarchy, a simple cache-oblivious structure almost replicates the performance of an optimal parameterized k-level DAM structure.
Michael A. Bender, Gerth Stølting Brodal, Rolf Fagerberg, Dongdong Ge, Simai He, Haodong Hu, John Iacono, Alejandro López-Ortiz
FOCS7
2003 Output-Sensitive Algorithms for Computing Nearest-Neighbour Decision Boundaries
David Bremner, Erik D. Demaine, Jeff Erickson 0001, John Iacono, Stefan Langerman, Pat Morin, Godfried T. Toussaint
WADS4
2002 Key Independent Optimality
John Iacono
ISAAC1
2002 Queaps
John Iacono, Stefan Langerman
ISAAC1
2002 In-Place Planar Convex Hull Algorithms
Hervé Brönnimann, John Iacono, Jyrki Katajainen, Pat Morin, Jason Morrison, Godfried T. Toussaint
LATIN2
2002 A locality-preserving cache-oblivious dynamic dictionary
Michael A. Bender, Ziyang Duan, John Iacono
SODA3
2001 Optimal planar point location
John Iacono
SODA1
2001 Alternatives to splay trees with O(log n) worst-case access times
John Iacono
SODA1