Microsoft Develops New Programming Language For Quantum Computers

Microsoft announced at the Ignite conference that it will preview a new programming language designed to work with quantum computers by the end of the year.

Next Big Thing In Computing

At the conference, Microsoft also said that it believes quantum computing is the “next big thing” in the computing industry. That’s quite the claim, and it may lead companies into becoming interested in quantum computers, if they weren’t already, thus making the quantum computing revolution a bit of a self-fulfilling prophecy.

However, other large technology companies as well as some new and old startups seem to believe the same thing, as they’ve accelerated investment in quantum computers over the past few years. At the same time, we’ve seen many new recent breakthroughs that should help quantum computers become more practical.

Microsoft itself recently set up a lab for building a “topological” quantum computer, a form of quantum computer that's supposed to have more stable qubits with built-in fault-tolerance. The more stable the qubits are, the easier it is to do more advanced computation on the quantum computer.

Quantum computers could make testing new drugs or researching new types of material a process of weeks or months instead of decades, once they're powerful enough. When they'll reach that level is hard to say, but Google and IBM believe that the quantum computing revolution will truly begin when we reach “quantum supremacy.”

Quantum supremacy is the moment in time when a quantum computer can perform certain calculations faster than any supercomputer on the planet. Google and IBM believe this will happen when we’ll have a 50-or-so qubit quantum computer. Google has promised to unveil one such computer later this year.

A Programming Language For Quantum Computers

Inventing the hardware that will make practical quantum calculations finally possible is hard enough, but to make quantum computers truly useful, they need their own programming language, too, so researchers can start developing all sorts of useful applications for them.

One of those applications could be in the field of machine learning. According to Craig Mundie, Microsoft’s chief research and strategy officer, a quantum computer could hypothetically process the training of a Cortana algorithm in a day instead of a month. Quantum computers should be good at solving optimization problems, which would make them a great match for training artificial intelligence that has to learn from millions of data points by “approximating” a solution.

Microsoft hasn’t announced yet what its new programming language will be called, but it did say that it will be integrated into the company’s Visual Studio, and it should work much like other supported programming languages.

The new programming system for quantum computers will also include libraries and tutorials for developers who want to familiarize themselves with quantum computers. The language is also high-level and abstract enough that it shouldn’t be too difficult for developers to build their own quantum programs. They can also simulate programs that require up to 30 logical qubits of power on individual PCs, and select Azure customers will also be able simulate problems on up to 40 logical qubits of power.

A logical qubit can be composed of up to 10,000 physical qubits. The advantage to this approach is that the computation doesn’t have to rely so much on the stability of a few physical qubits, thus making the whole system more fault-tolerant. However, Microsoft said it found a way to use fewer topological qubits when developing a logical qubit, making it far easier to scale its future quantum computers to a higher number of logical qubits.

“For the first time in 70 years we’re looking at a way to build a computing system that is just completely different,” Mundie said. “It’s not an incremental tune-up or improvement. It’s a qualitatively different thing.”

Lucian Armasu
Lucian Armasu is a Contributing Writer for Tom's Hardware US. He covers software news and the issues surrounding privacy and security.
  • WyomingKnott
    New datatypes include the quantbool with True, False, and Maybe values, and int and floating values with a normal distribution specified by mean and standard deviation. Other distributions are expected.

    New statements include the for-a-while loop. Classical logic can be implemented with the @incoherently decorator.
    Reply
  • EastOfEden
    Maybe ( Print ("HELLO WORLD") );
    Reply
  • Colin_10
    With decades of entrenchment of classical programming techniques it will be interesting to see how fast developers can learn new tools that will likely be very different from what they use now.
    Reply
  • hoofhearted
    What about qcl. Shor and grover:
    http://tph.tuwien.ac.at/~oemer/doc/quprog/node32.html
    http://tph.tuwien.ac.at/~oemer/doc/quprog/node17.html
    Reply
  • falchard
    WhenYouGetToIt(ThrowOutTheTrash());
    Reply
  • WyomingKnott
    20214667 said:
    WhenYouGetToIt(ThrowOutTheTrash());

    Futures have been around for a while already.
    Reply