
IBM Wants Everyone to Try a Quantum Computer - jonbaer
http://www.nytimes.com/2016/05/04/technology/ibm-wants-everyone-to-try-a-quantum-computer.html
======
ivan_ah
All these years we had the buzzwords _quantum_ and _cloud_ separately. Today
the buzzwords can finally merge to bring you _quantum in the cloud_. OMG, I
predict the tech journalist will go crazy on this!!

A very similar quantum circuit simulator (in JS):
[http://www.davyw.com/quantum/?example=Grover%27s%20Algorithm](http://www.davyw.com/quantum/?example=Grover%27s%20Algorithm)

And now a shameless plug: If you want to learn quantum mechanics and quantum
computing, you should check out my upcoming book on linear algebra:
[https://minireference.com/static/excerpts/noBSguide2LA_previ...](https://minireference.com/static/excerpts/noBSguide2LA_preview.pdf#page=115)
available via [https://gum.co/noBSLA](https://gum.co/noBSLA)

~~~
Strilanc
I have my own shameless plug to add.

Another drag-and-drop quantum circuit simulator that runs in your browser is
"Quirk" [0].

Quirk is faster than Davy's simulator thanks to webgl. It calculates varying
operations on up to 16 qubits in real time as you drag gates around. It also
lets you drop inline state displays into the circuit. Plus you can link to
circuits, though the links can be a bit long so you may want to do so
indirectly [1].

That being said, Quirk lacks the ability to compile circuits into a gate. Also
it doesn't have a QFT gate (yet). I'm working on it. [2].

0:
[http://algorithmicassertions.com/quirk](http://algorithmicassertions.com/quirk)

1: [https://t.co/qi12H3aVU1](https://t.co/qi12H3aVU1) (6-qubit grover circuit
with displays, near the getting-laggy limit in terms of op-count)

2: [https://github.com/Strilanc/Quirk](https://github.com/Strilanc/Quirk)

~~~
wybiral
That looks good. Yeah, mine wasn't really focused on performance so much as
ease of use (being able to compile and reuse circuits).

One thing I never got around to that IBM did was measurement operators. They
break my simple compilation strategy but would definitely make it more useful.

~~~
Strilanc
Oh! Didn't realize you would see this. Gives me the opportunity to say thanks
for the simulator. I found it really useful for learning. So useful for sanity
checks.

(Speaking of measurement. Quirk allows measurement... but it cheats. It
refuses to let you hit measured qubits with operations that would superpose
them again w.r.t. the computational basis. So the deferred measurement
principle [1] applies, and there's no need to use density matrices and square
the simulation cost.)

1:
[https://en.wikipedia.org/wiki/Deferred_Measurement_Principle](https://en.wikipedia.org/wiki/Deferred_Measurement_Principle)

~~~
wybiral
Ha! I feel obligated to click when I see "Try a Quantum Computer" in a title.

That's an interesting strategy. I'm going to have to dig deeper when I get a
chance. You said you're also using WebGL for a performance?

PS: Those continuous gates are especially cool!

~~~
Strilanc
Yeah, using the GPU makes a huge difference. It's also incredibly finicky
because the hardware and browser support varies so much.

Basically I represent an n-qubit superposition as a 2^(n/2) x 2^(n/2) texture
with each pixel being an amplitude (with red=real, blue=imaginary components).
Then I use fragment shaders to operate on all the pixels in parallel when
applying a gate.

For example, here's the GLSL in the main method of the "UniversalNot" gate's
shader [1]:

    
    
        vec2 xy = gl_FragCoord.xy - vec2(0.5, 0.5);
        float state = xy.y * outputWidth + xy.x;
        float hasBit = mod(floor(state / bit), 2.0);
        float partnerState = state + bit * (1.0 - 2.0 * hasBit);
        vec2 uv = uvFor(state);
        vec2 partnerUv = uvFor(partnerState);
        float control = texture2D(controlTexture, uv).x;
        vec2 val = vec4(texture2D(inputTexture, uv)).xy;
        vec2 partnerVal = vec4(texture2D(inputTexture, partnerUv)).xy;
        vec2 outUncontrolled = vec2(partnerVal.x, -partnerVal.y) * (1.0 - 2.0*hasBit);
        vec2 outVal = (1.0 - control) * val + control * outUncontrolled;
        gl_FragColor = vec4(outVal.x, outVal.y, 0.0, 0.0);
    

(The UniversalNot gate isn't possible in reality, but it's easy to implement
in the simulator. So I have it implemented, but hidden away. You have to
manually tweak the URL to contain a "__unstable__UniversalNot" gate to use it.
But then you can use it for FTL communication shenanigans. [2])

1:
[https://github.com/Strilanc/Quirk/blob/master/src/circuit/Ga...](https://github.com/Strilanc/Quirk/blob/master/src/circuit/GateShaders.js#L45)

2: [http://bit.ly/1roNMCE](http://bit.ly/1roNMCE)

------
flopto
TL;DR: 5 qubits as a service. Interact with them on your tablet.

From the press release: "The quantum processor is composed of five
superconducting qubits and is housed at the IBM T.J. Watson Research Center in
New York. The five-qubit processor represents the latest advancement in IBM’s
quantum architecture that can scale to larger quantum systems. It is the
leading approach towards building a universal quantum computer."
([http://www-03.ibm.com/press/us/en/pressrelease/49661.wss](http://www-03.ibm.com/press/us/en/pressrelease/49661.wss))

From the demo video: looks like you can use hadamard and CNOT gates as well as
measurements. Somehow it sounds like you can also apply oracles (not sure how
you specify what they are when it gets run).
([https://youtu.be/pYD6bvKLI_c](https://youtu.be/pYD6bvKLI_c))

~~~
Strilanc
The oracle is just a circuit that negates one of the amplitudes. You specify
it just like the rest of the circuit.

They use a trivial oracle circuit as an example. But Grover's algorithm works
for any oracle circuit, so in principle it could be a circuit that verifies if
its input is a proof of the Riemann hypothesis.

------
mavhc
See also [http://www.wired.com/2016/05/ibm-letting-anyone-play-
quantum...](http://www.wired.com/2016/05/ibm-letting-anyone-play-quantum-
computer/)

[https://quantumexperience.mybluemix.net/](https://quantumexperience.mybluemix.net/)
is the actual site

------
russdill
You've been able to do this sort of thing for some time, at least simulated,
which provides the same results:

[http://www.quantumplayground.net](http://www.quantumplayground.net)

~~~
tamana
Same results but faster! The IBM version runs slower than a classical
simulation of it, making IBM's project a tech demo toy. (Obviously. If it were
actually efficient, they would charge a fortune to use it.)

~~~
twoodfin
What factors contribute to the performance disparity, and where could
efficiencies be found?

------
andrewstuart
So these things presumably run software? Or is it basically a bunch of quantum
bits controlled by a conventional machine? What is it exactly and what can you
do with it?

~~~
nine_k
On 5 qubits, you won't run much software.

And of course you want a lot of conventional machine around the quantum
processor (even a hypothetical much bigger one), as you would around any
special-purpose hardware (you have it even around a GPU).

------
Ftuuky
But what am I going to do with it?

~~~
sp332
You could run Grover's algorithm on a database with 2^5=32 elements.
[https://en.wikipedia.org/wiki/Grover's_algorithm](https://en.wikipedia.org/wiki/Grover's_algorithm)
Or Shor's algorithm to factor a 5-bit number.
[https://en.wikipedia.org/wiki/Shor%27s_algorithm](https://en.wikipedia.org/wiki/Shor%27s_algorithm)

------
nodivbyzero
Is it possible to generate BitCoins on quantum computer?

~~~
hannob
Actually it is possible to bring the whole bitcoin system down with a (general
purpose, large enough) quantum computer. The whole bitcoin system relies on
ECDSA signatures, which can be broken with Shor's algorithm. You can't mine
bitcoins faster with a quantum computer, because that's basically hashing,
which you don't get a significant speedup. But you can steal everyone else's
bitcoins.

~~~
tromp
You get quadratic speedup on mining, since the HashCash proof-of-work used in
Bitcoin is a perfect application of Grover's quantum database search
algorithm.

So while classical miners are brute forcing through a 2^70 search space, the
quantum miner can find a solution in roughly sqrt(2^70) = 2^35 steps.

Other proof-of-work systems can be more quantum resistant, e.g. looking for a
fixed-length cycle in a huge random graph, for which no efficient quantum
algorithm is known.

~~~
Natanael_L
Computing 2xSHA256 on a some hundred bytes block header with one section open
for randomness will not be that easy on a quantum computer (the more complex
the problem, the easier for noise to drown out the answer), not to mention
you'll still need fast ASIC hardware to evaluate all QC outputs looking for
valid blocks.

And you must reset part of the problem (the previous block hash, at minimum)
when new blocks are released, adding some latency (you need to recompute the
qubit configuration before resuming).

But perhaps a SIDH based proof-of-work algorithm could be implemented to
further resist QC speedups. Don't know exactly how that would work. Does
Grover's still apply?

------
mortdeus
The quantum computer is going to suffer the same fate as plan 9. As Kernighan
said, it's not as novel of an upgrade to warrant a mass adoption. Especially
considering the price. Not everybody needs a real time black hole simulator...

~~~
yarou
Arguably, quantum computers can perform supertasks and hypercompute, so I
think that there will be widespread adoption in the 2nd or 3rd generation.
While Plan 9 itself wasn't popularly used, many great technologies came out of
it, like Go.

~~~
pasquinelli
i'm curious to know what the argument is for quantum computers doing
supertasks.

------
sengork
For those interested in seeing the hardware behind this service, have a look
at:
[https://www.youtube.com/watch?v=jf7D8snlsnQ](https://www.youtube.com/watch?v=jf7D8snlsnQ)

------
WhatIsThisIm12
Quantum computing is one of those things I know I will never learn. It makes
me feel like my current skillset has an expiration date, and I only have so
much time before the bar for innovation is beyond my capabilities.

~~~
wybiral
Most of the behavior of quantum circuits can be explained with just linear
algebra. It's not that bad.

Plus, developers probably won't need to interact directly with this stuff when
the day comes. I'm sure there will be some set of common quantum tasks
abstracted away behind the scenes.

------
givan
Will the computer only work when observed?

------
alex20
I'm not sure why I'd prefer this over Microsoft's LIQUi|>.

Edit: Okay I'm ridiculous, it has a real nice graphical interface.

------
sdneirf
What happens when you train a deep recurrent neural network on a quantum
computer. I wonder if you get consciousness

~~~
tamana
You are getting downvoted, but no less than Sir Roger Penrose had the same
idea for the origin of human intelligence.

~~~
spacehome
And it was a bad idea when he said it, too.

~~~
yarou
Eh, the jury's still out.

I sort of agree with Scott Aaronson on why he thinks consciousness is
finite[0].

The problem, IMO, that Penrose has is that his theories border closely on
mysticism - there's some quantum "magical" process whereby consciousness
arises. Both pictures are incomplete, but Aaronson's is the most plausible.

[0][http://www.scottaaronson.com/writings/finite.html](http://www.scottaaronson.com/writings/finite.html)

~~~
tamana
Does finite imply non-quantum?

~~~
yarou
No, but there is no evidence that biological neural networks exhibit quantum
effects.

Classical (Newtonian) mechanics seem sufficient enough to explain how neurons
work.

------
rodionos
I just came back from an IBM user group meeting in Germany. Aside from
presentations, customer experience session centered around ways to fix an
installer and get rid of java in GUI. This mostly covered infrastructure
monitoring (now part of middleware) products. Just saying...

------
tbolt
Cool PR bit.

Not really

------
mactitan
Can quantcom be used to compute genesis blockchain?

------
SFJulie
Hum...

Why does the guy who discovered the time of quantum decoherence (Claude Cohen
Tanoudji) says quantum computing might be a scam?

Okay, people may think he is a fraud, but he was able to trap very few photons
in a cavity and measure that quantum decoherence disappear with order of
magintude of 10^-13seconds.

Ho! And maybe quantum computing is fast, but how fast is it for an operator to
translate a NEW problem (different from factorisation) into a quantum code?

Well, least but not last, reading the libquant (freely inspired from quantum
mechanics to compute risks) I can't help that notice that most so called smart
boys with degrees in maths are totally clueless about quantum mechanic,
because quantum mechanics is based on probability, and most human don't grasp
it. So how can I trust less than able non -as smart and honest person- as
traders to grasp QM?

