Comment implémenter la «racine carrée de la porte d'échange» sur IBM Q (compositeur)?


9

Je voudrais simuler un algorithme quantique où l'une des étapes est "Racine carrée de la porte d'échange" entre 2 qubits.

Comment puis-je implémenter cette étape à l'aide du compositeur IBM ?


Il peut être utile d'utiliser une simple porte de swap comme "brique" pour construire la racine carrée de la porte de swap. Vous pouvez simuler sur IBM Q de cette manière: cx q [1], q [0]; hq [0]; hq [1]; cx q [1], q [0]; hq [0]; hq [1]; cx q [1], q [0];
— Lying Dancer

1
@JanVdA La racine carrée n'est pas unique. En fait, il devrait y avoir 2 ^ 4 = 16 racines possibles. Lequel voulez-vous dire?
— Norbert Schuch

N'importe qui ferait pour moi. Aucune préférence pour un particulier.
— JanVdA

Réponses:


9

Voici une construction SQRT (SWAP) qui ne nécessite que des CNOT dans une seule direction, Hadamards, portes S ( Z12 ), portes d poignées S (Z−12 ), portes T () et portes dague T ():Z14Z−14

entrez la description de l'image ici

Vous devriez pouvoir l'encoder directement dans le compositeur.


Comment obtient-on cela des premiers principes?
— user1271772

@ user1271772 Quels sont les "premiers principes"?
— Norbert Schuch

Je ne sais pas comment implémenter et à l' aide du compositeur IBM. Z1/2Z−1/2
— JanVdA

@ user1271772 J'ai commencé avec le circuit SWAP CNOT-NOTC-CNOT, remplacé le CNOT du milieu par un C-sqrt (pas) pour faire le tout un sqrt (SWAP), décomposé le C-srt (pas) en portes S + CNOT , déplacé quelques portes jusqu'à ce que je réussisse à annuler l'un des CNOT, puis utilisé Hadamards pour inverser la direction de tout CNOT pointant dans le mauvais sens.
— Craig Gidney

@JanVdA est , et est (regardez les portes bleues dans le compositeur). Z1/2SZ−1/2S†
— Craig Gidney

2

Ce que vous voulez faire, c'est une rotation sur le sous-espace étendu par et qui le fait pivoter de . À cette fin, vous pouvez d'abord faire un CNOT, qui mappe ce sous-espace à . Vous devez maintenant effectuer la rotation sur le premier qubit, à condition que le deuxième qubit en soit un. La mise en œuvre de portes contrôlées à l' aide de CNOT est une construction standard, qui peut être trouvée à divers endroits, voir par exemple https://arxiv.org/abs/quant-ph/9503016 . Selon la façon dont vous effectuez cette étape, vous devrez peut-être corriger la phase "globale" du 1er qubit (étant donné que le 2e est ). Enfin, vous devez annuler le CNOT.|01⟩|10⟩X{|01⟩,|11⟩} UXU|1⟩


Ce n'est pas clair pour moi 1) comment tu fais dans le compositeur. 2) comment annuler un CNOT dans le compositeur 3) vous mentionnez les portes U contrôlées mais il n'est pas clair où elles doivent être utilisées dans l'algorithme. Je pense qu'une description étape par étape de l'algorithme serait utile pour l'implémenter sur le compositeur IBM. X
— JanVdA

@JanVdA Je crains que vous n'ayez à travailler vous-même pour vous familiariser avec les circuits quantiques et leurs manipulations. Sinon, qu'allez-vous faire une fois que vous connaissez le circuit du sqrt-SWAP?
— Norbert Schuch

FYI: J'ai utilisé la description sqrt-SWAP ci-dessus pour tester la solution suggérée pour quantumcomputing.stackexchange.com/questions/2209/… sur le compositeur IBM.
— JanVdA

@JanVdA Lequel? L'accepté? Celui-là ne parle que d'un SWAP contrôlé. (Pour cela: journals.aps.org/pra/abstract/10.1103/PhysRevA.53.2855 )
— Norbert Schuch

Désolé, je fais référence à la solution acceptée pour la question: mathoverflow.net/questions/301733/…
— JanVdA

-1

Chaque porte à 2 qubits a une "décomposition paulininomiale" ce qui signifie qu'elle peut être écrite comme un polynôme de matrices de Pauli.

Pour la porte que vous souhaitez:

SWAP=[1000012(1+i)12(1−i)0012(1−i)12(1+i)00001]=1−i4(X1X2+Y1Y2+Z1Z2)+3+i2I,

où est une porte X appliquée au i ème qubit.XiXith


OK, merci pour la réponse - j'ai besoin d'étudier un peu pour comprendre comment je peux traduire cela dans IBM Composer.
— JanVdA

@JanVdA Qu'est-ce qui ne va pas? Vous ne pouvez pas faire glisser et déposer les portes X, Y et Z dans le circuit? Vous voudrez peut-être poser une question distincte sur la façon de multiplier une porte par une constante.
— user1271772

Je peux glisser-déposer les portes X, Y, Z mais je ne sais pas comment faire les multiplications (par exemple ), les ajouts (par exemple X 1 X 2 + Y 1 Y 2 ), la multiplication par une constante , Je ne sais même pas ce que tu veux dire par moi . Je suppose que je dois avoir l'air d'un idiot complet. X1X2X1X2+Y1Y2I
— JanVdA

signifie que vous appliquez X au qubit 1 et X au qubit 2. Cependant, comme je l'ai mentionné dans le commentaire précédent, je pense que vous devriez poser une question distincte sur la façon de multiplier par une constante. X1X2XX
— user1271772

Voir aussi Eq. 8 de cet article: arxiv.org/pdf/1805.10478.pdf , et les schémas de circuits dans le matériel supplémentaire. Eq. 8 du papier est exactement comme ce que je vous ai donné, sauf avec seulement portes Z. C'est toujours un "Paulinomial" mais avec seulement des portes Z , et il est implémenté dans le compositeur IBM dans cet article. ZZ
— user1271772
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.