You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There's an obvious extension of ZMask() to "masked" S, T, and general PhaseRootN gates.ZMask() calculates parity of each masked permutation, and applies a -1 multiplicative factor if the parity is odd, achieving a batched set of masked Pauli Z gates. Similarly, for a general batched PhaseRootN gate, the effective extension of this parity calculation is to a ring with 2^(n+1) phase poles for the n-th root of -1, for a phase factor. (I can explain this in simpler terms, if a volunteer developer wants clarification.)
QEngine types could therefore be generally extended to arbitrary PhaseRootN gate fusion and batching, (along with Pauli X, which it already has). I don't think I'm going to personally take up this implementation immediately, but I might look at it by the weekend.
The text was updated successfully, but these errors were encountered:
There's an obvious extension of
ZMask()
to "masked"S
,T
, and generalPhaseRootN
gates.ZMask()
calculates parity of each masked permutation, and applies a-1
multiplicative factor if the parity is odd, achieving a batched set of masked PauliZ
gates. Similarly, for a general batchedPhaseRootN
gate, the effective extension of this parity calculation is to a ring with2^(n+1)
phase poles for then
-th root of-1
, for a phase factor. (I can explain this in simpler terms, if a volunteer developer wants clarification.)QEngine
types could therefore be generally extended to arbitraryPhaseRootN
gate fusion and batching, (along with PauliX
, which it already has). I don't think I'm going to personally take up this implementation immediately, but I might look at it by the weekend.The text was updated successfully, but these errors were encountered: