Existe uma regra simples para o inverso da mesa estabilizadora de um circuito de Clifford?

9

Em Simulação Aprimorada de Circuitos Estabilizadores de Aaronson e Gottesman, é explicado como calcular uma tabela que descreve quais produtos tensores Pauli os X e Z observáveis ​​de cada qubit são mapeados quando um circuito de Clifford atua sobre eles.

Aqui como um exemplo de circuito de Clifford:

0: -------@-----------X---
          |           |
1: ---@---|---@---@---@---
      |   |   |   |
2: ---|---|---@---|-------
      |   |       |
3: ---@---@-------Y-------

E a tabela que descreve como ela atua nos observáveis ​​X e Z de cada qubit:

       +---------------------+-
       | 0    1    2    3    |
+------+---------------------+-
| 0    | XZ   X_   __   Z_   |
| 1    | ZZ   YZ   Z_   ZZ   |
| 2    | __   Z_   XZ   __   |
| 3    | Z_   X_   __   XZ   |
+------+---------------------+-
| sign |  ++   ++   ++   ++  |
+------+---------------------+-

Cada coluna da tabela descreve como o circuito atua no X observável (metade esquerda da coluna) e Z (observada na metade direita da coluna) de cada qubit. Por exemplo, o lado esquerdo da coluna 3 é Z, Z, _, X, significando uma operação X3 (Pauli X no qubit 3) no lado direito do circuito é equivalente a uma operação Z1 * Z2 * X4 na mão esquerda lado do circuito. A linha 'sinal' indica o sinal do produto, o que é importante se você deseja simular uma medição (informa se você deve ou não inverter o resultado).

Você também pode calcular a tabela para o inverso de um circuito. No caso de exemplo que eu dei, a tabela inversa é esta:

       +---------------------+-
       | 0    1    2    3    |
+------+---------------------+-
| 0    | XZ   Y_   __   Z_   |
| 1    | _Z   YZ   Z_   _Z   |
| 2    | __   Z_   XZ   __   |
| 3    | Z_   Y_   __   XZ   |
+------+---------------------+-
| sign |  ++   -+   ++   ++  |
+------+---------------------+-

As tabelas terão a mesma aparência se você transpor suas linhas e colunas. Mas as entradas não são exatamente idênticas. Além da transposição, você deve codificar as letras em bits ( _= 00, X= 01, Z= 10, Y= 11) e depois trocar os bits do meio e decodificar. Por exemplo, ZZ codifica para 1010 que troca para 1100 que decodifica para Y_.

A pergunta que tenho é: existe também uma regra simples para calcular os sinais da tabela inversa?

Atualmente, estou invertendo essas tabelas decompondo-as em circuitos, invertendo os circuitos e depois multiplicando-os novamente. É extremamente ineficiente comparado a transpor + substituir, mas se eu vou usar transpor + substituir, preciso de uma regra de sinal.

Craig Gidney
fonte
Para esclarecer a questão: Deixe o circuito Clifford ser . A leitura da ésima coluna indica e dependendo da metade esquerda ou direita usada. E você deseja e partir desses dados. j U X j U U Z j U U X j U U Z j UUjUXjUUZjUUXjUUZjU
AHusain
@AHusain Correct.
Craig Gidney
Para esclarecer a pergunta: o que os @ s significam no seu circuito de Clifford?
Josu Etxezarreta Martinez
11
@JosuEtxezarretaMartinez Esses são controles. Quando dois estão conectados, é um portão CZ. @ conectado a um X é um X controlado. @ conectado a Y é um Y controlado.
Craig Gidney 24/09

Respostas:

4

Existe uma representação muito próxima da representação do quadro de Aaronson (e Gottesman) , que funciona não apenas para qubits, mas também para qudits de dimensão finita arbitrária, que funciona particularmente bem para circuitos puramente de Clifford ( ou seja,  no máximo uma medição terminal).

Nesta representação alternativa, há quadros descrevendo como os operadores X e Z de um qubit único se transformam, com informações de fase, como na representação usual. As colunas descrevem os operadores Weyl com vários qubit especificamente, que são um subconjunto especial dos operadores Pauli. A vantagem de fazer isso é que o quadro não é apenas uma matriz de coeficientes, mas um operador linear real nos vetores que representam operadores e fases de Weyl.

Há uma pequena captura. Para qubits, esses vetores têm coeficientes que são números inteiros no módulo 4 (correspondendo a uma cobertura dupla dos operadores Pauli não triviais de um qubit único pelos operadores Weyl), em vez do módulo 2. Acho que esse é um preço pequeno a pagar - embora eu pode ser um pouco tendencioso, pois é o meu próprio resultado [ arXiv: 1102.3354 ]. No entanto, parece ser uma representação algo "natural": Appleby desenvolveu o caso especial de qubit único ou qudit um pouco antes [ arXiv: quant-ph / 0412001 ] (algo que eu realmente gostaria de saber antes de passar dois anos desnecessariamente recriar essencialmente as mesmas convenções).

Usando essa representação, em virtude do fato de que o 'quadro' MC de um circuito C Clifford agora é uma matriz real (e uma inversível) que transforma vetores, o quadro do circuito inverso C é então o inverso MC-1 1 do quadro. Portanto, pelo menos para essa representação intimamente relacionada, a regra para calcular o quadro para o circuito inverso é fácil.

Niel de Beaudrap
fonte
Você poderia criar um link para slides ou notas de aula descrevendo os operadores Weyl?
Craig Gidney 24/09
Isso está de alguma forma relacionado à substituição da "base Pauli" {I, X, Y, Z} pela "base quaternária" {I, iX, iY, iZ} ao rastrear os vetores do produto?
Craig Gidney 24/09
Presumivelmente, quando se fala de qubits, o artigo original é este um
DaftWullie
Wuma,b=Eu-(uma\ codtb)ZumaXbuma,bZ4n
Niel de Beaudrap
@DaftWullie: Não, [arXiv: quant-ph / 9608006 ] é estritamente diferente. Eles indexam potências de X e Z por vetores mod 2 (veja o texto que precede a Eq.2), o que se reflete na estrutura de grupo aditivo de GF (4). Suas observações sobre transformações simpléticas na p.8 aplicam-se assim às fases do módulo do grupo Pauli. Appleby e eu não reivindicamos ser os primeiros a ter uma representação sofisticada para o grupo Pauli em qubits: o ponto é que nossa representação rastreia mais graciosamente as fases. Isso é menos importante para descobrir QECCs, mas crucial para simular estados.
Niel de Beaudrap 25/09
2

2NNNNXX1 1Z2N=28×8

M=(UMABCD),
N×N
(UMABCD)(0 0EuEu0 0)(UMABCD)T0 0 mod 2
M
(DTBTCTUMAT)
2×2

A bagunça, é claro, vem de acompanhar as fases. Acho que os sinais estarão relacionados a uma mudança no número de operadores Y em cada estabilizador, mas não consegui um tratamento unificado. A resposta de Niel provavelmente faz um trabalho melhor em cuidar dela automaticamente.

DaftWullie
fonte