codeCreated with Sketch Beta.

Quantum Examples

Explore quantum computing examples across different frameworks. Copy, modify, and run these circuits in QCanvas.

Quantum Teleportation (Cirq)

Transfer a quantum state using entanglement and classical communication.

cirqintermediateteleportationentanglement
import cirq

# Create 3 qubits: q0 (state to teleport), q1 & q2 (Bell pair)
q0, q1, q2 = cirq.LineQubit.range(3)

# Classical bits placeholder for conditional operations
c = [0, 0, 0]
...

Quantum Teleportation (Qiskit)

Transfer a quantum state using entanglement and classical communication.

qiskitintermediateteleportationentanglement
from qiskit import QuantumCircuit

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

# STEP 1: Prepare the state to teleport (|+⟩ state as example)
qc.h(0)
...

Quantum Teleportation (PennyLane)

Transfer a quantum state using entanglement and classical communication.

pennylaneintermediateteleportationentanglement
import pennylane as qml

# Define quantum device with 3 wires (qubits)
dev = qml.device("default.qubit", wires=3)

# Classical bits placeholder for conditional operations
c = [0, 0, 0]
...

Deutsch-Jozsa (PennyLane)

Determine if a function is constant or balanced with one quantum query.

pennylaneintermediatedeutsch-jozsaoracle
import pennylane as qml

# 3 qubits: 2 input qubits + 1 ancilla qubit
dev = qml.device("default.qubit", wires=3)

@qml.qnode(dev)
def deutsch_jozsa_circuit():
    # STEP 1: Initialize ancilla qubit to |1⟩...

Deutsch-Jozsa (Qiskit)

Determine if a function is constant or balanced with one quantum query.

qiskitintermediatedeutsch-jozsaoracle
from qiskit import QuantumCircuit

# 3 qubits, 2 classical bits (only measure input qubits)
qc = QuantumCircuit(3, 2)

# STEP 1: Initialize ancilla to |1⟩
qc.x(2)
...

Deutsch-Jozsa (Cirq)

Determine if a function is constant or balanced with one quantum query.

cirqintermediatedeutsch-jozsaoracle
import cirq

# Create 3 qubits
q0, q1, q2 = cirq.LineQubit.range(3)

# Classical bits placeholder
c = [0, 0]
...

QRNG (Qiskit)

Generate truly random numbers using quantum mechanics.

qiskitbeginnerqrngrandom
from qiskit import QuantumCircuit, execute, Aer

# Number of random bits to generate
n_bits = 8

# Create circuit with n_bits qubits and classical bits
qc = QuantumCircuit(n_bits, n_bits)
...

QRNG (Cirq)

Generate truly random numbers using quantum mechanics.

cirqbeginnerqrngrandom
import cirq

# Number of random bits to generate
n_bits = 8

# Create n_bits qubits
qubits = cirq.LineQubit.range(n_bits)
...

QRNG (PennyLane)

Generate truly random numbers using quantum mechanics.

pennylanebeginnerqrngrandom
import pennylane as qml

# Number of random bits to generate
n_bits = 8

# Define device with n_bits wires
dev = qml.device("default.qubit", wires=n_bits)
...

Grover's Search (Qiskit)

Search an unsorted database in O(√N) time - finds |11⟩ state.

qiskitadvancedgroversearch
from qiskit import QuantumCircuit

# 2 qubits = 4 possible states to search
qc = QuantumCircuit(2, 2)

# STEP 1: Initialize superposition (equal probability for all states)
qc.h(0)
qc.h(1)...

Grover's Search (Cirq)

Search an unsorted database in O(√N) time - finds |11⟩ state.

cirqadvancedgroversearch
import cirq

# Create 2 qubits
q0, q1 = cirq.LineQubit.range(2)

circuit = cirq.Circuit()

# STEP 1: Initialize superposition...

Grover's Search (PennyLane)

Search an unsorted database in O(√N) time - finds |11⟩ state.

pennylaneadvancedgroversearch
import pennylane as qml

dev = qml.device("default.qubit", wires=2)

@qml.qnode(dev)
def grover_circuit():
    # STEP 1: Initialize superposition
    qml.Hadamard(wires=0)...

