Microsoft Liquid: как показать текущее квантовое состояние

Я программирую квантовые алгоритмы в Microsoft Liquid (F#). Для отладки было бы очень приятно увидеть текущее квантовое состояние.

Я могу использовать:

for q in qs do show "q[%d]=%s" q.Id (q.ToString())

где qs - мой список кубитов, но это работает, только если состояние не запутано.
Однако, если он запутан, есть ли способ просто показать текущее квантовое состояние, например:

ket = 1/sqrt(2)*[|00>+|11>]

1 ответ

Метод Ket.Dump выведет вектор состояния с хорошим форматированием на консоль:

qs.[0].Ket.Dump()

См. http://stationq.github.io/Liquid/docs/html/aecdd029-bf0a-3e8f-3c2b-348802584d85.htm и http://stationq.github.io/Liquid/docs/html/56e790bd-3150-17ca-adac-0b91ecf9ef7e.htm.

Другие вопросы по тегам