Comment implémenter une racine carrée de Swap gate qui permute 2n-qubits sur IBM Q (composer)?

Je suis à la recherche d'une implémentation utilisant les portes quantiques fournies par le IBM compositeur du suivant fonction quantique:

  • entrée $ 2n $ qubits
  • sortie $ 2n $ qubits où $ 50 \% $ des cas l'état des $ 2 $ ensembles de $ n $ qubits sont échangés et dans les autres $ 50 \% $ des cas l'état des qubits $ 2n $ reste inchangé. Avec swappé, je veux dire que qubit $ q [i] $ obtiendra l'état de qubit $ q [n + i] $ et que qubit $ q [n + i] $ obtiendra l'état de $ q [i] $. Notez également que tous les qubits doivent être échangés ou non.

Par exemple. $ n = 3 $: Si vous entrez $ | 000111 \ rangle $ alors la sortie dans 50% des cas est $ | 000111 \ rangle $ et dans l'autre 50% des cas est $ | 111000 \ rangle $

Nous avons déjà une solution quand $ n = 1 $ dans la question StackOverflow suivante:

but how can we do that when $n>1$?

6
Je me demande si nous pouvons utiliser un flipper classique, et ajouter une instruction "if" dans le QASM éditeur
ajouté l'auteur btw, source

1 Réponses

Une astuce générale pour lisser une grande opération discrète dans une opération continue consiste à appliquer l'algorithme d'estimation de phase, puis à appliquer un gradient de phase au registre de phase, puis à calculer l'estimation de phase. Par exemple, consultez cet article de blog sur le calcul de la transformation de Fourier fractionnaire .

Comme l'opération d'échange a exactement deux valeurs propres (+1 et -1), l'estimation de phase est extrêmement simple. Il ne nécessite qu'un qubit d'estimation monophasé. Le circuit résultant ressemble à ceci:

Big sqrt swap

Notez que le qubit supérieur doit commencer et se terminer dans l'état 0. Vous pouvez varier en continu la quantité de swappery en faisant varier l'angle de la rotation Z au milieu.

3
ajouté
@JanVdA Non, c'est juste l'estimation de la première phase. Vous aurez juste un qubit pour vous dire quel eigenspace de l'opération de swap est dans les autres qubits. Vous devez l'utiliser et vous en débarrasser pour que le circuit fonctionne.
ajouté l'auteur Jesse Ezell, source
merci pour le circuit. Si vous ne vous souciez pas de l'état de sortie du qubit supérieur: la première partie du circuit (jusqu'à la deuxième porte H) n'implémente-t-elle pas déjà la racine carrée de la porte swap qui permute 2x2 qubits?
ajouté l'auteur JanVdA, source