Quantum computing is an emerging area with significant potential, especially in the area of optimization problems. Since the quantum computing works with a different mechanism than classical computing, the software approach for quantum computing is also different. There are 2 types of quantum software: quantum software for optimization problems and classical computing software enabling quantum computing.
For more information about quantum computing, feel free to read our article.
What is Quantum Software?
2 types of quantum software are:
- Software running quantum algorithms: Quantum software development kits and computational platforms provide solutions for end-users. These help end users develop and test their quantum algorithms.
- Software enabling quantum computers to perform: Quantum computers have performance issues due to random errors and error-correcting software is built to correct such errors. An error-correcting software or firmware is a low-level program that increases the stability of quantum computers.
Quantum Software Development Kits
Quantum Software Development Kit is a tool for developing quantum algorithms that can be used in quantum computers or simulators and emulators. A quantum simulator is an implementation of quantum gates by using classical gates. For example, Intel provides a Quantum Simulator that can simulate general quantum gates in order to test their software in simulation.
Some companies like Microsoft, IBM, Google and Rigetti, are developing open-source development kits. They provide the tools necessary for software developers to solve their own problems and enable them to access to simulators or quantum computers to implement their quantum algorithms through the cloud.
These kits often allow the use of classic programming languages, such as Python, or quantum software languages such as Q# developed by Microsoft.
Here are some examples of quantum development kits
- Rigetti- Forest
- IBM- Qiskit
- Google- Cirq
- Microsoft- QDK
- Zapata- Orquestra
- 1QBit- 1QBit SDK
- Amazon- Braket SDK
- ETH Zurich- ProjectQ
- Xanadu- Strawberry Fields
- Riverlane- Anian
Computational platforms provide users access quantum computers to perform quantum computations via cloud. Building a new quantum computer is a highly expensive investment for many companies that is why computational platforms make sense for companies to experiment with quantum compting. The solution is provided by quantum computer companies for developers to test their code on real quantum computers. The following companies and their products are the leading computational platforms for quantum computing.
- Riverlane- DeltaFlow
- Qutech- Quantum Inspire
- IBM- IQ Experience
- Strangeworks- Quantum Computing Platform
- Google – Quantum Playground
- QC Ware- Forge
- Microsoft -LIQUi|>
Quantum Error-Correcting Software and Firmware
As with classical computing, quantum computing requires low-level programming and error correcting algorithms. Q-CTRL is one of the companies working on Quantum firmware. Quantum computers by making error-correcting to make more efficient qubits.
Quantum Benchmark is a company working on quantum error-correcting software and firmware. Quantum Benchmark provides software solutions that enable error characterization, error mitigation, and error correction and performance validation for quantum computing hardware.
How Does Quantum Software Work?
As in classical computing, a problem must be formulated and translated by using quantum software in order to make quantum computers or simulators can solve. Different software systems may have different methods to make them work. D-wave describes how their “Ocean Software” works in the figure below.
There are different layers to perform a quantum software in this figure.
Application: In this process, a problem is defined and transformed to a state that quantum algorithms can solve. Different applications and problem types may have different approaches to model the problem.
Mapping: Data and samples are taken to make the problem solvable by quantum computers.
Uniform Sampler API: A layer that can access the selected sampler.
Samplers: different samplers can be used to get a sample from the solution of the problem. For example, Simulated annealing or a Hybrid sampler can be used.
Compute Resources: Computing hardware that computes the solution
What Are The Major Quantum Software Companies?
Not only tech giants are dominating the quantum software market, there are many start up companies which provide software solutions for quantum computing. D-wave is the earliest quantum startup company which is founded at 1999 and also became the first company to sell a commercial quantum computer. D-wave is also one of the leading company that works on software development part of the quantum computers. Here is a list for the major software companies:
|Company Name||Quantum Software Solution|
|StrangeWorks||Quantum Computing Platform|
If you have more question, please contact us: