We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 0218dd1 commit 16ddd33Copy full SHA for 16ddd33
1 file changed
src/tensors/tensoroperations.jl
@@ -232,6 +232,7 @@ end
232
function _trace_permute!(::UniqueFusion, tdst, tsrc, (p₁, p₂), (q₁, q₂), α, β, backend)
233
scale!(tdst, β)
234
r₁, r₂ = (p₁..., q₁...), (p₂..., q₂...)
235
+ N₁, N₂ = length(p₁), length(p₂)
236
237
for (f₁, f₂) in fusiontrees(tsrc)
238
(f₁′, f₂′), coeff = permute((f₁, f₂), (r₁, r₂))
@@ -256,12 +257,14 @@ end
256
257
function _trace_permute!(::FusionStyle, tdst, tsrc, (p₁, p₂), (q₁, q₂), α, β, backend)
258
259
260
261
262
for src in fusionblocks(tsrc)
263
dst, U = permute(src, (r₁, r₂))
264
for (i, (f₁, f₂)) in enumerate(fusiontrees(src))
265
for (j, (f₁′, f₂′)) in enumerate(fusiontrees(dst))
266
coeff = U[j, i]
267
+ iszero(coeff) && continue
268
f₁′′, g₁ = split(f₁′, N₁)
269
f₂′′, g₂ = split(f₂′, N₂)
270
g₁ == g₂ || continue
0 commit comments