Измерение: коллапс и вероятностный исход
Почему измерение разрушает суперпозицию и выдаёт лишь один случайный бит.
Измерение в вычислительном базисе превращает состояние a·|0> + b·|1> в исход 0 (с вероятностью |a|^2) или 1 (с вероятностью |b|^2), после чего кубит коллапсирует в соответствующее базисное состояние.
Что именно происходит
Пока кубит в суперпозиции, у него есть обе амплитуды. Как только мы его измеряем (в стандартном, «вычислительном» базисе |0>/|1>), природа бросает кость: с вероятностью |a|^2 мы видим 0, с вероятностью |b|^2 — 1. Дальше происходит самое контринтуитивное: состояние коллапсирует. Если выпал 0, кубит теперь точно в |0>, и повторное измерение даст 0 снова. Информация о второй амплитуде безвозвратно потеряна.
Промоделируем это честно: возьмём состояние, посчитаем вероятности и наберём статистику измерений случайными бросками.
import random, math
random.seed(7)
# Состояние sqrt(0.3)|0> + sqrt(0.7)|1>
a = math.sqrt(0.3)
b = math.sqrt(0.7)
p0 = abs(a)**2
def measure():
return 0 if random.random() < p0 else 1
N = 10000
counts = {0: 0, 1: 0}
for _ in range(N):
counts[measure()] += 1
print('теория p0=%.2f p1=%.2f' % (p0, 1 - p0))
print('опыт f0=%.3f f1=%.3f' % (counts[0] / N, counts[1] / N))Вывод:
теория p0=0.30 p1=0.70 опыт f0=0.302 f1=0.698
Как работает под капотом
До измерения эволюция кубита детерминирована и обратима — это унитарные гейты. Случайность вносит именно измерение, и оно необратимо. Поэтому квантовый алгоритм строят так: сначала длинная обратимая часть (гейты, интерференция), затем — измерение в самом конце, ровно один раз, когда нужный ответ уже усилен. Если измерить слишком рано, вы разрушите суперпозицию и потеряете всё преимущество.
Можно измерять и в другом базисе — не только |0>/|1>. Технически это эквивалентно повороту состояния гейтом перед измерением в стандартном базисе. Поэтому «измерить в базисе X» = «применить Адамара, потом измерить обычно».
Частые ошибки
- «Измерение просто читает скрытое значение». Нет: до измерения определённого значения не было; исход рождается в момент измерения.
- «Можно измерить, не разрушив суперпозицию». Нет: измерение в общем случае коллапсирует состояние.
- Измерять в середине алгоритма «чтобы посмотреть» — так теряется вся накопленная интерференция.
Итог
- Измерение даёт случайный исход по правилу Борна и коллапсирует кубит.
- Гейты обратимы, измерение — нет; его делают в конце.
- Выбор базиса измерения — это поворот состояния перед стандартным измерением.