Improvements 🛠
-
The UI for passing parameters to a
qfunc
generated when loading a QiskitQuantumCircuit
into PennyLane is updated to allow passing parameters as args or kwargs, rather than as a dictionary. The old dictionary UI continues to be supported. (#406) (#428) -
Measurement operations are now added to the PennyLane template when a
QuantumCircuit
is converted usingload
. Additionally, one can override any existing terminal measurements by providing a list of PennyLanemeasurements <https://docs.pennylane.ai/en/stable/introduction/measurements.html>
_ themselves. (#405) (#466) (#467) -
Added the support for converting conditional operations based on mid-circuit measurements and two of the
ControlFlowOp
operations -IfElseOp
andSwitchCaseOp
when converting aQuantumCircuit
usingload
. (#417) (#465) -
Qiskit's classical
Expr
conditionals can also be used with the supportedControlFlowOp
operations. (#432) -
Added conversion support for more Qiskit gates to native PennyLane operations -
Barrier
,CYGate
,CHGate
,CPhase
,CCZGate
,ECRGate
, andGlobalPhaseGate
. (#449) -
Added the ability to convert a Qiskit
SparsePauliOp
instance into a PennyLaneOperator
. (#401) (#453) -
Added a
pennylane.io
entry point for converting Qiskit operators. (#453) -
Unused parameters are now ignored when a
QuantumCircuit
is converted usingload
. (#454)
Bug fixes 🐛
-
QiskitDevice.batch_execute()
now gracefully handles empty lists of circuits. (#459) -
It is now possible to compute the gradient of a circuit with
ParameterVector
elements. (#458)
Contributors ✍️
This release contains contributions from (in alphabetical order):
Mikhail Andrenkov, Utkarsh Azad, Lillian Frederiksen.