2

Let's assume I have two qubits of state $|A_0\rangle$ and $|A_1\rangle$ correspondingly stored in a quantum memory. How do I find a Unitary $U$ that acts on another register of 2-qubits such that $$U:|i\rangle|0\rangle\rightarrow|i\rangle|A_i\rangle?$$

Is such a unitary even possible or is this forbidden due to the no-cloning theorem? However, I don't want to clone the states $|A_0\rangle$ and $|A_1\rangle$, but rather do some kind of multiplexing with them.

That's what my register looks like:

enter image description here

In the end, I want to turn the $|0\rangle$ qubit into $|A_i\rangle$ depending on the state of the $|i\rangle$ qubit. Is something like this generally possible?

glS
  • 27,670
  • 7
  • 39
  • 126
Thomas
  • 279
  • 2
  • 10

3 Answers3

7

No, this is impossible, because it violates the no-cloning theorem. You want to implement the function $$ |A_0\rangle|A_1\rangle|i\rangle|0\rangle \mapsto |A_0\rangle|A_1\rangle|i\rangle|A_i\rangle, $$ but if you could do that you could also clone, e.g. by fixing $i=0$, which would make the function be $$ |A_0\rangle|A_1\rangle|i\rangle|0\rangle \mapsto |A_0\rangle|A_1\rangle|0\rangle|A_0\rangle, $$ which is cloning the state $|A_0\rangle$ and ignoring the state $|A_1\rangle$.

Mateus Araújo
  • 3,167
  • 10
  • 20
0

Yeah you can do it! Here's the circuit:

enter image description here

The reason that the no-cloning theorem does not apply here is because you are requiring precise inputs (in particular you are choosing your input qubit to be $|0\rangle$). A cloning would look like $|A_i\rangle|i\rangle|x\rangle \rightarrow |A_i\rangle|i\rangle|A_i\rangle$ for some arbitrary $x$ which would indeed be impossible.

Also if you would like the gates to be even more 'elementary', you can check you this paper that describes how to construct CCNOT gates out of T gates.

Edit: This only works if $A_i = \{0,1\}$, not for any arbitrary superposition (thank you Mateus Araújo for pointing that out)

sheesymcdeezy
  • 2,041
  • 8
  • 27
0

I tried to run circuit proposed by Rajiv on IBM Q. In my case $|A_0\rangle = |+\rangle$, so probabilities of measuring 0 and 1 are 50 %. Then I set $|A_1\rangle = Ry(\pi/4)|0\rangle$ which means that probability of measuring 0 is 85 % and for 1 it is 15 %.

For setting $|i\rangle$ to $|0\rangle$, state $|A_0\rangle$ is returned to qubit $q_3$ and for setting $|i\rangle$ to $|1\rangle$, state $|A_1\rangle$ is returned to qubit $q_3$. Or in other words, I measured above mentioned probabilities on qubit $q_3$ for both settings of $|i\rangle$.

Here is a code:

OPENQASM 2.0;
include "qelib1.inc";

qreg q[4]; creg c[1];

h q[0]; ry(pi/4) q[1]; x q[2]; \put x for i = 1, remove this line for i = 0 x q[2]; ccx q[0],q[2],q[3]; x q[2]; ccx q[1],q[2],q[3]; measure q[3] -> c[0];

Concerning the no-cloning theorem. There is no violation of the theorem as the circuit proposed by Rajiv uses controled fan-outs which does not violate the theorem. See explanation here.

EDIT: Original state $A_i$ and its "copy" are of course entangled and hence not independent as the "copy" is produced by fan-out.

Martin Vesely
  • 15,398
  • 4
  • 32
  • 75