eaglelandsonce's picture
Rename pages to pages/44_Circuits.py
51875e0 verified
import streamlit as st
# List of 44 quantum circuits with details
quantum_circuits = [
{"name": "Single-Qubit Gates",
"problem": "Basic state manipulation.",
"unique": "Fundamental building blocks for all quantum operations.",
"reference": "[Nielsen & Chuang, Qiskit Documentation](https://qiskit.org/)"},
{"name": "Hadamard Gate",
"problem": "Creates superposition.",
"unique": "Enables quantum parallelism.",
"reference": "[Preskill's Lecture Notes, Qiskit Documentation](https://qiskit.org/)"},
{"name": "Pauli Gates Combination",
"problem": "Applies quantum NOT and rotations.",
"unique": "Demonstrates quantum state transformations.",
"reference": "[Qiskit Pauli Gates Documentation](https://qiskit.org/)"},
{"name": "CNOT Gate",
"problem": "Correlates qubits (entanglement starter).",
"unique": "Essential for multi-qubit control.",
"reference": "[Preskill's Notes, Qiskit CNOT Gate Documentation](https://qiskit.org/)"},
{"name": "Bell State Circuit",
"problem": "Generates entanglement (Bell state).",
"unique": "Foundation of quantum entanglement.",
"reference": "[Aspect et al., Qiskit Bell States](https://qiskit.org/textbook/)"},
{"name": "Quantum Swap Gate",
"problem": "Swaps two qubits.",
"unique": "Shows controlled qubit state exchange.",
"reference": "[Nielsen & Chuang, Qiskit Swap Gate Documentation](https://qiskit.org/documentation/)"},
{"name": "Phase Gate",
"problem": "Adds phase shift to qubits.",
"unique": "Demonstrates phase-based state manipulation.",
"reference": "[Preskill’s Notes, Qiskit Phase Gate Documentation](https://qiskit.org/)"},
{"name": "Measurement Circuit",
"problem": "Converts quantum states into classical information.",
"unique": "Bridge between quantum and classical realms.",
"reference": "[Qiskit Measurement Documentation](https://qiskit.org/textbook/)"},
{"name": "Quantum NOT Circuit",
"problem": "Flips the state of a qubit.",
"unique": "Quantum analog to classical NOT.",
"reference": "[Nielsen & Chuang, Qiskit X Gate](https://qiskit.org/documentation/)"},
{"name": "Single-Qubit Rotation",
"problem": "Rotates qubits on Bloch Sphere.",
"unique": "Demonstrates parameterized quantum gates.",
"reference": "[Qiskit Rotation Gates Documentation](https://qiskit.org/documentation/)"},
{"name": "Deutsch's Algorithm",
"problem": "Determines if a function is constant or balanced.",
"unique": "First quantum speedup demonstration.",
"reference": "[Deutsch & Jozsa, Qiskit Deutsch Algorithm](https://qiskit.org/textbook/)"},
{"name": "Quantum Fourier Transform (QFT)",
"problem": "Converts quantum states to frequency domain.",
"unique": "Core of Shor’s Algorithm.",
"reference": "[Shor's Algorithms, Qiskit QFT Documentation](https://qiskit.org/textbook/)"},
{"name": "Grover's Algorithm",
"problem": "Searches an unstructured database.",
"unique": "Quadratic speedup.",
"reference": "[Grover's Search, Qiskit Grover Documentation](https://qiskit.org/textbook/)"},
{"name": "Shor's Algorithm for Factoring",
"problem": "Efficiently factors integers.",
"unique": "Breaks RSA cryptography.",
"reference": "[Shor, Qiskit Shor’s Algorithm Documentation](https://qiskit.org/textbook/)"},
{"name": "Toffoli Gate (CCNOT)",
"problem": "Executes classical logic in quantum circuits.",
"unique": "Reversible computation.",
"reference": "[Toffoli, Qiskit Toffoli Gate Documentation](https://qiskit.org/documentation/)"},
{"name": "GHZ State Circuit",
"problem": "Creates multi-qubit entanglement.",
"unique": "Extends Bell state for three qubits.",
"reference": "[Greenberger et al., Qiskit GHZ State Documentation](https://qiskit.org/documentation/)"},
{"name": "Bernstein–Vazirani Algorithm",
"problem": "Extracts hidden binary strings.",
"unique": "Solves the problem in one query.",
"reference": "[Bernstein & Vazirani, Qiskit Documentation](https://qiskit.org/textbook/)"},
{"name": "Quantum Phase Estimation",
"problem": "Estimates eigenvalues of a unitary matrix.",
"unique": "Central to advanced algorithms like Shor’s.",
"reference": "[Kitaev, Qiskit Phase Estimation Documentation](https://qiskit.org/textbook/)"},
{"name": "Quantum Teleportation",
"problem": "Transfers a qubit state using entanglement.",
"unique": "Demonstrates practical entanglement use.",
"reference": "[Bennett et al., Qiskit Teleportation Documentation](https://qiskit.org/textbook/)"},
{"name": "Amplitude Amplification",
"problem": "Increases desired outcomes' probabilities.",
"unique": "Grover’s extension for optimization.",
"reference": "[Brassard et al., Qiskit Amplitude Amplification](https://qiskit.org/textbook/)"},
{"name": "Quantum Multiplexer",
"problem": "Conditional application of operations.",
"unique": "Controlled gate generalization.",
"reference": "[Qiskit Controlled Gates Documentation](https://qiskit.org/documentation/)"},
{"name": "Fredkin Gate (CSWAP)",
"problem": "Swaps states conditionally.",
"unique": "Logical gate for advanced operations.",
"reference": "[Fredkin & Toffoli, Qiskit Fredkin Gate Documentation](https://qiskit.org/documentation/)"},
{"name": "Error Correction Code (3-Qubit Code)",
"problem": "Protects against bit-flip errors.",
"unique": "Introduces quantum redundancy.",
"reference": "[Shor, Qiskit Error Correction Code Documentation](https://qiskit.org/textbook/)"},
{"name": "Quantum Random Number Generator",
"problem": "Produces true randomness.",
"unique": "Based on measurement unpredictability.",
"reference": "[Qiskit Random Number Generator](https://qiskit.org/textbook/)"},
{"name": "Quantum Approximate Optimization Algorithm (QAOA)",
"problem": "Solves combinatorial optimization.",
"unique": "Quantum-classical hybrid.",
"reference": "[Farhi et al., Qiskit QAOA Documentation](https://qiskit.org/documentation/)"},
{"name": "Variational Quantum Eigensolver (VQE)",
"problem": "Finds molecular ground states.",
"unique": "Quantum chemistry use.",
"reference": "[McClean et al., Qiskit VQE Documentation](https://qiskit.org/documentation/)"},
{"name": "Simon's Algorithm",
"problem": "Identifies periodicity in a function.",
"unique": "Exponential speedup over classical algorithms.",
"reference": "[Simon's Algorithm, Qiskit Documentation](https://qiskit.org/textbook/)"},
{"name": "HHL Algorithm",
"problem": "Solves linear systems of equations.",
"unique": "Efficient quantum solution to linear problems.",
"reference": "[Harrow, Hassidim, Lloyd (HHL), Qiskit Documentation](https://qiskit.org/documentation/)"},
{"name": "Quantum Neural Networks (QNN)",
"problem": "Classifies data using quantum circuits.",
"unique": "Early example of quantum-enhanced machine learning.",
"reference": "[Quantum Neural Networks, Qiskit Tutorials](https://qiskit.org/textbook/)"},
{"name": "Quantum Key Distribution (BB84)",
"problem": "Securely exchanges cryptographic keys.",
"unique": "Pioneering application of quantum cryptography.",
"reference": "[BB84 Protocol, Qiskit Documentation](https://qiskit.org/documentation/)"},
{"name": "Quantum Supremacy Simulation",
"problem": "Demonstrates computational advantage of quantum devices.",
"unique": "Benchmarks quantum speedup over classical systems.",
"reference": "[Google Quantum Supremacy Experiment, Research Papers](https://research.google/)"}
]
st.title("Quantum Circuit Explorer")
for circuit in quantum_circuits:
with st.expander(f"{circuit['name']}"):
st.write(f"**Problem:** {circuit['problem']}")
st.write(f"**What Makes It Unique:** {circuit['unique']}")
st.markdown(f"[Reference Link]({circuit['reference']})")