Can you explain a quantum computer to someone who knows physics a little over high school level? How do quantum computers work ? Please provide an explanation that is suitable for a person who has studied chemistry and had some courses of physics at university level. But still is not a genius at physics.
The only material I can find online is for people who know little or nothing about physics. Or else of course there is material for physicists who work in this very specific field.
 A: Quantum computers rely on the following advances in technology:

*

*The ability to prepare and measure individual quantum systems that have two distinct observable states, which we label $|0\rangle$ and $|1\rangle$. Each such system is a quantum bit or qubit. Since a qubit is a quantum system it can be in a superposition of states $|0\rangle$ and $|1\rangle$ in between measurements, although the outcome of a measurement on the system is only ever $0$ or $1$.

*The ability to very precisely manipulate the state of each qubit so that it is a known superposition of the states $|0\rangle$ and $|1\rangle$. The outcome of an individual measurement of this qubit will still be random (unless we happen to have prepared the qubit in one of the pure states $|0\rangle$ or $|1\rangle$) but we know the distribution of these outcomes. If we prepare $100$ qubits in the same superposition state, we can predict (using the laws of statistics) the likely number of $0$s and $1$s when we measure these qubits.

*The ability to prepare and manipulate entangled states of multiple qubits. If we have a set of $n$ qubits then we want to be able to create a precisely defined superposition of the $2^n$ pure states of this set of qubits.

*The ability to reduce noise in the quantum computer to such an extent that these  entangled states persist for long enough that we can manipulate them multiple times in different combinations. The longer the decoherence time, the more operations we can perform on our set of qubits before it falls apart into an unknown state.

*Finally, the development of ingenious algorithms that exploit the quantum nature of qubits and entangled states to efficiently solve mathematical problems. Typically these algorithms work by devising a sequence of operations on a set of qubits that will magnify the amplitude of "good" states in the superposition while reducing the amplitudes of all other "bad" states. The outcome of a measurement of the final state of the set of qubits will then (probably, although not certainly) be a "good" state, not a "bad" state. If we have created our algorithm such that the "good" states represent solutions to a particular problem, then the outcome of running our algorithm will probably be a solution to the problem. This is particularly useful for problems where finding a solution is hard, but checking that a particular answer is a correct solution is much easier.

Items (1) to (3) are engineering problems; item (4) is partly engineering and partly the development of quantum error correction methods; item (5) is quite mathematical - this is the quantum computing equivalent of classical computer science.
