Source author record

Adam Karczmarz

Explore this author’s publications, collaborators and research topics. This catalog record has not been claimed by its author.

ResearcherUnclaimed source record

Catalog footprint

Research overview

7works
2topics
4close collaborators

Published work

7 publications

preprint2022arXiv

Subquadratic Dynamic Path Reporting in Directed Graphs Against an Adaptive Adversary

We study reachability and shortest paths problems in dynamic directed graphs. Whereas algebraic dynamic data structures supporting edge updates and reachability/distance queries have been known for quite a long time, they do not, in general, allow reporting the underlying paths within the same time bounds, especially against an adaptive adversary. In this paper we develop the first known fully dynamic reachability data structures working against an adaptive adversary and supporting edge updates and path queries for two natural variants: (1) point-to-point path reporting, and (2) single-source reachability tree reporting. For point-to-point queries in DAGs, we achieve O(n1.529)O(n^{1.529}) worst-case update and query bounds, whereas for tree reporting in DAGs, the worst-case bounds are O(n1.765)O(n^{1.765}). More importantly, we show how to lift these algorithms to work on general graphs at the cost of increasing the bounds to n1+5/6+o(1)n^{1+5/6+o(1)} and making the update times amortized. On the way to accomplishing that, we obtain two interesting subresults. We give subquadratic fully dynamic algorithms for topological order (in a DAG), and strongly connected components. To the best of our knowledge, such algorithms have not been described before. Additionally, we provide deterministic incremental data structures for reachability and shortest paths that handle edge insertions and report the respective paths within subquadratic worst-case time bounds. For reachability and (1+ε)(1+ε)-approximate shortest paths in weighted digraphs, these bounds match the best known dynamic matrix inverse-based randomized bounds for fully dynamic reachability [v.d.Brand, Nanongkai and Saranurak, FOCS'19]. For exact shortest paths in unweighted graphs, the obtained bounds in the incremental setting polynomially improve upon the respective best known randomized update/distance query bounds in the fully dynamic setting.

preprint2021arXiv

A Deterministic Parallel APSP Algorithm and its Applications

In this paper we show a deterministic parallel all-pairs shortest paths algorithm for real-weighted directed graphs. The algorithm has O~(nm+(n/d)3)\tilde{O}(nm+(n/d)^3) work and O~(d)\tilde{O}(d) depth for any depth parameter d∈[1,n]d\in [1,n]. To the best of our knowledge, such a trade-off has only been previously described for the real-weighted single-source shortest paths problem using randomization [Bringmann et al., ICALP'17]. Moreover, our result improves upon the parallelism of the state-of-the-art randomized parallel algorithm for computing transitive closure, which has O~(nm+n3/d2)\tilde{O}(nm+n^3/d^2) work and O~(d)\tilde{O}(d) depth [Ullman and Yannakakis, SIAM J. Comput. '91]. Our APSP algorithm turns out to be a powerful tool for designing efficient planar graph algorithms in both parallel and sequential regimes. One notable ingredient of our parallel APSP algorithm is a simple deterministic O~(nm)\tilde{O}(nm)-work O~(d)\tilde{O}(d)-depth procedure for computing O~(n/d)\tilde{O}(n/d)-size hitting sets of shortest dd-hop paths between all pairs of vertices of a real-weighted digraph. Such hitting sets have also been called dd-hub sets. Hub sets have previously proved especially useful in designing parallel or dynamic shortest paths algorithms and are typically obtained via random sampling. Our procedure implies, for example, an O~(nm)\tilde{O}(nm)-time deterministic algorithm for finding a shortest negative cycle of a real-weighted digraph. Such a near-optimal bound for this problem has been so far only achieved using a randomized algorithm [Orlin et al., Discret. Appl. Math. '18].

preprint2021arXiv

Decomposable Submodular Function Minimization via Maximum Flow

This paper bridges discrete and continuous optimization approaches for decomposable submodular function minimization, in both the standard and parametric settings. We provide improved running times for this problem by reducing it to a number of calls to a maximum flow oracle. When each function in the decomposition acts on O(1)O(1) elements of the ground set VV and is polynomially bounded, our running time is up to polylogarithmic factors equal to that of solving maximum flow in a sparse graph with O(∣V∣)O(\vert V \vert) vertices and polynomial integral capacities. We achieve this by providing a simple iterative method which can optimize to high precision any convex function defined on the submodular base polytope, provided we can efficiently minimize it on the base polytope corresponding to the cut function of a certain graph that we construct. We solve this minimization problem by lifting the solutions of a parametric cut problem, which we obtain via a new efficient combinatorial reduction to maximum flow. This reduction is of independent interest and implies some previously unknown bounds for the parametric minimum s,ts,t-cut problem in multiple settings.

preprint2021arXiv

Planar Reachability Under Single Vertex or Edge Failures

In this paper we present an efficient reachability oracle under single-edge or single-vertex failures for planar directed graphs. Specifically, we show that a planar digraph GG can be preprocessed in O(nlog⁡2n/log⁡log⁡n)O(n\log^2{n}/\log\log{n}) time, producing an O(nlog⁡n)O(n\log{n})-space data structure that can answer in O(log⁡n)O(\log{n}) time whether uu can reach vv in GG if the vertex xx (the edge~ff) is removed from GG, for any query vertices u,vu,v and failed vertex xx (failed edge ff). To the best of our knowledge, this is the first data structure for planar directed graphs with nearly optimal preprocessing time that answers all-pairs queries under any kind of failures in polylogarithmic time. We also consider 2-reachability problems, where we are given a planar digraph GG and we wish to determine if there are two vertex-disjoint (edge-disjoint) paths from uu to vv, for query vertices u,vu,v. In this setting we provide a nearly optimal 2-reachability oracle, which is the existential variant of the reachability oracle under single failures, with the following bounds. We can construct in O(nlog⁡O(1)n)O(n\log^{O(1)}{n}) time an O(nlog⁡3+o(1)n)O(n\log^{3+o(1)}{n})-space data structure that can check in O(log⁡2+o(1)n)O(\log^{2+o(1)}{n}) time for any query vertices u,vu,v whether vv is 2-reachable from uu, or otherwise find some separating vertex (edge) xx lying on all paths from uu to vv in GG. To obtain our results, we follow the general recursive approach of Thorup for reachability in planar graphs [J.~ACM~'04] and we present new data structures which generalize dominator trees and previous data structures for strong-connectivity under failures [Georgiadis et al., SODA~'17]. Our new data structures work also for general digraphs and may be of independent interest.

preprint2016arXiv

Improved Bounds for Shortest Paths in Dense Distance Graphs

We study the problem of computing shortest paths in so-called dense distance graphs. Every planar graph GG on nn vertices can be partitioned into a set of O(n/r)O(n/r) edge-disjoint regions (called an rr-division) with O(r)O(r) vertices each, such that each region has O(r)O(\sqrt{r}) vertices (called boundary vertices) in common with other regions. A dense distance graph of a region is a complete graph containing all-pairs distances between its boundary nodes. A dense distance graph of an rr-division is the union of the O(n/r)O(n/r) dense distance graphs of the individual pieces. Since the introduction of dense distance graphs by Fakcharoenphol and Rao, computing single-source shortest paths in dense distance graphs has found numerous applications in fundamental planar graph algorithms. Fakcharoenphol and Rao proposed an algorithm (later called FR-Dijkstra) for computing single-source shortest paths in a dense distance graph in O(nrlog⁡nlog⁡r)O\left(\frac{n}{\sqrt{r}}\log{n}\log{r}\right) time. We show an O(nr(log⁡2rlog⁡2log⁡r+log⁡nlog⁡εr))O\left(\frac{n}{\sqrt{r}}\left(\frac{\log^2{r}}{\log^2\log{r}}+\log{n}\log^ε{r}\right)\right) time algorithm for this problem, which is the first improvement to date over FR-Dijkstra for the important case when rr is polynomial in nn. In this case, our algorithm is faster by a factor of O(log⁡2log⁡n)O(\log^2{\log{n}}) and implies improved upper bounds for such planar graph problems as multiple-source multiple-sink maximum flow, single-source all-sinks maximum flow, and (dynamic) exact distance oracles.

preprint2016arXiv

Optimal Dynamic Strings

In this paper we study the fundamental problem of maintaining a dynamic collection of strings under the following operations: concat - concatenates two strings, split - splits a string into two at a given position, compare - finds the lexicographical order (less, equal, greater) between two strings, LCP - calculates the longest common prefix of two strings. We present an efficient data structure for this problem, where an update requires only O(log⁡n)O(\log n) worst-case time with high probability, with nn being the total length of all strings in the collection, and a query takes constant worst-case time. On the lower bound side, we prove that even if the only possible query is checking equality of two strings, either updates or queries take amortized Ω(log⁡n)Ω(\log n) time; hence our implementation is optimal. Such operations can be used as a basic building block to solve other string problems. We provide two examples. First, we can augment our data structure to provide pattern matching queries that may locate occurrences of a specified pattern pp in the strings in our collection in optimal O(∣p∣)O(|p|) time, at the expense of increasing update time to O(log⁡2n)O(\log^2 n). Second, we show how to maintain a history of an edited text, processing updates in O(log⁡tlog⁡log⁡t)O(\log t \log \log t) time, where tt is the number of edits, and how to support pattern matching queries against the whole history in O(∣p∣log⁡tlog⁡log⁡t)O(|p| \log t \log \log t) time. Finally, we note that our data structure can be applied to test dynamic tree isomorphism and to compare strings generated by dynamic straight-line grammars.

preprint2015arXiv

Fast and simple connectivity in graph timelines

In this paper we study the problem of answering connectivity queries about a \emph{graph timeline}. A graph timeline is a sequence of undirected graphs G1,…,GtG_1,\ldots,G_t on a common set of vertices of size nn such that each graph is obtained from the previous one by an addition or a deletion of a single edge. We present data structures, which preprocess the timeline and can answer the following queries: - forall(u,v,a,b)(u,v,a,b) -- does the path u→vu\to v exist in each of Ga,…,GbG_a,\ldots,G_b? - exists(u,v,a,b)(u,v,a,b) -- does the path u→vu\to v exist in any of Ga,…,GbG_a,\ldots,G_b? - forall2(u,v,a,b)(u,v,a,b) -- do there exist two edge-disjoint paths connecting uu and vv in each of Ga,…,GbG_a,\ldots,G_b We show data structures that can answer forall and forall2 queries in O(log⁡n)O(\log n) time after preprocessing in O(m+tlog⁡n)O(m+t\log n) time. Here by mm we denote the number of edges that remain unchanged in each graph of the timeline. For the case of exists queries, we show how to extend an existing data structure to obtain a preprocessing/query trade-off of ⟨O(m+min⁡(nt,t2−α)),O(tα)⟩\langle O(m+\min(nt, t^{2-α})), O(t^α)\rangle and show a matching conditional lower bound.

Research graph

See the researcher in context

Open full explorer

Inspect adjacent papers, topics, institutions and collaborators without losing the researcher page.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.