v0.11
This major release significantly extends QuESTlink's analytic circuit processing capabilities.
New features
GetCircuitInverse[]
returns an inverse circuit in terms of canonical symbolic gatesSimplifyCircuit[]
returns an equivalent but simplified circuit in terms of fewer, simplified gatesGetKnownCircuit[]
dynmically generates canonical circuits, like QFT and Trotterisations.CalcCircuitMatrix[]
can now return an analytic superoperator matrix encoding a quantum channelMatr
is a general matrix gate symbol which does not enforce unitarityGetCircuitGeneralised[]
returns an equivalent circuit composed only of general matrix gatesGetCircuitSuperoperator[]
returns a symbolic circuit of canonical gates which encodes the Choi–Jamiołkowski superoperator equivalent to the input circuit
Changes
- Gate symbols (like
X
andC
) are now protected and cannot be accidentally overriden CalcCircuitMatrix
will now halt and throw an informative error message when encountering an unrecognised gate- Functions accepting Pauli Hamiltonians (e.g.
ApplyPauliSum
,CalcExpecPauliSum
,CalcPauliSumMatrix
) will now gracefully ignore zero scalars.