Оценка ресурсов для Trotterisation всегда выдает стоимость 0 T-gate? - PullRequest
0 голосов
/ 10 марта 2020

Я работаю с q # уже пару недель, и меня интересует оценка ресурсов для квантовой химии.

Используя примеры программ, таких как «GetGateCount», для различных молекул (также приведенных в примерах), я всегда получаю 0 T счетчик ворот для Троттеризации. Кубитизация и Оптимизированная кубитизация работают нормально.

Это также был случай, когда я добавил оценку ресурсов в другой пример программы, предоставленной «MolecularHydrogen GUI», с информацией, предоставленной здесь: https://docs.microsoft.com/en-us/quantum/machines/resources-estimator.

Любая помощь будет оценена, мне было интересно, если это недавняя ошибка?

1 Ответ

1 голос
/ 12 марта 2020

Я полагаю, что ResourceEstimator выводит буквальное число гейтов - количество раз, когда каждый вентиль вызывался в коде. Он предоставляет два отдельных счетчика затворов для Т-затворов и затворов произвольного вращения и не выполняет синтез затворов для преобразования произвольных поворотов в последовательности примитивных затворов, включая Т-затворы.

Я подозреваю, что два других алгоритма явно используют как произвольные повороты, так и затворы T, а Trotterization использует только повороты, поэтому счетчик T-шлюза отображается как 0, хотя запуск этого кода на реальном устройстве определенно потребует T-шлюзов , Однако я не заглядывал в код, чтобы подтвердить это.

Скрипт, используемый для получения графиков для подсчета химических элементов в выборках , использует следующее приближение числа T-элементов с использованием ResourceEstimator отчеты:

TotalTCount = TCount - 4 * log2( 0.001 / RotationsCount) * RotationsCount
...