C'è un buon modo per scrivere matematicamente un'operazione CNOT su qubit non adiacenti in un circuito? [duplicare]

Aug 19 2020

Mi chiedevo se esiste un modo per presentare la matrice CNOT poiché di solito presentiamo operazioni a qubit singolo

$$... 1 \otimes NOT \otimes 1 ...$$

So che per qubit adiacenti in un circuito possiamo presentarlo in modo identico

$$... 1 \otimes CNOT \otimes 1 ...$$

Ma c'è un modo per presentare l'operazione matematicamente se ci sono più CNOT che agiscono su fili non vicini?

Risposte

4 chrysaor4 Aug 18 2020 at 23:16

Se ti riferisci solo alla rappresentazione del circuito astratto, puoi semplicemente riordinare la tua base in modo che tutti i qubit che partecipano ai CNOT siano "adiacenti" secondo la tua etichettatura. Ad esempio, se la base è ordinata come$1,2,3$e vuoi eseguire un CNOT tra i qubit 1 e 3, quindi scrivi qualcosa come

$$ CNOT_{1,3} \otimes I_2 $$

dove la base è ora ordinata $1,3,2$. Ma se non vuoi riordinare la base, c'è anche un altro modo per scrivere il CNOT:

$$ |0\rangle\langle0|\otimes I + |1\rangle\langle1|\otimes X $$

che potrebbe includere un'identità sullo stato del secondo qubit come

$$ (|0\rangle\langle0|)_1 \otimes I_2 \otimes I_3 + (|1\rangle\langle1|)_1 \otimes I_2 \otimes X_3 $$

Questo non è più solo un prodotto di unitari, che è previsto poiché l'azione del CNOT non dovrebbe essere fattorizzata in prodotto di operazioni.

1 DaftWullie Aug 18 2020 at 22:57

Personalmente, mi definisco solo una notazione. Ad esempio, invece del NOT che hai annotato, definisco$X_n$ essere $$ X_n=1^{\otimes(n-1)}\otimes X\otimes 1^{\otimes(N-n)}. $$ Allo stesso modo, potrei quindi definire $CNOT^i_j$ essere un controllato-non controllato $i$ e il targeting $j$. Se dovessi scriverlo come prodotto tensoriale, probabilmente farei qualcosa di simile$$ 1^{\otimes N}+1^{\otimes (i-1)}\otimes |1\rangle\langle 1|\otimes 1^{\otimes(j-i-1)}\otimes(X-1)\otimes 1^{\otimes(N-j)} $$ assumendo $j>i$.