Closed PabloAndresCQ closed 2 months ago
Do you want to do the release now, or should we wait for the pytket release next week?
I'd rather make a release now, then we can go back to releasing with each new pytket version. The reason why I wanted to stagger this release was that there were some PRs on TTN already merged in develop that didn't really make sense to release until others were merged.
In particular, the reason why I'd like to get 0.6.0 out with pytket 1.26 is that I've been writing some docs for reproducibility of the paper with HSBC and I've been assuming these versions. It wouldn't be too much work to update them, but since the deadline is next Tuesday I'd rather just get it through, then get a new 0.6.1 release whenever pytket 1.27 is released.
Changelog
New feature: Tree Tensor Network (TTN) simulator, supporting both fixed
chi
andtruncation_fidelity
. Calculation of single amplitudes is supported byget_amplitude
and inner products byvdot
. Measurement and postselection are not yet supported.New API: both
MPS
andTTN
share a common interface:StructuredState
. Import paths have changed, multiple classes have been renamed:ConfigMPS
is nowConfig
,ContractionAlg
is nowSimulationAlgorithm
. Documentation has been updated accordingly.Canonicalisation of MPS is now always applied before a two-qubit gate. We found that this tends to reduce runtime due to canonicalisation decreasing virtual bond dimension.
Two-qubit gates are now decomposed (SVD) before applying them to remove null singular values (e.g. in
XXPhase
gates).Fixed a bug on copying an
MPS
iftruncation_fidelity
was set.Fixed a bug on
CuTensorNetHandle
that would prevent it from working when the device set was different from the default one (dev=0
) and when usingcuTensorNet>=2.3.0
.Fixed a bug on
TensorNetwork
due to unsupportedCreate
operation.Updated pytket version requirement to 1.26.
Checklist