Skip to content
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

Correction for #46 #47

Merged
merged 2 commits into from
Oct 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ function main()
"references.md",
"API" => "API.md",
"CircuitZoo API" => "API_CircuitZoo.md",
"StatesZoo API" => "API_StatesZoo.md",
"Bibliography" => "bibliography.md",
],
]
Expand Down
2 changes: 1 addition & 1 deletion docs/src/API_CircuitZoo.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
</style>
```

## Autogenerated API list for `QuantumClifford.CircuitZoo`
## Autogenerated API list for `QuantumSavory.CircuitZoo`

```@autodocs
Modules = [QuantumSavory.CircuitZoo]
Expand Down
17 changes: 17 additions & 0 deletions docs/src/API_StatesZoo.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Available States

```@raw html
<style>
.content table td {
padding-top: 0 !important;
padding-bottom: 0 !important;
}
</style>
```

## Autogenerated API list for `QuantumSavory.StatesZoo`

```@autodocs
Modules = [QuantumSavory.StatesZoo]
Private = false
```
1 change: 1 addition & 0 deletions src/StatesZoo/StatesZoo.jl
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
module StatesZoo

using DocStringExtensions
using QuantumSymbolics, QuantumOpticsBase
using QuantumSymbolics: withmetadata, @withmetadata, Metadata
import QuantumSymbolics: express_nolookup
Expand Down
28 changes: 28 additions & 0 deletions src/StatesZoo/single_dual_rail_midswap/single_dual_rail_midswap.jl
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,27 @@ function midswap_dual_rail(eA,eB,gA,gB,Pd,Vis)
end

"""
$TYPEDEF

Fields:

$FIELDS

Generates the spin-spin density matrix for linear photonic entanglement swap
with emissive memories emitting single rail photonic qubits from the paper [prajit2023entangling](@cite)
It takes the following parameters:
- eA, eB: Link efficiencies for memories A and B upto the swap (include link loss, detector efficiency, etc.)
- gA, gB: Memory initialization parameter for memories A and B
- Pd: Detector dark count probability per photonic mode (assumed to be the same for both detectors)
- Vis: Interferometer visibility for the midpoint swap' can be complex to account for phase instability

```jldoctest
julia> r = Register(2)

julia> initialize!(r[1:2], SingleRailMidSwapBell(0.9, 0.9, 0.5, 0.5, 1e-8, 0.99))

julia> observable(r[1:2], Z⊗Z)
```
"""
@withmetadata struct SingleRailMidSwapBell <: AbstractTwoQubitState
eA::Float64
Expand All @@ -49,13 +63,27 @@ symbollabel(x::SingleRailMidSwapBell) = "ρˢʳᵐˢ"


"""
$TYPEDEF

Fields:

$FIELDS

Generates the spin-spin density matrix for linear photonic entanglement swap with emissive
memories emitting dual rail photonic qubits from the paper [prajit2023entangling](@cite).
It takes the following parameters:
- eA, eB: Link efficiencies for memories A and B upto the swap (include link loss, detector efficiency, etc.)
- gA, gB: Memory initialization parameter for memories A and B
- Pd: Detector dark count probability per photonic mode (assumed to be the same for both detectors)
- Vis: Interferometer visibility for the midpoint swap

```jldoctest
julia> r = Register(2)

julia> initialize!(r[1:2], DualRailMidSwapBell(0.9, 0.9, 0.5, 0.5, 1e-8, 0.99))

julia> observable(r[1:2], Z⊗Z)
```
"""
@withmetadata struct DualRailMidSwapBell <: AbstractTwoQubitState
eA::Float64
Expand Down
13 changes: 13 additions & 0 deletions src/StatesZoo/zalm_pair/zalm_pair.jl
Original file line number Diff line number Diff line change
Expand Up @@ -562,6 +562,12 @@ end


"""
$TYPEDEF

Fields:

$FIELDS

Generate symbolic object for the spin-spin density matrix for a
cascaded source swapped with emissive spin memories. The cascaded
source from papers [prajit2022heralded](@cite) and [kevin2023zero](@cite)
Expand All @@ -579,6 +585,13 @@ It takes the following parameters:
- Pdo1: dark click probability per photonic mode on Alice side swap
- Pdo2: dark click probability per photonic mode on Bob side swap
- VisF: product of visibilities of all three interferometers (Allowed range: [0,1])

```jldoctest
julia> r = Register(2)

julia> initialize!(r[1:2], ZALMSpinPair(1e-3, 0.5, 0.5, 1, 1, 1, 1, 0.9, 1e-8, 1e-8, 1e-8, 0.99))

juilia> observable(r[1:2], Z⊗Z)
```
"""
@withmetadata struct ZALMSpinPair <: AbstractTwoQubitState
Expand Down