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)

Why Quantum Computing?


Today's computers are very good at fulfilling our needs. We are enjoying the benefits of today's classical computers. It is entertaining us, connecting us and even help us in each and every moment of life in one way or another. Classical computers are helping us to process huge amount of data in this data driven world and make the world is a better place. From medicine to finance, engineering and so many other areas, computers and computer knowledge is an essential for a human being to survive. The power of the computers are increasing day by day and it will continue to increase as we develop further. 

However, there are limitations to the classical computers. There are problems that cannot be addressed with classical computers. In other words, there are problems that cannot be addressed using a classical computer. There are many complex system in science which are so complex and massive that we cannot do it with even the powerful supercomputers using classical computing technology. This leads the scientists to seek new methods and approaches to tackle with this limitation of classical computers.

We need systems with computational power with the size and the complexity of the system itself. The best example we can choose is the simulation of atoms and molecules. Everyone knows that simulating an atom or a molecule is very complex due to the complex quantum mechanical calculation involved. The behavior of an electron inside an atom or molecule is very complex to compute, which is very essential in understanding the inner mechanism of that molecule.

The simulation of chemistry and simulation of even small scale macro molecules which are essential for life on earth is very complex for a classical computer. Nature is quantum mechanical and classical computer is very limited in simulating quantum mechanical aspects. So it is essential to use the object which obeys the same natural laws to simulate or understand the nature. A quantum computer can easily simulate these complex systems so that we can understand it. The implications this leads to is immense, opportunities in new drugs, new materials, understanding catalytic interaction in chemical reactions complex molecular interactions which are impossible to calculate using today's computing technology.