Quantum Dense Coding

Another interesting application for Bell pair is called dense coding. This protocol allows Alice to send 2  classical bits of information using only one quantum qubit, provided the latter is in a Bell state. One can think of it as a kind of compression
scheme.

Suppose Alice wants to send the two classical bits 00 to Bob.  They must first share their qubits in the following Bell state

|ψ⟩ = (1/(Sqrt[2]))|00⟩ +  (1/(Sqrt[2]))|11⟩

As usual, the first qubit on the left belongs to Alice and the second one to Bob.  Now Alice puts her qubit through an identity operation,  so

(Subscript[I, a])(Subscript[I, b]) |ψ⟩  -> |ψ’⟩ = |ψ⟩

after which she sends her qubit to Bob, so that he has possesion of both qubits.
He applies a Control-not gate (Subscript[C, ab  ])on the qubit she sent him qubit  folllowed by a Hadamard gate on that qubit,
i.e.

(Subscript[H, a]) (Subscript[C, ab  ])[ (1/(Sqrt[2]))|00⟩ +  (1/(Sqrt[2]))|11⟩ ] = H [(1/(Sqrt[2]))|00⟩ +  (1/(Sqrt[2]))|10⟩] = (1/2) ( |0⟩+|1⟩ )|0⟩  + (1/2)( |0⟩- |1⟩ )|0⟩  = |00⟩

An therefor Bob is in possesion of two qubits that contain 00, though Alice only sent him one qubit.

If  Alice wants to send 01  to Bob she first subjects her qubit to a Pauli X-gate (Subscript[X, a]) so that

(Subscript[X, a])(Subscript[I, b]) |ψ⟩  -> |ψ’⟩ = (1/(Sqrt[2]))|10⟩ +  (1/(Sqrt[2]))|01⟩

after this gate operation she send her qubit to Bob, who again makes |ψ’⟩ go through a  (Subscript[H, a]) (Subscript[C, ab  ])gate.
Therefore

(Subscript[H, a]) (Subscript[C, ab  ])[ (1/(Sqrt[2]))|10⟩ +  (1/(Sqrt[2]))|01⟩ ] = (Subscript[H, a]) [ (1/(Sqrt[2]))|11⟩ +  (1/(Sqrt[2]))|01⟩ ] = (1/2) ( |0⟩- |1⟩ )|1⟩  + (1/2)( |0⟩+ |1⟩ )|1⟩  = |01⟩

If  Alice wants to send 10  to Bob she first subjects her qubit to a Pauli Z-gate (Subscript[Z, a]) so that

(Subscript[Z, a])(Subscript[I, b]) |ψ⟩  -> |ψ’⟩ = (1/(Sqrt[2]))|00⟩ -  (1/(Sqrt[2]))|11⟩

She send her quabit to Bob who applies 

(Subscript[H, a]) (Subscript[C, ab  ])[ (1/(Sqrt[2]))|00⟩ -  (1/(Sqrt[2]))|11⟩ ] = (Subscript[H, a]) [ (1/(Sqrt[2]))|00⟩ -  (1/(Sqrt[2]))|10⟩ ] =  (1/2) ( |0⟩+ |1⟩ )|0⟩  -  (1/2)( |0⟩ - |1⟩ )|0⟩ = |10⟩

Finally, in order to send 11, Alice applies the gate  (Subscript[Z, a])(Subscript[X, a]) so that

(Subscript[Z, a]) (Subscript[X, a])(Subscript[I, b]) |ψ⟩  -> |ψ’⟩ = (Subscript[Z, a])[ (1/(Sqrt[2]))|10⟩ +  (1/(Sqrt[2]))|01⟩] =  (1/(Sqrt[2]))|01⟩ - (1/(Sqrt[2]))|10⟩
And now when Bob gets Alice’s qubit he finds

(Subscript[H, a]) (Subscript[C, ab  ])[ (1/(Sqrt[2]))|01⟩ - (1/(Sqrt[2]))|10⟩ ] = (Subscript[H, a]) [ (1/(Sqrt[2]))|01⟩  -  (1/(Sqrt[2]))|11⟩] =  (1/2) ( |0⟩+ |1⟩ )|0⟩  -  (1/2)( |0⟩ - |1⟩ )|0⟩ = |11⟩