Commutativity of two contractions #
The order of two contractions can be swapped, once the indices have been accordingly adjusted.
A structure containing two pairs of indices (i, j) and (k, l) to be sequentially contracted in a tensor.
The first index of the first pair to be contracted.
The second index of the first pair to be contracted.
The first index of the second pair to be contracted.
The second index of the second pair to be contracted.
The condition on the first pair of indices permitting their contraction.
- hkl : (c ∘ self.i.succAbove ∘ self.j.succAbove) (self.k.succAbove self.l) = S.τ ((c ∘ self.i.succAbove ∘ self.j.succAbove) self.k)
The condition on the second pair of indices permitting their contraction.
Instances For
On swapping the order of contraction (notionally (i, j) - (k, l)
vs (k, l) - (i, j)
), this
is the new i
index.
Instances For
On swapping the order of contraction (notionally (i, j) - (k, l)
vs (k, l) - (i, j)
), this
is the new j
index.
Equations
Instances For
On swapping the order of contraction (notionally (i, j) - (k, l)
vs (k, l) - (i, j)
), this
is the new k
index.
Equations
- One or more equations did not get rendered due to their size.
Instances For
On swapping the order of contraction (notionally (i, j) - (k, l)
vs (k, l) - (i, j)
), this
is the new l
index.
Equations
- q.swapL = PhysLean.Fin.predAboveI ((PhysLean.Fin.predAboveI (q.j.succAbove q.k) q.j).succAbove q.l) (PhysLean.Fin.predAboveI (q.j.succAbove q.k) q.j)
Instances For
The ContrQuartet
corresponding to swapping the order of contraction
(notionally (i, j) - (k, l)
vs (k, l) - (i, j)
).
Instances For
The contraction map for the first pair of indices.
Equations
- q.contrMapFst = S.contrMap c q.i q.j ⋯
Instances For
The contraction map for the second pair of indices.
Instances For
The homomorphism one must apply on swapping the order of contractions.
Equations
Instances For
The homomorphism one must apply on swapping the order of contractions.
This is identical to ContrQuartet.contrSwapHom
except manifestly between the correct
types.
Equations
- TensorTree.contrContrPerm hij hkl = { i := i, j := j, k := k, l := l, hij := hij, hkl := hkl }.contrSwapHom
Instances For
Contraction nodes commute on adjusting indices.