catalyst
catalyst copied to clipboard
A JIT compiler for hybrid quantum programs in PennyLane
Experienced `TracerBoolConversionError` when trying to parameterize coeffients of qml.dot with qjit. Minimal example code below. **Expected behavior:** (without qjit) ``` import pennylane as qml import jax.numpy as jnp from catalyst...
Test circuit: ```py import numpy as np import pennylane as qml from catalyst import * @qml.qnode(qml.device(backend, wires=2), diff_method="adjoint") def f(x): qml.RY(0.321, wires=0) qml.CRot(x, 2 * x, 3 * x, wires=[0,...
We currently set these to "generic" and "" respectively. While we have the `targetMachine->setOptLevel(llvm::CodeGenOptLevel::None);` to avoid large compilation times, I believe that using the host cpu name and host cpu...
### Context We would like to extend Catalyst's compiler with the ability to reorder quantum instructions according to _gate commutation relations_. The most common quantum instructions in Catalyst's program representation...
``` python3 dynwires_play.py ----------------------- cat: [1.00000000e+00 6.29030417e-34] ``` ``` gdb --args python3 dynwires_play.py ------------------ (gdb) b RuntimeCAPI.cpp:367 // change this line accordingly if you want to experiment; // I set...
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.4 to 3.1.6. Release notes Sourced from jinja2's releases. 3.1.6 This is the Jinja 3.1.6 security release, which fixes security issues but does not otherwise change behavior...
**Context:** Recently upgraded OS in my virtual machine. Reinstalled from scratch. Noticed this hard coded version. **Description of the Change:** Remove hard coded python version from lit tests. **Benefits:** Users...
**Context:** There is a restriction on `catalyst.cond`, that the conditional branch functions can never have arguments. This feature should be allowed, especially as we move towards FTQC. **Description of the...
**Context:** Fixes one part of #1515 **Description of the Change:** Documents changes to the build system to avoid changes from being overriden by the copy command. Along with removing the...
In [the documentation for adding a custom device](https://docs.pennylane.ai/projects/catalyst/en/stable/dev/custom_devices.html), it should be specified that the `AllocateQubits` method of a custom device should return a vector from 0 to `num_qubits`. Right now...