Kitchener, ON, Canada


Frequently Asked Questions


What is quantum computing?

Quantum computing is a fundamentally new paradigm of computation. In contrast to today's computers, quantum computing makes use of the non-intuitive laws of quantum mechanics to perform computations.

What is quantum software?

Quantum software is any piece of software that is used directly or indirectly by a quantum device. For example, quantum programs will require quantum compilers in order to translate a high level language (the algorithm) into instructions (gates) that can be directly executed on the hardware.

How fast can a quantum computer be?

For some classes of problems, quantum computers can be exponentially faster than their classical counter-parts. For example, a quantum computer can factor a large number in a time that is proportional to the number of bits of that number, whereas any known classical algorithm takes an exponential time with respect to the number of bits of the number to be factored.

Other quantum algorithms achieve less impressive speedups (but remarkable nonetheless). For example, Grover's algorithm for searching can find an element in an unordered database in a time that is proportional to the square root of the number of elements in the database, whereas the best classical algorithm for the same task requires a time proportional to the number of elements in the database.

Are quantum computers always blazingly fast?

No, there are many problems for which we do not yet know whether a quantum computer can exceed the capabilities of the best today's classical machines.

Sorting through "the hype" is one of the desideratum at softwareQ. We advise you what algorithms are indeed beneficial for your business, and whether it makes sense for your organization to use a quantum computer in contrast with the best available classical counterpart.

What are quantum computers good for?

Quantum computers are very good for finding “global” patterns in data without “looking” in detail, or, more plastically said, “seeing the forest without looking at the trees”. By employing the power of quantum mechanics, such as quantum superposition and quantum entanglement, a quantum computer can achieve remarkable speedups.

How will we use a quantum computer?

Most likely as a co-processor to a classical machine, to speed up certain classes of problems.

How many types of quantum computers are out there?

Mainly two main types:

  1. Quantum annealers, which use noisy qubits (with an error rate greater than the one required for fault-tolerant scaling), which are not universal (i.e., can not perform any arbitrary quantum computation) but may nevertheless be very useful for certain optimization problems.

  2. Fault-tolerant quantum computers, that are universal (i.e. can perform any arbitrarty quantum computation), but which will require qubits with very small error rates in order to scale.

How can you program a quantum computer?

Programming a quantum computers is slightly different than writing code in your favourite programming language, due to constraints (such as reversibility) imposed by quantum mechanics. At softwareQ, we make sure your organization can benefit the most from our software tools in order to develop quantum programs seamlessly.

What can you do today with a quantum computer?

Current platforms have not enough qubits for spectacular speedups. The main prize nowadays is to understand what it takes to use one and identify the potential business cases, so your organization can benefit as soon as the technology becomes mainstream.

When will we have a quantum computer and why should we care about it today?

We estimate that it is very likely that by roughly 2021 (e.g. IARPA LogiQ) a fault-tolerant qubit is demonstrated, followed by intense scaling effort. In 2015, researchers at Microsoft Research suggested 10 years for the availability of a useful machine.

We also estimate that in the next 5 years quantum computers with around 1000 qubits will become reality. Even though their error rates and number of qubits are not enough for full-scale fault tolerance, nevertheless non-trivial applications will arise.

At softwareQ we will make sure you are ready to run when those milestones happen. You will know how to assess a candidate problem, determine when and what you should invest in, and build a sound strategy. Your organization will not miss the quantum train.