私が理解しているように、量子コンピューターと非量子コンピューターの主な違いは、量子コンピューターは量子ビットを使用し、非量子コンピューターは(古典的な)ビットを使用することです。
量子ビットと古典ビットの違いは何ですか?
私が理解しているように、量子コンピューターと非量子コンピューターの主な違いは、量子コンピューターは量子ビットを使用し、非量子コンピューターは(古典的な)ビットを使用することです。
量子ビットと古典ビットの違いは何ですか?
回答:
ビットは、古典的な計算で使用される情報のバイナリ単位です。2つの可能な値を取ることができ、通常はまたは1になります。ビットは、2つの可能な状態にあるデバイスまたは物理システムで実装できます。
ビットをキュービットと比較対照するために、ビットのベクトル表記を次のように導入しましょう。ビットは2つの要素列ベクトルで表されます。ここで、αは0を表し、βは1を表します。今ビット0はベクトルで表される(1 、0 )Tとビット1によって(0 、1 )T。前と同じように、可能な値は2つだけです。
この種の表現は古典的なビットでは冗長ですが、量子ビットを導入するのは簡単です。量子ビットは、任意ので、複素数要素が正規化条件を満たす| α | 2 + | β | 2 = 1。正規化条件は解釈に必要です| α | 2および| β | 2後述するように、測定結果の確率として。量子情報の単位をキュービットと呼ぶ人もいます。量子ビットは、量子デバイスまたは量子システムの(純粋な)状態として実装できます。量子状態は、いわゆる計算基盤を形成し、さらにこれらのコヒーレントな重ね合わせの2つの状態になります。ここでquantumnessは、古典的な以外の量子ビットが必要であると(0 、1 )Tを。
量子計算中にキュービットに対して実行される通常の操作は、量子ゲートと測定です。(単一キュービット)量子ゲートは、入力としてキュービットを取り、出力として入力キュービットの線形変換であるキュービットを与えます。量子ビットに上記のベクトル表記を使用する場合、ゲートは正規化条件を保持する行列で表される必要があります。このような行列はユニタリ行列と呼ばれます。古典的なゲートは、ビットをビットとして保持する行列で表すことができますが、量子ゲートを表す行列は一般にこの要件を満たさないことに注意してください。
ビットの測定は、古典的なものであると理解されています。これにより、ビットのアプリオリ未知の値は原則として確実に正しく見つけられることを意味します。これは、量子ビットの場合ではない:一般的な量子ビットの測定計算基準に[ (1 、0 )T、(0 、1 )T ]をもたらすであろう(1 、0 )T確率| α | 2およびin (0確率 | β | 2。言い換えると、測定前の量子ビットは計算ベース状態以外の状態になる可能性がありますが、測定ではまだ2つの結果しか得られません。
シングルビットまたはキュービットでできることはあまりありません。いずれかの完全な計算能力は、多くを使用することから得られ、それらはここでカバーされるそれらの間の最終的な違いにつながります:複数のキュービットがもつれることができます。非公式には、エンタングルメントは、古典的なシステムが持つことができるよりもはるかに強い相関の形式です。重ね合わせとエンタングルメントにより、ビットでは不可能なキュービットで実現されるアルゴリズムを設計できます。最も興味深いのは、最もよく知られている従来のアルゴリズムと比較して、計算の複雑さを軽減してタスクを完了することができるアルゴリズムです。
最後に、ビットを使用してキュービットをシミュレートできます(逆も同様)が、必要なビット数はキュービットの数とともに急速に増加することに注意してください。その結果、信頼できる量子コンピューターがなければ、量子アルゴリズムは理論的にのみ興味があります。