Welcome to squint, a differentiable framework for the study and design of quantum metrology & sensing protocols!
- Differentiable quantum dynamics for qubit, qudit, and Fock/photon-number systems
- Built on the JAX ecosystem for automatic differentiation and GPU hardware acceleration
- Compute Fisher information and other fundamental metrics in quantum metrology with ease
- Benchmark realistic protocols with noise and loss channels relevant to diverse device architectures
from squint.circuit import Circuit
from squint.ops.dv import DiscreteVariableState, HGate, RZGate
from squint.utils import print_nonzero_entries, partition_op
# Create a simple one-qubit phase estimation circuit
# |0⟩ --- H --- Rz(φ) --- H --- |⟩
circuit = Circuit(backend="pure")
circuit.add(DiscreteVariableState(wires=(0,), n=(0,))) # |0⟩ state
circuit.add(HGate(wires=(0,))) # Hadamard gate
circuit.add(RZGate(wires=(0,), phi=0.0 * jnp.pi), "phase") # Phase rotation
circuit.add(HGate(wires=(0,))) # Second Hadamard
# Compile the circuit for simulation
dim = 2 # qubit dimension
params, static = partition_op(circuit, "phase")
sim = circuit.compile(static, dim, params, optimize="greedy").jit()
# Calculate metrics important to quantum metrology & sensing protocols
# the quantum state and its gradient
psi = sim.amplitudes.forward(params) # |ψ(φ)⟩
dpsi = sim.amplitudes.grad(params) # ∂|ψ(φ)⟩/∂φ
# Probabilities and their gradients
p = sim.probabilities.forward(params) # p(s|φ)
dp = sim.probabilities.grad(params) # ∂p(s|φ)/∂φ
qfi = sim.amplitudes.qfim(params) # Quantum Fisher Information
cfi = sim.probabilities.cfim(params) # Classical Fisher Information
Install from Git with,
pip install git+https://github.com/benjimaclellan/squint
The authors of squint
acknowledge the kind support of
Ki3 Photonics Technologies,
the Perimeter Institute Quantum Intelligence Lab,
the Institute for Quantum Computing,
and the NSERC Vanier Program.
If you found this package useful, please consider citing our work;
@article{maclellan2024endtoend,
title={End-to-end variational quantum sensing},
author={Benjamin MacLellan and Piotr Roztocki and Stefanie Czischek and Roger G. Melko},
year={2024},
eprint={2403.02394},
archivePrefix={arXiv},
primaryClass={quant-ph}
}