XOR Demonstration

Quantum entanglement producing XOR-like correlations (|01⟩ + |10⟩).

pennylanebeginnerxorentanglement
import pennylane as qml

dev = qml.device("default.qubit", wires=2)

@qml.qnode(dev)
def xor_demo_circuit():
    # STEP 1: Create Bell state (|00⟩ + |11⟩)/√2
    # Hadamard creates superposition, CNOT entangles qubits...

QML XOR Classifier

Variational quantum circuit that learns XOR function - actual Quantum ML.

pennylaneadvancedqmlxor
import pennylane as qml
import numpy as np

dev = qml.device("default.qubit", wires=2)

@qml.qnode(dev)
def qml_xor_classifier():
    # ENCODING LAYER: Convert classical inputs to quantum states...

Bell State (Qiskit)

Create a Bell state - a fundamental quantum entangled state.

qiskitbeginnerentanglementbell-state
from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister

# Create quantum and classical registers
qr = QuantumRegister(2, 'q')
cr = ClassicalRegister(2, 'c')

# Create quantum circuit
qc = QuantumCircuit(qr, cr)...

Bell State (Cirq)

Create a Bell state using Cirq - demonstrating quantum entanglement.

cirqbeginnerentanglementbell-state
import cirq

# Create qubits
q0, q1 = cirq.LineQubit.range(2)

# Create Bell state circuit
circuit = cirq.Circuit(
    cirq.H(q0),           # Hadamard on first qubit...

Bell State (PennyLane)

Create a Bell state using PennyLane with expectation value measurements.

pennylanebeginnerentanglementbell-state
import pennylane as qml

dev = qml.device("default.qubit", wires=2)

@qml.qnode(dev)
def bell_state_circuit():
    qml.Hadamard(wires=0)
    qml.CNOT(wires=[0, 1])...

GHZ State (Qiskit)

Create a GHZ (Greenberger-Horne-Zeilinger) state with multiple qubits.

qiskitintermediateentanglementghz-state
from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister

def create_ghz_circuit(n_qubits):
    qr = QuantumRegister(n_qubits, 'q')
    cr = ClassicalRegister(n_qubits, 'c')
    qc = QuantumCircuit(qr, cr)
    
    # Apply Hadamard to first qubit...

Quantum Fourier Transform

Implement the Quantum Fourier Transform (QFT) - a key component in many quantum algorithms.

qiskitadvancedqftfourier-transform
from qiskit import QuantumCircuit
import numpy as np

def create_qft_circuit(n_qubits):
    qc = QuantumCircuit(n_qubits)
    
    for i in range(n_qubits):
        qc.h(i)...

VQE (PennyLane)

Implement VQE to find the ground state energy of quantum systems.

pennylaneadvancedvqevariational
import pennylane as qml
import numpy as np

def create_vqe_circuit():
    dev = qml.device("default.qubit", wires=2)
    
    @qml.qnode(dev)
    def vqe_circuit(theta):...

QAOA (PennyLane)

Implement QAOA for combinatorial optimization problems.

pennylaneadvancedqaoaoptimization
import pennylane as qml
import numpy as np

def create_qaoa_circuit(n_qubits=4, p=2):
    dev = qml.device("default.qubit", wires=n_qubits)
    
    @qml.qnode(dev)
    def qaoa_circuit(gamma, beta):...

Quantum Neural Network

A simple quantum neural network for classification tasks.

pennylaneintermediatequantum-mlneural-network
import pennylane as qml
import numpy as np

def create_quantum_neural_network(n_qubits=2, n_layers=2):
    dev = qml.device("default.qubit", wires=n_qubits)
    
    @qml.qnode(dev)
    def quantum_neural_network(inputs, weights):...

3-Qubit Bit-Flip Error Correction

Implement a simple quantum error correction code.

qiskitintermediateerror-correctionsyndrome
from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister

def create_error_correction_circuit():
    # Create quantum and classical registers
    qr = QuantumRegister(5, 'q')  # 3 data qubits + 2 ancilla qubits
    cr = ClassicalRegister(3, 'c')  # Measure only data qubits
    
    # Create quantum circuit...