24 Rem 14: Parallel Gauging Measurement
The gauging measurement can be applied to multiple logical operators in parallel, subject to compatibility conditions: (1) Non-overlapping support: If logical operators \(L_1, \ldots , L_m\) have disjoint supports, they can be gauged simultaneously with independent graphs \(G_1, \ldots , G_m\). (2) Same-type overlapping support: If \(L_i\) and \(L_j\) share support where both act by the same Pauli type on every shared qubit, they can be gauged in parallel. (3) LDPC constraint: At most a constant number of logical operators should share support on any single qubit to maintain the LDPC property. (4) Time-space tradeoff: Measuring \(2m-1\) copies in parallel with \(\lceil d/m \rceil \) rounds and majority vote trades time for space.
Part 1: Non-overlapping support
Two Pauli operators \(P, Q \in \mathcal{P}_V\) have disjoint supports if \(\operatorname {supp}(P) \cap \operatorname {supp}(Q) = \emptyset \), i.e., \(\operatorname {supp}(P)\) and \(\operatorname {supp}(Q)\) are disjoint as finsets.
A family of Pauli operators \((P_i)_{i \in \operatorname {Fin}(m)}\) has pairwise disjoint supports if for all \(i \neq j\), we have \(\operatorname {DisjointSupports}(P_i, P_j)\).
If two Pauli operators \(P, Q \in \mathcal{P}_V\) have disjoint supports, then they commute: \(\operatorname {DisjointSupports}(P, Q) \Rightarrow \operatorname {PauliCommute}(P, Q)\).
We unfold the definitions of \(\operatorname {PauliCommute}\) and \(\operatorname {symplecticInner}\) and show the sum \(\sum _{v} (P.\mathrm{xVec}(v) \cdot Q.\mathrm{zVec}(v) + P.\mathrm{zVec}(v) \cdot Q.\mathrm{xVec}(v)) = 0\). We apply \(\operatorname {Finset.sum\_ eq\_ zero}\) and consider an arbitrary vertex \(v\). Unfolding the disjointness hypothesis via \(\operatorname {Finset.disjoint\_ left}\), we case-split on whether \(v \in \operatorname {supp}(P)\). If \(v \in \operatorname {supp}(P)\), then by disjointness \(v \notin \operatorname {supp}(Q)\), so \(Q.\mathrm{xVec}(v) = 0\) and \(Q.\mathrm{zVec}(v) = 0\), making the summand zero by simplification. If \(v \notin \operatorname {supp}(P)\), then \(P.\mathrm{xVec}(v) = 0\) and \(P.\mathrm{zVec}(v) = 0\), again making the summand zero.
If a family of Pauli operators \((P_i)_{i \in \operatorname {Fin}(m)}\) has pairwise disjoint supports, then all pairs commute: for all \(i, j\), \(\operatorname {PauliCommute}(P_i, P_j)\).
Let \(i, j \in \operatorname {Fin}(m)\). We case-split on whether \(i = j\). If \(i = j\), then we substitute and apply \(\operatorname {pauliCommute\_ self}\). If \(i \neq j\), then by the pairwise disjointness hypothesis we have \(\operatorname {DisjointSupports}(P_i, P_j)\), and we apply the theorem \(\operatorname {disjoint\_ supports\_ imply\_ commutation}\).
For Pauli operators \(P, Q\), \(\operatorname {DisjointSupports}(P, Q) \Leftrightarrow \operatorname {DisjointSupports}(Q, P)\).
We unfold the definition of \(\operatorname {DisjointSupports}\) and apply the commutativity of the \(\operatorname {Disjoint}\) predicate (\(\operatorname {disjoint\_ comm}\)).
For any Pauli operator \(P\), \(\operatorname {DisjointSupports}(P, \mathbf{1})\) holds.
We unfold the definition and simplify using the fact that the support of the identity operator is empty (\(\operatorname {support\_ one}\)).
Part 2: Same-type overlapping support
Two Pauli operators \(P, Q\) have same-type X overlap if on every shared support qubit \(v \in \operatorname {supp}(P) \cap \operatorname {supp}(Q)\), both have vanishing \(Z\)-component: \(P.\mathrm{zVec}(v) = 0\) and \(Q.\mathrm{zVec}(v) = 0\).
Two Pauli operators \(P, Q\) have same-type Z overlap if on every shared support qubit \(v \in \operatorname {supp}(P) \cap \operatorname {supp}(Q)\), both have vanishing \(X\)-component: \(P.\mathrm{xVec}(v) = 0\) and \(Q.\mathrm{xVec}(v) = 0\).
Two Pauli operators \(P, Q\) have same-type overlap if on every shared support qubit \(v \in \operatorname {supp}(P) \cap \operatorname {supp}(Q)\), either both have vanishing \(Z\)-component (\(P.\mathrm{zVec}(v) = 0 \land Q.\mathrm{zVec}(v) = 0\)) or both have vanishing \(X\)-component (\(P.\mathrm{xVec}(v) = 0 \land Q.\mathrm{xVec}(v) = 0\)).
If \(P, Q\) have same-type X overlap, then they have same-type overlap.
Let \(v\) be a qubit with \(v \in \operatorname {supp}(P)\) and \(v \in \operatorname {supp}(Q)\). We take the left disjunct: by the same-type X overlap hypothesis, \(P.\mathrm{zVec}(v) = 0\) and \(Q.\mathrm{zVec}(v) = 0\).
If \(P, Q\) have same-type Z overlap, then they have same-type overlap.
Let \(v\) be a qubit with \(v \in \operatorname {supp}(P)\) and \(v \in \operatorname {supp}(Q)\). We take the right disjunct: by the same-type Z overlap hypothesis, \(P.\mathrm{xVec}(v) = 0\) and \(Q.\mathrm{xVec}(v) = 0\).
Disjoint supports imply same-type overlap vacuously: if \(\operatorname {supp}(P)\) and \(\operatorname {supp}(Q)\) are disjoint, the condition on shared qubits holds vacuously since there are no shared qubits.
Let \(v\) be a qubit with \(v \in \operatorname {supp}(P)\) and \(v \in \operatorname {supp}(Q)\). We derive a contradiction: by \(\operatorname {Finset.disjoint\_ left}\) applied to the disjointness hypothesis, \(v \in \operatorname {supp}(P)\) and \(v \in \operatorname {supp}(Q)\) cannot both hold.
If \(P, Q\) have same-type overlap, then they commute: \(\operatorname {SameTypeOverlap}(P, Q) \Rightarrow \operatorname {PauliCommute}(P, Q)\).
We unfold \(\operatorname {PauliCommute}\) and \(\operatorname {symplecticInner}\) and apply \(\operatorname {Finset.sum\_ eq\_ zero}\). For each vertex \(v\), we case-split on whether \(v \in \operatorname {supp}(P)\). If \(v \in \operatorname {supp}(P)\), we further case-split on whether \(v \in \operatorname {supp}(Q)\). If both hold, we obtain from the same-type overlap hypothesis that either (\(P.\mathrm{zVec}(v) = 0\) and \(Q.\mathrm{zVec}(v) = 0\)) or (\(P.\mathrm{xVec}(v) = 0\) and \(Q.\mathrm{xVec}(v) = 0\)). In either case, the cross terms in the symplectic inner product vanish by simplification. If \(v \notin \operatorname {supp}(Q)\), then \(Q.\mathrm{xVec}(v) = 0\) and \(Q.\mathrm{zVec}(v) = 0\), giving zero. If \(v \notin \operatorname {supp}(P)\), then \(P.\mathrm{xVec}(v) = 0\) and \(P.\mathrm{zVec}(v) = 0\), giving zero.
For any graph \(G\) on vertex set \(V\) and any vertex \(v \in V\), the Gauss’s law operator \(A_v\)satisfies \((A_v).\mathrm{zVec} = 0\), i.e., it is a pure \(X\)-type operator.
This follows directly from \(\operatorname {gaussLawOp\_ zVec}\).
If \(P\) and \(Q\) are both pure \(X\)-type operators (i.e., \(P.\mathrm{zVec} = 0\) and \(Q.\mathrm{zVec} = 0\)), then they have same-type X overlap.
Let \(v\) be any qubit in both supports. Since \(P.\mathrm{zVec} = 0\) and \(Q.\mathrm{zVec} = 0\) globally, evaluating at \(v\) gives \(P.\mathrm{zVec}(v) = 0\) and \(Q.\mathrm{zVec}(v) = 0\) by congruence.
If \(P\) and \(Q\) are both pure \(X\)-type operators (\(P.\mathrm{zVec} = 0\) and \(Q.\mathrm{zVec} = 0\)), then \(\operatorname {PauliCommute}(P, Q)\).
By the pure X same-type overlap lemma, \(P\) and \(Q\) have same-type X overlap. By the implication from X overlap to same-type overlap, they have same-type overlap. By the theorem that same-type overlap implies commutation, they commute.
If \(P\) and \(Q\) are both pure \(Z\)-type operators (\(P.\mathrm{xVec} = 0\) and \(Q.\mathrm{xVec} = 0\)), then \(\operatorname {PauliCommute}(P, Q)\).
We construct a proof that \(P\) and \(Q\) have same-type Z overlap: for any qubit \(v\) in both supports, since \(P.\mathrm{xVec} = 0\) and \(Q.\mathrm{xVec} = 0\) globally, evaluating at \(v\) gives \(P.\mathrm{xVec}(v) = 0\) and \(Q.\mathrm{xVec}(v) = 0\). By the implication from Z overlap to same-type overlap, they have same-type overlap. By the theorem that same-type overlap implies commutation, they commute.
Part 3: LDPC constraint for parallel gauging
For a family of Pauli operators \((P_i)_{i \in \operatorname {Fin}(m)}\) and a qubit \(v \in V\), the qubit participation count is the number of operators whose support contains \(v\):
A family of Pauli operators \((P_i)_{i \in \operatorname {Fin}(m)}\) satisfies the parallel LDPC bound with constant \(c\) if every qubit participates in at most \(c\) of the operators’ supports:
If a family of operators has pairwise disjoint supports, then for every qubit \(v\), \(\operatorname {qubitParticipationCount}(\{ P_i\} , v) \le 1\).
We unfold the definition of \(\operatorname {qubitParticipationCount}\) and apply \(\operatorname {Finset.card\_ le\_ one}\). We must show that if \(i\) and \(j\) are both in the filter (i.e., \(v \in \operatorname {supp}(P_i)\) and \(v \in \operatorname {supp}(P_j)\)), then \(i = j\). Suppose for contradiction that \(i \neq j\). Then by pairwise disjointness, \(\operatorname {supp}(P_i)\) and \(\operatorname {supp}(P_j)\) are disjoint, so by \(\operatorname {Finset.disjoint\_ left}\), \(v\) cannot belong to both—contradiction.
If a family of operators has pairwise disjoint supports, then the parallel LDPC bound holds with \(c = 1\).
This follows directly from the theorem that disjoint participation is at most 1, applied to each qubit \(v\).
For any family of \(m\) operators and any qubit \(v\), \(\operatorname {qubitParticipationCount}(\{ P_i\} , v) \le m\).
We unfold the definition. The filter of \(\operatorname {Fin}(m)\) has cardinality at most \(|\operatorname {Fin}(m)| = m\) by \(\operatorname {Finset.card\_ filter\_ le}\) and \(\operatorname {Finset.card\_ fin}\).
For a family of \(m\) operators \((P_i)\),
We unfold the definition and rewrite the cardinalities of the filter sets using \(\operatorname {Finset.card\_ filter}\) as sums of indicator functions (\(\operatorname {Finset.sum\_ boole}\)). We then interchange the order of summation using \(\operatorname {Finset.sum\_ comm}\). The resulting inner sums are shown equal by extensionality and simplification.
When the parallel LDPC bound holds with constant \(c\), the participation count at each qubit \(v\) is at most \(c\): \(\operatorname {ParallelLDPCBound}(\{ P_i\} , c) \Rightarrow \operatorname {qubitParticipationCount}(\{ P_i\} , v) \le c\).
This follows directly from the definition of \(\operatorname {ParallelLDPCBound}\) applied to \(v\).
Combined properties
For pairwise disjoint supports, all conditions for parallel gauging are automatically satisfied: (1) all pairs commute, and (2) the parallel LDPC bound holds with \(c = 1\).
Both components follow directly: pairwise commutation from \(\operatorname {pairwise\_ disjoint\_ implies\_ pairwise\_ commute}\), and the LDPC bound from \(\operatorname {disjoint\_ implies\_ LDPC\_ bound}\).