in

Dot Net Mafia

Group site for developer blogs dealing with (usually) .NET, SharePoint, Office 365, Mobile Development, and other Microsoft products, as well as some discussion of general programming related concepts.

This Blog

Syndication

Archives

Corey Roth [MVP]

A SharePoint MVP bringing you the latest time saving tips for SharePoint 2013, Office 365 / SharePoint Online and Visual Studio 2013.

Why Microsoft’s Investment in Quantum Computing Matters

Updated: 10/2/2017

When the Ignite keynote shifted to the topic of quantum computing, my inner geek came out.  As they brought out on stage some of the smartest minds Microsoft has to offer, some of the audience glazed over.  Many people come to Ignite to find out what they can use to do their jobs better in the next few months.  However, with quantum computing, some of the reality of what we see is a litter farther out but not as far as you might think.  Not all of us will use quantum computing.  In reality, most of us will never use it directly. After all, your phone is likely never to be powered by a quantum computer.  Especially since it has to be cooled to 0.01 K.  That’s –459 F or –271 C.   You’ll be affected by this technology though. 

20170925_180232659_iOS

If you look at the major technological advancements of the human races over the years, you think of things like electricity, semi-conductors, nuclear fission, and space travel.  When we figure out how to make a sustainable, scalable, quantum computer, that will be something that goes on that list.  It’s significance is somewhere up there with things like nuclear fusion and travel to Mars.  Maybe you don’t agree with me there, but it is a significant achievement none-the-less.

What is Quantum Computing?

Like many attendees at Ignite, I have a degree in computer science, but I would hardly call myself a computer scientist.  I reserve that term for the professors and PHDs that are doing real research to advance the field.  As you know, traditional computing uses bits which can have a value of 0 or 1.  Quantum computing uses qubits (or quantum bits).  A qubit can have a value of 0 or 1, but it can also have a value of 0 and 1 simultaneously though a phenomenon called superposition. 

20170925_175503370_iOS

While I don’t fully understand why this allows us to make computations faster, it effectively lets us compute more with less by being able to check multiple states at once. 

What can Quantum Computing do?

Quantum computing is really good at finding a needle in a haystack.  A lot of this is centered around the concept of quantum parallelism which allows a quantum computer to do multiple calculations simultaneously and examine the results.  You might have heard that quantum computing will have an effect on traditional cryptography.  This is partially true because many algorithms are based upon the calculation of two prime numbers together to generate a key.  Since quantum computing can do many of these calculations simultaneously, it can effectively brute force an attack on a key to decrypt the information.  However, only some algorithms are susceptible to this and there are new algorithms and key sizes that can work around this so don’t get too worried about using your credit card number online just yet. 

20170928_134600081_iOS

Outside of cryptography, quantum computing will have benefits for chemistry, health care, material science, and more.  While you personally may not be using a quantum computer, you will realize its benefits indirectly through the advances it makes possible.  From Microsoft’s Quantum Computing site, “Quantum computing could solve problems that would take today's computers eons in the time it takes to grab a cup of coffee.” 

A new approach

Microsoft’s approach is based on topological quantum computing.  With this approach they are seeing some early success with better error rates.  Error rates are common in early quantum computing because of the concept of quantum decoherence, one of the main obstacles of making a quantum computer.  Microsoft is also focused on building a scalable (think Azure) end-to-end solution.  Microsoft is working on the hardware, software, and tools that will work together to hopefully one-day make a usable solution.

20170928_144916550_iOS

Shown above, the plaque outside of the hydrogen isotope dilution refrigerator.  Explains the reason why quantum computing requires such extremely cold temperatures as well as some of the issues that quantum computing might solve.

Microsoft isn’t the first to the table in quantum computing and they admit that.  Google, IBM, and many universities have already been working on quantum computing for some time.  This isn’t really a space race though.  I think this is something that benefits from more companies and teams working on it.  With that Microsoft is bringing their own approach.

Quantum Computer Simulator

With qubits, you really can do more with less.  To give you an idea of scale.  Where as typically do operations 64 bits at a time, today’s quantum computers only 5 and 16 qubits.  Microsoft has said that the simulators that you can run on your Windows PC will let you emulate up to around 30 qubits and you will be able to get around 40 qubits if you push the workload to Azure.  That might not seem like much but each time you add a qubit, you double the computational power.  For example 30 qubits, would be 2^30 while 31 qubits would be 2^31.  Microsoft wants to get to the point where they have computers with hundreds or even thousands of qubits.

Quantum Computing in Azure?

That’s what Microsoft want to do.  Just like you can buy a D series or M series virtual machine.  Microsoft wants to do this at scale so it would just be an add-on to its virtual machine offerings.  Whereas getting access to the power of today’s super computers isn’t really feasible for most of us, for businesses that need quantum computing power, you’ll be able to effectively lease time on one without having to invest in having one on-premises.

20170925_175952697_iOS

A programming language built for Quantum Computing

I never imagined people writing programs for a quantum computer using Visual Studio, but that’s exactly what is coming.  At Ignite, they demoed the “Hello World” of quantum computing.  It doesn’t simply display text on the screen.  It actually transmits data from one qubit to another.  At least that's how I understood it.  The syntax reminds me of assembly language programming more than something like C#.  You’ll be able to run these examples on the simulator as well as others when they release the tooling later.

20170925_180728904_iOS

Conclusion

If you have ever watched Big Bang Theory and you start reading up on quantum computing, you’ll start seeing some familiar names and concepts from the show.  Schrodinger’s Cat, Schor’s Algorithm, and Dr. Feynman.  The writers of that show actually do a pretty good job at making sure the show is scientifically accurate.  If you want to learn more about quantum computing, check out Microsoft’s site.  You can also read more on Wikipedia.

Quantum computing isn’t going to help you sell more widgets today, but it will have an impact on your life sometime in the future.  Again I am no expert on this topic, so if you are a scientist and think I got something wrong, don’t flame me, kindly correct me in the comments and I’ll make updates.

Published Sep 27 2017, 10:29 AM by CoreyRoth
Filed under:

Comments

No Comments

Leave a Comment

(required)  
(optional)
(required)  
Add

About CoreyRoth

Corey Roth is an independent SharePoint consultant specializing in ECM, Apps, and Search.
2015 dotnetmafia.
Powered by Community Server (Non-Commercial Edition), by Telligent Systems