What Can Be Computed?

What Can Be Computed?

Author: John MacCormick

Publisher: Princeton University Press

Published: 2018-05-01

Total Pages: 404

ISBN-13: 0691170665

DOWNLOAD EBOOK

An accessible and rigorous textbook for introducing undergraduates to computer science theory What Can Be Computed? is a uniquely accessible yet rigorous introduction to the most profound ideas at the heart of computer science. Crafted specifically for undergraduates who are studying the subject for the first time, and requiring minimal prerequisites, the book focuses on the essential fundamentals of computer science theory and features a practical approach that uses real computer programs (Python and Java) and encourages active experimentation. It is also ideal for self-study and reference. The book covers the standard topics in the theory of computation, including Turing machines and finite automata, universal computation, nondeterminism, Turing and Karp reductions, undecidability, time-complexity classes such as P and NP, and NP-completeness, including the Cook-Levin Theorem. But the book also provides a broader view of computer science and its historical development, with discussions of Turing's original 1936 computing machines, the connections between undecidability and Gödel's incompleteness theorem, and Karp's famous set of twenty-one NP-complete problems. Throughout, the book recasts traditional computer science concepts by considering how computer programs are used to solve real problems. Standard theorems are stated and proven with full mathematical rigor, but motivation and understanding are enhanced by considering concrete implementations. The book's examples and other content allow readers to view demonstrations of—and to experiment with—a wide selection of the topics it covers. The result is an ideal text for an introduction to the theory of computation. An accessible and rigorous introduction to the essential fundamentals of computer science theory, written specifically for undergraduates taking introduction to the theory of computation Features a practical, interactive approach using real computer programs (Python in the text, with forthcoming Java alternatives online) to enhance motivation and understanding Gives equal emphasis to computability and complexity Includes special topics that demonstrate the profound nature of key ideas in the theory of computation Lecture slides and Python programs are available at whatcanbecomputed.com


Computational Complexity

Computational Complexity

Author: Sanjeev Arora

Publisher: Cambridge University Press

Published: 2009-04-20

Total Pages: 609

ISBN-13: 0521424267

DOWNLOAD EBOOK

New and classical results in computational complexity, including interactive proofs, PCP, derandomization, and quantum computation. Ideal for graduate students.


Foundations of Computation

Foundations of Computation

Author: Carol Critchlow

Publisher:

Published: 2011

Total Pages: 256

ISBN-13:

DOWNLOAD EBOOK

Foundations of Computation is a free textbook for a one-semester course in theoretical computer science. It has been used for several years in a course at Hobart and William Smith Colleges. The course has no prerequisites other than introductory computer programming. The first half of the course covers material on logic, sets, and functions that would often be taught in a course in discrete mathematics. The second part covers material on automata, formal languages and grammar that would ordinarily be encountered in an upper level course in theoretical computer science.


The Nature of Computation

The Nature of Computation

Author: Cristopher Moore

Publisher: OUP Oxford

Published: 2011-08-11

Total Pages: 1498

ISBN-13: 0191620807

DOWNLOAD EBOOK

Computational complexity is one of the most beautiful fields of modern mathematics, and it is increasingly relevant to other sciences ranging from physics to biology. But this beauty is often buried underneath layers of unnecessary formalism, and exciting recent results like interactive proofs, phase transitions, and quantum computing are usually considered too advanced for the typical student. This book bridges these gaps by explaining the deep ideas of theoretical computer science in a clear and enjoyable fashion, making them accessible to non-computer scientists and to computer scientists who finally want to appreciate their field from a new point of view. The authors start with a lucid and playful explanation of the P vs. NP problem, explaining why it is so fundamental, and so hard to resolve. They then lead the reader through the complexity of mazes and games; optimization in theory and practice; randomized algorithms, interactive proofs, and pseudorandomness; Markov chains and phase transitions; and the outer reaches of quantum computing. At every turn, they use a minimum of formalism, providing explanations that are both deep and accessible. The book is intended for graduate and undergraduate students, scientists from other areas who have long wanted to understand this subject, and experts who want to fall in love with this field all over again.


Mathematics and Computation

Mathematics and Computation

Author: Avi Wigderson

Publisher: Princeton University Press

Published: 2019-10-29

Total Pages: 434

ISBN-13: 0691189137

DOWNLOAD EBOOK

