Description
Book SynopsisA conceptual introduction to the study of the intrinsic complexity of computational tasks. It will serve advanced undergraduate and graduate students, either as a textbook or for self-study. It provides explanations of the various sub-areas of complexity theory such as hardness amplification, pseudorandomness, and probabilistic proof systems.
Trade Review"This interesting book... is refreshing to read his [Goldreichs'] opinions... The very strong focus on conceptual issues makes the book indispensible as a reference volume for research libraries." M. Bona, University of Florida, CHOICE
"This book provides very well developed material that should interest advanced students either studying or doing new work on computational complexity. It would also be a valuable text for professionals challenged with solving "hard" computing problems of intending to exploit these types of problems when designing of new types computing systems." Brian A. Lawler, Software Engineering Notes
"The book offers a conceptual perspective on several sub-areas of complexity theory and is intended to be used as a textbook for students and educators as well as for experts who seek an overview of of several sub-areas." Gerhard Lischke, Mathematical Reviews
Table of Contents1. Introduction and preliminaries; 2. P, NP and NP-completeness; 3. Variations on P and NP; 4. More resources, more power?; 5. Space complexity; 6. Randomness and counting; 7. The bright side of hardness; 8. Pseudorandom generators; 9. Probabilistic proof systems; 10. Relaxing the requirements; Epilogue; Appendix A. Glossary of complexity classes; Appendix B. On the quest for lower bounds; Appendix C. On the foundations of modern cryptography; Appendix D. Probabilistic preliminaries and advanced topics in randomization; Appendix E. Explicit constructions; Appendix F. Some omitted proofs; Appendix G. Some computational problems.