From a6268f04195087f1fcb1dda6ba174e41add7796c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 3 Oct 2025 12:22:42 +0000 Subject: [PATCH 1/3] Initial plan From cefe34cd8b11bedd09d56dff44f5a25299a5ac7a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 3 Oct 2025 12:45:53 +0000 Subject: [PATCH 2/3] Add v0.15 changelog entry for MatrixAlgebraKit backend Co-authored-by: lkdvos <37111893+lkdvos@users.noreply.github.com> --- Changelog.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Changelog.md b/Changelog.md index b6ea4c24f..4ef861efd 100644 --- a/Changelog.md +++ b/Changelog.md @@ -15,6 +15,29 @@ Features that are planned to be implemented before the release of v1.0.0, in no # Changelog +## v0.15 + +### MatrixAlgebraKit backend for factorizations + +This version introduces [MatrixAlgebraKit](https://github.com/QuantumKitHub/MatrixAlgebraKit.jl) as the new backend for tensor factorizations, replacing the previous internal `TensorKit.MatrixAlgebra` implementation. See [#230](https://github.com/QuantumKitHub/TensorKit.jl/pull/230) for details. + +#### Added +- `foreachblock(f, t::AbstractTensorMap...)` - uniform interface to iterate through tensor blocks (prepares for future multithreading support) +- `eig_trunc` and `eigh_trunc` - truncated eigenvalue decompositions +- `ominus` (and unicode `⊖`) - compute orthogonal complement of a space +- Backend selection for factorizations - swap algorithms or implementations + +#### Changed +- Factorization functions `leftorth`, `rightorth`, `tsvd`, `eig`, `eigh` deprecated in favor of MatrixAlgebraKit variants (`left_orth`, `right_orth`, `tsvd`, `eig`, `eigh`) +- Truncation strategies now use MatrixAlgebraKit names: `truncrank` (replaces `truncdim`), `truncbelow` (replaces `trunctol`) +- `left_orth` and `right_orth` now always output tensors with a single connecting space +- `left_orth` and `right_orth` now always have connecting space with `isdual=false` + +#### Removed +- `OrthogonalFactorization` structs (constructors deprecated to return equivalent MatrixAlgebraKit algorithm structs) +- Direct permute-and-factorize operations (incompatible with `permute` vs `braid` distinction) +- `Polar` decomposition behavior for `left_orth`/`right_orth` (use `left_polar`/`right_polar` instead for `isposdef` R factors) + ## v0.14 ### Use `DiagonalTensorMap` for singular values and eigenvalues From 63ed6e4317769a31567d6a98fb62585b6c324124 Mon Sep 17 00:00:00 2001 From: Lukas Devos Date: Fri, 3 Oct 2025 09:57:00 -0400 Subject: [PATCH 3/3] Revise Changelog for recent updates and removals Updated changelog to reflect recent changes and deprecations. --- Changelog.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Changelog.md b/Changelog.md index 4ef861efd..3ea7a515e 100644 --- a/Changelog.md +++ b/Changelog.md @@ -32,6 +32,7 @@ This version introduces [MatrixAlgebraKit](https://github.com/QuantumKitHub/Matr - Truncation strategies now use MatrixAlgebraKit names: `truncrank` (replaces `truncdim`), `truncbelow` (replaces `trunctol`) - `left_orth` and `right_orth` now always output tensors with a single connecting space - `left_orth` and `right_orth` now always have connecting space with `isdual=false` +- code formatter is now [Runic.jl](https://github.com/fredrikekre/Runic.jl) #### Removed - `OrthogonalFactorization` structs (constructors deprecated to return equivalent MatrixAlgebraKit algorithm structs) @@ -118,4 +119,4 @@ where all blocks and subblocks are various views into this object. This entails simplifications for the outwards-facing interface, as now the `TensorMap` type requires less parameters, and the fusion-tree structure is more clearly considered as an implementation detail that can be left hidden to the user. Various other improvements and documentation -work was also carried out. \ No newline at end of file +work was also carried out.