We were reminded of the state of quantum computer design and the software that goes with it two weeks ago during this year’s Microsoft’s Ignite Conference. I have written several articles in this column on quantum computing and how it is one of our hopes of meeting some of the humongous computing needs of our time. The idea basically is that a paradigm change is required to bring about the exponential speed increase needed in order to solve many of today’s pressing problems in engineering, health sciences, meteorology, and atmospheric sciences, to name a few areas where the relatively slow speed of the computer is preventing us from making spectacular progress.

IBM defines a quantum computer as a device that is able to manipulate delicate quantum states in a controlled fashion, similar to the way that an ordinary computer manipulates bits. As you very well know, the ordinary computer does everything in terms of ones and zeroes. Thus, we have two, or binary, states: 0 and 1, or 2 bits. Thus, instructions (such as the simple arithmetic operations of addition and multiplication) and the data they operate on (such as the ordinary numbers), must eventually be converted to strings of 0’s and 1’s. The conversion of ordinary numbers (in base 10, that is) to the binary system is a straight forward task for a high school student.

The quantum theory itself is a revolutionary advancement in chemistry and physics that was developed in the early 1900s. It is based on a mathematical technique for explaining the behavior of the tiny subatomic particles. In the late 1900s, it was discovered that the quantum theory is also applicable to bits and logic operations in a computer, as it does to atoms and molecules. The two aspects of this theory that are being exploited in quantum computing are superposition and entanglement, which I have described in this column in previous articles on this topic. A quantum computer uses quantum bits, abbreviated “qubits,” which is a system that encodes the one and the zero into two distinguishable quantum states.

Several high tech companies: IBM, Microsoft, Google, and Hewlett-Packard are racing to develop the first usable quantum computer; and this has been going on for decades, at least at IBM and Microsoft. It’s my feeling that IBM, and perhaps, Microsoft, can have a good shot at this technology because of their DNAs in terms of true computer operating system pioneering. Companies like Google, even though they have developed quite useful tools for everyday use, have relied on core technologies that others built, particularly in terms of operating systems (OSs). IBM is obviously in the innovation lead on this, while Microsoft’s DOS (Disk Operating System), which in a sense represents the birth of personal computers (PC) and the consequent democratization of computing for the masses; will always put Microsoft in the forefront of hardcore innovation. So, the fight for the first to come up with a competitive quantum computer and the accompanying OS seems to be between IBM and Microsoft.

With IBM and Microsoft apparently in the lead on quantum computing, it is very difficult to not reminisce on the event of DOS about three decades ago. Then, as now, the same two companies were in the spotlight. Microsoft won the fight then, ending up owning DOS, even though the idea was primarily IBM’s. Things might be different this time around in the case of quantum computing. IBM might just have learnt a lesson.

Also, IBM probably has an intrinsic edge over Microsoft because, unlike conventional computers, quantum computing involves a tighter integration of hardware and software, with IBM being the father of computer hardware building, while Microsoft has generally struggled with anything hardware. As pointed out by Peter Bright in his 25 September 2017 article in arstechnica.com: “Traditional computers are built up of logic gates-groups of transistors that combine bits in various ways to perform operations on them-but this construction is largely invisible to people writing programs for them. Programs and algorithms aren’t written in terms of logic gates; they use higher level constructs, from arithmetic to functions to objects, and more.

The same is not really true of quantum algorithms; the quantum algorithms that have been developed so far are in some ways more familiar to an electronic engineer than a software developer, with algorithms often represented as quantum circuits-arrangements of quantum logic gates, through which qubits flow-rather than more typical programming language concepts.”

Where are IBM and Microsoft today in deploying a true quantum computer? Last year, IBM offered access to a 5 qubit true quantum computer. However, to be worth its while and deliver the desired computing power, 32 or higher qubits are ordinarily required. So, IBM has some way to go. As for Microsoft, it has not been able to build a real quantum computer yet. Instead, it is developing a (quantum computer) simulator that would be able to run the quantum software programs that the company is actively developing.

The company is also developing essentially something that amounts to reducing the number of qubits required for phenomenal computing power via the quantum theory. Exciting developments here!