-
Notifications
You must be signed in to change notification settings - Fork 18
Background.md draft #962
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Background.md draft #962
Changes from 2 commits
Commits
Show all changes
9 commits
Select commit
Hold shift + click to select a range
0d07ad1
Rough draft of background
johnzl-777 8003735
remove hyperfine mention
johnzl-777 b3594d8
Simplify background, provide links to qbook
johnzl-777 4c483d7
Update docs/home/background.md
johnzl-777 a91b830
Update docs/home/background.md
johnzl-777 a1d251b
Update docs/home/background.md
johnzl-777 d399806
merge main
johnzl-777 f821fb2
Merge branch 'main' into john/add-background
johnzl-777 3efdb29
Add links to background.md, fix typos, remove comments
johnzl-777 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
# Background | ||
|
||
## Neutral Atom Qubits | ||
|
||
### Ground-Rydberg Coupling | ||
|
||
The qubits that QuEra's neutral atom computer *Aquila* and Bloqade are designed to emulate are based on *neutral atoms*. As the name implies they are atoms that are neutrally charged but are also capable of achieving a [Rydberg state](https://en.wikipedia.org/wiki/Rydberg_atom) where a single electron can be excited to an incredibly high energy level without ionizing the atom. | ||
|
||
This incredibly excited electron energy level $|r\rangle$ and its default ground state $|g\rangle$ create a two-level system where superposition can occur. For enabling interaction between two or more qubits and achieving entanglement, when the neutral atoms are in the Rydberg state a phenomenon known as the Rydberg blockade can occur where an atom in the Rydberg state prevents a neighboring atom from also being excited to the same state. | ||
|
||
You can address this ground-Rydberg transition (also known as a *coupling*) to apply a pulse sequence on in Bloqade via the `.rydberg` option. | ||
|
||
## Analog vs Digital Quantum Computing | ||
|
||
There are two modes of quantum computation that [neutral atoms](#neutral-atom-qubits) are capable of: [*Analog*](#analog-mode) and [*Digital*](#digital-mode) | ||
|
||
 | ||
|
||
### Analog Mode | ||
|
||
In the analog mode supported by Bloqade and Aquila you control your computation through the parameters of a [time-dependent Hamiltonian](#rydberg-many-body-hamiltonian) influences all the qubits at once. There are options for [local control](#local-control) of the Hamiltonian on certain qubits however. | ||
|
||
|
||
### Digital Mode | ||
|
||
In the Digital Mode individual or multiple groups of qubits are controlled by applying *gates* (individual unitary operations). For [neutral atoms](#neutral-atom-qubits), this digital mode can be accomplished with the introduction of hyperfine coupling, enabling a quantum state to be stored for long periods of time while also allowing for multi-qubit gates. | ||
|
||
## Rydberg Many-Body Hamiltonian | ||
|
||
Multiple neutral atoms with a [ground-Rydberg coupling](#ground-rydberg-coupling) are governed by the following Hamiltonian: | ||
|
||
$$ | ||
i \hbar \dfrac{\partial}{\partial t} | \psi \rangle = \hat{\mathcal{H}}(t) | \psi \rangle, \\ | ||
$$ | ||
|
||
$$ | ||
\frac{\mathcal{H}(t)}{\hbar} = \sum_j \frac{\Omega_j(t)}{2} \left( e^{i \phi_j(t) } | g_j \rangle \langle r_j | + e^{-i \phi_j(t) } | r_j \rangle \langle g_j | \right) - \sum_j \Delta_j(t) \hat{n}_j + \sum_{j < k} V_{jk} \hat{n}_j \hat{n}_k, | ||
$$ | ||
|
||
where: $\Omega_j$, $\phi_j$, and $\Delta_j$ denote the Rabi frequency, laser phase, and the detuning of the driving laser field on atom (qubit) $j$ coupling the two states $| g_j \rangle$ (ground state) and $| r_j \rangle$ (Rydberg state); $\hat{n}_j = |r_j\rangle \langle r_j|$ is the number operator, and $V_{jk} = C_6/|\mathbf{x}_j - \mathbf{x}_k|^6$ describes the Rydberg interaction (van der Waals interaction) between atoms $j$ and $k$ where $\mathbf{x}_j$ denotes the position of the atom $j$; $C_6$ is the Rydberg interaction constant that depends on the particular Rydberg state used. For Bloqade, the default $C_6 = 862690 \times 2\pi \text{ MHz μm}^6$ for $|r \rangle = \lvert 70S_{1/2} \rangle$ of the $^{87}$Rb atoms; $\hbar$ is the reduced Planck's constant. | ||
johnzl-777 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
When you emulate a program in Bloqade, Bloqade is emulating the time evolution of the above Hamiltonian. | ||
|
||
## Local Control | ||
|
||
The [Rydberg Many-Body Hamiltonian](#rydberg-many-body-hamiltonian) already implies from its subscripts that you can also have local control over your atoms. In Bloqade this local control extends to any term in the Hamiltonian while on *Aquila* this is currently restricted to the $\Delta_j$ laser detuning term. | ||
|
||
*Fields* in Bloqade give you local (single-atom) control over the many-body Rydberg Hamiltonian. | ||
|
||
They are a sum of one or more *spatial modulations*, which can be thought of as a scaling factor per atom site, multiplied by a waveform: | ||
johnzl-777 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
$$ | ||
\\begin{align*} | ||
& F_{i}(t) = \sum_{\\alpha} C_{i}^{\\alpha}f_{\\alpha}(t) | ||
\\\\ | ||
& C_{i}^{\\alpha} \in \mathbb{R} | ||
\\\\ | ||
& f_{\\alpha}(t) \colon \mathbb{R} \\to \mathbb{R} | ||
\\end{align*} | ||
$$ | ||
|
||
The $i$-th component of the field is used to generate the *drive* at the $i$-th site. | ||
|
||
Note that the drive is only applied if the $i$-th site is filled with an atom. | ||
|
||
You build fields in Bloqade by first specifying the spatial modulation followed by the waveform | ||
it should be multiplied by. | ||
|
||
In the case of a uniform spatial modulation, it can be interpreted as | ||
johnzl-777 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
a constant scaling factor where $C_{i}^{\alpha} = 1.0$. | ||
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.