Skip to content

v0.11

Compare
Choose a tag to compare
@TysonRayJones TysonRayJones released this 04 Jul 14:11

This major release significantly extends QuESTlink's analytic circuit processing capabilities.

New features

  • GetCircuitInverse[] returns an inverse circuit in terms of canonical symbolic gates
  • SimplifyCircuit[] returns an equivalent but simplified circuit in terms of fewer, simplified gates
  • GetKnownCircuit[] dynmically generates canonical circuits, like QFT and Trotterisations.
  • CalcCircuitMatrix[] can now return an analytic superoperator matrix encoding a quantum channel
  • Matr is a general matrix gate symbol which does not enforce unitarity
  • GetCircuitGeneralised[] returns an equivalent circuit composed only of general matrix gates
  • GetCircuitSuperoperator[] returns a symbolic circuit of canonical gates which encodes the Choi–Jamiołkowski superoperator equivalent to the input circuit

Changes

  • Gate symbols (like X and C) 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.