Hacker News new | past | comments | ask | show | jobs | submit login
Quantum Computing for the Curious (quantum.country)
154 points by roi on Mar 19, 2019 | hide | past | favorite | 24 comments



I have a PhD in quantum information/computing and I knew everything in the essay before reading it, but the additional understanding I got from doing the given spaced repetition flashcards significantly improved my understanding of the material. Everyone who is reading this essay, should sign up and give spaced repetition a try.


As someone with more of a math than a physics background I really enjoyed this, but I guess I'm surprised by how, for lack of a better word, basic, it seemed? Maybe that serves as a compliment to the author, in the past I have been snowed by all these vocab words when it turns out it's mostly just linear algebra. A lot of what I enjoyed here were the sidebars explaining that concept X was really just rebranded Y, detail Z is not really important for intuition, etc...

A random question along those lines: why represent states as 2d complex vectors instead of quarterions? Aren't they the same thing? As soon as I read that I spent the rest of the article wondering if everything it would make even more sense cast that way.


> why represent states as 2d complex vectors instead of quarterions? Aren't they the same thing?

Only in the sense that they are both require four real coefficients. The quaternions have a particular multiplicative structure that just doesn't apply to quantum states, so it doesn't make sense to use them.

That being said, the space of single-qubit operations is very much analogous to rotations in 3d and so is well described by quaternions. In fact, the Pauli matrices times i (iX,iY,iZ) are isomorphic to the quaternions (i,j,k). For example, iX * iY * iZ = -I.


I think if you want to study quantum computing, you do not need as much of a physics background as you think (perhaps for physically implementing a qc, but that is more experimental).

If you have had more exposure to maths and computer science, it will be easier for you than someone with a "pure" physics background.

As for quarternions, yes they are isomorphic, but generally for useful applications, people consider quantum computers with n qubits. So your state is an element of C^(2^n). Apart from the measurement step, you can idealise any quantum computation as a unitary transformation, so an element of the unitary group U(2^n), acting on this complex vector.

An element of U(2^n) is representable as a 2^n x 2^n matrix U, with complex entries, st U.U^{\dagger} = I. Here dagger represents conjugate transpose, and I is the 2^n x 2^n identity matrix. Sometimes people add the extra constraint, det(U) = 1, then this gives you the special unitary group SU(2^n).


This is the great secret of quantum computing! People assume it must be difficult because their exposure to quantum mechanics has been a hundred incomprehensible pop science articles written by people who have no idea what they're talking about. In fact quantum computing requires only extremely basic knowledge of linear algebra.


ok, extremely basic is a bit oversimplifying it. When you start reading quantum algorithms, you will inevitably come across Shor's factorization algorithm, which requires (quantum) phase estimation: https://en.wikipedia.org/wiki/Quantum_phase_estimation_algor... which requires quantum Fourier transform and some good deal of math. This is when you don't go into the physical implementations. If you want to look at that aspect, things may become a bit more complex.

This is not to discourage anyone, but underselling it as requiring elementary linear algebra is not very helpful (the pop-sci articles have already been overselling it as "magical"/"mind-blowing" etc.).


There are algorithms which involve advanced mathematics on classical computers, too. You don't have to understand them to understand how classical computers work. I've never bothered to learn the general number field sieve, and similarly I've never bothered to learn Shor's.

I say if you understand gates as unitary matrix multiplication, representing multiple qbits with the tensor product, entanglement, and projective measurement, you basically understand quantum computing. Throw in an algorithm or two to convince yourself of the benefits.


True, but: 1. Any serious quantum computing course/book will have Shor's algorithm in the first few chapters (in fact there are not a lot of quantum algorithms which have clear advantage over classical ones). One can teach quite a bit of useful classical algos (sort, binary search, tree/graph-based) without going into mathematics like FFT or jpeg coding.

2. Again valid, but IMHO measurements (and PoVMs) can lead to deep rabbit holes, and I found myself digging in much deeper.

Probably I should read easier expositions to see how effectively they teach. (I come from a EE+physics background, so I do gravitate to math-heavy rigorous explanations)


Hobby physics nerd here. This thing is mental. I clicked it, saw how long it was, and abandoned. Comments here took me back in and it’s going to turn out to be a real gift.


Note that this is written by one of the authors of https://en.m.wikipedia.org/wiki/Quantum_Computation_and_Quan...


This is absolutely fantastic. Now I'm wondering if there are resources for doing spaced-repetition for other computer science topics. Has anyone seen anything like this?


Good time for a https://en.wikipedia.org/wiki/Spaced_repetition that remember me of https://metacpan.org/pod/Quantum::Entanglement (good old perl ~20 years old :)


So why does the Hadamard+CNOT acting on two qubits give an entangled state, but a Hadamard acting on a single qubit does not give an entangled state?


I think you need 2 qbit to have them entangled


Exactly. The point of quantum entanglement is that the state of two (or more) qubits cannot be separated. To entangle a single qubit is meaningless.

For two qubits, the simplest entangled states are the Bell States[0] (generated from a CNOT and Hadamard gate). The article gives an example of one of them.

[0] https://en.wikipedia.org/wiki/Bell_state


What's the difference between an entangled state and a mixed state?


Knowledge is a bit rusty (took a module in Uni) but I'll try to answer.

A mixed state is that which is a linear combination of pure states e.g. a|0> + b|1>

What determines an entangled state is that qubit values will correlate exactly with each other. |00> + |11> would be an example of an entangled state as measuring one qubit determines the value of the other with certainty. If you measure |0> for the first qubit, the second will definitely be |0> and vice versa.

They are also not mutually exclusive as mixed entangled states exist.


> A mixed state is that which is a linear combination of pure states e.g. a|0> + b|1>

Here https://en.wikipedia.org/wiki/Qubit#Mixed_state it says that 'Mixed states can be represented by points inside the Bloch sphere'. However, points ON the sphere correspond to linear combinations of the pure states. How to reconcile this?


Like I said, my knowledge is rusty.

I've gotten pure states mixed up with |0>, |1>

I believe what it's saying is that with a mixed state |a|^2 + |b|^2 does not need to equal 1.

So pure states are a|0> + b|1> where |a|^2 + |b|^2 = 1


Very interesting article, I would love to have it in a portable/printable format (e.g. .pdf) can anyone help me out ?


This is absolutely wonderful!


Very nice article!


Everyone should read this. It is an amazing effort in education. Almost too good. I wonder what techniques they used to compose it. Seem like it might have been machine assisted?


One of the authors here. While the study schedule is regulated by algorithm, the questions themselves were hand written. We have found it’s quite difficult to write good questions, needs lots of revision and thought. Glad you enjoyed!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: