I once was talking to my programming teacher about quantum computers, and I remember him telling me that one limitation of these kind of machines would be that you can't actually do something like x = y. I was wondering why is quantum assignment impossible? Does anyone have a clear answer?

有帮助吗?

解决方案

Your teacher was referring to the fact that all quantum operations are reversible, because they are unitary transformations. They can be undone. Since assignment can't be undone, it's not a unitary transformation and therefore can't be done by a quantum computer.

But! Our universe runs on quantum mechanics, so how can classical computers do assignment?

Well, if you have a bunch of qubits you know are zero, then you can swap them into your variable. This clears the variable, and now you can add in the value you want to be there. This process is reversible, and acts like assignment. It decreases your supply of known-to-be-zero qubits, but until the sun goes out we can make a steady supply of those.

That being said, the garbage you are swapping away affects how things interfere with each other. So quantum algorithms often include steps to get rid of this garbage by undoing part of an operation while keeping the result, or else they won't work.

其他提示

The fact that the quantum assignment is impossible comes from the no-cloning theorem which states that the quantum state cannot be copied. In other words, we cannot create two identical copies from one state.

You can find no-cloning theorem in any quantum computing textbook or tutorial.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top