От DFT к QFT python / qiskit

У меня есть следующий код

x = [1, -4, 5, -2] # Data points
N = len(x)  # Number of samples
n = np.arange(N)  # Current sample
k = n.reshape((N, 1))  # Current frequency
e = np.exp(-2j * np.pi * k * n / N)  # Exponential part
DFT = np.dot(e, x)

Как я могу преобразовать классическое преобразование Фурье в квантовую версию через python или qiskit?


person Steve Bermeo    schedule 09.08.2020    source источник


Ответы (1)


Итак, я думаю, вам следует сначала прочитать о квантовом преобразовании Фурье и посмотреть, что оно делает, поскольку квантовое преобразование Фурье - это не квантовый алгоритм для вычисления преобразования Фурье, а, скорее, способ преобразования из одного базиса состояния в другой, называемый преобразованием Фурье. базис, он не преобразует конечную последовательность равноотстоящих выборок функции в последовательность одинаковой длины равноотстоящих выборок, как это делает ДПФ.

При этом, если вы просто хотите реализовать QFT, вы можете найти здесь примеры.

https://qiskit.org/textbook/ch-algorithms/quantum-fourier-transform.html

а также некоторая интуиция того, что делает преобразование и как его использовать. Я не знаю, есть ли у вас точки данных по какой-то причине, но вы можете изменить их, чтобы использовать их в qiskit для строк 0 и 1 или преобразовать их в двоичные и использовать довольно много кубитов.

person Gerardo Suarez    schedule 15.08.2020