This text is the first comprehensive introduction to the main ideas and techniques of the field of quantum computation and quantum information. Michael Nielsen and Isaac Chuang ask the question: what are the ultimate physical limits to computation and communication? They describe in detail such remarkable effects as fast quantum algorithms, quantum teleportation, quantum cryptography and quantum error-correction. A wealth of accompanying figures and exercises illustrate and develop the material in more depth. The authors describe what a quantum computer is, how it can be used to solve problems faster than familiar 'classical' computers, and the real-world implementation of quantum computers. The book concludes with an in-depth treatment of quantum information, explaining how quantum states can be used to perform remarkable feats of communication, together with a discussion of how it is possible to protect quantum states against the effects of noise.