Introduction to Programming Quantum Computing

Although you can now get cloud computing access from Amazon AWS and Microsoft Azure to existing quantum computing hardware, here we will take a light approach: review just enough math for you to understand the basics of quantum computing and accessing quantum computing simulators in a few Hy language examples. I try hard to cover material in my books that will be of immediate practical use to my readers but this chapter is more forward thinking, hopefully introducing you to ideas that will be useful when quantum computers are scaled to solve a wider range of practical problems. To be honest, the material in this chapter is really for my use to learn enough about quantum technology to use it when appropriate in the future. I hope that you also benefit from tinkering with early quantum technology.

Quantum computers may add exponentially fast computation over conventional computer architectures and another important application may be world wide quantum entangle networks that would (hopefully) provide un-hackable communications for financial institutions, government, and military applications.

Quantum networks will be based on the property of entanglement and we will build an example of entanglement later.

The idea of quantum entanglement is simple: two quantum particles share the same information no matter how far apart they are.

Experimentally, if you measure one paired (or entangled) particle then any measurement you perform immediately influences the other entangled particle. Albert Einstein (who my father knew when they both worked at the Institute for Advanced Studies) called this effect “spooky action at a distance.” Spooky indeed!

Resources

We will be using the pyQuil library (GitHub repo) and use the paper A Practical Quantum Instruction Set Architecture by Robert Smith, Michael Curtis, and William Zeng as a reference.

Please note that you will need a free API key from Rigetti to follow along with the following examples. You can sign up here.

The Math You Will Need to Know

TBD

A Quick Tour of Quantum Information Theory

TBD

Avalaible Software Simulators and Tools

TBD

Hy Language Examples