Skip to content

Releases: bsc-quantic/Tenet.jl

v0.8.3

12 Feb 17:45
74c7f3e
Compare
Choose a tag to compare

Tenet v0.8.3

Diff since v0.8.2

Merged pull requests:

v0.8.2

08 Feb 11:22
f0b9ae0
Compare
Choose a tag to compare

Tenet v0.8.2

Diff since v0.8.1

Merged pull requests:

  • Fix name conflicts in ITensorMPS extension (#323) (@mofeing)
  • Unwrap TracedRNumber type in TracedRArray construction (#324) (@Todorbsc)
  • Add fuse to reshape Tensor by fusing indices (#325) (@mofeing)
  • svd for Tensor including optional truncation + compression method in progress (#326) (@josepamigoo)

Closed issues:

  • Truncate SVD for Tensor not defined (#318)
  • Type promotion not working in contract function of TenetReactantExt (#320)

v0.8.1

05 Feb 22:35
94670c1
Compare
Choose a tag to compare

Tenet v0.8.1

Diff since v0.8.0

Merged pull requests:

  • CompatHelper: bump compat for ITensors in [weakdeps] to 0.7, (keep existing compat) (#222) (@github-actions[bot])
  • Add conversion between ITensorNetwork and Ansatz (#305) (@mofeing)
  • Isolate integration testsets to avoid symbol clash (#306) (@mofeing)
  • Refactor Lattice to be able to construct them with add_vertex!, add_edge! (#307) (@mofeing)
  • Try fix parenttype on unionall of Tensor (#309) (@mofeing)
  • Define interfaces by tests (#312) (@mofeing)
  • Update calls to deprecated methods (#313) (@mofeing)
  • CompatHelper: bump compat for ITensors in [weakdeps] to 0.8, (keep existing compat) (#315) (@github-actions[bot])

v0.8.0

28 Jan 18:36
Compare
Choose a tag to compare

Tenet v0.8.0

Diff since v0.7.6

Merged pull requests:

  • Test transformations (#217) (@HerManNav)
  • Implement an MPS method initializing the tensors to identity (copy-tensors) (#218) (@Todorbsc)
  • Fix index dimension mismatch in TensorNetwork construction (#219) (@Todorbsc)
  • Replace hard-coded truncate! threshold with the epsilon value of the chain's eltype (#220) (@jofrevalles)
  • Refactor Ansatz to be a concrete type with lattice information (#223) (@mofeing)
  • Set minimum supported Julia version to 1.10 (#224) (@mofeing)
  • Avoid in-place operations in adjoint and conj functions (#226) (@jofrevalles)
  • Fix replace! function when replacing a Tensor with itself in pair argument (#227) (@jofrevalles)
  • Reimplement Product on top of #223 (#231) (@mofeing)
  • Reimplement MPS and MPO (#232) (@mofeing)
  • Refactor @unsafe_region macro (#233) (@jofrevalles)
  • Add Form-specific constructors for MPS (#248) (@jofrevalles)
  • Fix Truncate transformation to correclty use atol argument (#250) (@jofrevalles)
  • Add extension to convert ITensorMPS.MPS to Tenet.MPS and viceversa (#251) (@jofrevalles)
  • CompatHelper: bump compat for ITensorMPS in [weakdeps] to 0.3, (keep existing compat) (#252) (@github-actions[bot])
  • Fix Quantum function for Quac.Gate type (#253) (@jofrevalles)
  • Fix truncate! function (#254) (@jofrevalles)
  • Enhance simple_update! for MPS in the Canonical form (#255) (@jofrevalles)
  • Move documentation to Vitepress (#256) (@mofeing)
  • fix Array-TracedRArray contraction and force dense representation of Yao gates (#258) (@mofeing)
  • Add default maxdim value in rand MPS and MPO constructor (#263) (@jofrevalles)
  • Add evolve! for evolution of an MPS with an MPO (#264) (@jofrevalles)
  • Add missing kwargs... in evolve-related functions (#267) (@jofrevalles)
  • Refactor contract in Reactant integration to use dot_general and test it (#268) (@mofeing)
  • Use Compat.@compat to mark public functions not exported (#269) (@mofeing)
  • convert from cirq.Circuit to Quantum (#270) (@mofeing)
  • Refactor inds(::Tensor) to return Tuple (#271) (@mofeing)
  • Replace KeywordDispatch for an in-house implementation (#272) (@mofeing)
  • Update MPS manual in docs (#280) (@jofrevalles)
  • Add new Circuit, Gate, Lane, Moment types (#282) (@mofeing)
  • Update Product manual (#284) (@jofrevalles)
  • CompatHelper: bump compat for Makie in [weakdeps] to 0.22, (keep existing compat) (#286) (@github-actions[bot])
  • Parallelize CI by splitting Unit Tests and Integration Tests on different Github actions (#288) (@jofrevalles)
  • Fix tensor-number multiplication (#290) (@Todorbsc)
  • Fix Qiskit circuit conversion to Tenet (#291) (@Todorbsc)
  • Fix conversion from Yao circuit to Tenet (#292) (@Todorbsc)
  • CompatHelper: bump compat for KrylovKit in [weakdeps] to 0.9, (keep existing compat) (#295) (@github-actions[bot])
  • Fix infinite recursion on ChainRules.rrule(contract) (#296) (@mofeing)
  • Fix sites in Yao to Tenet conversion (#298) (@Todorbsc)
  • Fix Python environment and integration tests for Python extensions (#300) (@Todorbsc)
  • Final update to docs before v0.8 release (#301) (@mofeing)
  • Unit test of canonization in MPO (#302) (@Todorbsc)
  • Tests of reindex! with different amount of sites between MPS-MPO (#303) (@Todorbsc)

Closed issues:

  • Implement evolve! for MPS-MPO (#162)
  • Implement identity initialization of Chain (#165)
  • Replace OMEinsum calls with Muscle.einsum (#153)
  • Quantum constructor does not error for inconsistent dimensions in tensor networks (#155)
  • Incorrect replace! of a Tensor in a TensorNetwork with the same Tensor (#225)
  • Mark public API with public keyword (#228)
  • Implement normalize! for the Canonical form of AbstractMPO (#236)
  • Test canonization on MPO (#237)
  • Test reindex! when number of sites do not match on left and right hand sides (#240)
  • Optionally choose whether merge! preserves involved output indices of first Quantum or last Quantum (#243)
  • Wrong site override when calling replace! on AbstractQuantum with already existing index (#244)
  • Test against Reactant (#245)
  • convert to/from ITensors MPS (#247)
  • Implement canonize_site! for MPO (#249)
  • ReactantExt: Einsum -> DotGeneral (#265)
  • Parallelize unit and integration tests (#273)
  • Fix on tensors(; intersects) has uncovered several bugs or wrong tests (#275)
  • inds(; set=:inputs) results Any[] when empty when it should return Symbol[] (#276)
  • Generalize canonical form information and check_form to Ansatz (#279)
  • Update to recent changes in Reactant.jl (#294)

v0.7.6

08 Oct 14:11
Compare
Choose a tag to compare

Tenet v0.7.6

Diff since v0.7.5

Merged pull requests:

  • Convert Qibo circuits to Quantum Tensor Networks (#214) (@Todorbsc)

Closed issues:

  • Support conversion from Qibo circuits to Quantum (#198)

v0.7.5

02 Oct 08:05
Compare
Choose a tag to compare

Tenet v0.7.5

Diff since v0.7.4

Merged pull requests:

Closed issues:

  • Reimplement Chain as a 1-D Grid (#161)
  • replace(!)(::Chain, tensor => newtensor) only works for tensors of the same size (#191)
  • add groupinds(!) function to merge indices (#195)
  • Yao circuit integration with TenetYaoExt (#205)
  • Unexpected results from Circuit computation (#210)

v0.7.4

04 Sep 15:08
Compare
Choose a tag to compare

Tenet v0.7.4

Diff since v0.7.3

Merged pull requests:

Closed issues:

  • TensorNetwork.replace! raises UndefVarError: P not defined in Tenet v0.7.3 (#190)
  • add possibility to merge() two Chains (or at least two Quantums ) (#193)

v0.7.3

06 Aug 07:30
3c2861f
Compare
Choose a tag to compare

Tenet v0.7.3

Diff since v0.7.2

Merged pull requests:

  • Fix reindex! by returing the final index replace mapping (#178) (@jofrevalles)

Closed issues:

  • Tenet.nextindex! does not seem to work when initializing Chains (#176)
  • Tenet.@reindex odd behavior for mps-mpo (#177)

v0.7.2

01 Aug 13:06
59efdd9
Compare
Choose a tag to compare

Tenet v0.7.2

Diff since v0.7.1

Merged pull requests:

  • Replace the global index counter generator for a local data structure (#170) (@mofeing)
  • Replace Gram-Schmidt method by QR for random Chain initialization (#175) (@jofrevalles)

v0.7.1

16 Jul 14:27
Compare
Choose a tag to compare

Tenet v0.7.1

Diff since v0.7.0

Merged pull requests:

  • Extend KrylovKit.eigsolve by allowing the initial guess x₀ to be a Tensor (#171) (@jofrevalles)

Closed issues:

  • Base.rand with globalind=true (#168)