Skip to content

v2.4.0

Compare
Choose a tag to compare
@karalekas karalekas released this 15 Feb 16:02
· 639 commits to master since this release
32e9311

Announcements

  • The Quil Compiler (quilc) and the Quantum Virtual Machine (qvm), which are part of the Forest SDK, have been open sourced! In addition to downloading the binaries, you can now build these applications locally from source, or run them via the Docker images rigetti/quilc and rigetti/qvm. These Docker images are now used as the services in the GitLab CI build plan YAML (gh-792, gh-794, gh-795).

Improvements and Changes

  • The WavefunctionSimulator now supports the use of parametric Quil programs, via the memory_map parameter for its various methods (gh-787).

  • Operator estimation data structures introduced in v2.2 have changed. Previously, ExperimentSettings had two members: in_operator and out_operator. The out_operator is unchanged, but in_operator has been renamed to in_state and its data type is now TensorProductState instead of PauliTerm. It was always an abuse of notation to interpret pauli operators as defining initial states. Analogous to the Pauli helper functions sI, sX, sY, and sZ, TensorProductState objects are constructed by multiplying together terms generated by the helper functions plusX, minusX, plusY, minusY, plusZ, and minusZ. This functionality enables process tomography and process DFE (gh-770).

  • Operator estimation now offers a "greedy" method for grouping tomography-like experiments that share a natural tensor product basis (ntpb), as an alternative to the clique cover version (gh-754).

  • The quilc endpoint for rewriting Quil parameter arithmetic has been changed from resolve_gate_parameter_arithmetic to rewrite_arithmetic (gh-802).

  • The difference between ProtoQuil and QPU-supported Quil is now better defined (gh-798).

Bugfixes

  • Resolved an issue with post-gate noise in the pyQVM (gh-801).

  • A TypeError with a useful error message is now raised when a Program object is run on a QPU-backed QuantumComputer, rather than a confusing AttributeError (gh-799).