

A Quantum Network Flow Puzzle - Strilanc
http://strilanc.com/quantum/2015/05/01/Quantum-Network-Flow-Puzzle.html

======
amluto
The page doesn't render very well for me, so it's hard to tell what's going
on. There's lots of "[Math Processing Error]" garbage.

Here's how I'd approach solving it. First, I'd split it into two subproblems,
each sending two bits.

The first two bits are straightforward. B makes a Bell pair and sends half to
A and half to Sender. A forwards its entangled qubit directly to the receiver.
Sender superdense codes two bits and sends the resulting qubit to the receiver
via C. The receiver decodes the two bits the usual way. This costs one qubit
each on the B->A, A->Receiver, B->Sender, Sender->C, and C->Receiver links.

Now for the other two bits. B generates a Bell pair and sends half to C via A
and half to Sender. Sender superdense codes the remaining two bits and sends
the coded qubit to C. C decodes the two bits. Receiver generates a Bell pair,
keeps half, and sends half to C via A. C superdense codes the two bits it just
decoded into the entangled qubit it got from Receiver and sends the coded
qubit to Receiver. Receiver decodes it. This sends one qubit each B->A,
B->Sender, Sender->C, C->Receiver, and Receiver->A as well as two qubits A->C.

Adding it up, this uses exactly the allowed capacity on all links. Problem
solved using standard techniques.

Edit: fixed a typo

~~~
Strilanc
Yup, that solution also works. I completely missed it. It's even a bit more
flexible, in that the A-to-Receiver edge could be flipped or turned into a
broadcast-from-third-party without breaking the solution.

I did generate the puzzle by trying to find a network that forced the
superdense bell pair coding + cleanup, so it's a bit embarassing that there's
another solution. Maybe it's just always possible to flip the cleanup into an
intermediate decoding and re-encoding.

As for the rendering: do you use noscript? The latex is rendered with mathjax.
I put a note at the top of the page when scripts are disabled... but it might
fail to show up in some cases. Knowing those cases would be useful (maybe if
you unblocked the blog but not the mathjax cdn?).

~~~
amluto
I'm using plain ol' Firefox on Linux. I just refreshed and it rendered
correctly. Go figure.

I'll try to find some time this afternoon to re-read the flat coding thing now
that the math is there. But I'm a bit confused -- if I have a one-qubit state
that's restricted to the set of states that are linear combinations of ±|0> ±
|1>, then are only two such states up to global phase, and those states are
orthogonal, so I can just measure without loss and treat it as a classical
bit. Am I missing something?

It's a neat puzzle, though, and I imagine that there are variants with very
interesting solutions.

~~~
Strilanc
> _if I have a one-qubit state that 's restricted to the set of states that
> are linear combinations of ±|0> ± |1>, then are only two such states up to
> global phase, and those states are orthogonal, so I can just measure without
> loss and treat it as a classical bit. Am I missing something?_

It's not a one-qubit state limited to ±|0> ± |1>, it's a two-qubit state
limited to a|00> \+ b|01> \+ c|10> d|11> where a^2+b^2+c^2+d^2 = 1 and a,b,c,d
are real. Also the state can be entangled with other qubits, as long the
non-180-degree phase information is not between the various a's, b's, c's, and
d's.

For example, if you have the state (1/2 |000> \- 1/sqrt(2) |010> \+ i/2
|101>)(|00> \+ |11>), then you can copy the first two qubits into the bell
pair on one side then pull them out on the receiving side to end up in the
state 1/2 |00000> \- 1/sqrt(2) |01001> \+ i/sqrt(2) |10110>. E.g. see this
circuit doing just that:
[http://i.imgur.com/wlcVAZG.png](http://i.imgur.com/wlcVAZG.png)

Glad you liked the puzzle.

------
SchizoDuckie
I'm not even going to pretend I understood any of that

~~~
Strilanc
This is a pretty common comment. Unfortunately, explaining the background
details turns any quantum computing post into an "intro to quantum computing"
post.

My current compromise is to just slip in links to the video series Quantum
Computing for the Determined [1] and/or a good textbook with a free version
available [2], so people at least have the opportunity to get a toe-hold (if
they want).

1:
[https://www.youtube.com/playlist?list=PL1826E60FD05B44E4](https://www.youtube.com/playlist?list=PL1826E60FD05B44E4)

2:
[http://www.johnboccio.com/research/quantum/notes/QC10th.pdf](http://www.johnboccio.com/research/quantum/notes/QC10th.pdf)

