This chapter contains an introduction to the main concepts in quantum computation and entanglement. It starts with a brief introduction to computational complexity and then introduces quantum gates and quantum networks, discussing the universality issue in quantum computation. A review on the main known quantum algorithms follows, including Deutsch's, Deutsch-Jozsa's, Grover's and Shor's algorithms. The basic concepts in the theory of quantum error correction are then reviewed. The second part of the chapter is devoted to entanglement. It starts by reminding the basic definitions of entanglement and entanglement criteria for bipartite and multipartite systems, and then discusses the role that entanglement plays in the quantum algorithms described before. The chapter ends with short descriptions of NMR quantum computing, the computational model DQC1, and one-way quantum computing.
This chapter contains an introduction to the main concepts in quantum computation and entanglement. It starts with a brief introduction to computational complexity and then introduces quantum gates and quantum networks, discussing the universality issue in quantum computation. A review on the main known quantum algorithms follows, including Deutsch's, Deutsch-Jozsa's, Grover's and Shor's algorithms. The basic concepts in the theory of quantum error correction are then reviewed. The second part of the chapter is devoted to entanglement. It starts by reminding the basic definitions of entanglement and entanglement criteria for bipartite and multipartite systems, and then discusses the role that entanglement plays in the quantum algorithms described before. The chapter ends with short descriptions of NMR quantum computing, the computational model DQC1, and one-way quantum computing.
The basic ideas of quantum computation are introduced by a brief discussion of Bennett (1973, 1982) and Fredkin's (1982, 1997) ideas of reversible computation. After some remarks about Deutsch's (1985) pioneering work on quantum complexity and Shor's (1996) factorisation algorithm, quantum logic gates, qubits and registers are discussed. The role of quantum entanglement is stressed and Grover's (1997) quantum search algorithm described in detail. The paper ends with a review of the current experimental status of quantum computers.
This chapter introduces the basic building blocks of quantum computing and a variety of specific algorithms. It begins with a brief review of classical computing and discusses how its key elements – bits, gates, circuits – carry over to the quantum realm. It highlights crucial differences to the classical case, such as the impossibility of copying a qubit. The quantum circuit model is shown to be universal, and a peculiar variant of quantum computing, based on measurements only, is illustrated. That a quantum computer can perform some calculations more efficiently than a classical computer, at least in principle, is exemplified with the Deutsch-Jozsa algorithm. Other examples covered in this chapter are the variational quantum eigensolver, which can be applied to the study of molecules and classical optimization problems; quantum simulation; and entanglement-assisted metrology.
In the last few years, theoretical study of quantum systems serving as computational devices has achieved tremendous progress. We now have strong theoretical evidence that quantum computers, if built, might be used as a dramatically powerful computational tool. This review is about to tell the story of theoretical quantum computation. I left out the developing topic of experimental realizations of the model, and neglected other closely related topics which are quantum information and quantum communication. As a result of narrowing the scope of this paper, I hope it has gained the benefit of being an almost self contained introduction to the exciting field of quantum computation. The review begins with background on theoretical computer science, Turing machines and Boolean circuits. In light of these models, I define quantum computers, and discuss the issue of universal quantum gates. Quantum algorithms, including Shor's factorization algorithm and Grover's algorithm for searching databases, are explained. I will devote much attention to understanding what the origins of the quantum computational power are, and what the limits of this power are. Finally, I describe the recent theoretical results which show that quantum computers maintain their complexity power even in the presence of noise, inaccuracies and finite precision. I tried to put all results in their context, asking what the implications to other issues in computer science and physics are. In the end of this review I make these connections explicit, discussing the possible implications of quantum computation on fundamental physical questions, such as the transition from quantum to classical physics.
This chapter offers an introduction to the emerging domain of quantum programming. Quantum computing demands a paradigm shift from classical approaches. Traditional programming constructs are insufficient for exploiting the complete capabilities of quantum algorithms. Instead, quantum programming languages such as Qiskit, Quipper, and Q# provide frameworks for expressing quantum algorithms in a quantum-native manner. This chapter starts by examining the fundamental principles that establish the distinctive computational paradigm of quantum computing. Then, an introduction to fundamental quantum concepts, including superposition, entanglement, and quantum gates, is provided. It explains how quantum gates manipulate qubits, orchestrating complex quantum operations. Moreover, it explores quantum parallelism and interference, which underpin the unique computational power of quantum computers. Furthermore, the chapter explores the problems of quantum error correction and fault tolerance, which are essential for mitigating the effects of decoherence and noise in quantum systems. These techniques pave the way for scalable and reliable quantum computation. Overall, this chapter serves as a comprehensive primer on quantum computing principles and their implications for programming. By explaining the fundamentals of quantum mechanics and clarifying their role in computation, it provides a foundational understanding essential for navigating the emerging field of quantum computing.
Quantum computing is a subject that assembles ideas from classical quantum physics, information theory, and computer science. This paper describes the connection between information theory and quantum mechanics. Explaining their relationship, the review concocts introduction to classical information theory and computer science, including Shannon's theorem, error correcting codes, Turing machines and computational complexity. The principles of quantum mechanics are then outlined, and the EPR experiment described. The EPR-Bell correlations and quantum entanglement in general, form the essential new ingredient which distinguishes quantum from classical information theory, and arguably, quantum from classical physics. Basic Quantum information ideas are described, including key distribution, teleportation, data compression, quantum error correction, the universal quantum computer and quantum algorithms. The common theme of all these ideas is the use of quantum entanglement as a computational resource. Experimental methods for small quantum processors are briefly sketched, concentrating on ion traps, high Q cavities, and NMR. The review concludes with an outline of the main features of quantum information physics, and avenues for future research.