News

New Microsoft Quantum Development Kit Integrates with Visual Studio

Microsoft yesterday unveiled a new Quantum Development Kit for developers wanting to get in on the bleedingest of bleeding-edge technologies.

Quantum computing, still difficult to explain and shrouded in mystery to many, was recently identified by CEO Satya Nadella as one of the three primary points of focus for the company, along with two other game-changing technologies that will shape the future: mixed reality and artificial intelligence (AI).

Or, as Microsoft said in its announcement post yesterday, "It goes without saying that quantum physics is extremely complex, and even some of the smartest people in the world confess that quantum computing is hard for them to understand."

One thing everybody understands is the promise of a breakthrough in computing speed for certain applications. According to the company's "What Is Quantum Computing" site:

In quantum computing, a qubit (short for "quantum bit") is a unit of quantum information -- the quantum analogue to a classical bit. Qubits have special properties that help them solve complex problems much faster than classical bits. One of these properties is superposition, which states that instead of holding one binary value ("0" or "1") like a classical bit, a qubit can hold a combination of "0" and "1" simultaneously. When multiple qubits interact coherently, they can explore multiple options and process information in a fraction of the time it would take classical even the fastest non-quantum systems.

To help daring developers wrestle with qubits, Microsoft unveiled the Quantum Development Kit.

Along with a quantum computing simulator and other resources found in SDKs, the kit includes the purpose-built Q# programming language, a domain-specific language used for expressing quantum algorithms. It provides a small set of primitive types, along with the ability create new structured types via either arrays or tuples. It includes basic procedural constructs for writing programs such as loops and if/then statements, with top-level constructs being user defined types, operations and functions.

Visual Studio Quantum Computing Code
[Click on image for larger view.] Visual Studio Quantum Computing Code, Showing ".qb" File Extension (source: Microsoft).

The company provided the following summation of the kit's components (in addition to the aforementioned Q# language and accompanying compiler):

  • Q# standard library. The library contains operations and functions that support both the classical language control requirement and the Q# quantum algorithms.
  • Local quantum machine simulator. A full state vector simulator optimized for accurate vector simulation and speed.
  • Quantum computer trace simulator. The trace simulator does not simulate the quantum environment like the local quantum simulator. It is used to estimate the resources required to execute a quantum program and also allow faster debugging of the non-Q# control code.
  • Visual Studio extension. The extension contains templates for Q# files and projects as well as syntax highlighting. The extension also installs and creates automatic hooks to the compiler.

Microsoft said the new Quantum Development Kit is designed to enable developers to get in on the quantum action regardless of their expertise in quantum physics.

Helping to do that is tight integration with the Visual Studio IDE, which will provide some familiarity for developers already in the Microsoft camp.

When used in conjunction with the local quantum simulator (an Azure-based simulator is also available), coders will be able to simulate about 30 logical qubits of quantum computing power just using a typical laptop, Microsoft said. The more scalable Azure simulator boosts that up to more than 40 logical qubits of computing power.

Developers can also use published documentation, libraries and sample programs to help them get started with quantum computing, available on the company's just-published site for the Quantum Development Kit preview.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus

Featured

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube