Maneira rápida de verificar se dois vetores de estado são equivalentes às operações de Pauli

8

Eu estou procurando o código rápido, ou um algoritmo rápido, para verificar se um determinado estado vetor A pode ser transformada em outro estado vector B usando apenas a operações Pauli X , Y , Z .

A estratégia ingênua é simplesmente iterar todas as 4n maneiras de aplicar uma operação Pauli (ou nenhuma operação) a cada um dos n qubits, simular a aplicação das operações ( custo de 2n para cada qubit para cada caso) a um dos estados e verifique se o vetor de estado resultante é equivalente ao outro estado. Certamente é possível fazer isso melhor do que no pior caso, n8n tempo?

[Atualização] Estou especificamente interessado no pior desempenho possível. Heurísticas são respostas interessantes e úteis, mas não se tornarão a resposta aceita.

Craig Gidney
fonte

Respostas:

2

A maneira que eu pensei em começar era olhar para as matrizes de densidade reduzida dos qubits individuais. Se eles não podem ser interconvertidos usando matrizes de Pauli, a coisa toda não pode.

O único problema é que essa idéia se desdobra assim que qualquer uma das matrizes de densidade reduzida é misturada ao máximo. Nesse ponto, você poderia perguntar "os dois estados são equivalentes aos unitaristas locais?". Se você deriva dos unitários como resultado dessa pergunta, será fácil testar se eles são Pauli ou não. Isso foi estudado aqui . Eu acho que ainda existem casos em que o dimensionamento é problemático, mas não me lembro bem com matrizes de densidade reduzida maximamente misturadas.

DaftWullie
fonte
2
Essa é uma boa heurística para estados como , mas estados comuns tais como estados gráfico sem quaisquer nós únicas não beneficiar dela. A idéia é generalizada, por exemplo, olhando para a matriz de densidade reduzida de pares ou trigêmeos de qubits. |CCZ
Craig Gidney
1
Concordo. Obviamente, para os estados gráficos, houve muitos estudos sobre a equivalência local de Clifford , mas é preciso começar a falar sobre como os estados são especificados. A astúcia de distinguir entre Clifford local e equivalência unitária local é sugestiva de quão desagradável o problema pode ser em geral.
DaftWullie 11/02/19
2

Escolha um elemento ai de A e encontre sua posição em B, desconsiderando as mudanças na fase. A mudança de posição identifica exclusivamente a série de aplicativos X ou Y necessários para a transformação.

A fase relativa do (a0,b0) lhe diz, em passos de i rotações, quantas Y portas que você precisa para a transformação. A fase relativa de (a1,b1) a (a0,b0) indica que muitos portões Y ou Z atuam no primeiro qubit; e assim por diante para a fase relativa de (a2k1,b2k1)a(a0,b0)para asportasYouZatuam no qubitk.

Se ai não aparecer em B, a transformação não será possível.

Eu acredito que o acima pode ser feito em O(n) -sh.

Eelvex
fonte
1
O que acontece se os elementos não são únicos? ai
DaftWullie
Você aceita casos. De qualquer forma, à medida que a degeneração dos elementos aumenta, o problema se torna mais trivial. As (magnitudes dos) elementos de A e B devem ser equilibradas.
Eelvex
3
Mas e estados como estados de gráfico em que todos os elementos têm a mesma magnitude? O que estou tentando argumentar é que aceitar casos levaria à mesma explosão exponencial. É certo que sua sugestão é muito boa para eliminar ou resolver muitos casos simples.
DaftWullie
X
Essa é outra boa heurística para certos estados. Mas estou procurando especificamente um algoritmo com bom desempenho no pior dos casos.
Craig Gidney