Correções dependentes na computação quântica cega universal baseada em medição

10

Na Universal Blind Quantum Computation, os autores descrevem um protocolo baseado em medições que permite a um usuário quase clássico realizar cálculos arbitrários em um servidor quântico sem revelar quase nada sobre o conteúdo da computação.

Na descrição do protocolo, os autores mencionam "conjuntos de dependências" associados a cada qubit, que devem ser calculados por algum método descrito em Determinismo no modelo unidirecional

No entanto, não está claro para mim lendo o artigo como esses conjuntos são calculados.

Alguém pode ajudar a esclarecer esse problema?

Antonio Valério Miceli-Barone
fonte

Respostas:

9

Certo. Os conjuntos de dependências surgem do 'fluxo', que é realmente descrito no artigo ao qual você vincula. Talvez isso seja um exagero para o que precisamos.

A idéia por trás das correções é garantir que o mesmo operador eficaz seja aplicado independentemente de qual ramo você se encontra depois de fazer uma medição. Fazer isso em princípio é bastante simples. Como todas as medições que fazemos estão no plano XY, obtendo 1 como resultado da medição para um determinado qubit de estado produz o mesmo estado final que a obtenção de um 0 para a mesma medida do mesmo qubit em um estado . Portanto, para corrigir a obtenção de 1 em vez de 0, basta encontrar um operador no estado de saída, de modo que .| ip Z q | ip C Z qC | ip = | ip q|ψZq|ψCZqC|ψ=|ψ

Agora, isso implica que é um estabilizador do estado inicial. Um estabilizador para um estado é simplesmente um operador que possui esse estado como um autovetor com o autovalor correspondente .+ 1ZqC+1

Como se vê, é extremamente fácil enumerar os geradores do grupo estabilizador para qualquer gráfico: Para cada vértice no gráfico o operador é um estabilizador do estado gráfico, onde denota vizinhos de em . Assim, para encontrar a correção para o qubit medido, podemos simplesmente escolher o estabilizador correspondente a um qubit vizinho e multiplicá-lo por . Isso fornece um conjunto de eL X v Π i NBGH {V} Z i NBGH {V} v L Q Z Q X ZvGXvinbgh{v}Zinbgh{v}vGqZqXZ correções que, quando aplicadas ao estado de saída, produzem um estado igual à saída do processo, caso o resultado da medição tenha sido invertido.

Precisamos de mais um requisito, que é que o conjunto de correções esteja no futuro de (ou seja, ainda não foi medido). Obviamente, isso coloca restrições sobre qual vizinho de escolhemos. No caso do estado de alvenaria que introduzimos, isso é satisfeito exclusivamente ao escolher ser vizinho de que está na mesma linha que mas na próxima coluna. Isso pode parecer arbitrário, mas, como se vê, é a escolha única que satisfaz as condições que mencionei.q v q qqqvqq

Espero que isso responda sua pergunta.

EDITADO À NOTA: Você pode propagar correções frente aplicando o procedimento acima de forma recursiva, para que as correções em qualquer qubit a ser medido sejam correções. Se uma correção precisa ou não ser feita para um qubit específico, dependerá da paridade das medições para todos os qubits para os quais o operador de correção contenha um nesse local. Para elaborar esse conjunto, é mais fácil trabalhar de maneira inversa: simplesmente calcule os operadores de correção para cada vértice que propagam todos os operadores para os qubits de saída e, depois que esses operadores descobrirem quais medidas alteram a medida em um dado local.XZXX ZXXZ

Joe Fitzsimons
fonte
Thanks.So se eu entendi corretamente, após cada medição, Alice "decifra" o pouco resultado com seus bits de chave aleatórias, então
Antonio Valerio Miceli-Barone
11
@ user1749: Para cálculos baseados em medições, isso é essencialmente correto, embora muitas vezes as pessoas gostem de mudar todos os operadores para a saída, o que implica o uso de operadores em mais de um qubit. Em nosso protocolo, Alice, na verdade, não aplica uma correção , mas modifica o ângulo de medição do qubit (que é equivalente). Em vez de codificar imediatamente um simulador de QC totalmente cego, talvez seja melhor simular primeiro um cálculo simples baseado em medição. Não há realmente nada de especial no nosso uso do fluxo. X XZXX
Joe Fitzsimons
2
Dan Browne e Hans Briegel escreveram uma excelente introdução ao MBQC ( arxiv.org/abs/quant-ph/0603226 ), que tem um tratamento muito mais explícito dessas idéias do que nosso artigo (o que provavelmente é bastante misterioso se você não tiver usado MBQC antes). O que fazemos com o nosso estado de 'alvenaria' é apenas um MBQC simples, o que, por razões técnicas, não poderia ser feito em uma estrutura quadrada. Talvez seja mais fácil implementar um MBQC direto primeiro e depois adicionar a criptografia na parte superior, uma vez que tudo esteja funcionando.
Joe Fitzsimons
11
Não, você precisa absorver as correções X invertendo o ângulo de medição desse qubit. Isso ocorre porque você pode pensar nas medidas do plano XY como uma rotação Z seguida por uma medição X. Como X anti-comuta com Z, isso muda o sinal do ângulo de rotação e, como X comuta com uma medição X, é tudo o que você precisa fazer. Esse é o motivo do pedido de tempo parcial nas medições no MBQC: você precisa garantir que todos os qubits que exijam que o ângulo de medição seja adaptado de acordo com o resultado da medição de um determinado qubit sejam medidos após esse qubit.
Joe Fitzsimons
11
A resposta curta é não. Nos estados do gráfico, X aparece apenas em geradores padrão do estabilizador uma vez para cada vértice, tornando impossível multiplicar geradores para cancelar um X específico. Portanto, você não pode fazê-lo em geral. Os operadores Z aparecem várias vezes para cada vértice e, portanto, esse cancelamento geralmente é possível. Isso dá origem ao fluxo e ao fluxo g. Obviamente, você poderia simplesmente aplicar um Hadamard a cada qubit no estado do gráfico, o que trocaria Z e X, mas acho que não é isso que você deseja. Nada disso é específico do nosso protocolo, mas é uma característica comum de toda a computação do estado do gráfico.
Joe Fitzsimons