From the winner of the Turing Award and the Abel Prize, an introduction to computational complexity theory, its connections and interactions with mathematics, and its central role in the natural and social sciences, technology, and philosophy Mathematics and Computation provides a broad, conceptual overview of computational complexity theory—the mathematical study of efficient computation. With important practical applications to computer science and industry, computational complexity theory has evolved into a highly interdisciplinary field, with strong links to most mathematical areas and to a growing number of scientific endeavors. Avi Wigderson takes a sweeping survey of complexity theory, emphasizing the field’s insights and challenges. He explains the ideas and motivations leading to key models, notions, and results. In particular, he looks at algorithms and complexity, computations and proofs, randomness and interaction, quantum and arithmetic computation, and cryptography and learning, all as parts of a cohesive whole with numerous cross-influences. Wigderson illustrates the immense breadth of the field, its beauty and richness, and its diverse and growing interactions with other areas of mathematics. He ends with a comprehensive look at the theory of computation, its methodology and aspirations, and the unique and fundamental ways in which it has shaped and will further shape science, technology, and society. For further reading, an extensive bibliography is provided for all topics covered. Mathematics and Computation is useful for undergraduate and graduate students in mathematics, computer science, and related fields, as well as researchers and teachers in these fields. Many parts require little background, and serve as an invitation to newcomers seeking an introduction to the theory of computation. Comprehensive coverage of computational complexity theory, and beyond High-level, intuitive exposition, which brings conceptual clarity to this central and dynamic scientific discipline Historical accounts of the evolution and motivations of central concepts and models A broad view of the theory of computation's influence on science, technology, and society Extensive bibliography


Nine Algorithms That Changed the Future

Nine Algorithms That Changed the Future

Author: John MacCormick

Publisher: Princeton University Press

Published: 2020-09-15

Total Pages: 232

ISBN-13: 0691209057

DOWNLOAD EBOOK

Nine revolutionary algorithms that power our computers and smartphones Every day, we use our computers to perform remarkable feats. A simple web search picks out a handful of relevant needles from the world's biggest haystack. Uploading a photo to Facebook transmits millions of pieces of information over numerous error-prone network links, yet somehow a perfect copy of the photo arrives intact. Without even knowing it, we use public-key cryptography to transmit secret information like credit card numbers, and we use digital signatures to verify the identity of the websites we visit. How do our computers perform these tasks with such ease? John MacCormick answers this question in language anyone can understand, using vivid examples to explain the fundamental tricks behind nine computer algorithms that power our PCs, tablets, and smartphones.


Introduction to the Theory of Computation

Introduction to the Theory of Computation

Author: Michael Sipser

Publisher: Thomson/Course Technology

Published: 2006

Total Pages: 437

ISBN-13: 9780619217648

DOWNLOAD EBOOK

"Intended as an upper-level undergraduate or introductory graduate text in computer science theory," this book lucidly covers the key concepts and theorems of the theory of computation. The presentation is remarkably clear; for example, the "proof idea," which offers the reader an intuitive feel for how the proof was constructed, accompanies many of the theorems and a proof. Introduction to the Theory of Computation covers the usual topics for this type of text plus it features a solid section on complexity theory--including an entire chapter on space complexity. The final chapter introduces more advanced topics, such as the discussion of complexity classes associated with probabilistic algorithms.


Information, Physics, and Computation

Information, Physics, and Computation

Author: Marc Mézard

Publisher: Oxford University Press

Published: 2009-01-22

Total Pages: 584

ISBN-13: 019857083X

DOWNLOAD EBOOK

A very active field of research is emerging at the frontier of statistical physics, theoretical computer science/discrete mathematics, and coding/information theory. This book sets up a common language and pool of concepts, accessible to students and researchers from each of these fields.


The Feeling of Life Itself

The Feeling of Life Itself

Author: Christof Koch

Publisher: MIT Press

Published: 2019-09-24

Total Pages: 277

ISBN-13: 0262042819

DOWNLOAD EBOOK

A thought-provoking argument that consciousness—more widespread than previously assumed—is the feeling of being alive, not a type of computation or a clever hack In The Feeling of Life Itself, Christof Koch offers a straightforward definition of consciousness as any subjective experience, from the most mundane to the most exalted—the feeling of being alive. Psychologists study which cognitive operations underpin a given conscious perception. Neuroscientists track the neural correlates of consciousness in the brain, the organ of the mind. But why the brain and not, say, the liver? How can the brain—three pounds of highly excitable matter, a piece of furniture in the universe, subject to the same laws of physics as any other piece—give rise to subjective experience? Koch argues that what is needed to answer these questions is a quantitative theory that starts with experience and proceeds to the brain. In The Feeling of Life Itself, Koch outlines such a theory, based on integrated information. Koch describes how the theory explains many facts about the neurology of consciousness and how it has been used to build a clinically useful consciousness meter. The theory predicts that many, and perhaps all, animals experience the sights and sounds of life; consciousness is much more widespread than conventionally assumed. Contrary to received wisdom, however, Koch argues that programmable computers will not have consciousness. Even a perfect software model of the brain is not conscious. Its simulation is fake consciousness. Consciousness is not a special type of computation—it is not a clever hack. Consciousness is about being.