4 ms·
Dumb question: can someone explain the following? Imagine a ball falling on the ground. Simulating the O(10^23) atoms in each one with a classical computer wo
by dataflow 2y ago
Dumb question: can someone explain the following?
Imagine a ball falling on the ground.
Simulating the O(10^23) atoms in each one with a classical computer would take (say) 10^23 times the amount of work of simulating a single atom. Depending on the level of detail, that could easily take, you know, many, many years...
We don't call the ball a supercomputer or a quantum computer just because it's so much more efficient than a classical computer here.
I presume that's because it can't do arbitrary computation this quickly, right?
So in what way are these quantum computers different? Can they do arbitrary computations?
- qnleigh 2y agoGreat question. The device is fully programable. Arbitrary one-qubit operations and arbitrary two-qubit operations between adjacent qubits can be performed. Theoretically these are 'universal for computation', meaning that a large enough device could compute anything computable. You can't program Quantum Tetris or whatever on a bouncy ball :). But nevertheless, many of these 'beyond-classical' demonstrations feel a bit arbitrary in the way you describe, and there's good reason for this. Logical operations are still quite noisy, and the more you apply, the more output quality degrades. To get the most 'beyond-classical,' you run the thing that maps most readily to the physical layout and limitations of the hardware. As things improve, we'll see more and more demonstrations of actually useful computations. Google and others have already performed lots of quantum simulations. In the long run, you will use quantum error correction, which is the other big announcement this week.
- dataflow 2y agoThank you!
- fluoridation 2y agoSo isn't this the same as turning a classical computer on and letting it run on whatever garbage is on the RAM at that time, and when some nonsense shows up on the screen breathlessly exclaim that it would take several millennia to get the same result with an abacus, despite the fact that something was "computed" only by strict adherence to the definition of the word? It's not like it takes a quantum computer to produce a meaningless stream of data.
- qnleigh 2y agoThat's a great analogy, and I basically agree with it. But there would be some ancient, abacus-wielding mathematicians who would be impressed by this fast-but-useless computer. One might take it as a sign that once/if the computer can be controlled properly, it might be quite useful. This might have been part of the history of classical computers as well, except that it turns out to be pretty easy to do classical operations with very high fidelity.
- fluoridation 2y agoYeah... But since the device is not doing anything meaningful, there's no way to tell if it actually is computing anything, rather than being a very expensive and very complicated random number generator. Because you don't need a quantum computer to generate a stream of meaningless numbers, a machine being capable of generating a stream of meaningless numbers doesn't demonstrate whether it's computing quantumly.
- fluoridation 2y agoFurthermore, how do you distinguish successful runs from malfunctions?
- qnleigh 2y agoThat's a good question. They run the system on a small scale and validate there. The assumption is that no new error mechanism magically switches on when the simulation gets large enough, but it is did there would be no way to know. Hopefully large-scale, verifiable demonstrations become viable in the near future. But current they're just too hard to implement.
- TZubiri 2y agoRe: Noise There's some probablistic programs that we run that not only don't need determinism, but are actively harmed by it. For example deep learning training would probably work fine if there was a 1% destructive noise, as long as there were a massive increase in compute.
- Strilanc 2y agoThe key difference is that the problem being solved is a math problem. It can be written down on paper. A ball falling on the ground can be converted into a math problem. To get the conversion exactly right you will need to write down the exact state of the ball. But you will invariably incur small inaccuracies while doing this. For example, maybe the mass you write down is off by 1 part in a trillion. The math problem is the ground truth, so any conversion inaccuracies are now errors in the ball. In practice these inaccuracies will prevent even the original ball from solving the written down problem much better than you could with a computer. In the case of random circuit sampling, the written down problem is a tensor network [1] (that happens to also be a shallow quantum circuit). Fundamentally, a tensor network just specifies a bunch of matrix multiplications to do. It's not even that big of a problem: only a few kilobytes of information (whereas the exact state of a ball would be gargantuan). All you have to do is perform the specified multiplications, interpret the result as a probability distribution, and sample from it. The obstacle is that these multiplications create intermediate values that are really really large. The quantum computer bypasses this obstacle by executing the tensor network as a circuit. [1]: https://en.wikipedia.org/wiki/Tensor_network https://en.wikipedia.org/wiki/Tensor_network
- andreareina 2y agoThe architecture/design of these quantum computers can do arbitrary computations. The specific machines we are currently able to build don't have enough qubits that remain coherent long enough to solve the problems we care about. We've built the aeolipile, now we need to scale it up to a steam turbine capable of moving ships and trains.
- drkevorkian 2y agoThere are two points. You got the first one, which is controllability. The components are controllable and programmable. But second it's important to appreciate the difference between simulating 10^23 classical billiard balls with a computer (very hard, C * 10^23 work for some C) and simulating 10^23 quantum mechanical atoms (C * d^(10^23) work for some C and some d). Those numbers are very different.