(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-06-13
(54)【発明の名称】仮想量子プロセッサに基づく均一量子計算モデルを伴うシステムおよび方法
(51)【国際特許分類】
G06N 10/20 20220101AFI20240606BHJP
G06N 10/40 20220101ALI20240606BHJP
G06N 10/80 20220101ALI20240606BHJP
G06F 9/50 20060101ALI20240606BHJP
【FI】
G06N10/20
G06N10/40
G06N10/80
G06F9/50 120A
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023572683
(86)(22)【出願日】2022-06-01
(85)【翻訳文提出日】2024-01-15
(86)【国際出願番号】 EP2022064964
(87)【国際公開番号】W WO2022253919
(87)【国際公開日】2022-12-08
(32)【優先日】2021-06-01
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521216832
【氏名又は名称】キューエムウェア アーゲー
【氏名又は名称原語表記】QMware AG
【住所又は居所原語表記】Kornhausstrasse 25, St. Gallen, Switzerland
(74)【代理人】
【識別番号】100109210
【氏名又は名称】新居 広守
(72)【発明者】
【氏名】ゲセク・ゲオルク
(57)【要約】
本革新は、仮想化量子処理を実行することに関連するシステムおよび方法に関する。本明細書の実施形態によれば、典型的な方法は、古典メタ情報で量子ビットを初期化するステップと、古典メタ情報で量子ビット間のゲート回路を初期化するステップと、ユニタリ行列で全ての量子ビットを変換することによって所与の量子回路を処理するステップと、古典情報を取り出すために量子ビットを測定するステップと、古典情報を処理するステップと、を含むことができ、方法は、好ましくは、ハードウェア層、ハードウェアスタックに結合されたオペレーティングシステム、およびオペレーティングシステムに結合されたコンテナ環境で構成された、情報処理スタックを介して実施される。いくつかの実装形態では、ブロッホ球は、関連する同じ状態ベクトル|ψ>が古典情報|0>および|1>と共にメモリパターン内で完全に表されるように、メインメモリ内のメモリパターンの中間表現に組み込まれる。
【選択図】
図7
【特許請求の範囲】
【請求項1】
仮想量子コンピュータシステムであって、
メインメモリ(610)と、
前記メインメモリ(610)に結合された1つ以上のメモリバスシステム(650)と、
好ましくは少なくとも1つのメモリバスシステムを介した前記メインメモリ(610)へのアクセスを有する1つ以上の物理処理ユニット(620)と、
前記1つ以上の物理処理ユニット(620)のうちの少なくとも1つに結合されたデータ処理ユニット(640)であって、前記データ処理ユニット(640)は、前記仮想量子コンピュータシステムの内部システムと外部システムとの間のブリッジとして機能する、データ処理ユニット(640)と、
前記1つ以上の物理処理ユニット(620)を接続する1つ以上のキャッシュコヒーレンシ相互接続(630)と、
情報処理スタックであって、
ハードウェア層、前記ハードウェア層に結合されたオペレーティングシステム、および前記オペレーティングシステムに結合されたコンテナ環境を備え、
前記情報処理スタックが、
(A)古典メタ情報で量子ビットを初期化し、
(B)前記古典メタ情報で前記量子ビット間のゲート回路を初期化し、
(C)ユニタリ行列で全ての量子ビットを変換することによって所与の量子回路を処理し、
(D)古典情報を取り出すために前記量子ビットを測定し、
(E)古典情報を処理する
ように構成されている、情報処理スタックと、
を備える仮想量子コンピュータシステム。
【請求項2】
仮想量子コンピュータシステムであって、
メインメモリ(610)と、
前記メインメモリ(610)に結合された1つ以上のメモリバスシステム(650)と、
好ましくは少なくとも1つのメモリバスシステムを介した前記メインメモリ(610)へのアクセスを有する1つ以上の物理処理ユニット(620)と、
前記1つ以上の物理処理ユニット(620)のうちの少なくとも1つに結合されたデータ処理ユニット(640)であって、前記データ処理ユニット(640)は、前記仮想量子コンピュータシステムの内部システムと外部システムとの間のブリッジとして機能する、データ処理ユニット(640)と、
を備え、
関連する同じ状態ベクトル|ψ>が前記古典情報|0>および|1>と併せてまたは一緒にメモリパターン内に完全に表されるように、前記メインメモリ(610)内の前記メモリパターンの中間表現にブロッホ球が組み込まれる、仮想量子コンピュータシステム。
【請求項3】
前記1つ以上のキャッシュコヒーレンシ相互接続(630)は物理ハードウェア構成要素を備え、および/または
古典メタ情報を用いる前記量子ビットの前記初期化は、メモリパターン変換(720)を実行するステップを含み、前記メモリパターン変換は、ブロッホレジスタおよびニューラルネットワークの一方または両方への変換を含む、請求項1または2に記載のシステム。
【請求項4】
量子情報のメモリ表現における最適化パラメータは、前記情報処理スタックの全体的なトランザクション計算力を効率的に使用するために、カーネルスケジューラ(API 5D)を介してアプリケーション層(750)から前記オペレーティングシステム(770)の内部コアにメタ情報として提供される、請求項1~3のいずれか一項に記載のシステム。
【請求項5】
前記情報処理スタックは、カーネルスケジューラAPI(740,830)を介して、前記量子ゲート回路に必要な前記古典メタ情報を前記オペレーティングシステム(770)に関連付けられたメモリパターン変換層(720)に転送するようにさらに構成されている、請求項1~4のいずれか一項に記載のシステム。
【請求項6】
物理量子ビットレジスタをさらに備え、前記量子ゲート回路に必要とされる前記古典メタ情報は、ネイティブ量子プロセッサのゲート制御ユニットによって計算される、請求項1~5のいずれか一項に記載のシステム。
【請求項7】
仮想量子プロセッサをさらに備え、前記メインメモリ内のゲート行列は、プロセッサハードウェアが好ましくはカーネルスケジューラAPIの上方に前記情報処理スタックの非依存アーキテクチャで実装されるように、前記量子ゲート回路に必要とされる前記古典メタ情報で構築される、請求項1~6のいずれか一項に記載のシステム。
【請求項8】
好ましくは前記ハードウェア層(780)の物理リソースによって実行される、ハイブリッド量子計算オペレーティングシステムのプロセッサカーネル拡張内の1つのソフトウェアとして算術論理演算ユニット(ALU)を利用するように構成された量子処理ユニット(QPU)をさらに備える、請求項1~7のいずれか一項に記載のシステム。
【請求項9】
前記コンテナ環境(760)は、プログラマが、同じバージョンの前記オペレーティングシステム(770)を実行する任意の数の異なるプロセッサおよび計算ノードにわたって1つのアプリケーション内にアプリケーションおよび/またはタスクを分散させることができるように、前記プログラマにスレッド並列化の既知の方法を提供するMPIオーバーレイ機能(740)を有するカーネルスケジューラAPIを含む、請求項1~8のいずれか一項に記載のシステム。
【請求項10】
アプリケーションを実行するとき、前記情報処理スタックは、
仮想量子処理ユニット(仮想QPU)およびネイティブ量子処理ユニット(ネイティブQPU)の両方で前記アプリケーションの並列バージョンを実行するように構成され、
好ましくは、前記アプリケーションがネイティブQPUを介して実行されているとき、メモリパターン変換ユニット(720)は状態ベクトルを読み取るように構成され、および/または
好ましくは、前記アプリケーションが仮想QPUを介して実行されているとき、前記システムは、自動的に先進量子触発計算(AQIC)ショートカットを利用するように構成されている、請求項1~9のいずれか一項に記載のシステム。
【請求項11】
前記情報処理スタックは、プロセッサカーネル拡張で構成された仮想プロセッサインスタンス(VPI)を使用して、共有メモリ内のネイティブ処理および仮想処理の異なるインスタンスで利用されるデータを記憶するように構成されている、請求項1~10のいずれか一項に記載のシステム。
【請求項12】
前記メインメモリ(720)内のメモリパターン自体が、キャッシュコヒーレンシを実現し、固有の中間表現を実装し、または前記プロセッサの前記制御ユニットにトポロジ依存性に関する情報を配信するなどのために、処理されたデータの実行を制御するために前記それぞれの処理ユニットのためのメタ情報として機能し、好ましくは、最も効率的に並列に同じメインメモリにアクセスする異なる処理ユニットを統合するためのソフトウェア開発者による利用のために構成されている、請求項1~11のいずれか一項に記載のシステム。
【請求項13】
ブロッホ球(100)は、同じ状態ベクトル|ψ>(111)が、前記古典情報|0>および|1>(112)と併せてまたは一緒にメモリパターン内で完全に表されるように、前記メインメモリ(720)内の前記メモリパターンの中間表現に組み込まれる、請求項1~12のいずれか一項に記載のシステム。
【請求項14】
前記情報処理スタックは、
共有メモリにデータを記憶させ、仮想プロセッサインスタンス(VPI)を使用して前記データを処理するように構成されており、前記VPIは、
マルチプロトコルドライバ(MPD)(870)、メタプロトコルコントローラ(MPC)(880)、および算術論理演算ユニット(ALU)(890)を含む複数のサブコンポーネントと、
前記メインメモリ内の共有メモリへのアクセスを前記サブコンポーネントに提供し、前記サブコンポーネントを伴う直接メモリアクセス(DMA)交換を扱うように構成されたバスシステム(860)と、
を備えるプロセッサカーネル拡張である、請求項1~13のいずれか一項に記載のシステム。
【請求項15】
前記マルチプロトコルドライバ(MPD)(870)は、
前記オペレーティングシステム(830)へのドライバインターフェースとして機能し、
マルチプロトコルドライバ(MPD)(870)、メタプロトコルコントローラ(MPC)(880)、および算術論理演算ユニット(ALU)を含む仮想プロセッサインスタンス(VPI)のサブコンポーネント間の通信を扱い、
異なるプロトコルを変換し、
前記VPIの前記サブコンポーネントと前記外部システムとの間で切り替え、および/または
前記仮想処理ユニットのためのキャッシュを保持する
ように構成されている、請求項14に記載のシステム。
【請求項16】
前記仮想処理ユニットは、
前記VPIの物理的実装形態がない場合、メモリ内の前記マルチプロトコルドライバによって構築され、および/または
物理(量子)処理ユニットの物理キャッシュを前記メインメモリ内にマッピングし、こうして前記システム全体のキャッシュコヒーレンシを提供する
ように構成されている、請求項15に記載のシステム。
【請求項17】
前記メタプロトコルコントローラ(880)は、
前記マルチプロトコルドライバ(MPD)を介した前記メタ情報交換を扱い、量子回路などの前記情報処理構造のための中間表現(IR)を保持するように構成されている、請求項15または16に記載のシステム。
【請求項18】
前記システムがゲートベース量子プロセッサを利用するとき、前記算術論理演算ユニット(ALU)(890)は、行列演算を有する線形代数表現を使用して論理演算および算術演算を実行するように構成されている、請求項15~17のいずれか一項に記載のシステム。
【請求項19】
仮想化量子処理を実行する方法であって、前記方法は、
古典メタ情報で量子ビットを初期化するステップと、
前記古典メタ情報で前記量子ビット間のゲート回路を初期化するステップと、
ユニタリ行列で全ての前記量子ビットを変換することによって所与の量子回路を処理するステップと、
古典情報を取り出すために前記量子ビットを測定するステップと、
前記古典情報を処理するステップと、
を含み、
好ましくは、前記方法は、ハードウェア層、前記ハードウェア層に結合されたオペレーティングシステム、および前記オペレーティングシステムに結合されたコンテナ環境を備える情報処理スタックまたは計算スタックを介して実施される、方法。
【請求項20】
前記古典情報の処理は、ハードウェア非依存の仮想ハードウェアプロセッサによって実行され、好ましくは、前記仮想ハードウェアプロセッサは、
メインメモリ(610)と、
前記メインメモリ(610)に結合された1つ以上のメモリバスシステム(650)と、
好ましくは少なくとも1つのメモリバスシステムを介した前記メインメモリ(610)へのアクセスを有する1つ以上の物理処理ユニット(620)と、
前記1つ以上の物理処理ユニット(620)のうちの少なくとも1つに結合されたデータ処理ユニット(640)であって、前記データ処理ユニット(640)は、前記仮想量子コンピュータシステムの内部システムと外部システムとの間のブリッジとして機能する、データ処理ユニット(640)と、
前記1つ以上の物理処理ユニット(620)を接続する1つ以上のキャッシュコヒーレンシ相互接続(630)と、
前記情報処理スタックと、
を備える仮想量子コンピュータシステムを介して実装される、請求項19に記載の方法。
【請求項21】
同じ状態ベクトル|ψ>(111)が、前記古典情報|0>および|1>(112)と併せてまたはこれと共にメモリパターン内で完全に表されるように、前記メインメモリ(720)などのメモリ内の前記メモリパターンの中間表現にブロッホ球(100)を組み込むステップをさらに含む、請求項19または20に記載の方法。
【請求項22】
キャッシュコヒーレンシを実現し、固有の中間表現を実装し、または前記プロセッサの前記制御ユニットにトポロジ依存性に関する情報を配信するなどのために、ただしこれらに限定されないが、処理されたデータの実行を制御するためにそれぞれの処理ユニットのためのメタ情報として機能するように、前記メインメモリ(720)内のメモリパターンを実装するステップであって、前記プロセッサは、好ましくは、最も効率的に並列に同じメインメモリにアクセスする異なる処理ユニットを統合するためのソフトウェア開発者による利用のために構成されている、ステップをさらに含む、請求項19~21のいずれか一項に記載の方法。
【請求項23】
前記1つ以上のキャッシュコヒーレンシ相互接続は物理ハードウェア構成要素を備える、任意選択的に請求項21または22と組み合わされた、請求項20に記載の方法。
【請求項24】
古典メタ情報を用いる前記量子ビットの前記初期化は、メモリパターン変換(720)を実行するステップを含み、前記メモリパターン変換は、ブロッホレジスタおよびニューラルネットワークの一方または両方への変換を含む、請求項19~23のいずれか一項に記載の方法。
【請求項25】
量子情報のメモリ表現における最適化パラメータは、好ましくは前記情報処理スタックの全体的なトランザクション計算力を効率的に使用するために、カーネルスケジューラAPI(740,830)を介してアプリケーション層(750)から前記オペレーティングシステム(770)の内部コアにメタ情報として提供される、請求項19~24のいずれか一項に記載の方法。
【請求項26】
前記情報処理スタックは、カーネルスケジューラAPI(740,830)を介して、前記量子ゲート回路に必要な前記古典メタ情報を前記オペレーティングシステム(770)に関連付けられたメモリパターン変換層(720)に転送するようにさらに構成されている、請求項19~25のいずれか一項に記載の方法。
【請求項27】
前記情報処理スタックは、物理量子ビットレジスタによる実装のためにさらに構成され、前記量子ゲート回路に必要とされる前記古典メタ情報は、ネイティブ量子プロセッサのゲート制御ユニットによって計算される、請求項19~26のいずれか一項に記載の方法。
【請求項28】
前記方法は、仮想量子プロセッサによってさらに実施され、前記メインメモリ内のゲート行列は、プロセッサハードウェアが好ましくはカーネルスケジューラAPIの上方に前記情報処理スタックの非依存アーキテクチャで実装されるように、前記量子ゲート回路に必要とされる前記古典メタ情報で構築される、請求項19~26のいずれか一項に記載の方法。
【請求項29】
前記方法は、好ましくは前記ハードウェア層(780)の物理リソースによって実行される、ハイブリッド量子計算オペレーティングシステムのプロセッサカーネル拡張内の1つのソフトウェアとして算術論理演算ユニット(ALU)を利用するように構成された量子処理ユニット(QPU)を介してさらに実施される、請求項19~28のいずれか一項に記載の方法。
【請求項30】
プログラマが、同じバージョンの前記オペレーティングシステム(770)を実行する任意の数の異なるプロセッサおよび計算ノードにわたって1つのアプリケーション内にアプリケーションおよび/またはタスクを分散させることができるように、好ましくは前記プログラマにスレッド並列化の既知の方法を提供するMPIオーバーレイ機能(740)を有するカーネルスケジューラAPIを用いて前記コンテナ環境(760)を実装するステップをさらに含む、請求項19~29のいずれか一項に記載の方法。
【請求項31】
アプリケーションを実行するとき、前記情報処理スタックは、
仮想量子処理ユニット(仮想QPU)およびネイティブ量子処理ユニット(ネイティブQPU)の両方で前記アプリケーションの並列バージョンを実行するように構成され、
好ましくは、前記アプリケーションがネイティブQPUを介して実行されているとき、メモリパターン変換ユニット(720)は状態ベクトルを読み取るように構成され、および/または
好ましくは、前記アプリケーションが仮想QPUを介して実行されているとき、前記システムは、自動的に先進量子触発計算(AQIC)ショートカットを利用するように構成されている、請求項19~30のいずれか一項に記載の方法。
【請求項32】
前記情報処理スタックは、プロセッサカーネル拡張で構成された仮想プロセッサインスタンス(VPI)を使用して、共有メモリ内のネイティブ処理および仮想処理の異なるインスタンスで利用されるデータを記憶するように構成されている、請求項19~31のいずれか一項に記載の方法。
【請求項33】
前記情報処理スタックは、
共有メモリにデータを記憶させ、仮想プロセッサインスタンス(VPI)を使用して前記データを処理するように構成されており、前記VPIは、
マルチプロトコルドライバ(MPD)(870)、メタプロトコルコントローラ(MPC)(880)、および算術論理演算ユニット(ALU)(890)を含む複数のサブコンポーネントと、
前記メインメモリ内の共有メモリへのアクセスを前記サブコンポーネントに提供し、前記サブコンポーネントを伴う直接メモリアクセス(DMA)交換を扱うように構成されたバスシステム(860)と、
を備えるプロセッサカーネル拡張である、請求項19~32のいずれか一項に記載の方法。
【請求項34】
前記マルチプロトコルドライバ(MPD)(870)は、
前記オペレーティングシステム(830)へのドライバインターフェースとして機能し、
マルチプロトコルドライバ(MPD)(870)、メタプロトコルコントローラ(MPC)(880)、および算術論理演算ユニット(ALU)を含む仮想プロセッサインスタンス(VPI)のサブコンポーネント間の通信を扱い、
異なるプロトコルを変換し、
前記VPIの前記サブコンポーネントと前記外部システムとの間で切り替え、および/または
前記仮想処理ユニットのためのキャッシュを保持するように構成されている、請求項33に記載の方法。
【請求項35】
前記仮想処理ユニットは、
前記VPIの物理的実装形態がない場合、メモリ内の前記マルチプロトコルドライバによって構築され、および/または
物理(量子)処理ユニットの物理キャッシュを前記メインメモリ内にマッピングし、こうして前記システム全体のキャッシュコヒーレンシを提供するように構成されている、請求項34に記載の方法。
【請求項36】
前記メタプロトコルコントローラ(880)は、前記マルチプロトコルドライバ(MPD)を介した前記メタ情報交換を扱い、量子回路などの前記情報処理構造のための中間表現(IR)を保持するように構成されている、請求項34または35に記載の方法。
【請求項37】
ゲートベース量子プロセッサを利用する実装中に、前記算術論理演算ユニット(ALU)(890)は、行列演算を有する線形代数表現を使用して論理演算および算術演算を実行するように構成されている、請求項34~36のいずれか一項に記載の方法。
【請求項38】
仮想化量子処理を実行する方法であって、前記方法は、
メインメモリ(610,720)と、前記メインメモリ(610)に結合された1つ以上のメモリバスシステム(650)と、前記メインメモリ(610)へのアクセスを有する1つ以上の物理処理ユニット(620)と、前記1つ以上の物理処理ユニット(620)のうちの少なくとも1つに結合されたデータ処理ユニット(640)とを備える仮想量子コンピュータシステムを実装するステップと、
関連する同じ状態ベクトル|ψ>が前記古典情報|0>および|1>と併せてまたは一緒にメモリパターン内に完全に表されるように、前記メインメモリ内の前記メモリパターンの中間表現にブロッホ球を組み込むことを含む、前記メインメモリ(610,720)内の前記メモリパターンを実装するステップと、
を含む方法。
【請求項39】
仮想量子コンピュータシステムであって、請求項1~38のいずれか一項に記載の1つ以上の部分、態様、および/またはステップ、および/または本開示の他の箇所に記載された他の特徴または機能を実行するように構成された1つ以上のサーバ、コンピュータプロセッサ、メモリ、および/またはコンピュータ可読媒体を備える仮想量子コンピュータシステム。
【請求項40】
仮想化量子処理を実行する方法であって、前記方法は、請求項1~38のいずれか一項に記載の1つ以上の部分、態様、および/またはステップ、および/または本開示の他の箇所に記載された他の特徴または機能を実行するステップを含む方法。
【請求項41】
コンピュータ可読命令を含む、および/または実行するように構成された1つ以上のコンピュータ可読媒体であって、前記コンピュータ可読命令は、1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに、請求項1~38のいずれか一項に記載の1つ以上の部分、態様、および/またはステップ、および/または本開示の他の箇所に記載された他の特徴または機能を実行させる命令を含む、1つ以上のコンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【0001】
[関連出願の相互参照]
本国際PCT特許出願は、その全体が参照により本明細書に組み込まれる、米国仮特許出願第63/195692号の利益を主張する。
【0002】
特定の背景技術は、コンピュータサイエンス、量子情報理論、量子物理学、コンピュータアーキテクチャ、量子処理、および/またはそれらの物理構造を有する記憶構成要素の分野に関する。
【0003】
背景として、従来のコンピュータは、主にアラン・チューリングによる計算の理論と、ジョン・フォン・ノイマンによるもののような異なるアーキテクチャ概念とに基づいている。したがって、産業および商業製品における多くの用途に使用されている現在のコンピュータは、基本的にデータと呼ばれる入力状態のセットを、データでもあるが問題の「結果」または「解」とも呼ばれる出力状態のセットに変換する、チューリング機械と呼ばれる。チューリング機械は、中央処理装置の算術論理演算ユニット(ALU)にハードワイヤードされた数学関数を順次実行することしかできないので、データのこの変換を生成する中間の計算はアルゴリズムと呼ばれる。したがって、プログラム自体は、単純にALUの関数を次々と選択する、いわゆるマシンコードのセットからなる。チューリング機械用のこのようなプログラムで数学的問題を符号化することができ、有限数のステップの後にチューリング機械が実行を停止した場合、別のデータのセットである有限結果によって問題が解かれる。
【0004】
全てのチューリング機械(
図1に示される例示的なものなど)は、古典的な力学によって物理的に構築することができるという共通点を有する。このようにして、チューリング機械は高度に予測可能であり、理論的に決定論的であり、これは、プログラムがどのような頻度で実行されるかにかかわらず、特定の入力データのセットが毎回同じ出力データのセットをもたらすという事実によって表される。チューリング機械はまた、プログラムステップを順番に1つずつしか実行できないというその能力においても制限されている。より多くのチューリング機械を並べて実行することもできるが、データ交換を介してこれらが相互作用するようになるとすぐに、1つのチューリング機械が他方の結果を待つ必要がある。
【0005】
この問題に対する根本的な解決策は、ニューラルネットワークまたは量子コンピュータのような新しいタイプの計算機械である。量子コンピュータは、チューリング機械の根本的な計算上の制限を克服する完全に異なるアプローチであり、もはや古典的な決定論的力学に基づくのではなく、量子力学に直接基づいている。さらに、様々な事例において、量子および順次決定アルゴリズムの両方が可能なハイブリッド量子コンピュータが望ましい場合がある。この種の関連技術の一例は、国際公開第2020/106777号に記載されている。このような関連技術の様々な実施形態は、添付の
図1~
図4を参照してさらに説明することができる。例えば、
図1は、既知のチューリング機械のブロック図である。
図2は、本開示の特定の実施形態の典型的な態様と一致する、典型的なユニバーサル量子機械のブロック図である。
図3は、本開示の特定の実施形態の典型的な態様と一致する、典型的なハイブリッド量子コンピュータのブロック図である。
図4は、本開示の特定の実施形態の典型的な態様と一致する、典型的なハイブリッド量子プロセッサのブロック図である。
【0006】
上述のように、このような機械のいくつかの理論的概念は、量子コンピュータに関して既に提案されており、および/または知られているが、量子コンピュータの商業的に成功した実装を実現するためには、いくつかの主要な成果が依然として欠けていた。第一に、例えば、チューリング機械の計算クラスに対する量子アナログの既存の技術的問題の技術的解決策、および計算複雑度のクラスへのそれらの接続を定義するユニバーサル量子機械のモデルが欠けていた。第二に、実際に量子情報処理を達成するために必要とされる、それらの間のデータ交換の広帯域幅を維持しながら、異なる種類の処理ユニットの間のキャッシュコヒーレンシの既存の技術的問題に対する技術的解決策も有するハイブリッド量子コンピュータの物理的実装形態も欠けていた。これらの革新の両方、および/または既知の技術の他の欠点をどのように克服するかに関する様々な技術的解決策が、本明細書に記載されている。
【発明の概要】
【0007】
均一計算モデルを伴う、および/またはこれに関するシステムおよび方法が開示される。特定の例示的な実施態様では、ハイブリッド量子計算およびハードウェア非依存特徴、機能、および/または処理に基づく典型的な均一計算モデルは、チューリング機械内の命令のセットに基づいて汎用ハイブリッド量子機械をエミュレートするために利用される仮想量子プロセッサなどを介して、利用/提供され得る。本明細書のシステムおよび方法は、ハイブリッド量子計算のより汎用的な実装形態を利用することができ、例えば、一方ではハードウェア非依存だが、その設計上の優秀さに関係なく、任意の将来の量子計算システムを支配する自然の法則を依然として期待している。関連する態様および利点は、ここでは、チューリング機械内の命令のセットに基づいて汎用ハイブリッド量子機械をエミュレートするように構築された、空想上のハードウェアである仮想量子プロセッサを介して実装される。このような仮想量子プロセッサが確立されると、ハイブリッド量子ソフトウェアが生成され、これは、後に量子計算ハードウェアの任意の物理表現に適用することができるが、既に現在の機械で実行されている。いくつかの実装形態では、ブロッホ球は、関連する同じ状態ベクトル|ψ>が古典情報|0>および|1>と共にメモリパターン内に完全に表されるように、メインメモリ内のメモリパターンの中間表現に組み込まれる。
【図面の簡単な説明】
【0008】
本開示の様々な実施形態は、添付の図面を参照してさらに説明することができ、いくつかの図を通して同様の構造が同様の番号で示される。示される図面は必ずしも縮尺通りではなく、代わりに本開示の原理を説明することに重点が置かれている。したがって、本明細書に開示される特定の構造および機能的詳細は、限定として解釈されるべきではなく、単に、1つ以上の例示的な実施形態を様々に利用することを当業者に教示するための代表的な基礎として解釈されるべきである。
【
図1】既知のチューリング機械のブロック図である。
【
図2】本開示の特定の実施形態の典型的な態様と一致する、典型的なユニバーサル量子機械のブロック図である。
【
図3】本開示の特定の実施形態の典型的な態様と一致する、典型的なハイブリッド量子コンピュータのブロック図である。
【
図4】本開示の特定の実施形態の典型的な態様と一致する、典型的なハイブリッド量子プロセッサのブロック図である。
【
図5】本開示の特定の実施形態の典型的な態様と一致する、典型的なブロック球のブロック図である。
【
図6】本開示の特定の実施形態の典型的な態様と一致する、均一情報処理ハードウェアの典型的なセットのブロック図である。
【
図7】本開示の特定の実施形態の典型的な態様と一致する、典型的な均一情報処理ハードウェアスタックのブロック図である。
【
図8】本開示の特定の実施形態の典型的な態様と一致する、典型的な仮想プロセッサインスタンスのブロック図である。
【発明を実施するための形態】
【0009】
添付の図面と併せて、本開示の様々な詳細な実施形態が本明細書に開示される。しかしながら、開示される実施形態は単なる例示であることを理解されたい。加えて、本開示の様々な実施形態に関連して与えられる例の各々は、限定的ではなく例示的であるように意図される。
【0010】
本明細書を通して、以下の用語は、文脈が明らかにそうでないことを示さない限り、本明細書に明示的に関連する意味をとる。本明細書で使用される「一実施形態では」および「いくつかの実施形態では」という語句は、同じ実施形態を指してもよいが、必ずしもそうとは限らない。さらに、本明細書で使用される「別の実施形態では」および「いくつかの別の実施形態では」という語句は、異なる実施形態を指してもよいが、必ずしもそうとは限らない。したがって、以下に記載されるように、本開示の範囲または趣旨から逸脱することなく、様々な実施形態を容易に組み合わせることができる。
【0011】
他の態様が含まれてもよいが、本開示は、ハードウェアに依存しないハイブリッド量子計算に基づく均一計算モデルに焦点を当てている。以下でより詳細に説明され、開示される技術と一致するように、本明細書のシステムおよび方法は、このような技術の任意の物理的実装形態の一般的な表現である、仮想量子プロセッサをエミュレートするためのチューリング機械の革新的な利用および/または組み込みを伴う。チューリング機械および量子機械の基礎を精査するために、まず、量子物理学の特別な用途としての量子計算が特定される。物理学者らは、20世紀のうちに、ヒルベルト空間と呼ばれる多次元複素ベクトル空間における線形代数に基づく、量子物理学の非常に明確な数学モデルを確立しているため、少なくとも、このような量子物理学を古典的なコンピュータで計算できることが知られている。これは、「量子計算シミュレータ」と呼ばれるソフトウェアにおいて、IEEE754バイナリ浮動小数点フォーマットなどの浮動小数点表現の行列を計算することによって行われる。本明細書で使用されるシミュレーションという用語は、チューリング機械のいわゆる「ブロッホ球」の表現を指す。量子ビットの状態ベクトルを表す行列は、チューリング機械内の任意の重ね合わせのための古典的な演算の特定のセットで演算される、これは状態ベクトルの2つの角度のシフトを意味する。量子コンピュータでは、これは、単一の量子ビット上の回転ゲートと呼ばれ、理想的には、単一のステップで、任意の数の量子ビットについて実行することができる。チューリング機械は、計算力のこのような線形拡張で重ね合わせの計算を並列化することもできる。したがって、量子機械の大きな利点はない。
【0012】
したがって、古典的なコンピュータは、その量子ビットの状態ベクトルおよび量子ゲートとのそれらの接続に対して量子コンピュータによって行われる計算を再現することができ、いわゆる量子回路を誤りなく構築する。古典コンピュータと量子コンピュータとの違い、および量子コンピュータを稼働させる理由は、もつれた状態ベクトルを有するこれらの大きな行列を計算しながら指数関数的により良くスケーリングする、量子情報のネイティブ処理である。量子情報の重ね合わせ、すなわち単一量子ビット演算のみであれば、古典的なコンピュータ内でも実際には量子コンピュータ内とほぼ同じ効率で実行される。しかし、状態ベクトルのもつれの可能性により、それぞれの行列の計算は、チューリング機械内では指数関数的にコンピュータ時間をスケーリングするが、量子機械ではできない。
【0013】
1.ユニバーサル量子機械に関する技術的概要
多項式時間内にチューリング機械によって解くことができる問題のクラスはPと呼ばれるが、多項式時間内にユニバーサル量子機械によって解くことができる問題のクラスはQPと呼ぶことができる。チューリング機械に確率的ソースを追加することによるPのクラスへの理論的拡張もあり、その結果、NPと呼ばれる退行式時間内にこのような非決定論的チューリング機械によって解決することができる問題のクラスにつながる、真の乱数の生成も可能である。P<または=NPおよびNP<または=QPのいずれかに関して決定されないという事実のため、複雑度クラスの最終理論はまだないことに留意されたい。さらに、制限を有する量子機械から、可能な限り短い計算時間内に全ての可能な量子アルゴリズムを計算することができる定義によってユニバーサル量子機械を完全に見分けることは、まだできない。それにもかかわらず、量子情報理論は、このパズルに関する情報を含み、本明細書に記載されるような量子コンピュータは、これらの微妙な違いを詳述するのに役立つであろう。
【0014】
ここに記載される技術は、
図2に示されるように、任意のユニバーサル量子機械で有効な一般的なモデルのために、以下の典型的な態様または方式を利用および/または包含することができる。さらに、本明細書の態様は、宇宙には量子効果、したがって量子アルゴリズム以外に真の確率的ソースはないという原理/洞察に基づいている。これを考慮すると、確率的ソースによる決定論的チューリング機械の理論的拡張は、最終的に制限のある量子機械をもたらす。一方、決定論的プロセスは、定義により、決して真の確率的ソースを生成することができない。これは、真の乱数を生成するタスクは決定論的チューリング機械上で決して停止しないが、不確定なチューリング機械によって容易に達成することができるため、Pは<NPでなければならないという結論につながる。その意味でのNPはQPのサブセットであるため、QP>NP>Pであると考えられる。
【0015】
図1および
図2に関連して説明されたように、チューリング機械とユニバーサル量子機械とのアーキテクチャの比較は以下のように説明される。
図1を参照すると、このようなチューリング機械は、シンボルの外部ソース(シンボルの入力セット)から直接供給することができ、次いでプログラム命令またはデータとして機械によって解釈される、従来のビットのレジスタ110を含むことができる。言語はかなり簡単であり、レジスタに接続されたメモリバンド120(読み取り/書き込み-テープ)を移動させるためのコマンド、ならびにこのバンド上でシンボルを書き込みまたは読み取りするためのコマンドがある。テープ上の個々の位置は明確に定義されており、コンピュータ用語では、すなわちこのような位置は「アドレス指定可能」である。コンピュータプログラムの各プロセスステップは、クロック140(サイクル)によって互いに時間的に分離される。
【0016】
任意の位置でテープを移動、読み取り、および書き込みするためのプログラムコマンドとは別に、チューリング機械の算術論理ユニット130(ALU)は、全ての種類の演算を実行するために、全ての必要な数学関数を実装することができる。より複雑な関数は、より簡単な関数のセットに分割することができる。これは、いわゆる決定論的チューリング機械が非決定論的とは異なる点である。決定論的チューリング機械は、特定の入力から1つのみの特定の出力を生成することができる関数のみを利用することができるが、非決定論的チューリング機械は関係の能力も有し、したがって、1セットのみの入力からいくつかのバージョンの出力を生成することができる。選択される可能な結果のバージョンは純粋にランダムであり、予測不可能な確率的ソースによって決定される。したがって、いわゆる非決定論的チューリング機械(NDTM)は、決定論的(DTM)変形形態の反対ではなく、それに対する関係拡張として理解されなければならない。
【0017】
ここで説明した技術に戻ると、態様は、
図2に示されるシステム/実装形態を含むおよび/または包含することができ、これにより、ユニバーサル量子機械の原型を実現し、量子および順次決定演算ならびに非決定論的アルゴリズムの両方が可能である。
【0018】
外からブラックボックスとして見ると、
図2に示される例示的なユニバーサル量子機械(UQM)は、非決定論的チューリング機械(NDTM)と同様に起用し、これは曖昧な関係も可能にする。したがって、全く同じ入力セットから、異なる出力セットを導出することができ、これにより、ユニバーサル量子機械の結果が部分的に予測不可能になる。入力と出力のセットの間には、量子関係を含むアルゴリズムが存在する。
【0019】
ユニバーサル量子機械とチューリング機械との違いに関して、量子レジスタ210(図の上部領域)に記憶された量子情報は、古典情報とは異なり、量子力学によって課されたクローン禁止要件のためコピーすることができない。これは、レジスタの内部の量子情報を無効化、削除、または破棄させる入力を行うために、量子機械との相互作用を必要とするからである。しかしながら、量子レジスタは、このような努力によって破棄される量子状態を記憶するに過ぎない。
【0020】
したがって、現在説明されている量子機械は、計算結果の出力のためだけでなく、レジスタに記憶された値を返すため、ならびに入力データの包含のためにも、古典的な読み取り/書き込み-テープ230を使用する。量子アルゴリズムを実行するには、これらの古典的な、したがって決定論的なデータセットを、本明細書では量子ビットと呼ばれる量子状態260に変換するために、「初期化」、すなわち導入の適切な物理的プロセスが最初に利用される。これらの量子ビットは、
図2で「QBIT-TIE」と呼ばれる量子ビットテープ220上に記憶される。このようにして、古典ビットは、量子レジスタによって直接読み取り、書き込み、および処理することができる重ね合わせ量子ビットになる。ここでの動作はチューリング機械と同様であるが、古典的なアルゴリズムの代わりに量子アルゴリズム270が動作し、古典ビット上に記憶されたデータの代わりに情報が量子ビット上に存在する。量子レジスタは、量子ビットのもつれが可能であり、量子ビットタイは、量子ビットの重ね合わせを提供する。
図2の典型的な実装形態に示されるように、このようなもつれは、量子レジスタ210内のもつれ構成要素212を介して提供されてもよく、このような重ね合わせは、量子ビットタイ計算構成要素220内の重ね合わせ構成要素222を介して提供されてもよい。
【0021】
ここで、レガシーの理由から、例えば技術用語として、本明細書では「テープ」という表現が使用されるが、このような記憶媒体は、従来のテープ(例えば、磁気)記憶装置を超えるメモリ技術の1つ以上を包含し得ることに、さらに留意されたい。
【0022】
このような量子機械によって計算結果を発するためには、読み取り/書き込み-テープの出力を読み取るだけでは十分ではなく、
図2の機器シンボルによって表されるように、初期化の逆のプロセス、すなわち量子ビットの測定250を予め実行しなければならない。この測定は、固有の確率にしたがって量子ビット内で生じる重ね合わせ状態の確率的降下を含み、固有の確率は、レジスタ内の以前に確立された量子ゲートから生じ、出力ビットと呼ばれる部分的に決定論的かつランダムな古典的出力量をもたらす。これらの出力ビットは、古典的なメモリテープ230上に、チューリング機械などによって等しく(例えば、このような以前に確立された量子ゲートを介して)書き込まれ、結果として、またはユニバーサル量子機械のアルゴリズムの古典的なキャッシュとして、利用可能である。したがって、このようなユニバーサル量子機械は、古典的アルゴリズムならびに量子アルゴリズムの両方を実行することができ、したがってチューリング機械をエミュレートすることができることは、明らかである。実際、Shoreによるもののような既知の量子アルゴリズムのほとんどは、交互に構成される古典的な関数および量子関数の両方を使用する。
【0023】
見てわかるように、証拠は、例えば全ての既存の量子関係が発見されていないという任意の示唆を超えて、本明細書に記載される量子機械がユニバーサルであることを確立する。第一に、宇宙における自然量子系を記述する全ての物理モデルは、単に重ね合わせおよびもつれで構成される。第二に、量子情報技術(QIT)における本発明者らの研究は、その基本グラフ理論を用いて、宇宙に保存された情報の全ての可能な配置が、重ね合わせおよびもつれによって完全に記述されることを示している。したがって、
図2に示されるアーキテクチャの普遍的な特性、すなわちユニバーサル量子機械は、この文脈において定義および確立することができる。
【0024】
2.ハイブリッド量子コンピュータの物理的実装形態
完全かつ合理的に簡潔な方法でユニバーサル量子コンピュータの実現を達成および説明するために、このような技術は、
図3に示されるように、サーバとも呼ばれる既存のチューリング機械、さらに、量子プロセッサ360に実装される量子部の構築ブロックに基づいて説明される。
【0025】
図3は、本開示の特定の実施形態の典型的な態様と一致する、典型的なハイブリッド量子コンピュータ300のブロック図である。
図3を参照すると、やはりハイブリッド量子コンピュータの高レベルの典型的なブロック図を示す
図3に示されるように、いわゆるPCI(Peripheral Component Interconnect)エクスプレスバス340またはPCIeとして実現される、ユニバーサル量子機械の古典的な部分、読み取り/書き込み-テープを提供するために、前処理ユニットおよび後処理ユニット330、例えばNovarionのQuanton(商標)サーバなどのチューリングプロセッサを含むシステム要素を利用することができる。
【0026】
工業的手段によって量子計算部を追加するために、本明細書の実装形態は、このような量子計算部を量子処理ユニットまたはQPU360に組み込むことができる。動作上の必要に応じて、ハイブリッド量子コンピュータの古典部および量子部を結合するために、すなわち、これらを円滑に相互接続し、高性能と協働することができるように、古典プロセッサおよび量子プロセッサは、
図3の典型的なシステムに示されるように、メモリ記憶システム320を含むメモリ中心計算アーキテクチャ内に配置される。いくつかの実装形態では、このようなメモリ記憶システムは、特定の記憶システム、すなわちNovarionのPlatinStor(商標)記憶システムを介して実装することができる。一般に、このようなメモリ記憶システム320は、前処理ユニットおよび後処理ユニット330およびハイブリッド量子プロセッサプラットフォーム310の両方から同時にPCIeバスによって直接アドレス指定されるように構成された不揮発性メモリバンクを供えることができる。転送中にデータを損なわないために、このようなメモリ記憶システム320の重要な特徴は、データが物理的に書き込まれており、別のデバイスの物理的読み取り動作に利用可能であるときにのみ書き込みを通知する、内蔵キャッシュコヒーレンスである。このようにして、このメモリ記憶システム320は、本明細書に導入されるハイブリッド量子コンピュータの全体的な機能の鍵である、ここで必要とされるメモリ中心計算プラットフォームをサポートするように特別に設計されている。
【0027】
ハイブリッド量子コンピュータの
図3の例示的なアーキテクチャの態様は、異なる種類の前処理ユニットおよび後処理ユニット330またはチューリングプロセッサ(例えば、NovarionのQuanton(商標)プロセッサなど)、メモリ記憶システム320(例えば、上記のPlatinStor(商標)などの不揮発性メモリバンク)、および構築ブロックを接続するためのPCIeバス340などの既存の産業技術を利用することができる。
図3に示されるように、前処理ユニットおよび後処理ユニット330またはチューリングプロセッサは、
図1に示される一般的な構成要素を備えることができる。さらに、いくつかの実施形態では、前処理ユニットおよび後処理ユニット330またはチューリングプロセッサは、Quanton(商標)のように、全ての異なる種類の古典的処理ユニット、特に排他的ではなく少なくとも、中央処理装置(CPU)、行列処理ユニット(MPU)、グラフィックス処理ユニット(GPU)、またはニューラルネットワークを利用するように構成されてもよい。あらゆる種類のXPUは、PCIeバスを介してメモリ記憶システム320によって提供された集中型メモリアーキテクチャへのXPU構成要素のアクセスを許可する前処理ユニットおよび後処理ユニット330内の内蔵メモリコントローラを使用する必要がある。
【0028】
さらに、メモリ中心計算プラットフォームのサブコンポーネントが業界によって開発されているが、本システムおよび方法の態様は、メモリ中心アーキテクチャによる異種処理ユニット(XPU、QPU)間のキャッシュコヒーレントデータフローの実装などを介して、PCIeバスの周りのソフトウェアおよびハードウェアの関数として生じる革新を伴う場合があることに留意されたい。加えて、前処理ユニットおよび後処理ユニット330(Quanton(商標)サーバシステムなど)ならびにメモリ記憶システム320(PlatinStor(商標)など)の両方が、相互に関連する用途のためにNovarionから既に開発されていることに留意されたい。
【0029】
IONICS計算プラットフォームとも呼ばれる、本革新と一致するハイブリッド量子プロセッサ310は、現在説明されている発明の焦点の1つであり、
図3に示されるように、PCIeバス340を介してメモリ中心計算アーキテクチャに接続されてもよい。ハイブリッド量子プロセッサ300は、新しい光量子情報インターフェース(PQI)350によって接続された、複数の量子プロセッサを組み込む。ハイブリッド量子プロセッサの1つの革新的な構成要素は、
図2に示されるように機能し、
図4に示されるように構築され得る、量子プロセッサコア360である。
【0030】
図4は、本開示の特定の実施形態の典型的な態様と一致する、典型的なハイブリッド量子プロセッサ400のブロック図である。
図4を参照すると、図示されるアーキテクチャは、古典計算部を、量子ビット上に構築された算術論理ユニット(ALU)430である量子機械、すなわち量子ゲートから分離するが、業界標準(PCIe)に基づく比較的高性能でスケーラブルなバスシステムによって両者を接続する。ハイブリッド量子プロセッサ400は、プリント回路基板(PCB)-マザーボード-上に実装および接続されてもよく、IC(集積回路-FPGA)として実現されるバス制御ユニット410(BCU)、量子ビットを重ね合わせてもつれさせるために電子信号をBCUからALU430のパラメータに変換するゲート作成ユニット450(GCRU)からなる。
【0031】
ゲート作成ユニット450およびゲート制御ユニット460は、バス制御ユニット410を量子レジスタから分離し、したがって古典的なバス制御ユニットと量子ゲートを含む量子レジスタ430との間の量子ビットタイ220を表すので、例えば
図4に示されるような、このようなハイブリッド量子プロセッサは、これまでの任意の他の量子ビット実装形態に対して重要なアーキテクチャの違いをもたらす。加えて、ゲート制御ユニット460(GCU)は、量子ビットに対する操作を実行し、これにより、量子ゲート430内での量子情報トランザクションの実行中に、量子ビットは、そうでなければ誤りを引き起こす外乱を受けるおそれがなくなる。これらの量子ビット制御機能は、誤り訂正演算子であり、これは最新技術のアルゴリズムとして実装することができ、例えば、データセンタ内で動作しているハイブリッド量子コンピュータの既存の設備への、ファームウェア更新としてバス制御ユニットによってプログラムすることができる。
【0032】
量子ビット初期化420は、量子ALUが所有する430と同じ数までの量子ビットのセットを作成し、量子ゲート430に入力される量子情報を配信する。量子情報処理の結果は、量子ALU(Q-ALU)の右側の量子ビット測定ユニット440によって取り出される。測定結果はバス制御ユニット410(BCU)に搬送され、そこで、PCIeバスを介して古典メモリ中心計算アーキテクチャおよびそれらの取り付けられた古典プロセッサにさらに転送されるために、古典メモリキャッシュを見出す。量子プロセッサはクロック470(サイクル)によって同期され、これにより、時間単位当たりの多数の重ね合わせられてもつれた量子ビットの生成、処理および測定が可能になる。したがって、ハイブリッド量子プロセッサの計算力は、もつれて重ね合わせられた量子ビットの数、ならびに毎秒の量子計算の数の両方において高度にスケーラブルである。
【0033】
本明細書に図示および説明されるQ-ALU(量子ビット算術論理ユニット430)は、量子ビットの全ての可能なもつれ状態および重ね合わせ状態が可能である。量子ビットは、量子情報に内在し、量子ゲートの格子を同時に定義する。これらの前提条件により、本明細書の実装形態は、Q-ALU内に全ての可能な量子状態および機能の表現を組み込む。したがって、本ハイブリッド量子プロセッサは、実際には、セクション1の記述によって定義されるようなユニバーサル量子機械である。
【0034】
制御ユニット自体は、チューリング機械であり、したがって、ゲート制御ユニットを介して古典情報をQ-ALUにフィードバックすることができる。この特徴は、瞬時の誤り訂正に使用することができ、さらに、本量子プロセッサは、量子アルゴリズムセット全体を自律的に実行し、サーバ内の古典プロセッサに結果を返すことができる。本明細書のシステムおよび方法は、PCIe帯域幅の効率的な使用を可能にし、PCIeバスを介したレイテンシを回避する。
【0035】
本明細書のPCIeシステムはバスシステムであるため、本明細書の実装形態は、このタイプの2つ以上の量子プロセッサを、サーバ内のいくつかの異なる従来のプロセッサに接続することができる。さらに、量子部と古典計算部との間に高速接続があるように、単一のマイクロチップ上の全ての記載された部分の集積が実施されてもよい。このような集積により、本明細書で例として記載されるようなデータセンタ内のサーバだけでなく、パーソナルコンピュータ、スマートフォン、および自動車、飛行機などの組み込みシステムにも有用である。
【0036】
3.ハイブリッド量子プロセッサの実装のための技術的特徴/態様
本発明者の量子情報理論における既存の知見は、量子情報システム(QIS)をどのように量子コンピュータとして使用することができるかを説明している。以下では、どのような条件下で量子情報システム(QIS)が高性能量子コンピュータとして実装および利用されるか、どの原理が本発明の一部であるかが初めて説明される。大文字の概念は、既知の見解である。
【0037】
第1 デコヒーレンスおよび分離の原理
本明細書で利用されるQISは、量子ビット初期化ユニット、ゲート作成ユニット、ゲート制御ユニット、および量子ビット測定システムとは別に、宇宙の他のエンティティが量子プロセッサのQ-ALUに影響を及ぼしたり相互作用することができないように、自己完結型である。
【0038】
第2 忠実度および制限の原理
本明細書の物理的実装形態によれば、計算に使用される量子情報-Q-ALU内の量子ビット-を搬送するQISの要素(粒子)は、重ね合わせて同時にもつれさせることができる物理的品質を提供する。粒子自体が量子情報からなるため、量子情報の理論によれば、粒子はひとりでに重ね合わされてもつれることができる。したがって、量子ビットの物理的実装形態は、QIS全体の自由度が、選択された物理パラメータ上の量子ビット演算に可能な限り制限されるように行われる。これにより、量子計算中の可能な誤りを制限し、これはこのような実装形態の成功に不可欠である。
【0039】
第3 複雑度および多様体の原理
理論家たちは、QISが彼らの既知の高度に機能的な理論を適所に用いて記述されることを好むが、本量子算術論理演算ユニットの包括的な力は、重ね合わせおよびもつれの異なる経路上で多様体によって解放される。これは、現在の高度な量子計算能力が、ニューラルネットワークの機能の説明のように、明示的な理論的形式では扱うことができず、構造レベルで本質的に扱うことができることを意味する。したがって、このようなハイブリッド量子コンピュータのプログラミングは、ソフトウェア技術者によるアルゴリズムの定義によるものではなく、むしろ量子算術論理演算ユニットの構造を構築するための数学者、「量子ゲート開発者」がいなければならず、これはその後、例えば本明細書で説明される量子プロセッサによって、計算の任意の次のステップで自律的に新たに導入することができる。量子ゲートにおける多様体のこの原理を使用して、本量子機械は、ハードウェアおよびソフトウェアが一緒になって任意のアプリケーションと共に変化する、ハードウェア仮想化エンティティである。
【0040】
本発明者の量子情報の理論によれば、もつれおよび重ね合わせの現象の新たな理解が導入された。
【0041】
これによるもつれを、本発明者は、宇宙における異なるエンティティ間の特定の量子情報の共有(=QIS)として説明する。したがって、量子ビットの変化が、ユニバーサル量子コンピュータにおける量子ビットなど、全てのそれぞれの当事者で独立して実行される場合であっても、量子ビットをもつれさせるために、量子ビットの状態を変化させる任意の物理的プロセスを使用することができる。
【0042】
これによる重ね合わせを、本発明者は、宇宙における1つのエンティティ上の異なる量子情報の重複として説明する。したがって、ユニバーサル量子コンピュータで同時に同じ量子ビットを使用して、異なる量子ゲートを構築することができる。
【0043】
4.量子ビットの物理構築ブロック
本Q-ALUで使用される物理システムについてのセクション3の所与の原理、すなわち分離、制限および多様体によれば、量子ビットの構築ブロックとしての可能な物理エンティティの様々な明示的な例は、以下の通りである。
【0044】
光子および電子
人間がこれまでに達成した最も正確な理論の1つは、光子と電子との間の相互作用を説明する量子電磁力学(QED)の理論である。これは、前述のQITによれば、両方の粒子が、第2の原理である制限の手中になる、宇宙の最も単純な構成要素を表すからである。これらの粒子は、提供しやすく測定しやすい。興味深いことに、量子ビットで量子処理ユニットを実現する最初の試みでは、量子ビットのキャリアとしてこれらの扱いやすい電子を選択せず、扱うことができる量子ビットのデコヒーレンス時間をある程度維持するために、絶対零度付近まで冷却する必要のある、ウエハ上のはるかに複雑な超伝導量子回路を選択した。加えて、集積回路の巨視的に近い要素は単純に自由度が大きすぎるため、第2の原理はまた、IBM、グーグル、およびD-WaveによるQ-ALUプロトタイプでは達成するのが非常に難しい。したがって、実用的な量子処理ユニットを構築するためのこれらの企業の多大な努力は、まだ成功していない。
【0045】
本明細書の実装形態によれば、磁気または電気特性の、力場内に保持される電子、Li+、Be+、H-、He+のような単純なイオン、または単なる陽子などの粒子を有し、環境への他の接続はないが、光子、電子、および単純な粒子ならびに準粒子でアドレス指定可能な、3つの所与の原理の結果として得られるこのような量子算術論理ユニットの物理的な実装が論じられる。
【0046】
前述のQITによる陽子は、宇宙で3番目に単純な粒子であり、したがって第2の原理の忠実度要件を満たす。このように、本明細書の実装形態は、量子ビットの量子情報を記憶するための特性として、陽子のスピンを使用する。これは、単純な電子にも当てはまる。これらの非常に単純な粒子で複雑度の第3の原理を満たすために、複雑な磁場を有する多参照ベースのスピンシステムの確率が論じられる(するとスピンは上下できるだけでなく、多くの重なり合う方向を有することができる)。磁場は、室温であっても集積回路内で制御しやすく、その微視的距離でも十分に強い。前述のQITでは、これらの磁場を用いて、このような技術の太陽が、これらの単純で純粋な量子ビット上に多くの重ね合わせ状態およびもつれ状態を確立することが示されている。このようにして、量子ビットは、3つの原理とはるかに良好に整合する。
【0047】
さらに、高温超伝導材料中の電子で効果が達成され、既存の解決策で必要とされる強力なマイクロケルビン機械の代わりに、液体窒素で容易に冷却することを可能にすることが示されている。
【0048】
さらに、セクション3のもつれおよび重ね合わせの定義によれば、本Q-ALU430におけるゲート作成およびゲート制御は、Q-ALUの外部から来る光子および準粒子などの他の量子物体を用いて行われる。これにより、本ゲート制御ユニットは、量子計算中に量子状態をゼロ測定および誤り訂正することができる。
【0049】
5.ハイブリッド量子プロセッサプラットフォーム
図2のユニバーサル量子機械と呼ばれる現在説明されている理論的構成および
図4のハイブリッド量子プロセッサのブロック図は、任意の量子コンピュータの実用的な実際の実装を有する最初のユニバーサルアーキテクチャを表す。量子ゲートの構造は、Q-ALU430内の算術関数および論理関数として実装され、ゲート作成ユニット450に記憶され、バス制御ユニット410によって選択され、ゲート制御ユニット460によって適切に実行に移されることが可能であるため、量子ゲート構造の偏在的なセットは、本明細書ではハイブリッド量子プロセッサおよび関連するシステムおよびプラットフォームと呼ばれる、このようなユニバーサル量子計算システムを用いて達成される。
【0050】
もつれ
人間の脳は、人間の巨視的世界における進化の産物として、感覚を以前の印象と一致させ、近年一般的知能と呼ばれている周囲の世界を思考および理解するモデルにつながる、予めインストールされるかまたは学習されたアルゴリズムを用いてその感覚を理解するために、感覚から情報を知覚するように特化されている。しかし実際には、いわゆる人間の心理の一般性は、人間の意識的な現実の基礎となる領域、量子物理学の世界から人間を遠ざける。リチャード・ファインマンの名言「誰も量子力学を本当には理解していないと言って差し支えないだろう」のように、人間は、人間の知覚によって、20世紀のうちに解明することができなかった量子システムの奇妙な挙動に困惑している。
【0051】
コンピュータ技術者のコミュニティにとって、ハードウェア非依存ハイブリッド量子計算モデルの基礎として実装されることが望ましいと特定される仮想量子プロセッサのようなものを作成するために、少なくとも古典情報と量子情報との違いを理解しなければならないことは明らかである。
【0052】
したがって、量子もつれに関して知られていることから始めて、コンピュータの計算を高速化するための最も重要な原理の1つとして、量子もつれ状態の最も単純なシステムは、各粒子についてわずか2つの測定可能な品質を有する2粒子システムであり、これは2量子ビットシステムに変換される。ブラおよびケット(例えば、ブラケット)ベクトルの物理表記、ならびに0および1などの測定値の2つの可能な結果を用いて、もつれシステムの状態Sは、以下のように記述することができる。
【0053】
|S〉=α|00〉+β|11〉 (1)
【0054】
ここで、α、βは正規化された複素数であるため、これらの複素共役二乗の和は、以下の単位に等しい。
【0055】
αα*+ββ*=1 (2)
【0056】
これは、状態|S>の測定が行われるときに起こることを表すための量子力学の形式である。結果は、「実際の」量子状態が何であるかではなく、単に測定装置が何を知覚させるかであり得る。現実の概念は、可能な測定結果の重ね合わせに含まれるかまたは他の量子システムともつれる可能性のある、以前の量子状態ではなく、測定されるものを暗示する。現実のこの定義は、人間の感覚によって測定されるものを感知する、進化の産物としての人間の脳による。実際、量子状態の結果を測定するために、測定装置は、問題の量子システムともつれなければならない。これはまた、結果が純粋に確率的であるため、決定論的チューリング機械(DTM)で実際の測定をシミュレートすることができない理由でもある。しかし、そのプログラムの任意の所与の段階の計算に関する非因果的入力を取り出すために、いくつかの物理(量子)システムをDTMの外部に接続することができる。このような測定がシミュレートされるとすぐに、DTMの能力を非決定論的なものに拡張させる、この真のランダム入力を使用して、状態ベクトル測定の確率的結果を決定することができる。(2)の係数αおよびβの正規化は、所与の状態|00>および|11>を正確に測定する場合、それらの複素共役二乗が可能な結果の確率として解釈されるため、量子力学のいわゆるコペンハーゲン解釈にこれらの係数を利用可能にする。少し形式的に見えるものの、|00>などの角括弧内の量子状態の表記と、対応する測定出力00との間の差は、重ね合わせ、もつれ、非局所性および非因果性などの全ての特徴を有する量子空間を古典的、局所的、および因果的な現実と区別するので、膨大である。したがって、表記ならびに見解におけるこの重要な差に留意すべきである。|00>と00との間には測定プロセスがあり、これは技術的手段によるだけでなく概念的でもあり、量子情報プレーンからメタ情報古典層までシステム品質を高める大きなステップである。
【0057】
P(00)=αα* P(11)=ββ*
P(01)=0 P(10)=0 (3)
【0058】
情報理論の言語では、これらの状態のうちのどれが測定装置に提示され得るかについて、量子システムであるwが照会されると言うこともできる。次いで、量子システムの回答を、量子システムと測定装置との間の相互作用から導出することができる。この(相互)作用において、これらの両方が強制的に新しい量子状態にされ、すなわち、これらの両方が同時に変更される。
【0059】
ここで、(1)の状態|S>は、両方とも状態|0>および|1>であり得る、2つの量子システムによって構成されるため、もつれたものである。もつれていない場合、これは、2つの独立した量子システムの4つの可能な結果、すなわち|00>、|10>、|11>、および|01>に対応する。しかし、量子システムは状態|S>によって表されるため、これらは完全にもつれている。これは、2つのシステムのうちの1つが測定された場合、他方のシステムの将来が決定されることを意味する。その後に行われる任意の測定について、同じ質問が尋ねられている限り、回答は、以前測定された量子システムと同じとなり、これは、システムの同じ品質が測定されていることを意味する。
【0060】
人間の知覚に関する1つのことは、もつれのこの量子機構が直ちに任意の距離にわたって機能することである。しかしこれは、アルベルト・アインシュタインが述べたように、量子もつれが奇妙で不気味であることを意味するものではなく、空間-時間における測定のみから情報を取得する人間の脳の機能的な原理を人間に想起させるだけである。このタイプの情報は古典的と呼ばれ、量子システムの状態ベクトル内の情報、すなわち量子ビットは、量子情報として区別される。
【0061】
量子情報
量子システムのこれらの観測から、古典情報と量子情報との間には深い依存性があることがわかる。したがって、ハイブリッド量子コンピュータの最良の技術的実装のための問題は、古典情報のビットbと量子情報のビット|b>との間の依存性の正確な理解から導出すべきである。
【0062】
bを取り出すためには、|b>を測定しなければならない。いわゆる古典世界では、bのみが知覚される。しかし実際には、そのサイズにかかわらず、この宇宙の全てのものおよび人間は量子システムである。「巨視的」世界と「微視的」世界との唯一の違いは、やはり人体のサイズに基づく区別であり、したがって純粋に主観的であるが、単に単位時間当たりの量子測定の数、または古典物理学の観点での粒子相互作用である。したがって、人間は、人間の巨視的な体内で自動的に実行される無数の量子測定に慣れており、これらは、任意の量の特徴からなる世界の滑らかな、今日ではアナログと呼ばれる現実の想像力を人間に与える。しかし、これは錯覚である。
【0063】
コンピュータについても同じである。コンピュータについても同じである。集積回路内の素粒子間の自動進行する相互作用の事実がなければ、量子コンピュータは、計算に用いる古典情報を取り出すために、最初に発明されるべきである。しかし、集積化の努力は、集積回路内の電子と結晶格子との間の相互作用の可能性が低くなり、MOSFETの絶縁ゲートを通る電子の望ましくないトンネリングのように、量子効果のための時間を残すという点まで、技術を導いている。
【0064】
ここでわかるように、古典情報は量子情報なしでは存在しないため、古典情報はメタ情報として量子情報と相関するが、逆に、制限はない。この区別とは別に、古典情報は、量子情報のサブセットとして機能する。コンピュータおよびデータサイエンスでは、メタ情報の概念が知られているため、今、古典情報および量子情報を計算モデル内でどのように扱うべきかがはるかに明らかになる。古典プロセッサの命令セットが処理されるデータに対してメタ情報を表すのと同様に、古典情報は、処理される量子情報に関するメタ情報を表す。実際には、プロセッサが古典および/または量子ビットレジスタの両方の能力を有していない場合、これらを別々に処理する必要はない。この洞察は、将来の量子プロセッサ開発に対する基本的な影響を明らかに有するが、一般化されたハイブリッド量子計算モデルの以下の説明にも非常に有益である。
【0065】
次に
図5を参照すると、開示された技術の特定の実施形態の典型的な態様と一致する、ブロッホ球500を示す図が示されている。この例示的な実施形態では、ブロッホ球は、古典計算および量子計算の統合による努力を誘導するために利用することができる。ここで、例えば、ベクトル|Ψ>によって表される量子状態は、測定後に2つの可能な古典値、すなわちz軸の反対方向の0および1を維持するだけである。
【0066】
排他的0または1しか測定することができないため、これらの反対方向が直交測定結果を表すことに留意することが重要である。実際には、球の原点を通る任意の軸を測定することができるが、これは回転対称の動作を反映するので、所与の例は偏在的である。もう1つの重要なことは、量子ビットの測定後に、状態ベクトル|Ψ>111の、112Aおよび112Bでの量子状態|0>および|1>と、ビットの古典的な状態0および1との間には、基本的な違いがあることである。量子計算中、状態ベクトルは、測定されることなく、ブロッホ球の任意の点に到達することができる。これが例えば|0>112Aに存在し、量子ビットが測定される場合、古典的な0が出力として取得され得る。しかし、量子ビットが測定されない場合、空間-時間における古典情報は取得できない。角度θがゼロとは異なる球上の任意の他の場所については、0測定の確率P(0)は、
【数1】
【0067】
したがって、この確率は、|Ψ>が指す緯度円の下のブロッホ球の表面、および上部の相補的部分の割合に等しい。言い換えると、ブロッホ球上の全ての状態ベクトルにわたる積分は、単位1に等しい。これによる物理的意味は、単純に、その状態について量子システムに尋ねた場合、確実に回答を取り出すということである。しかし、確率は、集合のいくつかの要素と集合全体との比を常に意味するので、確率方程式(3)および(4)にはより微妙な特徴がある。したがって、量子情報のセット全体が明確でなければならない。
【0068】
第3の量子化
量子情報のこの特徴は、量子化されるという単純な事実を反映するが、最終的に、不確定性原理としてヴェルナー・ハイゼンベルクによって最初に説明されている重要な技術的意味をもたらす。
【0069】
【0070】
ここで、σ’は、エネルギー(E)および時間(t)の標準偏差を表す。見てわかるように、減少したプランク定数の半分によって設定された小さいが有限の限界があるため、これらは任意に低くなることができない。エネルギーおよび時間は、物理学のこのような相補的な、またはいわば標準的共役変数のペアである。この意味は、測定プロセス中に正確に展開され、同じ測定において、古典情報である結果に対して特定の精度で満足しなければならない。これは、後に改善することができる測定プロセスの不適切さではなく、宇宙の基本原理である。言い換えると、量子システム自体が有限量のエネルギーからなり、これを測定するには有限の時間しかない限り、任意の量子システムの測定の区別可能な結果の数は有限であり、いずれの場合にも明らかに両方が成り立つ。
【0071】
これにより、量子ビット測定のための確率方程式からの観測を終了する。さらに、不確定性原理に起因して、量子システムから限られた量の古典情報しか取得できず、量子システム全体が、より多くの量子状態を維持し、次いで必ずしもこの量の情報を提供する必要はないと推論することができる。当然ながら、あらゆる粒子、分子、惑星、星、または銀河が構成する有限量の量子情報が、不確定性原理、ひいては人間の意識までの一般的な情報の量子化のための基本的な理由であると仮定すると、量子情報理論の謎の全てにより光を当てることになる。
【0072】
この理論に従うと、量子システムに帰属する量子の数を、観測可能な宇宙において計算することができる。本明細書で使用されるとき、量子の概念は、量子場理論に示されるように、量子場の基本特性と呼ばれる。従来、この量子の数は制限されていなかったが、量子情報理論からの洞察により、情報量の限界を導出することができ、量子システムは、可能な測定手順に十分な回答を与えることができるように備えなければならない。この情報は量子化されているため-量子の数を大文字のIで表す-、最小限のエネルギーを計算することができ、これは観測可能な宇宙のシステムに対応するI=1を意味し、その波動関数は、観測者としての人間の視点および事象の地平線によって区切られるため、観測を行うことができる。このような粒子または量子は、以下のように、人間からビッグバンによって形成された事象の地平線-または宇宙の進化の出発点-までのその波長(λ)を有する。
【0073】
【0074】
ここで、cは光の速度を表し、Hは測定の時点におけるハッブル定数であり、エネルギー(E)の式は、プランク定数hおよび波動関数の周波数(v)を有する通常の式であり、これはこの特定の場合にはHに変換される。基底状態では、Iは1に等しく、励起状態では、Iは自然数に従う。
【0075】
式(6)では、Iで表され、自然数の量子で測定されるその情報量を有する、その外観にかかわらず、場または量子システムとしての宇宙の任意の物体間には、明確な関連がある。これは、エルヴィン・シュレーディンガーおよび彼の波動方程式によって開始された第1の量子化と、ポール・ディラックによって粒子数表示として生み出され、正準量子化として量子場理論によって拡張された第2の量子化との後の、第3の量子化と呼ばれてもよい。第3の量子化は、全ての物理的な物体が特定の量のエネルギーを表すので、空間-時間自体についても、量子の全ての物理的な値を表す。
【0076】
したがって、量子ビットもまた本質的に量子化され、可能な状態ベクトルの数(I)は、以下によって定義される。
【0077】
【0078】
ここで、ΔEは、量子ビット内の測定値を定義し、情報空間全体にわたる、2つの状態ベクトル間のエネルギーの差を表す。このような物理量子ビット、または任意の量子システムについて、ヒルベルト空間が第3の量子化を用いる離散等価式に変換されることを認識することは、注目に値する。
【0079】
したがって、z軸に沿った任意の測定は、量子システム(量子ビット)を強制的に量子状態|0>または|1>のうちの1つにする。しかし、波動関数を崩壊させるという用語が作り出された20世紀の主流の文献とは対照的に、量子ビットはその状態ベクトルに耐え、したがってその波動関数は無傷のままであるが、今やとの相互作用の後に識別され、実際には量子ビットおよび測定機構の両方は、その一方が量子機械の別の歯車または宇宙の残部との別の遭遇に直面するまで、しばらくもつれたままである。そのため、量子ビットが0と測定され、それ以降乱されないままである場合、次の測定もまた0値になるべきである。量子ビットの物理的実装形態では、これは異なり得るが、その後量子ビットの誤った挙動として認識される。最後の0読み取りからこの誤動作までの平均時間は、T1と呼ばれる。
【0080】
このような誤りは、ネイティブ量子レジスタの現在の物理量子ビット実装形態で頻繁に発生するが、これらは、量子レジスタに誤りがないと見なされる均一量子計算モデルに関する以下の説明では対象とならない。これらは、この段階では無視されるが、宇宙の残部から量子コンピュータ内へのこのような望ましくない影響の可能性は注目され、以下に記載される。
【0081】
仮想量子プロセッサ
開示された技術の特定の実施形態の典型的な態様と一致して、量子プロセッサの物理的実装形態から要約される動機は2倍であり得る。第一に、ネイティブ量子レジスタの制限および誤った挙動は、設計および製造の進歩と共に改善することが知られている。同様に、これらは量子ビットのトポロジに大きく依存している。このような物理システムをエミュレートすることは有用であるが、高性能ゲートベース量子計算の分野において、将来の用途でこれらの誤りを緩和するために量子コンピュータシミュレータで何ができるか、これらの検査は根拠がない。最近、量子計算の別の規則、いわゆる「アナログ」量子計算が開発されており、これは、非常に特殊な問題を計算するために、全てのその誤りをそのまま有するネイティブ量子プロセッサを準備するが、これは、対象のゲートベースの変形形態として、ユニバーサル量子計算システムとは見なされない。
【0082】
第二に、量子プロセッサの全ての機能は、これがエミュレートされ、および/または上記の計算スタック全体の任意の部分を変更することなく、いつでも適切な物理的実装形態によって、量子レジスタなどのモデルの任意のシミュレートされた部分を交換することができるように、統合プロセッサモデルに集積される。両方の態様は、理論的に最適化された高性能ユニバーサル量子計算システムの開発に焦点を当てており、そこから、逆に行うときのように、必要な技術的結果をより良く予想することができ、これは、現在最先端のシステムであるノイズ混じりの中規模量子コンピュータ(NISQ)に適したアプリケーションを見つけるために、現在業界で行われている。
【0083】
加えて、このアプローチにより、今日の準備のできた高性能計算技術は、この新規な統合量子計算モデルを独自の手段で実装するために使用される。このための基礎準備は、量子情報に対するメタ情報としての古典情報の性質、および測定プロセス中に形成されるというその固有の動作に関する洞察である。第3の量子化の洞察は、チューリング機械内の量子システムを模倣するために、このような仮想量子ビットの必要とされる分解能の推定を可能にする。
【0084】
(6)および(7)によれば、例えば、その|0>状態と|1>状態との間に1GHz範囲を有するRF量子ビットは、およそ2の90乗の可能な量子状態に帰属し、言い換えると、90古典ビットで、チューリング機械は、精度を欠くことなく量子ビット(量子ビット)をシミュレートすることができる。当然ながら、物理量子ビットの実際の読み取り精度は、何桁も低く、したがって、はるかに容易にエミュレートすることができる。一方、シングル(32ビット)、またはダブル(64ビット)精度の浮動小数点表現を有するチューリング疑似量子ビットは、今日のNISQ実装のどれよりもはるかに優れている。
【0085】
結論として、量子の画像および古典情報の両方を古典メモリに記憶することができる。しかし、これだけでは量子コンピュータは与えられない。本明細書に開示される技術と一致する量子コンピュータおよび仮想量子プロセッサは、以下のために追加で構成される。
【0086】
A.古典メタ情報で量子ビットを初期化する
B.古典メタ情報で量子ビット間のゲート回路を初期化する
C.ユニタリ行列で全ての量子ビットを変換することによって所与の量子回路を処理する
D.古典情報を取り出すために量子ビットを測定する
E.古典情報を処理する
【0087】
文献は、ヒルベルト空間による古典的な離散ビット空間の交換を伴う決定論的チューリング機械としての量子チューリング機械に言及することがある。しかし、これでは不十分である。開示される技術の特定の実施形態のいくつかの典型的な態様によれば、新規性の1つは、古典メモリ内の量子の画像と古典情報との融合によって量子ビットレジスタのシミュレーションを単純化する。当然ながら、古典的に記憶された量子情報は、ネイティブQPUによって処理することができないが、実際には仮想QPUによって処理することができる。
【0088】
特定の量子アルゴリズムの指数関数的な利点を活用するために、ネイティブQPUをこのようなシステムに集積しなければならない。したがって、本明細書で提供される典型的な技術的解決策は、本明細書に記載される均一量子計算モデルであり、これにより、アプリケーションは、例えば内蔵仮想プロセッサおよびネイティブ量子プロセッサの両方で並列に実行される。
【0089】
第2の不正確さは、測定手順に必要な非決定論である。これは、量子ビット精度の長さの変動するビットを有するシャーシ内の単純なセンサ読み取り値が、測定シミュレーションに適切なランダム性を提供するので、今日の高性能決定論的チューリング機械に実装することができる。
【0090】
図2に戻ると、本開示の特定の実施形態の典型的な態様と一致する、典型的なユニバーサル量子機械を示すブロック図が示されている。
図2のこの例示的な実施形態では、正確であるために、例えば、
図2に示されるようなユニバーサル量子機械の典型的なモデルにプラグインすることによって、典型的なネイティブQPUを使用することができる。ここで、ネイティブ量子コンピュータの機能の全部または一部およびその構成要素の情報理論的複雑度に関するこの精度のため、ネイティブ量子プロセッサのこのような部分は、例えば先進量子触発計算(AQIC)のために性能が最適化される、適切なシミュレーションに置き換えられてもよい。
【0091】
開示された技術の特定の実施形態の典型的な態様によれば、従来のチューリングモデル内に表されないネイティブ量子コンピュータの第3の特徴は、測定プロセスである。ここでは、量子情報の一意性が宇宙に組み込まれてもよい。これは、ネイティブ量子ビットを測定する場合、そのメタ表現を古典情報として測定装置に知覚するために、その記憶された量子情報に影響を及ぼす/もつれさせる可能性があることを意味する。これが、その古典的な対応物のようにネイティブ量子情報をコピーすることができない理由である。コピーのこのようなプロセスは、ソースを瞬時に変更する読み取りに帰属する。しかし当然ながら、量子情報の古典的な画像をコピーすることはできる。古典メモリ内の量子情報画像の物理表現として非常に高い精度で、装置の精度にしたがって量子ビットを初期化することが可能である。
【0092】
これらの態様の下では、ネイティブ量子情報のためにコピーに近い機構を作成することが可能であり、コピープロセスの精度はゲート忠実度よりも高く、したがって、特定のアルゴリズムのための十分に良好な近似として機能する。
【0093】
AからEの上記の特徴に基づいて、
図2は、このようなユニバーサル量子機械の典型的な結果的ブロック図を示す。ここで、この図示された実施形態では、ユニバーサル量子機械は、実際の量子プロセッサとなる読み取り/書き込み-テープ230(2A)以外の部分を備えてもよい。読み取り/書き込み-テープ230(2A)を用いて、ユニバーサル量子機械は、古典情報を処理することができ、したがって、ハイブリッド量子プロセッサと見なすことができる。
【0094】
例えば、上述のように、量子情報と古典情報との間の概念および関係によれば、古典的なアルゴリズムは、量子アルゴリズムのサブセットであることが明白である。技術的な意味では、それらの|0>|1>値のみと友に量子レジスタの量子ビットを使用することができ、したがって、量子ビットと古典ビットとの二重性を表すことができる。
【0095】
そのため、ここで、
図2は、両方ともランダムアクセスメモリ(RAM)として技術的に実装することができる、古典メモリ230(2A)および量子メモリ220(2E)を提供するので、実際には典型的なユニバーサル量子機械を示す。
【0096】
いくつかの実施形態では、上述の特徴Aで指定されるように、例えば264(2D)および/または260に示される構成要素は、いくつかの実装形態において、各量子ビットに2つの自由度、例えば状態ベクトルがブロッホ球の表面に接触する点を定義する2つの角度θおよびΦを表すことができる、または単に表す古典メタ情報によって制御される、そのそれぞれのブロッホ球内に特定の状態ベクトルを作成することによって、ランダムアクセス量子ビットメモリ(QRAM)220(2E)を初期化する。
【0097】
いくつかの実施形態では、上述の特徴Bの要件に関して、これは、例えば、QRAM220(2E)と量子レジスタ210(2B)との間の関係によって表される。上述の特徴cに関しては、量子レジスタ内の量子ゲートの処理は、サイクル発生器240(2F)とタイミングを合わせることができる。測定装置250(2C)は、量子回路の処理後の量子ビットである上述の特徴Dを同期して測定することができ、古典値をRAM220(2A)内に記憶し、RAM220(2A)は、計算の量子部を終了し、上述の特徴Eの古典的な後処理に渡す。
【0098】
ここで
図4を参照すると、本開示の特定の実施形態の典型的な態様と一致する、典型的なハイブリッド量子プロセッサ400のブロック図が示されている。ここで、この例示的な実施形態では、典型的な量子処理ユニット(QPU)の技術的実装形態において、量子ビット3Eおよび量子レジスタ3Bは、量子ゲート430として示される、1つの物理システム内で予想され得る。これは、現在の量子技術工学の技能が、信頼できるQRAMを構築するにはまだ不十分であるという事実に起因する。
【0099】
さらに、ゲート作成ユニット450(3G)およびゲート制御ユニット460(3H)ユニットは、LASERまたはマイクロ波パルス発生器など、量子ビットの物理構造に応じた特定のハードウェア実装であってもよい。
【0100】
この例では、バス制御ユニット410(3A)は、量子回路に対する前処理および/または後処理を実行し、高性能計算を補完するために大量のデータ転送および記憶の需要を処理する外部チューリング機械にハイブリッド量子プロセッサを接続する、古典的なキャッシュメモリおよび論理ユニットを表すことができる。なぜなら、量子コンピュータとはこういうもの、例えば、最高性能の情報処理機械だからである。この目的を技術的に達成するために、古典的な構成のクラスタ(HPC)は、次の重要なステップにおいてQPUと融合する。
【0101】
均一情報処理
前述したように、技術的状態により、依然としてノイズ混じりの中規模量子計算の時代(NISQ)では、高品質高速量子処理ユニットは実装されていない。古典的なチューリング機械上の量子コンピュータのシミュレーションは、任意の物理量子計算機器よりも現実のユースケースの方がはるかに良好に機能することが知られている。
【0102】
将来の技術の不確実な構築にもかかわらず、このような計算システムの関連する特徴は、上記のように記載される。チューリング機械は既に非常に強力であるため、HPCの膨大なトランザクション計算速度と固有の量子情報論理の両方を利用することができる。
【0103】
開示された技術の特定の実施形態によれば、本明細書の革新の態様は、均一量子計算モデルを含むことおよび/または包含することができる。いくつかの態様と一致して、例えば、実装形態は、一般に、ブロッホレジスタ(BREG)内の量子情報の古典的な表現と併せてまたは一緒に(例えば、関連して)、仮想量子処理ユニット(vQPU)でこれらのBREGを計算するために、古典情報を記憶することができる。いくつかの実装形態では、ブロッホ球は、関連する同じ状態ベクトル|ψ>が古典情報|0>および|1>と共にメモリパターン内で完全に表されるように、メインメモリ内のメモリパターンの中間表現に組み込まれる。
【0104】
ここで
図6を参照すると、開示された技術の特定の実施形態の典型的な態様と一致する、均一情報処理ハードウェアの典型的なセットのブロック
図600が示されている。特定の実施形態によれば、vQPUは、
図4に示されるのと同じ技術的構成要素を備えてもよいが、
図6に示されるようなチューリング機械の大きなメインメモリ内のソフトウェアコードとして実装されてもよい。この典型的な均一計算アーキテクチャでは、この図示される実施形態に示されるように、メインメモリ610(4A)は、同じ方法で同じ程度まで異なる処理ユニット620(4B)の全ておよび/またはいくつかによってアクセス可能であり得る。処理ユニット620(例えば、中央処理装置(CPU)、グラフィカル処理ユニット;NMPU=ニューロモーフィック処理ユニット;GQPU=ゲートベース量子処理ユニット(GPU;量子アニーリング処理ユニット(QAPU);データ処理ユニット(DPU)など)の各々は、物理的実装形態または仮想プロセッサのいずれかであってもよい。いくつかの実施形態では、ゲートベース量子処理ユニットは仮想プロセッサとして分析されてもよく、他の全ては物理的実装形態と見なされてもよい。しかし、限定はしないが、仮想インスタンスとして実装される任意の他の処理ユニットについても同じ論理に従うことができることを理解されたい。
【0105】
ここでのような、いくつかの実施形態では、最低限の典型的な物理的要件は、中央メインメモリ610(4A)、少なくとも1つの物理処理ユニット620(4B)(現時点で最も先進的なものは、CISC、RISC、およびグラフィックス処理アーキテクチャなど)、内部システムと外部システムとの間のそのブリッジ機能を有するデータ処理ユニット640(4D)、および物理処理ユニット620(4B)とメインメモリ610(4A)との間のメモリバスシステム650(4E)を含むことができる。基礎となる性能理由を有するものなどのいくつかの実施形態では、キャッシュコヒーレンシ相互接続(CXL)630(4C)もまた物理的であってもよいが、これは必須ではない。
【0106】
開示された技術の特定の実施形態の例示的な態様によれば、この典型的なアーキテクチャを用いて、均一計算モデルは一般に、ハイブリッド量子計算用のモデルと同様に、非常に効率的かつ高性能な方法で実装することができる。全ての異なるタイプの処理ユニット、さらにゲートベースシステムまたはアニーリングシステムなどの任意の可能なタイプの量子処理ユニットは、様々な実施形態に集積することができる。いくつかの実装形態では、物理タイプの量子ビットレジスタは、その機能には不適切であり得、性能および品質上の制約のみが、
図7に示される以下の計算スタックを通過する。
【0107】
開示された技術の特定の実施形態によれば、これは、上述のような特徴AからEのいずれかに関する量子プロセッサの機能全体の以前は一般的であった仮想化に起因して可能であり、これらの特徴は、以下のように例示的なチューリング機械の命令セットに変換され得る。
【0108】
図7を参照すると、開示された技術の特定の実施形態の典型的な態様と一致する、1つの典型的な均一情報処理スタックを示すブロック
図700が示されている。この図示される実施形態では、以下の特徴および機能が説明される。
【0109】
A.古典メタ情報で量子ビットを初期化する
いくつかの実施形態では、このタスクは、例えばブロッホレジスタへのメモリパターン変換720を必要とし得る。実装形態では、現在の量子回路シミュレータは、もつれ発生の場合に、後に指数時間で計算される線形行列の記憶のために、メインメモリを簡単に割り当てることができる。しかしこれは、特定の量子回路の詳細に関して最適化されたプロセスではない。例えば、量子ビットの分解能深さは、ブロッホ球上の2
64個の区別可能な点を意味する2倍精度から、十分な数として例えば2
16個まで低減することができる。量子情報のメモリ表現におけるこのような最適化パラメータは、均一量子計算モデルの全体的なトランザクション計算力を効率的に使用するために、カーネルスケジューラAPI740を介してアプリケーション層750からハイブリッド量子オペレーティングシステム770(5G)の内部コアまたはオペレーティングシステムにメタ情報として提供されなければならない場合がある。いくつかの実施形態では、内部コアまたはオペレーティングシステム770(5G)は、プロセッサカーネル拡張および仮想メモリを備え、好ましくはメモリパターン変換層720(5B)およびカーネル拡張730(5C)を含む、オペレーティングシステムであってもよい。さらに、以下の典型的な実装形態に関連して説明されるように、コンテナ環境760(5F)は、
図7の典型的な実施形態に示されるように、好ましくはMPIオーバーレイ機能を有するカーネルスケジューラAPIと、ハイブリッド量子およびニューロモーフィックアプリケーション層などのアプリケーション層750(5E)とを含むかまたは包含することができる。
【0110】
B.古典メタ情報で量子ビット間のゲート回路を初期化する
このような例示的な実施態様では、量子ゲート回路に必要な古典メタ情報をメモリパターン変換層720(5B)に転送するために同じカーネルスケジューラAPI740(5D)を使用することができる。物理量子ビットレジスタを伴ういくつかの態様では、この情報は、ネイティブ量子プロセッサの
図4のゲート制御ユニット460(3H)によって計算することができる。いくつかの実施形態では、量子プロセッサが仮想となる場合、均一量子コンピュータのメインメモリ内のこの情報を用いてゲート行列を構築してもよい。このようにして、プロセッサハードウェアは、上記のカーネルスケジューラAPIなどの、この典型的な計算スタックの非依存アーキテクチャを用いて実装することができる。
【0111】
C.ユニタリ行列で全ての量子ビットを変換することによって所与の量子回路を処理する
いくつかの実施形態では、ネイティブ量子プロセッサの場合、これはその算術論理演算ユニット(ALU)のタスクである。したがって、疑似QPUは、同じユニットを、ただしハイブリッド量子計算オペレーティングシステムのプロセッサカーネル拡張内の1つのソフトウェアとして利用するように構成されてもよく、これは、例えば710(5A)(例えば、メモリ、処理および/またはネットワーク接続リソースなど)の一部または全体である、チューリング機械の物理リソースによって実行される。物理的実装形態にかかわらず、アプリケーション層750(5E)は、プログラマにスレッド並列化の全ての有益な既知の方法を提供する、カーネルスケジューラのMPIオーバーレイ機能を利用することができる。これは均一量子計算モデルを現実の高性能計算環境(HPC)にし、そこでプログラマは、任意の数の異なるプロセッサにわたってアプリケーションおよび1つのアプリケーション内のタスクも分散させ、そこで動作している同じオペレーティングシステム770(5G)でノードを計算することができる。そのプロセッサカーネル拡張および仮想メモリ層を介して、プログラマは、単一のアプリケーションに対して全量の計算リソースを利用し、アプリケーションとハイブリッド量子オペレーティングシステムとの間の関連するメタ情報の交換を伴うその挙動を最適化することができる。
【0112】
D.古典情報を取り出すために量子ビットを測定する
コンピュータ技術のコミュニティでは、ハードウェア非依存ハイブリッド量子計算モデルの基礎として実装されることが望ましいと特定される、仮想量子プロセッサのようなものを作成するために、少なくとも古典情報と量子情報との違いを理解しなければならないことは明らかである。
【0113】
ネイティブQPUの場合、このプロセスは物理的でもあるが、ハイブリッド量子オペレーティングシステムのカーネル拡張は、上述のように、量子情報の古典的な表現によって、疑似環境におけるアナログ手順が可能であるように構成することができる。ただし、メモリパターン変換5Bは、状態ベクトルを読み取ることだけができることに留意されたい。これは真であり、したがって、量子近似最適化アルゴリズム(QAOA)のような特定のアルゴリズムのために時間を節約する、先進量子触発計算の特徴である。しかし、ネイティブQPUおよび仮想QPU上で同時に実行されるハイブリッド量子アプリケーションを構築する際には、ネイティブQPUに関して、このような不公平な古典的利点を控えなければならない。しかし、他方では、均一量子計算モデルの並列化能力により、本明細書のシステムおよび方法は、さらに良好に機能し、仮想QPU上で自動的にAQICのショートカットを使用し、同時にネイティブQPU上で同じアルゴリズムの別のバージョンを使用する、アプリケーションのバージョンを実行する。
【0114】
E.古典情報を処理する
ここで、典型的な均一量子計算モデルでは、情報理論的レベルでの古典計算リソースおよび量子計算リソースのシームレスな融合を表すので、この特徴が提供される。しかし、同じ計算スレッドの古典的情報処理および量子情報処理のシーケンスの間で切り替えることは、このような2つの動作の間のデータが、仮想プロセッサインスタンス(VPI)と呼ばれる処理ユニットの全ての異なるインスタンス間の大量の共有メモリ内で移動する必要がないため、極端に高速であり、均一情報処理スタック内のその理論ミニマムに非常に近いことは、言及する価値がある。
【0115】
仮想プロセッサインスタンス
上記で説明されたように、いくつかの実施形態では、VPIは、そのような計算機器の物理的実装形態に関係なく、処理ユニットの構造のメモリ表現であるプロセッサカーネル拡張を含むことができる。これは、高性能チューリング機械内のソフトウェアコードとして表される、このようなデバイスの機能構造の本質を表すことができる。一方で、VPIは、量子情報を記憶および処理している間、その望ましくない挙動、または量子プロセッサの場合には謝った挙動を再現しないので、物理インスタンスのエミュレーションと見なされるべきではない。実際、VPIは、それが表すデバイスの理想化であるが、このようなデバイスから求められる全ての機能的態様を伴う。他方では、実際にはその一部である完全な計算システムではなく、理想化された処理ユニットの機能構造を表すだけなので、これはシミュレータでもない。
【0116】
図8は、開示された技術の特定の実施形態の典型的な態様と一致する、典型的な仮想プロセッサインスタンスを示すブロック
図800である。
図8のこの例示的な実施形態では、VPIは、計算環境に集積されてもよい。810(6A)のインスタンスに対するこれらのVPIの全ては、アーキテクチャが共有メモリの特徴を暗示するように、メイン(例えば、共有)メモリ850(6E)の全てへのアクセスを有することができる。コンピュータの構成要素間のデータ転送は、適切なバスシステム860(6F)、例えばメモリチャネルまたはPCIeを介した直接メモリアクセス(DMA)によって処理される。したがって、アーキテクチャは、非均一メモリアクセス(NUMA)構築のグループに加わる。機能は、それらのタイプに最適なハードウェア上で実行され、命令コードに対しても成り立つ均一情報処理モデル(UIPM)の非移動データ戦略を支持する。したがって、サブルーチンは、好ましくはリモートプロシージャコール(RPC)を介して呼び出される。いくつかの実施形態によれば、VPI810(6A)は、例えば
図7のそれぞれのカーネル拡張730(5C)内に表される、理想化された構造とは大きく異なる可能性のある、それらの物理的実装形態に関係なくコヒーレントに構築されてもよい。これらの要素の各々は、直接メモリアクセスを有し、VPI内の同じソフトウェア仮想化層によって終端するので、これらは、例えば
図7のカーネルスケジューラAPI740(5D)によって使用される、メッセージ通信インターフェース標準MPIのような高性能並列化方法に利用可能である。このAPIは、ハイブリッド処理コンテナ環境820(6B)において並列に動作するアプリケーションが、それぞれオペレーティングシステム全体のノードであるカーネルスケジューラAPI830(6C)の任意の多くのインスタンス上の仮想処理ユニットの宇宙に向かってそれらのスレッドを並列化することを可能にする。例えば、
図7のプロセッサカーネル拡張および仮想メモリ770(5G)を有するこのようなオペレーティングシステムは、同種のハードウェア非依存抽象化(仮想化)層が異種の物理処理ユニットおよび仮想処理ユニットに及ぶその種類の最初のものである。
【0117】
いくつかの実施形態では、物理処理ユニットおよび仮想処理ユニットの両方が、機能メモリパターン内であるVPI810(6A)によって表され、いくつかの実施形態では、以下の3つの主要な典型的部分を備える。
【0118】
マルチプロトコルドライバ(MPD)870(6G)
いくつかの実施形態では、MPDは、オペレーティングシステム830(6C)へのドライバインターフェースとして機能することができるだけでなく、VPI全体とその2つの他の内部構成要素との間の通信を扱うこともできる。いくつかの例では、MPDは、異なるプロトコルの変換が可能であってもよく、VPIの内部構成要素と外部システムとの間スイッチとして機能する。MPDはまた、仮想処理ユニットのためのキャッシュを保持してもよく、これは、背後にVPIの物理的実装形態がない場合には、メモリ内にMPIを構築してもよく、または物理(量子)処理ユニットの物理キャッシュをメインメモリ内にマッピングし、こうしてシステム全体のキャッシュコヒーレンシに、例えばコンピュートエクスプレスリンク(CXL)のようなプロトコルを提供する。
【0119】
メタプロトコルコントローラ(MPC)880(6H)
いくつかの実施形態では、MPCは、MPDを介して交換されるメタ情報を扱い、例えば量子アセンブリ言語(QASM)またはニューロンネットワークのリンクパターンを用いた量子回路などの情報処理構造のための中間表現(IR)を保持する。このメタ情報はその後、量子ビットまたはニューロンのような物理リソースまたは仮想リソースを扱うことができる。
【0120】
算術論理ユニット(ALU)890(6I)
いくつかの実施形態では、任意の処理ユニットと同様に、ALUは、プロセッサのレジスタ間で実行される論理演算および算術演算のコアであってもよい。ゲートベース量子プロセッサの場合、これは行列演算の線形代数表現であってもよい。
【0121】
均一情報処理モデルを含む様々なこれらの典型的で革新的なシステムおよび方法は、行列処理ユニット(GPU)などの他のハードウェアを用いて量子コンピュータをシミュレートするのに適していることを理解されたい。実際、このような実装形態は、全く異なるもの、および性能に対してどのような影響を及ぼす結果になるかについて特定のハードウェアのために記述されたアルゴリズムを実装するために利用することができる。さらに、いくつかの実施形態では、データ処理ユニット840(6D)は、このようなメモリ中心計算ノードの多くを、数千のノードを有するデータセンタ施設全体に及ぶことができるさらに大きなコヒーレント中央メモリ構造に接続するために使用することができる。
【0122】
開示された技術の様々な実施形態によれば、データセンタ内の高性能で高度にスケーラブルなアプリケーションのための新しい計算アーキテクチャは、例えば、それらの特異なカーネル内の任意のプロセッサタイプとは異なるHPCノード内の今日の実行中心オペレーティングシステムから、アプリケーション層に対して均質に提示され、単一の中央メモリに機能的に記憶される、あらゆる種類の処理ユニットのためのカーネル拡張を有するメモリ中心オペレーティングシステムへの転換である。今日のソフトウェア開発フレームワークは、革新的なオペレーティングシステムおよび方法をサポートするのに適しており、新しいライブラリは、これらがハイブリッド(量子)計算アプローチから膨大な利点を得ることを可能にする。
【0123】
開示された技術の様々な実施形態によれば、ハードウェアの進歩はアプリの高速化に寄与するだけであるが、仮想プロセッサインスタンスの中間表現によって隠されているため、このように新規な均一情報処理プラットフォーム上に構築されたアプリケーションは、続いて出てくるバージョンで動作することができる。さらに、これは、プログラマがハードウェアおよびオペレーティングシステムのより新しいバージョンに基づく新しい特徴を追加するのを妨げず、これらの特徴はシステムの将来の世代と上位互換性がある。これは、今日使用されているインストールベースについて既に1兆ユーロをはるかに上回っている、ソフトウェア開発で行われた投資を節約するので、40年以上にわたってx86アーキテクチャで行われてきたように、業界にとって非常に有望な特徴である。
【0124】
さらに、この新規な均一量子計算モデルは、例えば網羅的なデータセンタの使用のために新しい量子プロセッサ技術が用意されるとすぐに、ソフトウェアを書き換える必要なしにハイブリッド量子計算にシームレスに変換する今日の先進量子触発高性能計算を可能にするので、ハード問題wの計算による最適化からの大きな可能性を促進する。
【0125】
本明細書に記載されるように、反対に開示されない限り、本発明の実装形態および特徴は、コンピュータハードウェア、ソフトウェア、および/またはファームウェアを通して実装することができる。例えば、本明細書に開示されるシステムおよび方法、またはその態様、部分、および/または関与する構成要素は、例えば、コンピュータ、サーバなどのような1つ以上のデータプロセッサを含む様々な形態で具現化されてもよく、少なくとも1つのデータベース、デジタル電子回路、ファームウェア、ソフトウェア、またはこれらの組み合わせも含むかまたはこれらにアクセスしてもよい。さらに、開示された実装形態のいくつかは特定の(例えば、ハードウェアなど)構成要素を記載しているが、本明細書の革新と一致するシステムおよび方法は、ハードウェア、ソフトウェア、および/またはファームウェアの任意の組み合わせで実装することができる。さらに、本明細書の革新の上述の特徴および他の態様ならびに原理は、様々な環境で実施することができる。このような環境および関連するアプリケーションは、本発明による様々なプロセスおよび動作を実行するように特別に構築されてもよく、および/または態様は、特定の特徴/機能を提供するためのコードによって選択的に起動または再構成された汎用コンピュータまたは計算プラットフォームを含んでもよい。
【0126】
本明細書では、構成要素、モジュール、デバイスなどのような特定の用語の使用は、様々な方法で実装され得る様々なタイプの論理または機能デバイス、プロセス、またはブロックを指すことができる。例えば、様々なブロックの機能は、他のものと組み合わせることができ、および/または任意の他の数のモジュール内に分散させることができる。例えば、特定のモジュールは、例えば本明細書の革新の機能を実装するために処理ユニットによって読み取られるために、上記で開示された計算要素などの中の、またはこれに関連付けられた有形メモリ(例えば、ランダムアクセスメモリ、読み取り専用メモリ、CD-ROMメモリ、ハードディスクドライブ)に記憶されたソフトウェアプログラムとして実装されてもよい。また、モジュールは、本明細書の革新によって網羅される機能を実装するハードウェア、論理/回路などとして実装することができる。最後に、モジュールは、所望のレベルの性能およびコストを提供する、専用命令(SIMD命令)、フィールドプログラマブル論理アレイ、またはこれらの組み合わせなどの態様を伴う使用のために構成されてもよい。
【0127】
本明細書に記載されるシステムおよび方法の態様は、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイ論理(PAL)デバイス、電気的プログラマブル論理およびメモリデバイス、ならびに標準セルベースデバイスなどのプログラマブル論理デバイス(PLD)、ならびに特定用途向け集積回路を含む様々な回路のいずれかにプログラム可能な機能として実装されてもよい。態様を実装するためのいくつかの他の可能性は、メモリデバイス、メモリを有するマイクロコントローラ(EEPROMなど)、組み込みマイクロプロセッサ、ファームウェア、ソフトウェアなどを含む。さらに、態様は、ソフトウェアベースの回路シミュレーション、ディスクリート論理(シーケンシャルおよび組み合わせ)、カスタムデバイス、ファジー論理、ニューラルネットワーク、他のAI(人工知能)または機械学習システム、量子デバイス、および上記のデバイスタイプのいずれかのハイブリッドを有するマイクロプロセッサに組み込まれてもよい。
【0128】
本明細書に開示された様々な論理および/または特徴は、ハードウェア、ファームウェアの任意の数の組み合わせを使用して、および/またはそれらの挙動、レジスタ転送、論理構成要素、および/または他の特性に関して様々な機械可読またはコンピュータ可読媒体に組み込まれたデータおよび/または命令として有効にされ得ることにも留意されたい。このようなフォーマットされたデータおよび/または命令を組み込むことができるコンピュータ可読媒体は、有形の様々な形態の不揮発性記憶媒体(例えば、光、磁気、または半導体記憶媒体)を含むが、これらに限定されず、ただし一時的媒体は網羅しない。
【0129】
本発明の他の実装形態は、本明細書の考察および本明細書に開示される革新の実践から、当業者には明らかになるだろう。本明細書および実施例は、例示としてのみ見なされることが意図され、本発明の真の範囲および趣旨は、本開示および本明細書に開示された実施例/技術によって示される。
【手続補正書】
【提出日】2024-01-30
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
仮想量子コンピュータシステムであって、
メインメモリ(610)と、
前記メインメモリ(610)に結合された1つ以上のメモリバスシステム(650)と、
好ましくは少なくとも1つのメモリバスシステムを介した前記メインメモリ(610)へのアクセスを有する1つ以上の物理処理ユニット(620)と、
前記1つ以上の物理処理ユニット(620)のうちの少なくとも1つに結合されたデータ処理ユニット(640)であって、前記データ処理ユニット(640)は、前記仮想量子コンピュータシステムの内部システムと外部システムとの間のブリッジとして機能する、データ処理ユニット(640)と、
前記1つ以上の物理処理ユニット(620)を接続する1つ以上のキャッシュコヒーレンシ相互接続(630)と、
情報処理スタックであって、
ハードウェア層、前記ハードウェア層に結合されたオペレーティングシステム、および前記オペレーティングシステムに結合されたコンテナ環境を備え、
前記情報処理スタックが、
(A)古典メタ情報で量子ビットを初期化し、
(B)前記古典メタ情報で前記量子ビット間のゲート回路を初期化し、
(C)ユニタリ行列で全ての量子ビットを変換することによって所与の量子回路を処理し、
(D)古典情報を取り出すために前記量子ビットを測定し、
(E)古典情報を処理する
ように構成されている、情報処理スタックと、を備える
、
仮想量子コンピュータシステム。
【請求項2】
仮想量子コンピュータシステムであって、
メインメモリ(610)と、
前記メインメモリ(610)に結合された1つ以上のメモリバスシステム(650)と、
好ましくは少なくとも1つのメモリバスシステムを介した前記メインメモリ(610)へのアクセスを有する1つ以上の物理処理ユニット(620)と、
前記1つ以上の物理処理ユニット(620)のうちの少なくとも1つに結合されたデータ処理ユニット(640)であって、前記データ処理ユニット(640)は、前記仮想量子コンピュータシステムの内部システムと外部システムとの間のブリッジとして機能する、データ処理ユニット(640)と、
を備え、
関連する同じ状態ベクトル|ψ>が前記古典情報|0>および|1>と併せてまたは一緒にメモリパターン内に完全に表されるように、前記メインメモリ(610)内の前記メモリパターンの中間表現にブロッホ球が組み込まれる、
仮想量子コンピュータシステム。
【請求項3】
前記1つ以上のキャッシュコヒーレンシ相互接続(630)は物理ハードウェア構成要素を備え、および/または
古典メタ情報を用いる前記量子ビットの前記初期化は、メモリパターン変換(720)を実行するステップを含み、前記メモリパターン変換は、ブロッホレジスタおよびニューラルネットワークの一方または両方への変換を含む、
請求項1または2に記載のシステム。
【請求項4】
量子情報のメモリ表現における最適化パラメータは、前記情報処理スタックの全体的なトランザクション計算力を効率的に使用するために、カーネルスケジューラ(API 5D)を介してアプリケーション層(750)から前記オペレーティングシステム(770)の内部コアにメタ情報として提供される、
請求項
1または2に記載のシステム。
【請求項5】
前記情報処理スタックは、カーネルスケジューラAPI(740,830)を介して、前記量子ゲート回路に必要な前記古典メタ情報を前記オペレーティングシステム(770)に関連付けられたメモリパターン変換層(720)に転送するようにさらに構成されている、
請求項
1または2に記載のシステム。
【請求項6】
物理量子ビットレジスタをさらに備え、前記量子ゲート回路に必要とされる前記古典メタ情報は、ネイティブ量子プロセッサのゲート制御ユニットによって計算される、
請求項
1または2に記載のシステム。
【請求項7】
仮想量子プロセッサをさらに備え、前記メインメモリ内のゲート行列は、プロセッサハードウェアが好ましくはカーネルスケジューラAPIの上方に前記情報処理スタックの非依存アーキテクチャで実装されるように、前記量子ゲート回路に必要とされる前記古典メタ情報で構築される、
請求項
1または2に記載のシステム。
【請求項8】
好ましくは前記ハードウェア層(780)の物理リソースによって実行される、ハイブリッド量子計算オペレーティングシステムのプロセッサカーネル拡張内の1つのソフトウェアとして算術論理演算ユニット(ALU)を利用するように構成された量子処理ユニット(QPU)をさらに備える、
請求項
1または2に記載のシステム。
【請求項9】
前記コンテナ環境(760)は、プログラマが、同じバージョンの前記オペレーティングシステム(770)を実行する任意の数の異なるプロセッサおよび計算ノードにわたって1つのアプリケーション内にアプリケーションおよび/またはタスクを分散させることができるように、前記プログラマにスレッド並列化の既知の方法を提供するMPIオーバーレイ機能(740)を有するカーネルスケジューラAPIを含む、
請求項
1または2に記載のシステム。
【請求項10】
アプリケーションを実行するとき、前記情報処理スタックは、
仮想量子処理ユニット(仮想QPU)およびネイティブ量子処理ユニット(ネイティブQPU)の両方で前記アプリケーションの並列バージョンを実行するように構成され、
好ましくは、前記アプリケーションがネイティブQPUを介して実行されているとき、メモリパターン変換ユニット(720)は状態ベクトルを読み取るように構成され、および/または
好ましくは、前記アプリケーションが仮想QPUを介して実行されているとき、前記システムは、自動的に先進量子触発計算(AQIC)ショートカットを利用するように構成されている、
請求項
1または2に記載のシステム。
【請求項11】
前記情報処理スタックは、プロセッサカーネル拡張で構成された仮想プロセッサインスタンス(VPI)を使用して、共有メモリ内のネイティブ処理および仮想処理の異なるインスタンスで利用されるデータを記憶するように構成されている、
請求項
1または2に記載のシステム。
【請求項12】
前記メインメモリ(720)内のメモリパターン自体が、キャッシュコヒーレンシを実現し、固有の中間表現を実装し、または前記プロセッサの前記制御ユニットにトポロジ依存性に関する情報を配信するなどのために、処理されたデータの実行を制御するために前記それぞれの処理ユニットのためのメタ情報として機能し、好ましくは、最も効率的に並列に同じメインメモリにアクセスする異なる処理ユニットを統合するためのソフトウェア開発者による利用のために構成されている、
請求項
1または2に記載のシステム。
【請求項13】
ブロッホ球(100)は、同じ状態ベクトル|ψ>(111)が、前記古典情報|0>および|1>(112)と併せてまたは一緒にメモリパターン内で完全に表されるように、前記メインメモリ(720)内の前記メモリパターンの中間表現に組み込まれる、
請求項
1または2に記載のシステム。
【請求項14】
前記情報処理スタックは、
共有メモリにデータを記憶させ、仮想プロセッサインスタンス(VPI)を使用して前記データを処理するように構成されており、前記VPIは、
マルチプロトコルドライバ(MPD)(870)、メタプロトコルコントローラ(MPC)(880)、および算術論理演算ユニット(ALU)(890)を含む複数のサブコンポーネントと、
前記メインメモリ内の共有メモリへのアクセスを前記サブコンポーネントに提供し、前記サブコンポーネントを伴う直接メモリアクセス(DMA)交換を扱うように構成されたバスシステム(860)と、
を備えるプロセッサカーネル拡張である、
請求項
1または2に記載のシステム。
【請求項15】
前記マルチプロトコルドライバ(MPD)(870)は、
前記オペレーティングシステム(830)へのドライバインターフェースとして機能し、
マルチプロトコルドライバ(MPD)(870)、メタプロトコルコントローラ(MPC)(880)、および算術論理演算ユニット(ALU)を含む仮想プロセッサインスタンス(VPI)のサブコンポーネント間の通信を扱い、
異なるプロトコルを変換し、
前記VPIの前記サブコンポーネントと前記外部システムとの間で切り替え、および/または
前記仮想処理ユニットのためのキャッシュを保持する
ように構成されている、
請求項14に記載のシステム。
【請求項16】
前記仮想処理ユニットは、
前記VPIの物理的実装形態がない場合、メモリ内の前記マルチプロトコルドライバによって構築され、および/または
物理(量子)処理ユニットの物理キャッシュを前記メインメモリ内にマッピングし、こうして前記システム全体のキャッシュコヒーレンシを提供する
ように構成されている、
請求項15に記載のシステム。
【請求項17】
前記メタプロトコルコントローラ(880)は、
前記マルチプロトコルドライバ(MPD)を介した前記メタ情報交換を扱い、量子回路などの前記情報処理構造のための中間表現(IR)を保持するように構成されている、
請求項
15に記載のシステム。
【請求項18】
前記システムがゲートベース量子プロセッサを利用するとき、前記算術論理演算ユニット(ALU)(890)は、行列演算を有する線形代数表現を使用して論理演算および算術演算を実行するように構成されている、
請求項
15に記載のシステム。
【請求項19】
仮想化量子処理を実行する方法であって、前記方法は、
古典メタ情報で量子ビットを初期化するステップと、
前記古典メタ情報で前記量子ビット間のゲート回路を初期化するステップと、
ユニタリ行列で全ての前記量子ビットを変換することによって所与の量子回路を処理するステップと、
古典情報を取り出すために前記量子ビットを測定するステップと、
前記古典情報を処理するステップと、
を含み、
好ましくは、前記方法は、ハードウェア層、前記ハードウェア層に結合されたオペレーティングシステム、および前記オペレーティングシステムに結合されたコンテナ環境を備える情報処理スタックまたは計算スタックを介して実施される、
方法。
【請求項20】
前記古典情報の処理は、ハードウェア非依存の仮想ハードウェアプロセッサによって実行され、好ましくは、前記仮想ハードウェアプロセッサは、
メインメモリ(610)と、
前記メインメモリ(610)に結合された1つ以上のメモリバスシステム(650)と、
好ましくは少なくとも1つのメモリバスシステムを介した前記メインメモリ(610)へのアクセスを有する1つ以上の物理処理ユニット(620)と、
前記1つ以上の物理処理ユニット(620)のうちの少なくとも1つに結合されたデータ処理ユニット(640)であって、前記データ処理ユニット(640)は、前記仮想量子コンピュータシステムの内部システムと外部システムとの間のブリッジとして機能する、データ処理ユニット(640)と、
前記1つ以上の物理処理ユニット(620)を接続する1つ以上のキャッシュコヒーレンシ相互接続(630)と、
前記情報処理スタックと、
を備える仮想量子コンピュータシステムを介して実装される、
請求項19に記載の方法。
【請求項21】
同じ状態ベクトル|ψ>(111)が、前記古典情報|0>および|1>(112)と併せてまたはこれと共にメモリパターン内で完全に表されるように、前記メインメモリ(720)などのメモリ内の前記メモリパターンの中間表現にブロッホ球(100)を組み込むステップをさらに含む、
請求項19または20に記載の方法。
【請求項22】
キャッシュコヒーレンシを実現し、固有の中間表現を実装し、または前記プロセッサの前記制御ユニットにトポロジ依存性に関する情報を配信するなどのために、ただしこれらに限定されないが、処理されたデータの実行を制御するためにそれぞれの処理ユニットのためのメタ情報として機能するように、前記メインメモリ(720)内のメモリパターンを実装するステップであって、前記プロセッサは、好ましくは、最も効率的に並列に同じメインメモリにアクセスする異なる処理ユニットを統合するためのソフトウェア開発者による利用のために構成されている、ステップをさらに含む、
請求項
19または20に記載の方法。
【請求項23】
前記1つ以上のキャッシュコヒーレンシ相互接続は物理ハードウェア構成要素を備える、
請求項
20に記載の方法。
【請求項24】
古典メタ情報を用いる前記量子ビットの前記初期化は、メモリパターン変換(720)を実行するステップを含み、前記メモリパターン変換は、ブロッホレジスタおよびニューラルネットワークの一方または両方への変換を含む、
請求項
19または20に記載の方法。
【請求項25】
量子情報のメモリ表現における最適化パラメータは、好ましくは前記情報処理スタックの全体的なトランザクション計算力を効率的に使用するために、カーネルスケジューラAPI(740,830)を介してアプリケーション層(750)から前記オペレーティングシステム(770)の内部コアにメタ情報として提供される、
請求項
19または20に記載の方法。
【請求項26】
前記情報処理スタックは、カーネルスケジューラAPI(740,830)を介して、前記量子ゲート回路に必要な前記古典メタ情報を前記オペレーティングシステム(770)に関連付けられたメモリパターン変換層(720)に転送するようにさらに構成されている、
請求項
19または20に記載の方法。
【請求項27】
前記情報処理スタックは、物理量子ビットレジスタによる実装のためにさらに構成され、前記量子ゲート回路に必要とされる前記古典メタ情報は、ネイティブ量子プロセッサのゲート制御ユニットによって計算される、
請求項
19または20に記載の方法。
【請求項28】
前記方法は、仮想量子プロセッサによってさらに実施され、前記メインメモリ内のゲート行列は、プロセッサハードウェアが好ましくはカーネルスケジューラAPIの上方に前記情報処理スタックの非依存アーキテクチャで実装されるように、前記量子ゲート回路に必要とされる前記古典メタ情報で構築される、
請求項
19または20に記載の方法。
【請求項29】
前記方法は、好ましくは前記ハードウェア層(780)の物理リソースによって実行される、ハイブリッド量子計算オペレーティングシステムのプロセッサカーネル拡張内の1つのソフトウェアとして算術論理演算ユニット(ALU)を利用するように構成された量子処理ユニット(QPU)を介してさらに実施される、
請求項
19または20に記載の方法。
【請求項30】
プログラマが、同じバージョンの前記オペレーティングシステム(770)を実行する任意の数の異なるプロセッサおよび計算ノードにわたって1つのアプリケーション内にアプリケーションおよび/またはタスクを分散させることができるように、好ましくは前記プログラマに、スレッド並列化の既知の方法を提供するMPIオーバーレイ機能(740)を有するカーネルスケジューラAPIを用いて前記コンテナ環境(760)を実装するステップをさらに含む、
請求項
19または20に記載の方法。
【請求項31】
アプリケーションを実行するとき、前記情報処理スタックは、
仮想量子処理ユニット(仮想QPU)およびネイティブ量子処理ユニット(ネイティブQPU)の両方で前記アプリケーションの並列バージョンを実行するように構成され、
好ましくは、前記アプリケーションがネイティブQPUを介して実行されているとき、メモリパターン変換ユニット(720)は状態ベクトルを読み取るように構成され、および/または
好ましくは、前記アプリケーションが仮想QPUを介して実行されているとき、前記システムは、自動的に先進量子触発計算(AQIC)ショートカットを利用するように構成されている、
請求項
19または20に記載の方法。
【請求項32】
前記情報処理スタックは、プロセッサカーネル拡張で構成された仮想プロセッサインスタンス(VPI)を使用して、共有メモリ内のネイティブ処理および仮想処理の異なるインスタンスで利用されるデータを記憶するように構成されている、
請求項
19または20に記載の方法。
【請求項33】
前記情報処理スタックは、
共有メモリにデータを記憶させ、仮想プロセッサインスタンス(VPI)を使用して前記データを処理するように構成されており、前記VPIは、
マルチプロトコルドライバ(MPD)(870)、メタプロトコルコントローラ(MPC)(880)、および算術論理演算ユニット(ALU)(890)を含む複数のサブコンポーネントと、
前記メインメモリ内の共有メモリへのアクセスを前記サブコンポーネントに提供し、前記サブコンポーネントを伴う直接メモリアクセス(DMA)交換を扱うように構成されたバスシステム(860)と、
を備えるプロセッサカーネル拡張である、
請求項
19または20に記載の方法。
【請求項34】
前記マルチプロトコルドライバ(MPD)(870)は、
前記オペレーティングシステム(830)へのドライバインターフェースとして機能し、
マルチプロトコルドライバ(MPD)(870)、メタプロトコルコントローラ(MPC)(880)、および算術論理演算ユニット(ALU)を含む仮想プロセッサインスタンス(VPI)のサブコンポーネント間の通信を扱い、
異なるプロトコルを変換し、
前記VPIの前記サブコンポーネントと前記外部システムとの間で切り替え、および/または
前記仮想処理ユニットのためのキャッシュを保持するように構成されている、
請求項33に記載の方法。
【請求項35】
前記仮想処理ユニットは、
前記VPIの物理的実装形態がない場合、メモリ内の前記マルチプロトコルドライバによって構築され、および/または
物理(量子)処理ユニットの物理キャッシュを前記メインメモリ内にマッピングし、こうして前記システム全体のキャッシュコヒーレンシを提供するように構成されている、
請求項34に記載の方法。
【請求項36】
前記メタプロトコルコントローラ(880)は、前記マルチプロトコルドライバ(MPD)を介した前記メタ情報交換を扱い、量子回路などの前記情報処理構造のための中間表現(IR)を保持するように構成されている、
請求項
34に記載の方法。
【請求項37】
ゲートベース量子プロセッサを利用する実装中に、前記算術論理演算ユニット(ALU)(890)は、行列演算を有する線形代数表現を使用して論理演算および算術演算を実行するように構成されている、
請求項
34に記載の方法。
【請求項38】
仮想化量子処理を実行する方法であって、前記方法は、
メインメモリ(610,720)と、前記メインメモリ(610)に結合された1つ以上のメモリバスシステム(650)と、前記メインメモリ(610)へのアクセスを有する1つ以上の物理処理ユニット(620)と、前記1つ以上の物理処理ユニット(620)のうちの少なくとも1つに結合されたデータ処理ユニット(640)とを備える仮想量子コンピュータシステムを実装するステップと、
関連する同じ状態ベクトル|ψ>が前記古典情報|0>および|1>と併せてまたは一緒にメモリパターン内に完全に表されるように、前記メインメモリ内の前記メモリパターンの中間表現にブロッホ球を組み込むことを含む、前記メインメモリ(610,720)内の前記メモリパターンを実装するステップと、を含む、
方法。
【請求項39】
仮想量子コンピュータシステムであって、請求項
1または2に記載の1つ以上の部分、態様、および/またはステップ、および/または本開示の他の箇所に記載された他の特徴または機能を実行するように構成された1つ以上のサーバ、コンピュータプロセッサ、メモリ、および/またはコンピュータ可読媒体を備える、
仮想量子コンピュータシステム。
【請求項40】
仮想化量子処理を実行する方法であって、前記方法は、請求項
1または2に記載の1つ以上の部分、態様、および/またはステップ、および/または本開示の他の箇所に記載された他の特徴または機能を実行するステップを含む、
方法。
【請求項41】
コンピュータ可読命令を含む、および/または実行するように構成された1つ以上のコンピュータ可読媒体であって、前記コンピュータ可読命令は、1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに、請求項
1または2に記載の1つ以上の部分、態様、および/またはステップ、および/または本開示の他の箇所に記載された他の特徴または機能を実行させる命令を含む、
1つ以上のコンピュータ可読媒体。
【国際調査報告】