Book Image

Learn Q# Programming

By : Bhagvan Kommadi, Aneesh K Johny
Book Image

Learn Q# Programming

By: Bhagvan Kommadi, Aneesh K Johny

Overview of this book

<p>This book covers the fundamentals of quantum computing and programming with Microsoft’s Q# language. The reader will learn how to design, test and debug algorithms for different quantum applications.</p> <p>The primary focus of this book will be to give the audience an idea about how to get started with the concepts, different aspects, and theories of quantum computing operations, algorithms etc. Through this book, the developer will get a basic idea about the Microsoft Quantum Tool Kit and how to use the embedded Q# language. This will enable the reader to formalize and convert different real world problems to quantum algorithms and optimize them to use with a future quantum computer.</p> <p>By the end of the book, you would have successfully learned to create quantum programs of your own.</p>
Table of Contents (11 chapters)

Quantum Computation: The Origin


The beginning of the twentieth century was a mile stone in the history of science which redirect all the fundamental understanding. Beginning with the change in the perspective of how we think of the physical reality was changed by the theory of relativity and the understanding of universe by the introduction of quantum mechanics, which tells us the behavior of particles. Then there comes the Uncertainty principle, which turn around the understanding of elemental particle theories and measurements. Richard Feynman in the 1960s  proposed many aspects of quantum electrodynamics, the study of the way in which electrons behave in presence of electromagnetic radiation, through photons. Feynman along with others began to investigate the possibility of handling information using the simple quantum mechanical processes, considering the representation of binary numbers in accordance with the quantum states of two-state quantum system. This was a giant undertaking, in the scene that the scientists actually trying to emulate quantum mechanical process using a quantum computation device rather than a normal classical computer. During a conference co-hosted by IBM and MIT, Feynman challenged the computer science community to develop a computing device using the principles of quantum mechanics.

 First ever practical and commercially available computing device "ENIAC" (Wikipedia)

In 1985, David Deutsch from Oxford university published an article describing the possibility of a universal quantum computing device. He explained and proved that if a two-state quantum system could be made to evolve by means of a set of simple yet powerful operations, it can be used to simulate any physical system. This operation was called quantum gates because of its similarity with binary logic gates. Then in 1994, Peter Shor, currently a professor at Massachusetts Institute of Technology (MIT), Cambridge, Massachusetts, USA, proposed and developed an algorithm using quantum gates to find the prime factors of large number, which used to take enormous amount of time by  classical computer. This algorithm was a valuable leap in quantum computing, because many of the normal encryption schemes uses large number, of which, finding factors is extremely difficult. This opened an enormous opportunity in the scientific community in the field of computing. There were so many problems associated with the creation of quantum states. In 1995 a group of researchers from Caltech and The National Institute of Standard and Technology (NIST) jointly developed methods to create quantum states using magnetic fields, which allow ions or particles to isolate from environmental influences. This was a giant leap in the quantum technology even though the states are very unstable.

Richard Feynman (Wikipedia)

In early 2000s a group of scientists demonstrated the Shor's algorithm with a time span of 48 hrs using a quantum computer. As the time continues more and more technological and algorithmic developments have been made which eventually made better understanding of how to build a real quantum system. Then a group of researchers lead by Robert J. Schoelkopf invented a way to create superconducting qubits called transom qubits. It is a charged qubits and most of the todays research is focused on technology related to transom qubits. Major changes happened in the last few years, companies like IBM, Microsoft, Google and startups like rigeti, D-wave developing state-of-the-art quantum computers for commercial applications. In 2019 January, IBM released its first quantum computer for commercial applications. The efforts are still on to remove all the hurdles in quantum computing and researchers are pushing the limits to make a universal quantum machine to fulfill all the needs of the masses.