Pseudo-determinism
Author(s)
Grossman, Ofer
DownloadThesis PDF (1.000Mb)
Advisor
Goldwasser, Shafi
Terms of use
Metadata
Show full item recordAbstract
A curious property of randomized algorithms for search problems is that on different executions on the same input, the algorithm may return different outputs due to differences in the internal randomness used by the algorithm. We would like to understand how we can construct randomized algorithms which while still using the power of randomness can ensure that when run multiple time on the same input, with high probability result in the same output on each of the executions.
We first show a pseudo-deterministic NC algorithm for finding matchings in bipartite graphs. As a corollary, we also show a pseudo-deterministic NC algorithm for constructing DFS trees in graphs.
We then show a reproducible algorithm for problems in search-RL. That is, we show an algorithm for problems in search-RL such that the output depends only on 𝑂(log 𝑛) many random bits used by the algorithm. We also show a pseudo-deterministic log-space low time algorithm for finding paths in undirected graphs. The algorithm is much faster than deterministic logspace algorithms for the problem.
Next, we investigate pseudo-determinism in the context of streaming algorithms. We show both lower and upper bounds for some classic streaming problems. Most notably, we show that the problem of approximate counting in a stream (for which the well known algorithm of Morris gives a 𝑂(log log 𝑛) space algorithm), has no pseudo-deterministic algorithms using space 𝑜(log 𝑛).
Finally, we examine an extension of pseudo-determinism to the context of interactive proofs.
Date issued
2023-06Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology