Typically-Correct Derandomization for Small Time and Space William M. Hoza Department of Computer Science, University of Texas at Austin, USA https://williamhoza.com
[email protected] Abstract Suppose a language L can be decided by a bounded-error randomized algorithm that runs in space S and time n · poly(S). We give a randomized algorithm for L that still runs in space O(S) and time n · poly(S) that uses only O(S) random bits; our algorithm has a low failure probability on all but a negligible fraction of inputs of each length. As an immediate corollary, there is a deterministic algorithm for L that runs in space O(S) and succeeds on all but a negligible fraction of inputs of each length. We also give several other complexity-theoretic applications of our technique. 2012 ACM Subject Classification Theory of computation → Pseudorandomness and derandomiza- tion; Theory of computation → Probabilistic computation; Theory of computation → Complexity classes Keywords and phrases Derandomization, pseudorandomness, space complexity Digital Object Identifier 10.4230/LIPIcs.CCC.2019.9 Funding William M. Hoza: Supported by the NSF GRFP under Grant DGE-1610403 and by a Harrington Fellowship from UT Austin. Acknowledgements We thank Michael Forbes, Scott Aaronson, David Zuckerman, Adam Klivans, and Anna Gál for helpful comments on an early draft of this paper. We thank Amnon Ta-Shma, Lijie Chen, Chris Umans, David Zuckerman, Adam Klivans, Anna Gál, Gil Cohen, Shachar Lovett, Oded Goldreich, and Avi Wigderson for helpful discussions. 1 Introduction 1.1 The Power of Randomness When Time and Space Are Limited A central goal of complexity theory is to understand the relationship between three fun- damental resources: time, space, and randomness.