Superdense Coding Protocol Implementation

1da4cadc-53a6-46f9-90ef-3e49bf18062d
4.0
Description

This circuit implements the superdense coding protocol, enabling transmission of two classical bits using a single qubit.

Qiskit Circuit Code
Python
```python
from qiskit import QuantumCircuit

# Create a circuit with 2 qubits and 2 classical bits
qc = QuantumCircuit(2, 2)

# Step 1: Create an entangled Bell pair between qubit 0 and qubit 1
qc.h(0)
qc.cx(0, 1)

# Step 2: Alice encodes her two classical bits into her qubit
# For demonstration, let's assume Alice wants to send '10'
# To encode '10', Alice applies a Z gate to qubit 0
qc.z(0)

# Step 3: Bob decodes the message by applying a CNOT gate and a Hadamard gate
qc.cx(0, 1)
qc.h(0)

# Step 4: Bob measures both qubits to retrieve the two classical bits
qc.measure([0, 1], [0, 1])
```

This quantum circuit implements the **superdense coding protocol**, where two classical bits are transmitted using a single qubit. In this circuit:

- **Qubit 0**: Held by Alice initially, used to encode the message.
- **Qubit 1**: Held by Bob, part of the entangled pair.

**Circuit Steps:**

1. **Entanglement Creation**: A Bell pair is created between qubit 0 and qubit 1 using a Hadamard gate followed by a CNOT gate.
2. **Message Encoding**: Alice encodes her two-bit message by applying gates to her qubit:
   - For '00': No gate.
   - For '01': Apply an X gate.
   - For '10': Apply a Z gate.
   - For '11': Apply an X gate followed by a Z gate.
3. **Transmission**: Alice sends her qubit to Bob.
4. **Message Decoding**: Bob applies a CNOT gate and a Hadamard gate to decode the message.
5. **Measurement**: Bob measures both qubits to retrieve the two classical bits originally sent by Alice.

This protocol demonstrates how quantum entanglement can be used to transmit more information than classical bits alone would allow.
Quantum Execution Results
ibm_brisbane
N/A
N/A shots
Execution Notice:

'Failed to run program: \'409 Client Error: Conflict for url: https://api.quantum.ibm.com/runtime/jobs. {"errors":[{"message":"You have reached the limit of 3 pending jobs. Please wait for a job to complete or cancel one before submitting anything new.","code":3458,"solution":"Wait until some previous jobs were finished. You can cancel pending jobs to run new jobs.","more_info":"https://docs.quantum-computing.ibm.com/errors"}]}\''

Raw Result Data
Download Results
Back to Home