Uses of randomness in computation
Richard P. Brent

TL;DR
This paper discusses the various applications of randomness in computation, including algorithms, cryptography, and complexity theory, highlighting key contributions and open questions in the field.
Contribution
It provides an overview of the uses of randomness in computation and discusses foundational work by Rabin and Yao, emphasizing the connection between probabilistic and average-case complexity.
Findings
Randomness is crucial in practical algorithms like cryptography and simulation.
Probabilistic algorithms relate closely to average-case complexity of deterministic algorithms.
Open questions remain in the theoretical understanding of randomness in computation.
Abstract
Random number generators are widely used in practical algorithms. Examples include simulation, number theory (primality testing and integer factorization), fault tolerance, routing, cryptography, optimization by simulated annealing, and perfect hashing. Complexity theory usually considers the worst-case behaviour of deterministic algorithms, but it can also consider average-case behaviour if it is assumed that the input data is drawn randomly from a given distribution. Rabin popularised the idea of "probabilistic" algorithms, where randomness is incorporated into the algorithm instead of being assumed in the input data. Yao showed that there is a close connection between the complexity of probabilistic algorithms and the average-case complexity of deterministic algorithms. We give examples of the uses of randomness in computation, discuss the contributions of Rabin, Yao and others, and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · Computability, Logic, AI Algorithms · Complexity and Algorithms in Graphs
