導入
古典的なコンピューターでは、真の乱数ではなく、擬似乱数が生成されます。 擬似乱数ジェネレーターは、何らかの初期値 (シードと呼ばれます) に基づいて、数値の決定論的シーケンスを生成します。 真のランダム性をより適切に近似するために、シードは多くの場合、CPU のクロックからの現在の時刻に従って設定されます。
一方、量子コンピューターは真の乱数を生成できます。 これは、重ね合わせにおける量子ビットの測定が確率的プロセスであるためです。 測定の結果はランダムであり、結果を正確に予測する方法はありません。 これが量子乱数ジェネレーターの基本原則です。
このモジュールでは、Azure Quantum 開発キットで最初の量子プログラムを記述します。 乱数を生成する量子プログラムを記述し、Q# プログラムの構造について学習します。 量子乱数ジェネレーターは、量子概念と量子コンピューティングの優れた概要です。 また、量子乱数ジェネレーターを作成するのに必要な Q# コードは数行だけです。
学習の目的
このモジュールを完了すると、次のことができます。
- Q# で量子ビットを割り当て、それらに量子演算を適用します。
- Visual Studio Code で Q# プログラムを作成して実行する。
- Q# プログラムの構造とコンポーネントについて説明します。
前提条件
- 量子コンピューティングの概念についての基本的な理解。
- 従来のプログラミングの概念に関する基本的な知識。
- Visual Studio Code の最新版をインストールします。
- Azure Quantum 開発キット拡張機能の最新バージョンをインストールします。 または、Quantum Development Kit 拡張機能が既に含まれている Web 用の Visual Studio Code を開きます。