File size: 8,087 Bytes
51875e0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
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']})")