catalyst
catalyst copied to clipboard
A JIT compiler for hybrid quantum programs in PennyLane
Currently `cancel_inverses` does not detect potential opportunities if they are separated across the boundary of control flow constructs, e.g. `for(4){Hadamard}` or `Hadamard, if(cond){True: Identity, False: Hadamard}`. Being able to detect...
### Context When using `qml.counts()` in the output of a quantum circuit with `qjit`, the output pytree is modified to replace the output pytree element related to `qml.counts` with `tree_structure(("keys",...
```python dev = qml.device("lightning.qubit", wires=2) def my_quantum_transform(tape: qml.tape.QuantumTape) -> (Sequence[qml.tape.QuantumTape], Callable): tape1 = tape tape2 = qml.tape.QuantumTape(tape.operations, tape.measurements) def post_processing_fn(results): return results[0] + results[1] return [tape1, tape2], post_processing_fn dispatched_transform =...
**Context:** JAX has migrated their LAPACK kernels to use XLA's FFI interface, which relies on XLA internal methods to call external functions (see [this Issue page](https://github.com/jax-ml/jax/issues/23056)). As a result, they...
### Before submitting Please complete the following checklist when submitting a PR: - [ ] All new functions and code must be clearly commented and documented. - [ ] Ensure...
**Context:** A pass to convert the `mbqc.measure_in_basis` MLIR operation (in the `mbqc` dialect) into the LLVM dialect was added in #1679. In order to execute a compiled program containing this...
TODO: Create description [sc-89798]
**Context:** This is the main branch for updating jax to 0.5.3. We will do this version-by-version. Each version should come in as a PR/commit. This allows us to run CI...
**Context:** **Description of the Change:** **Benefits:** **Possible Drawbacks:** **Related GitHub Issues:** [[sc-88876](https://app.shortcut.com/xanaduai/story/88876/parametric-mid-circuit-measurements-are-supported-in-catalyst)]
**Context:** This PR introduces a new pass that decomposes non-Clifford Pauli Product Rotations (PPR) into Pauli Product Measurements (PPMs) consuming magic states. Two decomposition strategies are supported: inject-magic-state and auto-corrected....