The Microsoft Quantum Development Kit is a set of programming tools for writing code that will run on a quantum computer. According to Microsoft, the software development kit (SDK) allows programmers to enter the new field of quantum computing development without requiring a strong background in quantum physics.
Unlike a classical binary computer, whose bits are either 0 or 1, a quantum computer's bits, which are called qubits, can be 0 and 1 at the same time. The ability to compute all possible permutations of a qubit simultaneously is what enables quantum computers to perform calculations much faster than classical computers. Until quantum processors become widely available, however, programming for quantum applications typically executes on a host application that acts as a simulator.
Microsoft's Quantum Development Kit is open source and based on the Q# language. It includes the following:
- Q# compiler.
- Q# library.
- Resource Estimator.
- A host application (written in Python or a .NET language) that runs quantum operations written in Q#.
- Integration with Visual Studio and other Microsoft programs.
To assist developers learn Q# programming, Microsoft has developed a series of self-paced tutorials called Quantum Katas. Each Kata is designed to teach the developer about a specific concept in quantum computing by having them complete a series of tasks.