Superdense Coding Protocol


In this notebook, we use the Starmon-5 backend in Quantum Inspire to implement the superdense coding algorithm. With this quantum communication protocol, a sender (Bob) can transmit two classical bits of information to a receiver (Alice) using only one qubit. In addition, this method of communication is highly secure against eavesdropping since reading out the state during the communication will collapse the entangled state, indicating the presence of a third party listening.


We divide the superdense code into four main sections: initilization, encoding, decoding, measurement. Initially, Alice creates the entangled state and sends one qubit to Bob for the encoding step. After the encoding, Bob returns the qubit to Alice, who decodes the message and measures the two qubits. The measurement outcomes depend on the set of gates that Bob has applied during the encoding step (Table 1).

After analyzing the main steps of the procedure, we create a function that runs the algorithm in the Quantum Inspire Starmon-5 backend. Finally, we analyze the data and present the results with and without implementing mid-circuit measurement tools (MCMs) (see previous notebook "Mid-circuit measurement tools").

Schermafbeelding%202023-06-30%20144110.png (Figure 1. Schematic of the superdense coding procedure. Alice prepares the qubits into a fully entangled state and sends one qubit to Bob. Bob encodes his message on the qubit state and sends the qubit back to Alice. Alice then decodes the state to obtain the message.)

Step 1: Initialization (Alice)

The two qubits are initially prepared in the ground state, i.e., $|$00$\rangle$. Before sending the qubit to Bob, Alice needs to prepare an entangled state. So, Alice applies a H-gate to get $\frac{1}{\sqrt 2}( |$0$\rangle + |$1$\rangle)|$0$\rangle$, followed by a CNOT-gate, to obtain the desired entangled state $\frac{1}{\sqrt 2}(|$00$\rangle + |$11$\rangle)$.

Now the qubit is ready to be sent to Bob, who encodes the two classical bits of information.

Step 2: Encoding (Bob)

Bob can choose between four gates to apply to the qubit. Each gate will encode a different message for Alice. The four different possibilities are listed in the table below.

(Table 1. Here, we show the different single qubit gates that Bob can apply to the qubit with the resulting classical message.)

Gates Classical Message
I 00
X 01
Z 10
ZX 11

A different Bell state will be encoded for each gate that Bob applies to the qubit. After decoding, each Bell state will result in a different 2-bit message. Remember that the Identity gate doesn't alter the state, and the X and Z gates make the qubit do a $\pi$-rotation over their respective axes.

The different possible states after encoding will then be:

I $\frac{1}{\sqrt 2}$($|$00$\rangle + |$11$\rangle$) = $\frac{1}{\sqrt 2}$($|$00$\rangle + |$11$\rangle$)

X $\frac{1}{\sqrt 2}$($|$00$\rangle + |$11$\rangle$) = $\frac{1}{\sqrt 2}$($|$10$\rangle + |$01$\rangle$)

Z $\frac{1}{\sqrt 2}$($|$00$\rangle + |$11$\rangle$) = $\frac{1}{\sqrt 2}$($|$00$\rangle - |$11$\rangle$)

ZX $\frac{1}{\sqrt 2}$($|$00$\rangle + |$11$\rangle$) = $\frac{1}{\sqrt 2}$($-|$10$\rangle + |$01$\rangle$)

The state can now be sent back to Alice, who can decode Bob's message.