Building a quantum computer

Building a universal quantum computer is one of the most ambitious scientific challenges of the 21st century. Luckily, there’s many professions that can help.

Who can help to build a quantum computer?

Physicists

Designing qubits and realizing logical operations.

Engineers

Building the extreme conditions required to operate qubits: cryogenics, vacuum systems, and advanced electronics.

Programmers

Implement the necessary software tools used to control and operate quantum computers.

Designers

Finding ways for people to easily and productively interact with quantum computers.

Computer Scientists

Inventing quantum algorithms that can be put to use on real-world tasks.

Mathematicians

Optimizing the power of quantum computers.
Hardware | A quantum computer requires qubit hardware, but also additional traditional electronics as well as powerful refrigerators. (Photo by Marieke de Lorijn)

The DiVincenzo Criteria

We are in the early stages of the development of a quantum computer. Today’s prototypes literally come in all shapes and sizes, but all share the same requirements necessary to be called “quantum computers”. These five requirements were codified by David DiVincenzo in 2000, and are now commonly called The DiVincenzo Criteria.

1. Have well-defined, scalable qubits

You can’t have a quantum computer without qubits. There are many, many ways to make qubits, as we’ll see later.

2. Begin computations in a reliably initialized state

The computer must start in a known state prior to running a program, otherwise the answer would be meaningless. Generating this known state is called initialization.

3. Have a sufficiently long coherence time

Qubits are extremely fragile and inevitably lose information. The timescale over which this happens is known as the coherence time, which must be sufficiently long to complete the computation.

4. Have access to a universal gate set

To run all quantum algorithms, a full set of operations – or gates – must be available. Otherwise, the power of the quantum computer will be limited. Having a set of universal gates requires full control over individual qubits as well as the ability to make two or more qubits interact with each other.

5. End computations with reliable measurement

At the end of a quantum program, we must be able to measure the qubits in order to get a result. This means that a qubit is only useful if there is a way to reliably distinguish between the “0” and “1” states.

Software | Programming a quantum computer can be done using various high-level languages which facilitate generating the proper quantum circuit.