Partial closure of a tensor #
partialClose z (X' ⊗ z') glues z's ends onto the z-block of
the tensor — which is exactly z''s boundary. The result is
X' sitting untouched next to the full closure of z against
z':
partialClose z (X' ⊗ z') ≃ X' ⊔ pairClose z z'.
This is the engine of the trace multiplicativity (Lemma 3.5(b)):
with X' := strandBundle a, z' := strandBundle b and
strandBundleTensor, the trace of a tensor splits.
This file: the three-summand shuffle, the ground computation
(the z-gluing pairs localize to the z, z' summands), and the
inner-pair identification.
The disjoint union shuffles: the middle factor pulls out front, up to the shuffle relabelling.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The localized inner pairs #
The ground computation: peeling the interleave #
Peeling the interleave from the z-gluing pairs localizes
them to the z, z' summands.
The inner closure, normalized #
The transported closure pairs of the inner closure are the inner pairs.
The inner pairs are well-formed.
The transported inner closure pairs.
Equations
- RS.innerQs u v = RS.Fragment.mapPairs (RS.innerCloseLabel u v).symm (RS.interfacePairs 0 (u + v) 0)
Instances For
The composed label identification of the inner closure.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The inner closure, normalized: the closure of z against
z' is iterated gluing of the inner pairs over z ⊔ z'.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The main chain #
The clean label of the partial closure of a tensor.
Equations
- RS.pcTensorClose s t = ((Equiv.refl (Fin (s + t))).sumCongr (finCongr RS.pcTensorClose._proof_2)).trans (Equiv.sumEmpty (Fin (s + t)) (Fin 0))
Instances For
The pairs pulled back through the tensor peel are well formed.
The partial closure of a tensor, normalized: X' next to
the inner closure, up to the composed label.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The label meet #
The composed label is the clean label: the live value chase
on the surviving x-labels.
The partial closure of a tensor: X' unscathed next to
the full closure of z against z'.
Equations
- RS.partialCloseTensor z X' z' = (RS.pcTensorNormal z X' z').trans (RS.Fragment.Equiv.relabelEq (X'.disjUnion (RS.pairClose z z')) ⋯)