Releases: quil-lang/quilc
Releases · quil-lang/quilc
v1.7.0
Improvements in this release include:
- quilc now supplies a
--host
CLI option which controls where it will listen for incoming connections. - Improved numerical stability: the functions
collinearp
, which tests whether two complex unit vectors are collinear, andconvert-su4-to-su2x2
, which produces a factorization of a 4x4 unitary into a Kronecker product, have significantly improved behavior near "bad" values, which tamps down the number of random failures users see on good input. - Improved error messages: in addition to a scattering of other improvements around the code, we now include line numbers during parser errors.
- We've removed
PRAGMA EXPECTED_REWIRING
andPRAGMA CURRENT_REWIRING
from the output of quilc's compilation routines. These never meant much to machines and were instead intended for users to read, and so they've been downgraded from PRAGMA directives to comments. - The test suite has been variously improved, especially by amending a "faithfulness test" in the quilc test suite that wasn't actually checking anything. (Thanks, @appleby!)
- There's now an internal option to print complex numbers in polar form.
v1.6.0
CL-QUIL updates:
- We included a conveniency chip constructor with all-to-all connectivity.
- quilc will now compile parametric PHASE gates to parametric RZ gates. As a consequence, more Quil programs emitted by pyQuil / Grove will work out-of-the-box with parametric compilation.
- The handling of dead qubits has improved, resulting in fewer complaints about logical qubits being initially assigned to physical qubits lying on different connected components of a disconnected chip.
- More fractions of pi get pretty printed upon request.
- Various speed improvements.
- Approximate compilation, which replaces the previous contents of
src/compilers/optimal-2q.lisp
. This new suite of functions produces from all circuits of a particular shape the 'nearest', in the sense of average state fidelity, to a given program. This can then be used to either perform approximate compilation or to perform traditional optimal compilation (by rejecting all results with imperfect fidelity distance).
quilc updates:
--log-level
and--quiet
help control the verbosity of quilc's server mode output.- quilc checks for an SDK update on start, so that users are reminded when there's an update available.
v1.5.0
v1.4.0
- Support CNOT-targeted compilation, and use this to supply QX and Bristlecone targets.
- Better human-readable output in CLI mode.
- Support for parametric compilation of PHASE gates (in addition to RZ).