№ 1761Квантовые вычисленияУровень 2

Равномерная суперпозиция через преобразование Фурье

Вход — $n$ кубитов в $|0\ldots0\rangle$. Напишите операцию на языке Q#, подготавливающую

$$\frac{|0\ldots0\rangle+\cdots+|1\ldots1\rangle}{\sqrt{2^n}}.$$ Полная вспомогательная операция QFT, реализующая преобразование Фурье через библиотеку, дана в заготовке.

Заготовка Q#:

namespace Kata {
    import Std.Arrays.*;

    operation AllBasisVectors(qs : Qubit[]) : Unit is Adj + Ctl {
        // Implement your solution here...

    }

    // You might find this helper operation that implements QFT using a library operation useful.
    operation QFT(qs : Qubit[]) : Unit is Adj + Ctl {
        ApplyQFT(Reversed(qs));
        SwapReverseRegister(qs);
    }
}

Сообщить об ошибке

Войти, чтобы отправить материал.