Releases: PennyLaneAI/pennylane-cirq
Release 0.12.1
New features since last release
-
PennyLane integration with the qsim circuit simulator package is now available. (#36).
The new devices include:
-
cirq.qsim
, a Schrödinger full state-vector simulator -
cirq.qsimh
, a hybrid Schrödinger-Feynman simulator. This simulator cuts the qubit lattice into two parts; each part is individually simulated using qsim, with Feynman-style path summation used to return the final result. Compared to full state-vector simulation, qsimh reduces memory requirements, at the expense of an increased runtime.
After installing the
qsimcirq
package, the qsim and qsimh devices can be invoked via the names"cirq.qsim"
and"cirq.qsimh"
respectively, e.g.,dev = qml.device("cirq.qsimh", qsimh_options=qsimh_options, wires=3)
These devices can then be used for the evaluation of QNodes within PennyLane. For more details, see the PennyLane qsim documentation.
-
Contributors
This release contains contributions from (in alphabetical order):
Theodor Isacsson, Josh Izaac, Nathan Killoran.
Release 0.12.0
New features since last release
Devices from Cirq's Pasqal submodule are now available for use. (#40).
A simulator device compatible with Pasqal's neutral-atom model can be invoked via the name "cirq.pasqal"
, e.g.,
dev = qml.device("cirq.pasqal", control_radius=1.0, wires=3)
Contributors
This release contains contributions from (in alphabetical order):
Nathan Killoran, Josh Izaac
Release 0.11.0
New features
-
One can now specify any string or number as a custom wire label, and use these labels to address subsystems on the device: (#37) (#42)
dev = qml.device('cirq.simulator', wires=['q1', 'ancilla', 0, 1]) @qml.qnode(dev) def circuit(): qml.Hadamard(wires='q1') qml.CNOT(wires=[1, 'ancilla']) return qml.expval(qml.PauliZ('q1'))
Contributors
This release contains contributions from (in alphabetical order):
Josh Izaac, Nathan Killoran, Maria Schuld
Release 0.9.0
Release 0.9.0
New features since last release
- Added a new mixedsimulator class to Cirq, which uses Cirq's
DensityMatrixSimulator as a backend.
#27
Documentation
- Redesigned the documentation to be consistent with other plugins.
#25
Bug fixes
- Renamed probability to
analytic_probability
to support new
changes in PennyLane.
#24
Contributors
This release contains contributions from (in alphabetical order):
Theodor Isacsson, Nathan Killoran, Maria Shuld, Antal Száva
Release 0.8
Improvements
-
Ported the
CirqDevice
class to use the newQubitDevice
base class,
enabling the use of tensor observables.
#19 -
Added support for inverse operations by defining the
.inv()
method
of theCirqOperation
class which uses thecirq.inverse
function.
#15
Bug fixes
-
Replaced depreceated Cirq commands.
#19 -
Fix a minor bug introduced into the test suite by the release of Cirq 0.7.0.
#18 -
Fix bugs introduced into the test suite by the release of Cirq 0.6.0.
#13
Contributors
This release contains contributions from (in alphabetical order):
Johannes Jakob Meyer, Antal Száva
Release 0.1.0
This is the first release of PennyLane-Cirq.
This release enables the use of most of PennyLane's core functionality in conjunction with the simulator backend of Cirq.