Как интерпретировать квантовую схему как матрицу?

15

Если схема принимает более одного кубита в качестве входа и имеет квантовые вентили, которые принимают различное количество кубитов в качестве входа, как бы мы интерпретировали эту схему как матрицу?

Вот игрушечный пример:

введите описание изображения здесь

Арчил Жвания
источник

Ответы:

17

Конкретная цепь

Первые ворота - это ворота Адамара, которые обычно представлены

12[1111]

Теперь, поскольку мы применяем его только к первому кубиту, мы используем на нем продукт kronecker (это меня очень смущало, когда я начинал - я понятия не имел, как масштабировать ворота; как вы можете себе представить, это довольно важно ), поэтому мы делаем , где I - единичная матрица 2x2. Это производитHII

12[1010010110100101]

Далее у нас есть ворота CNOT. Обычно это представлено

[1000010000010010]

Это правильный размер для двух кубитов, поэтому нам не нужно масштабировать с использованием продуктов kronecker. Затем у нас есть еще одни врата Хадамара, которые масштабируются так же, как и первые. Чтобы найти общую матрицу для схемы, мы умножим их все вместе:

12[1010010110100101][1000010000010010]12[1010010110100101]

and get

12[1111111111111111]

(if python multiplied correctly =) We would then multiply this by our original qubit state, and get our result.

Generalization

So basically, you go through each gate one by one, take the base representation, and scale them appropriately using kronecker products with identity matrices. Then you multiply all the matrices together in the order they are applied. Be sure to do this such that if you wrote out the multiplication, the very first gate is on the far right; as arriopolis points out, this is a common mistake. Matrices are not commutative! If you don't know the base representation of a matrix, check first wikipedia's article on quantum gates which has a lot.

heather
источник
3
Maybe it's instructive to add that one should always reverse the order of matrix multiplication. In this particular toy example, it's not necessary as the circuit is symmetric, but in general, one should always put the matrix of the left-most gate in the right-most position of the matrix multiplication.
arriopolis
@arriopolis, good point; I will add that!
heather
1
Rather than thinking about 'scaling' the gate, from what I understood, the kronecker product by the identity matrix is due to the fact that on the second qubit nothing is applied, but if you consider the circuit as a whole, at the first step it will undergo and H transform on the first qubit and an "I" transform on the second, that are represented at once with H⊗I.
FSic
@F.Siciliano that is a good way to think about it as well; for me it's a good way to remind myself of why I'm doing it.
heather