
Quantum Computing Explained - animeshk
http://www.clerro.com/guide/580/quantum-computing-explained
======
vtomole
We are currently living in an exciting time for quantum computing. Most
leading companies like Google and IBM have 20 qubit devices. IBM has a 50
qubit prototype [0].

Google has plans to show quantum supremacy in the next couple of months: where
a quantum computer will perform a task that cannot be simulated on a classical
computer [1]. These near-term (5-10 year) quantum computers will likely be
used for simulating quantum chemistry and solving optimization problems [2].

[0]: [https://www.technologyreview.com/s/609451/ibm-raises-the-
bar...](https://www.technologyreview.com/s/609451/ibm-raises-the-bar-
with-a-50-qubit-quantum-computer/)

[1]: [https://www.technologyreview.com/s/609035/google-reveals-
blu...](https://www.technologyreview.com/s/609035/google-reveals-blueprint-
for-quantum-supremacy/)

[2]: [https://www.nature.com/news/commercialize-quantum-
technologi...](https://www.nature.com/news/commercialize-quantum-technologies-
in-five-years-1.21583)

~~~
jessriedel
Number of physical qubits is not a meaningful measure of computational power,
especially since fault tolerant computation has not been demonstrated. (In the
limit of large errors, a physical qubit has zero computational power.)

D-Wave has a 2000-qubit machine.

~~~
vtomole
Yes. The researchers at IBM don't use the number of qubits as a measure of the
quality of the computer. They use the quantum volume [0]. I said 50 qubits
because I was just parroting the press release. The reason I didn't mention
D-Wave's machine is because it is not a universal quantum computer. It is a
quantum annealer [1].

Google and IBM want their qubits to be of high quality (high coherence times
e.t.c). One of the big obstacles right now is scaling up the number of qubits
while making sure that their quality is high.

