Available States
Autogenerated API list for QuantumSavory.StatesZoo
QuantumSavory.StatesZoo.DualRailMidSwapBell
— Typestruct DualRailMidSwapBell <: QuantumSavory.StatesZoo.AbstractTwoQubitState
Fields:
eA
: Link efficiencies for memory A upto the swap (include link loss, detector efficiency, etc.)eB
: Link efficiencies for memory B upto the swap (include link loss, detector efficiency, etc.)gA
: Memory initialization parameter for memory AgB
: Memory initialization parameter for memory BPd
: Detector dark count probability per photonic mode (assumed to be the same for both detectors)Vis
: Interferometer visibility for the midpoint swapmetadata
Generates the normalized spin-spin density matrix for linear photonic entanglement swap with emissive memories emitting dual rail photonic qubits from the paper (Prajit Dhara and Guha, 2023).
julia> using QuantumSavory.StatesZoo: DualRailMidSwapBell
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)
-0.9999999911111113 + 0.0im
QuantumSavory.StatesZoo.DualRailMidSwapBellW
— Typestruct DualRailMidSwapBellW <: QuantumSavory.StatesZoo.AbstractTwoQubitState
Fields:
eA
: Link efficiencies for memory A upto the swap (include link loss, detector efficiency, etc.)eB
: Link efficiencies for memory B upto the swap (include link loss, detector efficiency, etc.)gA
: Memory initialization parameter for memory AgB
: Memory initialization parameter for memory BPd
: Detector dark count probability per photonic mode (assumed to be the same for both detectors)Vis
: Interferometer visibility for the midpoint swapmetadata
Generates the unnormalized spin-spin density matrix for linear photonic entanglement swap with emissive memories emitting dual rail photonic qubits from the paper (Prajit Dhara and Guha, 2023). Since the matrix is 'weighted' by the probability for success, it is suffixed with a W to distinguish it from the normalized object DualRailMidSwapBell
.
julia> using QuantumSavory.StatesZoo: DualRailMidSwapBellW
julia> r = Register(2);
julia> initialize!(r[1:2], DualRailMidSwapBellW(0.9, 0.9, 0.5, 0.5, 1e-8, 0.99));
julia> observable(r[1:2], Z⊗Z)
-0.10124999595000005 + 0.0im
QuantumSavory.StatesZoo.SingleRailMidSwapBell
— Typestruct SingleRailMidSwapBell <: QuantumSavory.StatesZoo.AbstractTwoQubitState
Fields:
eA
: Link efficiencies for memory A upto the swap (include link loss, detector efficiency, etc.)eB
: Link efficiencies for memory B upto the swap (include link loss, detector efficiency, etc.)gA
: Memory initialization parameter for memory AgB
: Memory initialization parameter for memory BPd
: 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 instabilitymetadata
Generates the normalized spin-spin density matrix for linear photonic entanglement swap with emissive memories emitting single rail photonic qubits from the paper (Prajit Dhara and Guha, 2023)
julia> using QuantumSavory.StatesZoo: SingleRailMidSwapBell
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)
-0.8181818000000001 + 0.0im
QuantumSavory.StatesZoo.SingleRailMidSwapBellW
— Typestruct SingleRailMidSwapBellW <: QuantumSavory.StatesZoo.AbstractTwoQubitState
Fields:
eA
: Link efficiencies for memory A upto the swap (include link loss, detector efficiency, etc.)eB
: Link efficiencies for memory B upto the swap (include link loss, detector efficiency, etc.)gA
: Memory initialization parameter for memory AgB
: Memory initialization parameter for memory BPd
: 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 instabilitymetadata
Generates the unnormalized spin-spin density matrix for linear photonic entanglement swap with emissive memories emitting single rail photonic qubits from the paper (Prajit Dhara and Guha, 2023). Since the matrix is 'weighted' by the probability for success, it is suffixed with a W to distinguish it from the normalized object SingleRailMidSwapBell
.
julia> using QuantumSavory.StatesZoo: SingleRailMidSwapBellW
julia> r = Register(2);
julia> initialize!(r[1:2], SingleRailMidSwapBellW(0.9, 0.9, 0.5, 0.5, 1e-8, 0.99));
julia> observable(r[1:2], Z⊗Z)
-0.202499993925 + 0.0im
QuantumSavory.StatesZoo.ZALMSpinPair
— Typestruct ZALMSpinPair <: QuantumSavory.StatesZoo.AbstractTwoQubitState
Fields:
Ns
: mean photon number per mode of the cascaded source modelgA
: qubit initialization parameter on Alice's sidegB
: qubit initialization parameter on Bob's sideeAm
: memory out-coupling efficiency for Alice's side (Allowed range: [0,1])eBm
: memory out-coupling efficiency for Bob's side (Allowed range: [0,1])eAs
: source out-coupling efficiency for Alice's side (Allowed range: [0,1])eBs
: source out-coupling efficiency for Bob's side (Allowed range: [0,1])eD
: detector efficiency (Allowed range: [0,1])Pd
: dark click probability per photonic mode on source's swapPdo1
: dark click probability per photonic mode on Alice side swapPdo2
: dark click probability per photonic mode on Bob side swapVisF
: product of visibilities of all three interferometers (Allowed range: [0,1])metadata
Generate symbolic object for the normalized spin-spin density matrix for a cascaded source swapped with emissive spin memories. The cascaded source from papers (and Guha, 2022) and (and Englund, 2023) is stored in spin memories as discussed in (Prajit Dhara and Guha, 2023).
julia> using QuantumSavory.StatesZoo: ZALMSpinPair
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));
julia> observable(r[1:2], Z⊗Z)
-0.9999999911111112 + 0.0im
QuantumSavory.StatesZoo.ZALMSpinPairW
— Typestruct ZALMSpinPairW <: QuantumSavory.StatesZoo.AbstractTwoQubitState
Fields:
Ns
: mean photon number per mode of the cascaded source modelgA
: qubit initialization parameter on Alice's sidegB
: qubit initialization parameter on Bob's sideeAm
: memory out-coupling efficiency for Alice's side (Allowed range: [0,1])eBm
: memory out-coupling efficiency for Bob's side (Allowed range: [0,1])eAs
: source out-coupling efficiency for Alice's side (Allowed range: [0,1])eBs
: source out-coupling efficiency for Bob's side (Allowed range: [0,1])eD
: detector efficiency (Allowed range: [0,1])Pd
: dark click probability per photonic mode on source's swapPdo1
: dark click probability per photonic mode on Alice side swapPdo2
: dark click probability per photonic mode on Bob side swapVisF
: product of visibilities of all three interferometers (Allowed range: [0,1])metadata
Generate symbolic object for the unnormalized spin-spin density matrix for a cascaded source swapped with emissive spin memories. Since the matrix is 'weighted' by the probability for success, it is suffixed with a W to distinguish it from the normalized object ZALMSpinPair
. The cascaded source from papers (and Guha, 2022) and (and Englund, 2023) is stored in spin memories as discussed in (Prajit Dhara and Guha, 2023).
julia> using QuantumSavory.StatesZoo: ZALMSpinPairW
julia> r = Register(2);
julia> initialize!(r[1:2], ZALMSpinPairW(1e-3, 0.5, 0.5, 1, 1, 1, 1, 0.9, 1e-8, 1e-8, 1e-8, 0.99));
julia> observable(r[1:2], Z⊗Z)
-6.290288032211147e-9 + 0.0im