hybridlane is a Python library for designing and manipulating hybrid continuous-variable (CV) and discrete-variable (DV) quantum circuits within the PennyLane ecosystem. It provides a frontend for expressing hybrid quantum algorithms, implementing the concepts from the paper Y. Liu et al, 2026 (PRX Quantum 7, 010201).
As quantum computing explores beyond traditional qubit-only models, hybridlane offers a powerful and intuitive framework for researchers and developers to:
- Design complex hybrid circuits effortlessly: Seamlessly integrate qubits and qumodes in the same circuit.
- Describe large-scale circuits: Define hybrid gate semantics independently of simulation, enabling fast description of wide and deep circuits with minimal memory.
- Leverage the PennyLane ecosystem: Integrate with PennyLane's extensive tools for transformations, resource estimation, and device support.
-
📃 Hybrid Gate Semantics: Precise, platform-independent definitions for hybrid gates, enabling rapid construction of large-scale quantum circuits.
-
⚛️ Native Qumode Support: Qumodes are treated as a fundamental wire type, with automatic type inference that simplifies circuit construction and enhances readability.
-
🤝 PennyLane Compatibility: A familiar interface for PennyLane users. Utilize existing PennyLane gates, build custom hybrid devices, write compilation passes, and perform resource estimation across mixed-variable systems.
-
💻 Classical Simulation: A built-in device that dispatches to Bosonic Qiskit for simulating small hybrid circuits.
-
💾 OpenQASM-based IR: An intermediate representation based on an extended OpenQASM, promoting interoperability and enabling advanced circuit manipulations.
hybridlane is currently in early preview. We welcome your feedback on our GitHub Issues page to help us improve.
Install the package from PyPI:
pip install hybridlaneAvailable Extras:
[all]: Installs all extra dependencies.[bq]: Installs support for thebosonicqiskit.hybridsimulation device.[qscout]: Installs support for thesandiaqscout.hybridcompilation device.
For detailed instructions, see the Getting Started Guide in our documentation.
import numpy as np
import pennylane as qml
import hybridlane as hqml
# Create a bosonic qiskit simulator with a custom Fock truncation
dev = qml.device("bosonicqiskit.hybrid", max_fock_level=8)
# Define a hybrid circuit with familiar PennyLane syntax
@qml.qnode(dev)
def circuit(n):
for j in range(n):
qml.X(0) # Wire `0` is inferred to be a qubit
# Use hybrid CV-DV gates from hybridlane
hqml.JC(np.pi / (2 * np.sqrt(j + 1)), np.pi / 2, [0, "m"])
# Mix qubit and qumode observables
return hqml.expval(hqml.N("m") @ qml.Z(0))
# Execute the circuit
expval = circuit(5)
# array(5.)
# Analyze its structure
import hybridlane.sa as sa
res = sa.analyze(circuit._tape)
print(res)
# StaticAnalysisResult(qumodes=Wires(['m']), qubits=Wires([0]), schemas=[...])For more examples, explore our Documentation.
hybridlane is under active development. Here are some of our future goals:
- Broader measurement support: Including mid-circuit measurements and broader measurement capabilities.
- Algorithms and transformations: Implementing popular algorithms and circuit transformations from research papers, including dynamic qumode allocation.
- Symbolic Hamiltonians: Introducing support for symbolic bosonic Hamiltonians.
- Noisy simulation: Supporting noisy simulations with Bosonic Qiskit.
- Pulse-level gates: Allowing pulse-level gates and simulating them in Dynamiqs.
- Catalyst/QJIT support: Integrating with PennyLane's
qjitcapabilities by developing a custom MLIR dialect. - Community-driven features: Incorporating features requested by the community during usage.
For comprehensive information on hybridlane's API, tutorials, and technical background, please visit our official Documentation.
For questions, bug reports, or feature requests, please open an issue on our GitHub Issues page.
If you find hybridlane useful in your research, please cite our paper:
@misc{furches2026hybridlane,
title={Hybridlane: A Software Development Kit for Hybrid Continuous-Discrete Variable Quantum Computing},
author={Jim Furches and Timothy J. Stavenger and Carlos Ortiz Marrero},
year={2026},
eprint={2603.10919},
archivePrefix={arXiv},
primaryClass={quant-ph},
url={https://arxiv.org/abs/2603.10919},
}
This project is licensed under the BSD 2-Clause License - see the LICENSE.txt file for details.
This project was supported by the U.S. Department of Energy, Office of Science, Advanced Scientific Computing Research program under contract number DE-FOA-0003265.
