|
import streamlit as st |
|
|
|
|
|
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']})") |
|
|