[0]:
[https://en.wikipedia.org/wiki/Quantum_annealing](https://en.wikipedia.org/wiki/Quantum_annealing)

[1]: [https://www.research.ibm.com/ibm-q/resources/quantum-
volume....](https://www.research.ibm.com/ibm-q/resources/quantum-volume.pdf)

------
reikonomusha
Here is another introduction that actually uses a quantum computing Python API
to explain the fundamentals of quantum computation [0], geared to a programmer
audience.

[0]
[http://pyquil.readthedocs.io/en/latest/intro_to_qc.html](http://pyquil.readthedocs.io/en/latest/intro_to_qc.html)

------
ivan_ah
Very well done. Short, yet covers all the necessary details.

Shameless plug, check out my book
[https://www.amazon.com/dp/0992001021/noBSLA](https://www.amazon.com/dp/0992001021/noBSLA)
for an in-depth view of the linear algebra background necessary for quantum
computing.

If you know linear algebra well, then quantum mechanics and quantum computing
is nothing fancy: just an area of applications (See Chapter 9 on QM). Here is
an excerpt:
[https://minireference.com/static/excerpts/noBSguide2LA_previ...](https://minireference.com/static/excerpts/noBSguide2LA_preview.pdf#page=125)

~~~
mojomark
I'm definitely going to check your book out, but in the mean time I was
wondering if you could help me zort something out from this article. Author
states:

Check these quantum states out as examples, which cannot be broken into a
tensor product of two other states, they are unseparable -

Ex.1: 1/sqrt(2)∣00⟩ + 1/sqrt(2)∣11⟩ !=∣ψ1​⟩⊗∣ψ2​⟩

Ex.2: 1/sqrt(2)∣01⟩ − 1/sqrt(2)∣10⟩ !=∣ψ1​⟩⊗∣ψ2​⟩

So, in all previous 2 qubit examples he showed yielded 4 states (00, 01, 10,
11). Is the author saying that some two-qubit systems can be achieved such
that not all 4 possible discrete states can participate in superposition?
(i.e. in the system of ex. 1, states 10 and 01 are not possible and in ex. 2,
states 00 and 11 are not possible?)

~~~
ivan_ah
The four states |00⟩, |01⟩, |10⟩, |11⟩ form a basis so _any_ two-qubit state
can be written as a linear combination of these vectors: ∣ψ⟩ = a|00⟩ +b|01⟩
+c|10⟩ + d|11⟩. If a certain coefficients in the linear combination are zero,
e.g., b and c for the 00+11 state, or a and d for the second one, this doesn't
have any special meaning.

The classification of states as separable vs entangled refers to the existence
of a local description for the two qubits. Remember that |00⟩ is shorthand for
|0⟩⊗|0⟩, meaning the state of the two-qubit system when qubit 1 is in state
|0⟩ and qubit 2 is in state |0⟩.

Separable states can be written in the form (α|0⟩+β|1⟩)⊗(γ|0⟩+δ|1⟩) =
∣ψ1​⟩⊗∣ψ2​⟩. Note there is a clear local description for the first qubit ∣ψ1​⟩
and and a separate local description of the state ∣ψ2⟩. If Alice prepares her
qubit 1 in the state ∣ψ1​⟩ and Bob prepares his qubit 2 in the state ∣ψ2⟩ then
the combine description of their two qubits is what's shown above. The state
of the combined system is describable as the tensor product of two separate
local descriptions.

Entangled states, on the contrary, are states that cannot be described as the
tensor product of two local descriptions. Specifically, there exist
configurations a,b,c,d for a two-qubit quantum system such that

    
    
          a|00⟩ +b|01⟩ +c|10⟩ + d|11⟩   ≠   (α|0⟩+β|1⟩) ⊗ (γ|0⟩+δ|1⟩)
    

no matter what choice of α,β,γ,δ you make. The phenomenon of entanglement is a
quantum-only thing, that can't really be understood via classical analogies,
since classical systems can necessarily be described as the combination of two
local descriptions. The examples given are two of the four Bell states, see
[https://en.wikipedia.org/wiki/Bell_state](https://en.wikipedia.org/wiki/Bell_state)
, but there are many more entangled states. Here is a concrete physics example
[https://en.wikipedia.org/wiki/Singlet_state#Singlets_and_Ent...](https://en.wikipedia.org/wiki/Singlet_state#Singlets_and_Entangled_States)

Interestingly, many of the quantum computing experiments perform involve the
manipulation of entabgled states because they serve as proof that something
quantum is going on...

~~~
mojomark
Holy smokes - that is an amazing response! I can't claim that I'm fully
grasping the mathematics of entangled vs separable states at this moment, but
what you've written seems very clear and I think if I go through it a few more
times with the links, I may finally get it after all these years of
bewilderment. Thank you!

------
taylodl
This is an excellent introduction to quantum computing. I didn't see where I
could sign up for updates. I'd like to follow this!

------
adamnemecek
So take what I'm about to say with a grain of salt but I believe that current
generation of quantum computers (quantum digital) is fundamentally flawed.
Basically all architectures I've seen still use bits (qubits are still bits
and use entanglement) as opposed to the superior signals. The class of
computers I'm talking about is called continuous-variable quantum computers
([https://en.wikipedia.org/wiki/Continuous-
variable_quantum_in...](https://en.wikipedia.org/wiki/Continuous-
variable_quantum_information)). Unlike DQ, it doesn't use entanglement.

They are similar to the old school analog electric computers. They have some
interesting properties and I can actually imagine programming one unlike DQ.

There's a fourth class, continuous analog with entanglement which are superior
to both, DQ, and continuous-variable quantum computers but right now we should
really be looking into the continous variable ones.

~~~
krastanov
There is a serious misconception in your claim. Yes, analog computers, whether
quantum or classical solve even NP-complete problems in polynomial time. No,
they can not be constructed in the real world because analog computing does
not permit error correction, and in the real world you have to deal with
noise. Only very small analog computers (nothing scalable, nothing solving
general problems) can be constructed before noise becomes an issue.

Three good references:

Book on quantum and classical computing: Aaronson's "Quantum Computing since
Democritus" for gentle-for-newbies but rigorous discussion

Very old paper on classical computing (analog vs digital): Von Neumann's
"Probabilistic logics and the synthesis of reliable organisms from unreliable
components" (pretty advanced)

Newish (old for the field) paper on quantum computing: Calderbank's "Good
Quantum Error-Correcting Codes Exist"

Edit and addition: I work at Yale's Quantum Institute and we are some of the
biggest proponents of "continuous variable" quantum computing. We use the
continuous variables to encode a discrete "qudit" (with a "d") representation
for the information, for all the reasons mentioned above (noise and error
correction).

~~~
tgb
I love Aaronson's book but it's not "gentle-for-newbies". Not because it's not
gentle! It just explicitly skips over a lot of the material. You're expected
to already know about quantum computing since he doesn't feel he can add to
existing authors on the subject. Instead, it's really a survey of quantum
_complexity theory_ , with some sampling of background material where the
author felt he had something new to say.

~~~
corruptbytes
What's a good book for Quantum Computing? When I took Aaronson's class last
semester I got so wrecked by everything, and it just felt like everything was
so conflicting from many different resources

~~~
tgb
I learned from a coursera course some number of years ago. It was actually
quite good. (This should also give you the correct impression that I am _not_
an expert here and you should take my suggestions with a grain of salt.) I
think it was this one: [https://www.edx.org/course/quantum-mechanics-quantum-
computa...](https://www.edx.org/course/quantum-mechanics-quantum-computation-
uc-berkeleyx-cs-191x) (Taught by Aaronson's advisor.)

------
jumpkickhit
IBM lets you poke around one of their quantum machines here for free:

[https://quantumexperience.ng.bluemix.net/qx/experience](https://quantumexperience.ng.bluemix.net/qx/experience)

They also include a brief tutorial on how to program for it too.

~~~
likelynew
AFAIK this is a simulation, not real quantum machines.

~~~
greeneggs
They have both a simulator and real machines you can use. The "ibmqx5" is a
16-qubit device. The problem is that noise rates are very high. For example,
just to swap two adjacent qubits (using three CNOT gates), it looks like you
will incur at least 10% error. It is hard (though not impossible) to run
meaningful experiments on such a noisy system.

[https://quantumexperience.ng.bluemix.net/qx/editor](https://quantumexperience.ng.bluemix.net/qx/editor)

~~~
likelynew
Oh, thanks. You are correct that it is very noisy. Just a single CNOT is
giving me 15% error.

~~~
greeneggs
Here are the numbers for their latest 20-qubit device. CNOT error rates are a
bit lower. I don't know if they plan on making this publicly accessible.

[https://youtu.be/T-8uuq7Izl8?t=26m36s](https://youtu.be/T-8uuq7Izl8?t=26m36s)

------
victor106
Maybe a stupid question but does anyone here know how quantum computing would
effect bitcoin/crypto in general?

~~~
rubatuga
Unless you can find a way to implement a way to reverse a hash efficiently
using a quantum algorithm, I wouldn't hold my breath.

~~~
ThirdFoundation
Would a quantum computer be capable of brute forcing private keys?

------
satysin
Quantum computing is _way_ beyond me but I found this video by Kurzgesagt
really interesting
[https://youtu.be/JhHMJCUmq28](https://youtu.be/JhHMJCUmq28)

------
tapoxi
Will quantum computing kill Bitcoin by rendering the underlying cryptography
obsolete?

~~~
DaiPlusPlus
I understand there are two ways Bitcoin is affected by a crypto quantum-
computer:

1) A QC is able to derive the private-keys for a wallet's public address,
allowing for the theft of bitcoin

2) A QC able to perform the proof-of-work algorithm to mine new blocks at an
order-of-magnitude faster rate than currently possible.

Fortunately for 1) (I think) it currently takes 2^512 (?) operations to break
the private/public algorithm which is unfeasible to brute-force on normal
hardware but a QC brings it down to 2^128 - but that's still on-the-order-of
unfeasible - and in the event it ever does happen the blockchain could be
changed overnight to use a new keying algorithm. And for 2) it would cause the
blockchain difficulty to be pushed-up so high that people with QC machines
would see the same ROI as today's industrial GPU and ASIC miners see - plus
given that QC computers are horrendously expensive (think: billions of USD for
a 50-bit general-purpose QC) it questions why you'd ever try to break Bitcoin
as you'd already be a billionaire.

~~~
likelynew
> Fortunately for 1) (I think) it currently takes 2^512 (?) operations to
> break the private/public algorithm which is unfeasible to brute-force on
> normal hardware but a QC brings it down to 2^128

Where have you got that info? Quantum computers can break ECDSA in polynomial
function of 512.

> the blockchain could be changed overnight to use a new keying algorithm.

How?

------
rubatuga
Whatever you do, don't invest in quantum computing.

