Want to learn more about quantum computing and how to program in the Q# language? Microsoft just launched Quantum Katas, an open source project that does just that by providing you with tutorials for learning at your own pace. According to Microsoft, these exercises are based on three learning principles: Active learning, incremental complexity growth, and feedback.
“Each kata offers a sequence of tasks on a certain quantum computing topic, progressing from simple to challenging,” Microsoft Quantum Team states. “Each task requires you to fill in some code; the first task might require just one line, and the last one might require a sizable fragment of code. A testing framework validates your solutions, providing real-time feedback.”
Currently, there are only four katas covering basic quantum computing gates, superposition, measurements, and the Deutsch-Jozsa algorithm. Each kata is a stand-alone project containing a sequence of tasks progressing from trivial to challenging, requiring you to manually insert chunks of code. They also provide a testing framework that sets up, runs and validates your final code.
For instance, the first kata covers computing gates, another term for basic operations, used in quantum computing along with the concept of adjoint and controlled gate versions. Those provided in the kata belong to the Microsoft.Quantum.Primitive namespace, the notes reveal.
To use these katas, you need to install the Quantum Development Kit for Windows 10, MacOS and Linux. This kit is typically used to build your own quantum computing programs and experiments. It includes the Q# language and compiler, the Q# standard library, a local quantum machine simulator, a quantum computer trace simulator, and two other components. After installing the kit, you can grab the katas through Git or by downloading stand-alone copies in a ZIP file.
Microsoft says you shouldn’t panic when all tests initially fail after opening a kata. You need to jump into the Tasks.qs file and manually enter code to complete all tasks. These tasks are covered by a unit test that requires you to insert the correct code, rebuild the project, and then re-run the related tests. If you did everything correctly, the corresponding unit task will pass and you can move on to the next stage.
Microsoft’s katas arrive after the company hosted its first Q# coding contest in early July, challenging more than 650 developers and new programmers alike. According to Microsoft, more than 350 participants solved at least one Q# problem while 100 participants solved all 15. The problems ranged from generating a superposition of all basis states to creating a second array reconstruction algorithm. The contest winner completed all tasks under 2.5 hours, Microsoft says.
Given Microsoft’s Quantum Katas is an open-source project, the company welcomes all contributions and suggestions. “Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution,” Microsoft adds.