IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ▲騰▼▲訊▼科技(深▲セン▼)有限公司の特許一覧

特表2024-524805量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ
<>
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図1
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図2
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図3
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図4
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図5
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図6
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図7
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図8
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図9
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図10
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図11
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図12
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図13
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図14
  • 特表-量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-09
(54)【発明の名称】量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ
(51)【国際特許分類】
   G06N 10/20 20220101AFI20240702BHJP
【FI】
G06N10/20
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023554051
(86)(22)【出願日】2023-04-07
(85)【翻訳文提出日】2023-09-05
(86)【国際出願番号】 CN2023086794
(87)【国際公開番号】W WO2023221680
(87)【国際公開日】2023-11-23
(31)【優先権主張番号】202210542256.X
(32)【優先日】2022-05-18
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】517392436
【氏名又は名称】▲騰▼▲訊▼科技(深▲セン▼)有限公司
【氏名又は名称原語表記】TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
【住所又は居所原語表記】35/F,Tencent Building,Kejizhongyi Road,Midwest District of Hi-tech Park,Nanshan District, Shenzhen,Guangdong 518057,CHINA
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【弁理士】
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】袁 佩
(72)【発明者】
【氏名】▲張▼ ▲勝▼誉
(57)【要約】
本願は、量子状態準備回路の生成方法、装置、量子チップ、電子機器、記憶媒体、及びコンピュータプログラム製品に関する。該方法は、二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートを第1ターゲット子ノード量子ビットに作用させるステップ(702、及び704)と、2量子ビット位相シフトゲートを子ノード量子ビットの間に作用させるステップ(706)と、2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させるステップ(708)と、子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで反復して実行するステップ(710)と、経路制限下での2量子ビット位相シフトゲートをリーフノード量子ビットの間に作用させ、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、量子状態準備回路を得るステップ(712、及び714)と、を含む。
【特許請求の範囲】
【請求項1】
量子状態準備回路の生成装置であって、前記装置は、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得することに用いられる量子ゲート取得モジュールと、
二分木制限下でのターゲット量子ビットセットを決定し、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることに用いられる反転ゲート作用モジュールと、
前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることに用いられる位相シフトゲート作用モジュールと、
前記2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることに用いられるスワップゲート作用モジュールであって、前記第2ターゲット子ノード量子ビットは、前記第1ターゲット子ノード量子ビットの子ノード量子ビットである、スワップゲート作用モジュールと、
前記子ノード量子ビットをルートノード量子ビットとし、且つ前記子ノード量子ビットがリーフノード量子ビットになるまで、前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることに戻って実行することに用いられる反復モジュールと、
前記経路制限下での2量子ビット位相シフトゲートを前記ターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ前記1量子位相シフトゲートを前記リーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることに用いられるリーフノード作用モジュールと、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成することに用いられる組み合わせモジュールと、を含むことを特徴とする量子状態準備回路の生成装置。
【請求項2】
前記量子ゲート取得モジュールは、さらに、1量子ビットゲート、及び経路制限下での制御NOTゲートを取得することと、前記1量子ビットゲート、及び前記経路制限下での制御NOTゲートに基づいて組み合わせて前記2量子ビットスワップゲート、及び前記経路制限下での2量子ビット位相シフトゲートを形成することと、に用いられることを特徴とする請求項1に記載の装置。
【請求項3】
前記ターゲット量子ビットセットにおける量子ビットの数量は、2n+1-1であり、nは、1以上の正整数であることを特徴とする請求項11に記載の装置。
【請求項4】
前記装置は、
前記nが1であるときに、二分木制限下での3つの量子ビットを決定することと、前記1量子ビット反転ゲートを前記3つの量子ビットのうちのルートノード量子ビットに対応する第1ターゲットリーフノード量子ビットに作用させ、反転ゲートサブ回路を得ることと、前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応するリーフノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることと、前記1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることと、前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて前記3つの量子ビットに対応する量子状態準備回路を形成することと、に用いられる生成モジュールをさらに含むことを特徴とする請求項3に記載の装置。
【請求項5】
前記反転ゲートサブ回路の回路深さは1であり、前記位相シフトゲートサブ回路の回路深さは0(1)であり、前記スワップゲートサブ回路の回路深さは3であり、前記リーフ位相シフトゲートサブ回路の回路深さは0(1)であり、前記1量子ビット位相シフトサブ回路の回路深さは1であり、前記装置は、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路にそれぞれ対応する回路深さに基づいて、前記量子状態準備回路の回路深さを決定することに用いられる回路深さ決定モジュールをさらに含み、ここで、前記回路深さは0(n)であることを特徴とする請求項3に記載の装置。
【請求項6】
前記第1ターゲット子ノード量子ビットは、第1左子ノード量子ビットを含み、前記第2ターゲット子ノード量子ビットは、第2左子ノード量子ビットを含み、
前記反転ゲート作用モジュールは、さらに、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1左子ノード量子ビットに作用させ、前記反転ゲートサブ回路を得ることに用いられ、
前記スワップゲート作用モジュールは、さらに、前記2量子ビットスワップゲートを前記第1左子ノード量子ビットと第2左子ノード量子ビットとの間に作用させ、前記スワップゲートサブ回路を得ることに用いられることを特徴とする請求項1に記載の装置。
【請求項7】
前記第1ターゲット子ノード量子ビットは、第1右子ノード量子ビットを含み、前記第2ターゲット子ノード量子ビットは、第2右子ノード量子ビットを含み、
前記反転ゲート作用モジュールは、さらに、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1右子ノード量子ビットに作用させ、前記反転ゲートサブ回路を得ることに用いられ、
前記スワップゲート作用モジュールは、さらに、前記2量子ビットスワップゲートを前記第1右子ノード量子ビットと第2右子ノード量子ビットとの間に作用させ、前記スワップゲートサブ回路を得ることに用いられることを特徴とする請求項1に記載の装置。
【請求項8】
前記装置は、
ターゲットデータベクトルを取得することと、前記ターゲットデータベクトルに基づいて量子ビット演算子を決定し、前記量子ビット演算子に基づいて前記量子状態準備回路における量子ビット量子ゲートを更新し、前記ターゲットデータベクトルに対応するターゲット量子状態準備回路を得ることと、予め設定された初期量子状態を前記ターゲット量子状態準備回路に入力して量子状態準備を行い、前記ターゲットデータベクトルに対応する量子状態を得ることと、に用いられる量子状態準備モジュールをさらに含むことを特徴とする請求項1に記載の装置。
【請求項9】
前記装置は、
推奨プリファレンスデータベクトルを取得することと、前記推奨プリファレンスデータベクトルに基づいて量子ビット演算子を決定し、前記量子ビット演算子に基づいて前記量子状態準備回路における量子ビット量子ゲートを更新し、前記推奨プリファレンスデータベクトルに対応する推奨量子状態準備回路を得ることと、予め設定された初期量子状態を前記推奨量子状態準備回路に入力して量子状態準備を行い、前記推奨プリファレンスデータベクトルに対応する量子状態を得ることと、前記推奨プリファレンスデータベクトルに対応する量子状態、及び量子特異値推定アルゴリズム回路に基づいて量子演算を行い、ターゲット量子状態を得て、前記ターゲット量子状態に基づいて量子測定を行い、前記推奨プリファレンスデータベクトルに対応する推奨結果を得ることと、に用いられる量子推奨モジュールをさらに含むことを特徴とする請求項1に記載の装置。
【請求項10】
量子状態準備装置であって、前記装置は、
ターゲットデータベクトルを取得し、前記ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得することに用いられるターゲット量子ゲート取得モジュールと、
二分木制限下でのターゲット量子ビットセットを決定し、前記ターゲット1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得ることに用いられるターゲット反転ゲート作用モジュールと、
前記ターゲット2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得ることに用いられるターゲット位相シフトゲート作用モジュールと、
前記ターゲット2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得ることに用いられるターゲットスワップゲート作用モジュールであって、前記第2ターゲット子ノード量子ビットは、前記第1ターゲット子ノード量子ビットの子ノード量子ビットである、ターゲットスワップゲート作用モジュールと、
前記子ノード量子ビットをルートノード量子ビットとし、且つ前記子ノード量子ビットがリーフノード量子ビットになるまで、前記ターゲット2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行することに用いられるターゲット反復モジュールと、
前記経路制限下でのターゲット2量子ビット位相シフトゲートを前記ターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つ前記ターゲット1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得ることに用いられるターゲットリーフノード作用モジュールと、
前記ターゲット反転ゲートサブ回路、前記ターゲット位相シフトゲートサブ回路、前記ターゲットスワップゲートサブ回路、前記ターゲットリーフ位相シフトゲートサブ回路、及び前記ターゲット1量子ビット位相シフトサブ回路を組み合わせて前記ターゲットデータベクトルに対応するターゲット量子状態準備回路を形成することに用いられるターゲット組み合わせモジュールと、
予め設定された初期量子状態を前記ターゲット量子状態準備回路に入力して量子状態準備を行い、前記ターゲットデータベクトルに対応する1進符号化された量子状態を得ることに用いられる準備モジュールと、を含むことを特徴とする量子状態準備装置。
【請求項11】
電子機器によって実行される量子状態準備回路の生成方法であって、前記方法は、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
前記2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップであって、前記第2ターゲット子ノード量子ビットは、前記第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
前記子ノード量子ビットをルートノード量子ビットとし、且つ前記子ノード量子ビットがリーフノード量子ビットになるまで、前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
前記経路制限下での2量子ビット位相シフトゲートを前記ターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ前記1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップと、を含むことを特徴とする量子状態準備回路の生成方法。
【請求項12】
2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得する前記ステップは、
1量子ビットゲート、及び経路制限下での制御NOTゲートを取得するステップと、
前記1量子ビットゲート、及び前記経路制限下での制御NOTゲートに基づいて組み合わせて前記2量子ビットスワップゲート、及び前記経路制限下での2量子ビット位相シフトゲートを形成するステップと、を含むことを特徴とする請求項11に記載の方法。
【請求項13】
前記ターゲット量子ビットセットにおける量子ビットの数量は、2n+1-1であり、nは、1以上の正整数であることを特徴とする請求項11に記載の方法。
【請求項14】
前記方法は、
前記nが1であるときに、二分木制限下での3つの量子ビットを決定するステップと、
前記1量子ビット反転ゲートを前記3つの量子ビットのうちのルートノード量子ビットに対応する第1ターゲットリーフノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応するリーフノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
前記1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて前記3つの量子ビットに対応する量子状態準備回路を形成するステップと、をさらに含むことを特徴とする請求項13に記載の方法。
【請求項15】
前記反転ゲートサブ回路の回路深さは1であり、前記位相シフトゲートサブ回路の回路深さは0(1)であり、前記スワップゲートサブ回路の回路深さは3であり、前記リーフ位相シフトゲートサブ回路の回路深さは0(1)であり、前記1量子ビット位相シフトサブ回路の回路深さは1であり、前記方法は、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路にそれぞれ対応する回路深さに基づいて、前記量子状態準備回路の回路深さを決定するステップであって、ここで、前記回路深さは0(n)である、ステップをさらに含むことを特徴とする請求項13に記載の方法。
【請求項16】
前記第1ターゲット子ノード量子ビットは、第1左子ノード量子ビットを含み、前記第2ターゲット子ノード量子ビットは、第2左子ノード量子ビットを含み、
前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得る前記ステップは、
前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1左子ノード量子ビットに作用させ、前記反転ゲートサブ回路を得るステップを含み、
前記2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得る前記ステップは、
前記2量子ビットスワップゲートを前記第1左子ノード量子ビットと第2左子ノード量子ビットとの間に作用させ、前記スワップゲートサブ回路を得るステップを含むことを特徴とする請求項11に記載の方法。
【請求項17】
前記第1ターゲット子ノード量子ビットは、第1右子ノード量子ビットを含み、前記第2ターゲット子ノード量子ビットは、第2右子ノード量子ビットを含み、
前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得る前記ステップは、
前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1右子ノード量子ビットに作用させ、前記反転ゲートサブ回路を得るステップを含み、
前記2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得る前記ステップは、
前記2量子ビットスワップゲートを前記第1右子ノード量子ビットと第2右子ノード量子ビットとの間に作用させ、前記スワップゲートサブ回路を得るステップを含むことを特徴とする請求項11に記載の方法。
【請求項18】
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成する前記ステップの後に、
ターゲットデータベクトルを取得するステップと、
前記ターゲットデータベクトルに基づいて量子ビット演算子を決定し、前記量子ビット演算子に基づいて前記量子状態準備回路における量子ビット量子ゲートを更新し、前記ターゲットデータベクトルに対応するターゲット量子状態準備回路を得るステップと、
予め設定された初期量子状態を前記ターゲット量子状態準備回路に入力して量子状態準備を行い、前記ターゲットデータベクトルに対応する量子状態を得るステップと、をさらに含むことを特徴とする請求項11に記載の方法。
【請求項19】
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成する前記ステップの後に、
推奨プリファレンスデータベクトルを取得するステップと、
前記推奨プリファレンスデータベクトルに基づいて量子ビット演算子を決定し、前記量子ビット演算子に基づいて前記量子状態準備回路における量子ビット量子ゲートを更新し、前記推奨プリファレンスデータベクトルに対応する推奨量子状態準備回路を得るステップと、
予め設定された初期量子状態を前記推奨量子状態準備回路に入力して量子状態準備を行い、前記推奨プリファレンスデータベクトルに対応する量子状態を得るステップと、
前記推奨プリファレンスデータベクトルに対応する量子状態、及び量子特異値推定アルゴリズム回路に基づいて量子演算を行い、ターゲット量子状態を得て、前記ターゲット量子状態に基づいて量子測定を行い、前記推奨プリファレンスデータベクトルに対応する推奨結果を得るステップと、をさらに含むことを特徴とする請求項11に記載の方法。
【請求項20】
量子状態準備方法であって、前記方法は、
ターゲットデータベクトルを取得し、前記ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、前記ターゲット1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得るステップと、
前記ターゲット2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップと、
前記ターゲット2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得るステップであって、前記第2ターゲット子ノード量子ビットは、前記第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
前記子ノード量子ビットをルートノード量子ビットとし、且つ前記子ノード量子ビットがリーフノード量子ビットになるまで、前記ターゲット2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
前記経路制限下でのターゲット2量子ビット位相シフトゲートを前記ターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つ前記ターゲット1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得るステップと、
前記ターゲット反転ゲートサブ回路、前記ターゲット位相シフトゲートサブ回路、前記ターゲットスワップゲートサブ回路、前記ターゲットリーフ位相シフトゲートサブ回路、及び前記ターゲット1量子ビット位相シフトサブ回路を組み合わせて前記ターゲットデータベクトルに対応するターゲット量子状態準備回路を形成するステップと、
予め設定された初期量子状態を前記ターゲット量子状態準備回路に入力して量子状態準備を行い、前記ターゲットデータベクトルに対応する量子状態を得るステップと、を含むことを特徴とする量子状態準備方法。
【請求項21】
量子状態準備回路を含む量子チップであって、前記量子状態準備回路は、請求項1~10のいずれか一項に記載の量子状態準備回路の生成方法により実現されることを特徴とする量子チップ。
【請求項22】
メモリと、プロセッサとを含み、前記メモリには、コンピュータ可読命令が記憶されている電子機器であって、前記プロセッサは、前記コンピュータ可読命令を実行するときに請求項1~10のいずれか一項に記載の方法のステップを実現することを特徴とする電子機器。
【請求項23】
コンピュータ可読命令が記憶されているコンピュータ可読記憶媒体であって、前記コンピュータ可読命令がプロセッサによって実行されるときに請求項1~10のいずれか一項に記載の方法のステップを実現することを特徴とするコンピュータ可読記憶媒体。
【請求項24】
コンピュータ可読命令を含むコンピュータプログラム製品であって、該コンピュータ可読命令がプロセッサによって実行されるときに請求項1~10のいずれか一項に記載の方法のステップを実現することを特徴とするコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、量子技術分野に関し、特に量子状態準備回路の生成、及び量子状態準備方法、装置、量子チップ、電子機器、記憶媒体、並びにコンピュータプログラム製品に関する。
【0002】
本願は、2022年5月18日に中国特許局に提出された、出願番号が第202210542256X号であり、出願の名称が「量子状態準備回路の生成、及び量子状態準備方法、装置、並びに量子チップ」である中国特許出願の優先権を主張し、その全内容が引用により本願に組み込まれている。
【背景技術】
【0003】
量子技術の発展に伴い、量子状態準備技術が出現し、古典的なデータを量子状態にロードするという過程は、量子状態準備と呼ばれている。量子システムにおいては、量子のデコヒーレンスによって、もし量子回路の深さが深過ぎると、量子回路が古典的な回路に退化し得る。実際の量子機器において、量子ビットの空間的配列、又は、他の原因によって、量子ビット間の相互作用が制限される可能性があり得る。従って、量子状態準備回路において、CNOTゲート(2量子ビットゲート)が作用できる量子ビットは、具体的な物理機器の制限を受ける。
【0004】
現状では、回路制限下で従来の量子状態準備回路を直接改良すると、回路深さが大幅に上昇し得る。
【発明の概要】
【発明が解決しようとする課題】
【0005】
これに基づいて、上記技術的問題に対して、回路深さを効果的に低減させることができる量子状態準備回路の生成、及び量子状態準備方法、装置、量子チップ、電子機器、記憶媒体、並びにコンピュータプログラム製品を提供する必要がある。
【課題を解決するための手段】
【0006】
一態様では、本願は、量子状態準備回路の生成方法を提供する。前記方法は、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップと、を含む。
【0007】
別の態様では、本願は、量子状態準備回路の生成装置をさらに提供する。前記装置は、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得することに用いられる量子ゲート取得モジュールと、
二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることに用いられる反転ゲート作用モジュールと、
2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることに用いられる位相シフトゲート作用モジュールと、
2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることに用いられるスワップゲート作用モジュールであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、スワップゲート作用モジュールと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行することに用いられる反復モジュールと、
経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることに用いられるリーフノード作用モジュールと、
反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成することに用いられる組み合わせモジュールと、を含む。
【0008】
別の態様では、本願は、量子状態準備回路を含む量子チップをさらに提供し、前記量子状態準備回路は、量子状態準備回路の生成方法により実現され、前記量子状態準備回路の生成方法は、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップと、を含むことを特徴とする。
【0009】
別の態様では、本願は、電子機器をさらに提供する。前記電子機器は、メモリと、プロセッサとを含み、前記メモリには、コンピュータ可読命令が記憶されており、前記プロセッサは、前記コンピュータ可読命令を実行するときに、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップと、を実現する。
【0010】
別の態様では、本願は、コンピュータ可読記憶媒体をさらに提供する。前記コンピュータ可読記憶媒体において、コンピュータ可読命令が記憶されており、前記コンピュータ可読命令がプロセッサによって実行されるときに、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップと、を実現する。
【0011】
別の態様では、本願は、コンピュータプログラム製品をさらに提供する。前記コンピュータプログラム製品は、コンピュータ可読命令を含み、該コンピュータ可読命令がプロセッサによって実行されるときに、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップと、を実現する。
【0012】
前記量子状態準備回路の生成方法、装置、量子チップ、電子機器、記憶媒体、及びコンピュータプログラム製品は、二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることと、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることと、2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ことと、子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行することと、経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることと、反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成することと、により、量子状態準備回路の回路深さを効果的に低減させることができ、更に量子状態準備の時間を効果的に低減させ、量子計算の動作効率を向上させることができる。
【0013】
一態様では、本願は、量子状態準備方法を提供する。前記方法は、
ターゲットデータベクトルを取得し、ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、ターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得るステップと、
ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップと、
ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得るステップと、
ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成するステップと、
予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得るステップと、を含む。
【0014】
別の態様では、本願は、量子状態準備装置をさらに提供する。前記装置は、
ターゲットデータベクトルを取得し、ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得することに用いられるターゲット量子ゲート取得モジュールと、
二分木制限下でのターゲット量子ビットセットを決定し、ターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得ることに用いられるターゲット反転ゲート作用モジュールと、
ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得ることに用いられるターゲット位相シフトゲート作用モジュールと、
ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得ることに用いられるターゲットスワップゲート作用モジュールであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ターゲットスワップゲート作用モジュールと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行することに用いられるターゲット反復モジュールと、
経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得ることに用いられるターゲットリーフノード作用モジュールと、
ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成することに用いられるターゲット組み合わせモジュールと、
予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得ることに用いられる準備モジュールと、を含む。
【0015】
別の態様では、本願は、量子状態準備回路を含む量子チップをさらに提供し、前記量子状態準備回路は、量子状態準備回路の生成方法により実現され、前記量子状態準備回路の生成方法は、
ターゲットデータベクトルを取得し、ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、ターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得るステップと、
ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップと、
ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得るステップと、
ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成するステップと、
予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得るステップと、を含むことを特徴とする。
【0016】
別の態様では、本願は、電子機器をさらに提供する。前記電子機器は、メモリと、プロセッサとを含み、前記メモリには、コンピュータ可読命令が記憶されており、前記プロセッサは、前記コンピュータ可読命令を実行するときに、
ターゲットデータベクトルを取得し、ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、ターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得るステップと、
ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップと、
ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得るステップと、
ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成するステップと、
予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得るステップと、を実現する。
【0017】
別の態様では、本願は、コンピュータ可読記憶媒体をさらに提供する。前記コンピュータ可読記憶媒体において、コンピュータ可読命令が記憶されており、前記コンピュータ可読命令がプロセッサによって実行されるときに、
ターゲットデータベクトルを取得し、ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、ターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得るステップと、
ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップと、
ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得るステップと、
ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成するステップと、
予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得るステップと、を実現する。
【0018】
別の態様では、本願は、コンピュータプログラム製品をさらに提供する。前記コンピュータプログラム製品は、コンピュータ可読命令を含み、該コンピュータ可読命令がプロセッサによって実行されるときに、
ターゲットデータベクトルを取得し、ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、ターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得るステップと、
ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップと、
ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得るステップであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得るステップと、
ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成するステップと、
予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得るステップと、を実現する。
【発明の効果】
【0019】
上記量子状態準備方法、装置、量子チップ、電子機器、記憶媒体、及びコンピュータプログラム製品は、ターゲットデータベクトルに対応するターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得することと、次にターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを使用して二分木制限下でのターゲット量子ビットセットによりターゲットデータベクトルに対応するターゲット量子状態準備回路を生成することと、ターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートの回路深さを二分木制限下でのターゲット量子ビットに作用させることであって、該二分木制限下での経路制限は、いずれも交差しない、ことと、により、得られた量子状態準備回路の回路深さを著しく低減させることができ、それによって量子状態準備回路の回路深さを効果的に低減させることができる。次に、予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得る、すなわち、回路深さを低減させたターゲット量子状態準備回路を使用して量子状態を準備することで、量子状態準備の時間を効果的に低減させ、量子計算の動作効率を向上させることができ、それによって量子状態の準備効率を向上させる。
【0020】
本願の実施例における技術的解決手段をより明確に説明するために、以下、実施例の記述に使用される必要がある図面を簡単に紹介する。明らかなように、以下の記述における図面は、単に本願のいくつかの実施例であり、当業者であれば、創造的な労働をしない前提において、さらにこれらの図面に基づき他の図面を取得することができる。
【図面の簡単な説明】
【0021】
図1】1つの実施例における量子状態準備回路の生成方法の応用環境図である。
図2】1つの実施例における量子回路の二分木制限の模式図である。
図3】1つの実施例におけるn-量子ビット回路のn-経路制限の模式図である。
図4】1つの実施例における2量子ビットスワップゲート[数1]の回路実現の模式図である。
図5】1つの実施例における2量子ビット回転ゲート[数2]の回路実現の模式図である。
図6】1つの実施例におけるCNOTゲート[数3]の経路制限下での回路実現の模式図である。
図7】1つの実施例における量子状態準備回路の生成方法のプロセス模式図である。
図8】1つの実施例における3つの量子ビットの量子状態準備回路を生成するプロセス模式図である。
図9】1つの実施例におけるターゲットデータベクトルに対応する量子状態を得るプロセス模式図である。
図10】1つの実施例における量子推奨のプロセス模式図である。
図11】1つの実施例における量子状態準備方法のプロセス模式図である。
図12】1つの具体的な実施例における量子状態準備回路を生成する模式図である。
図13】1つの実施例における量子状態準備回路の生成装置の構造ブロック図である。
図14】1つの実施例における量子状態準備装置の構造ブロック図である。
図15】1つの実施例における電子機器の内部構造図である。
【0022】
【数1】
【数2】
【数3】
【発明を実施するための形態】
【0023】
本願の目的、技術的解決手段、及び利点をより明確で明瞭にするために、以下、図面、及び実施例を参照しながら本願を更に詳細に説明する。理解すべきである点として、ここでは、記述される具体的な実施例は、単に本願を解釈するために用いられ、本願を限定することに用いられるものではない。
【0024】
本願の実施例が提供する量子状態準備回路の生成方法は、図1に示す応用環境に応用できる。ここで、電子機器102は、ネットワークにより量子チップ104と通信する。データ記憶システムは、電子機器102が処理する必要があるデータを記憶できる。データ記憶システムは、電子機器102において集積されてもよく、クラウドにおいて、又は、他のネットワークサーバにおいて配置されてもよい。電子機器102は、量子状態準備回路1042を生成することに用いることができ、電子機器102は、1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得する。電子機器102は、二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得る。電子機器102は、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得る。電子機器102は、2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得る。第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである。電子機器102は、子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行する。電子機器102は、経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得る。電子機器102は、反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路1042を形成する。量子状態準備回路1042に基づき最終的に量子チップ104を制作することができる。
【0025】
ここで、電子機器102は、量子状態準備回路1042を制作することに用いられる工業化されたスマート機器であってもよく、例えば、フォトエッチング機器、ロボットアーム、及び工業生産に必要な他の機器である。量子状態準備回路1042を利用して量子チップ104を制作した後に、該量子チップ104を、スマートフォン、タブレットパソコン、ノートパソコン、デスクトップコンピュータ、スマートスピーカー、スマートウォッチ、モノのインターネット機器、及びポータブルウェアラブル機器を含む様々なスマート端末上に集積することができ、モノのインターネット機器は、スマートスピーカー、スマートテレビ、スマートエアコン、及びスマート車載機器等であってもよい。ポータブルウェアラブル機器は、スマートウォッチ、スマートバンド、及びヘッドマウント機器等であってもよい。
【0026】
本願の実施例を更に詳細に説明する前に、本願の実施例における関連の名詞、用語、記号、関連のパラメータ、及び基本的な量子ゲートを説明する。本願の実施例における関連の名詞、及び用語は、以下の解釈に適用される。
【0027】
(1)量子計算(Quantum Computation):量子状態の重ね合わせ、及びもつれ等の性質を利用して計算タスクを迅速に完了する一種の計算方式である。
【0028】
(2)量子ビット(Qubit):量子情報の搬送形式である。
【0029】
(3)量子回路(Quantum Circuit):一種の量子計算モデルであり、一連の量子ゲートシーケンスからなり、且つ量子ゲートによって計算を完了する。
【0030】
(4)量子チップ(superconducting quantum chip):量子コンピュータの中央プロセッサである。該量子コンピュータは、量子力学の重ね合わせ原理、及び量子もつれを利用して計算する一種の機械であり、比較的高い並行処理能力を有し、古典的なコンピュータで計算され難いいくつかの問題を解決することができる。
【0031】
(5)本願に係る基本的な記号:[n]は、集合{0,1,…,n}を表す。Fは、バイナリフィールドを表す。[数4]は、空文字列を表す。任意のx∈{0,1}について、eは、番号xの要素が1、他の要素が0のベクトルを表す。任意の量子ビットの番号iについて、|ψ>は、量子状態|ψ>が量子ビットiにおける量子状態であることを表す。
【0032】
【数4】
【0033】
(6)本願に係る基本的な量子ゲート:二分木制限下での量子回路の構造をよりよく記述するために、本願はまずいくつかの基本的な量子ゲートを説明する。
【0034】
1量子ビット反転ゲートXは、|0>→|1>,|1>→|0>と定義される。
【0035】
任意の実数θ∈Rについて、1ビット量子ゲートR(θ)、及びR(θ)は、それぞれ
R(θ):|0>→|0>,|1>→eiθ|1>,
(θ):|0>→cos(θ/2)|0>+sin(θ/2)|1>,|1>→-sin(θ/2)|0>+cos(θ/2)|1>と定義される。
【0036】
量子ビットi、及びjに作用する2量子ビット回転(位相シフト)ゲート[数5](y軸の周りに回転する(位相シフト))は、
|0>|0>→|0>|0>
|1>|0>→cos(θ/2) |1>|0>+sin(θ/2)|0>|1>
|0>|1>→-sin(θ/2) |1>|0>+cos(θ/2)|0>|1>
|1>|1>→|1>|1>と定義される。
【0037】
【数5】
【0038】
量子ビットi、及びjに作用するCNOT(制御NOTゲート)ゲート[数6]は、
|0>|0>→|0>|0>,|0>|1>→|0>|1>,|1>|0>→|1>|1>,|1>|1>→|1>|0>と定義される。
【0039】
【数6】
【0040】
量子ビットi、及びjに作用するスワップゲート[数7]は、
|x>|y>→|y>|x>,∀x,y∈{0,1}と定義される。
【数7】
【0041】
(7)二分木制限:もしCNOTゲートが隣接する2つの量子ビット上にのみ作用することを許可するならば、該回路は二分木制限下にあると呼ばれる。図2は、量子回路の二分木制限を表し、頂点[数8]は、それぞれ2-1個の量子ビットを表す。二分木において、もし2つの量子ビットが1本の辺で連結されるとすれば、CNOTゲートは、これら2つの量子ビットに作用できる。
【0042】
【数8】
【0043】
(8)n-経路制限:n-量子ビット回路において、もしCNOTゲートが隣接する2つの量子ビット上にのみ作用することを許可するならば、該回路がn-経路制限下にあると呼ばれる。図3は、n-量子ビット回路のn-経路制限を表し、頂点R、R、…、及びRは、それぞれn個の量子ビットを表す。もし2つの量子ビットが1本の辺で連結されるとすれば、CNOTゲートは、これら2つの量子ビットに作用できる。
【0044】
(9)本願は、まず、4つのサブ回路の実現について説明する。
【0045】
1、2量子ビットスワップゲート[数9]の回路実現は、図4に示される。
【0046】
【数9】
【0047】
2、2量子ビット回転(位相シフト)ゲート[数10]の回路実現は、図5に示される。
【0048】
【数10】
【0049】
3、CNOTゲート[数11]の経路制限下での回路実現:経路制限下で、[数11]は、深さ、及びサイズがいずれも0(|i-j|)であるCNOT回路によって実現することができ、図6に示される。
【0050】
【数11】
【0051】
4、経路制限下での2量子ビット回転ゲート[数12]の回路実現:2量子ビット回転ゲート[数13]の回路実現(図5)とCNOTゲート[数14]の経路制限下での回路実現(図6)とを組み合わせてわかるように、経路制限下では、[数15]は、深さが0(|i-j|)である量子回路によって実現することができる。
【0052】
【数12】
【数13】
【数14】
【数15】
【0053】
1つの実施例において、図7に示すように、量子状態準備回路の生成方法を提供する。該方法が図1における電子機器に応用されることを例に説明すると、以下のステップ702~ステップ714を含む。
【0054】
ステップ702:1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得する。
【0055】
ここで、1量子ビット反転ゲートは、単一量子ビットを反転することに用いられる量子ゲートである。1量子ビット位相シフトゲートは、単一量子ビットに対して位相シフトを行うことに用いられる量子ゲートである。2量子ビットスワップゲートは、2量子ビットをスワップすることに用いられる量子ゲートである。2量子ビット位相シフトゲートは、2量子ビットに対して位相シフトを行うことに用いられる量子ゲートである。
【0056】
具体的には、電子機器は、初期ベクトルを取得し、初期ベクトルに基づき1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを決定する。該初期ベクトルは、初期の古典的なデータのベクトルであり、予め設定されたものであってもよい。電子機器は、データベースから1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを直接取得してもよい。電子機器は、端末からアップロードされた1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートをさらに取得してもよい。
【0057】
ステップ704:二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得る。
【0058】
ここで、二分木制限下でのターゲット量子ビットセットとは、該ターゲット量子ビットセットにおける量子ビットが二分木の形式で配列され、且つCNOTゲートが隣接する2つの量子ビット上にのみ作用することを許可する量子ビットの集合を指す。二分木とは、木におけるノードの次数が2以下である順序付き木を指す。二分木は、1つの空の木であるか、又は、1つのルートノードと互いに交差せず、それぞれルートと呼ばれる2つの左子木、及び右子木と、からなる1つの空でない木であり、左子木、及び右子木は、同様に二分木である。ルートノード量子ビットとは、二分木におけるルートノード位置の量子ビットを指す。第1ターゲット子ノード量子ビットとは、ルートノード量子ビットに対応するターゲット子ノード位置の量子ビットを指し、該ターゲット子ノード位置は、左子ノード位置であってもよいし、右子ノードの位置であってもよい。反転ゲートサブ回路とは、1量子ビット反転ゲートを第1ターゲット子ノード量子ビットに作用させて得た量子回路を指す。
【0059】
具体的には、電子機器は、各量子ビットを取得し、各量子ビットを使用して二分木制限下でのターゲット量子ビットセットを決定する。次に1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得る、すなわち、ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットにおいて1量子ビット反転ゲートを実現し、このときに、該第1ターゲット子ノードを通過する量子ビットに対して1量子ビット反転操作を行うことができ、例えば、|0>を|1>に反転してもよく、又は、|1>を|0>に反転してもよい。
【0060】
ステップ706:2量子ビット位相シフトゲートを、ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得る。
【0061】
ここで、子ノード量子ビットの間とは、左子ノード位置にある量子ビットと右子ノード位置にある量子ビットとの間を指す。位相シフトゲートサブ回路とは、2量子ビット位相シフトゲートを、ルートノード量子ビットの左子ノード位置にある量子ビットと右子ノード位置にある量子ビットとの間に作用させて得た量子回路を指す。
【0062】
具体的には、電子機器は、経路制限下での2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得る、すなわち、左子ノード位置にある量子ビットと右子ノード位置にある量子ビットとの間で2量子ビット位相シフトゲートを実現し、このときに、左子ノード位置にある量子ビットと右子ノード位置にある量子ビットと、に対して位相シフト操作を行うことができる。
【0063】
ステップ708:2量子ビットスワップゲートを、第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得る。第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである。
【0064】
ここで、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである。第2ターゲット子ノード量子ビットとは、第1ターゲット子ノード量子ビットを親ノード量子ビットとするときに対応するターゲット子ノード位置の量子ビットを指し、該ターゲット子ノード位置は、左子ノード位置であってもよいし、右バイトの位置であってもよい。スワップゲートサブ回路とは、2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させて得た量子回路を指す。親ノード量子ビットとは、親ノード位置の量子ビットを指し、該親ノード位置は、二分木の中間ノード位置に対応する親ノード位置であってもよいし、リーフノード位置に対応する親ノード位置であってもよい。
【0065】
具体的には、電子機器は、2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得る。すなわち、電子機器は、第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間で2量子ビットスワップゲートを実現し、このときに、第1ターゲット子ノードの量子ビットと第2ターゲット子ノードの量子ビットと、に対して量子ビットスワップ操作を行うことができる。
【0066】
1つの実施例において、第1ターゲット子ノード量子ビットが親ノード量子ビットに対応する左子ノード位置の量子ビットであるときに、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットに対応する左子ノード位置の量子ビットである。第1ターゲット子ノード量子ビットが親ノード量子ビットに対応する右子ノード位置の量子ビットであるときに、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットに対応する右子ノード位置の量子ビットである。ここで、該親ノード量子ビットは、ルートノード量子ビットであってもよいし、ルートノードでない量子ビットであってもよく、例えば、親ノード量子ビットは、中間ノード量子ビットであってもよい。
【0067】
ステップ710:子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行する。
【0068】
ここで、リーフノード量子ビットとは、二分木におけるリーフノード位置の量子ビットを指す。
【0069】
具体的には、電子機器は、スワップゲートサブ回路を得た後に、子ノード量子ビットがリーフノード量子ビットであるか否かを判断する。すなわち、第2ターゲット子ノード量子ビットがリーフノード量子ビットであるか否かを判断する、すなわち、第2ターゲット子ノード量子ビットに対応する子ノード量子ビットがまだ存在するか否かを判断する。第2ターゲット子ノード量子ビットに対応する子ノード量子ビットが存在しないときに、第2ターゲット子ノード量子ビットがリーフノード量子ビットであると示され、第2ターゲット子ノード量子ビットに対応する子ノード量子ビットが存在するときに、第2ターゲット子ノード量子ビットがリーフノード量子ビットでないと示される。子ノード量子ビットがリーフノード量子ビットでないときに、子ノード量子ビットをルートノード量子ビットとし、且つ2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行する。すなわち、電子機器は、反復を実行し、子ノード量子ビットを親ノード量子ビットとし、次に2量子ビット位相シフトゲートを親ノード量子ビットの2つの子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得て、子ノード量子ビットがリーフノード量子ビットになるまで行うと、反復を完了する。このときに、各位相シフトゲートサブ回路、及び各スワップゲートサブ回路を得る。
【0070】
ステップ712:経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得る。
【0071】
ここで、親ノード量子ビットとは、リーフノード位置に対応する親ノード位置の量子ビットを指す。リーフ位相シフトゲートサブ回路とは、親ノード量子ビットに対応するリーフノード量子ビットの間に経路制限下での2量子ビット位相シフトゲートを作用させて得た量子回路を指す。1量子ビット位相シフトサブ回路とは、1量子位相シフトゲートをリーフノード量子ビットに作用させて得た量子回路を指す。
【0072】
具体的には、電子機器は、子ノード量子ビットがリーフノード量子ビットであると判断する。このときに、反復を完了し、次にリーフノード量子ビットを処理する、すなわち、経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得る。すなわち、親ノード量子ビットが存在するリーフノード量子ビットの間で経路制限下での2量子ビット位相シフトゲートを実現する。且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得て、すなわち、リーフノード量子ビットにおいて1量子位相シフトゲートを実現する。
【0073】
ステップ714:反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成する。
【0074】
ここで、量子状態準備回路とは、生成された初期ベクトルに対応する量子状態準備回路を指す。他の古典的なデータベクトルの量子状態準備回路を生成する必要がある場合、他の古典的なデータベクトルを使用して量子状態準備回路におけるパラメータを更新することで、他の古典的なデータベクトルに対応する量子状態準備回路を得る。
【0075】
具体的には、電子機器は、反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせ、量子状態準備回路を得る。
【0076】
上記量子状態準備回路の生成方法は、二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることと、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることと、2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることであって、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである、ことと、子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行することと、経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることと、ターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートの回路深さを二分木制限下でのターゲット量子ビットに作用させることであって、該二分木制限下での経路制限は、いずれも交差しない、ことと、により、得られた量子状態準備回路の回路深さを著しく低減させることができ、それによって量子状態準備回路の回路深さを効果的に低減させることができ、次に回路深さを低減させたターゲット量子状態準備回路を使用して量子状態を準備することで、量子状態準備の時間を効果的に低減させ、量子計算の動作効率を向上させることができる。
【0077】
1つの実施例において、ステップ702、すなわち、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得するステップは、
1量子ビットゲート、及び経路制限下での制御NOTゲートを取得するステップと、1量子ビットゲート、及び経路制限下での制御NOTゲートに基づいて組み合わせて2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを形成するステップと、を含む。
【0078】
ここで、1量子ビットゲートとは、1つの量子ビットに対して操作を行う量子ゲートを指し、1ビット量子反転ゲート、及び1ビット量子位相シフト等を含むが、これらに限定されない。経路制限下での制御NOTゲートとは、経路制限下でのCNOTゲートを指す。
【0079】
具体的には、電子機器は、データベースから1量子ビットゲート、及び経路制限下での制御NOTゲートを取得し、次に1量子ビットゲート、及び経路制限下での制御NOTゲートを組み合わせ、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを得るようにしてもよい。ここで、組み合わせることは、異なる量子ゲートを量子回路の接続方式に応じて接続することであってもよい。1つの実施例において、電子機器は、2量子ビットスワップゲートを確立するときに必要な1量子ビットゲート、及び経路制限下での制御NOTゲートの数量に基づき所要数量の1量子ビットゲート、及び経路制限下での制御NOTゲートを取得し、次に各1量子ビットゲート、及び経路制限下での制御NOTゲートを組み合わせ、2量子ビットスワップゲートを得るようにしてもよい。電子機器は、経路制限下での2量子ビット位相シフトゲートを確立するときに必要な1量子ビットゲート、及び経路制限下での制御NOTゲートの数量に基づき所要数量の1量子ビットゲート、及び経路制限下での制御NOTゲートを取得し、次に各1量子ビットゲート、及び経路制限下での制御NOTゲートを組み合わせ、経路制限下での2量子ビット位相シフトゲートを得るようにしてもよい。
【0080】
1つの実施例において、ターゲット量子ビットセットにおける量子ビットの数量は、2n+1-1であり、nは、1以上の正整数である。具体的には、電子機器は、2の量子ビットを取得し、次に2の量子ビットに基づき補助量子ビットを取得し、次に2の量子ビット、及び補助量子ビットに基づき二分木制限下での2n+1-1個の量子ビットを得る、すなわち、ターゲット量子ビットセットを得て、次にターゲット量子ビットセットで生成される2の量子状態準備回路により2の量子ビット量子状態|ψ>を準備することができる。補助量子ビットとは、ターゲット量子ビットセットを生成するときに補助的に使用される量子ビットを指す。
【0081】
1つの実施例において、図8に示すように、量子状態準備回路の生成方法は、
nが1であるときに、二分木制限下での3つの量子ビットを決定するステップ802と、
1量子ビット反転ゲートを3つの量子ビットのうちのルートノード量子ビットに対応する第1ターゲットリーフノード量子ビットに作用させ、反転ゲートサブ回路を得るステップ804と、
2量子ビット位相シフトゲートをルートノード量子ビットに対応するリーフノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップ806と、
1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップ808と、
反転ゲートサブ回路、位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて3つの量子ビットに対応する量子状態準備回路を形成するステップ810と、をさらに含む。
【0082】
具体的には、nが1であるときに、2量子ビット回路を生成しようとしていることを示しており、2量子ビット回路を使用して2量子ビット量子状態を準備する。このときに、電子機器は、1つの補助量子ビットと2つの量子ビットとを取得し、二分木制限下での3つの量子ビットを決定する。次に電子機器は、1量子ビット反転ゲートを3つの量子ビットのうちのルートノード量子ビットに対応する第1ターゲットリーフノード量子ビットに作用させ、反転ゲートサブ回路を得る。このときに、子ノード量子ビットが既にリーフノード量子ビットであると判断すると、リーフノード量子ビットを直接処理する、すなわち、2量子ビット位相シフトゲートをルートノード量子ビットに対応するリーフノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得る。さらに1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得る。最後に、反転ゲートサブ回路、位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせ、n=1であるときの量子状態準備回路を得る。nが1よりも大きいときに、2量子ビットスワップゲートを使用して親ノード量子ビットと子ノード量子ビットとの間に作用させ、次に2量子ビット位相シフトゲートを親ノード量子ビットに対応する2つの子ノード量子ビットの間に作用させ、さらに連続的で循環的に反復を行うことにより、最終的に、nが1よりも大きいときの量子状態準備回路を得る。
【0083】
上記実施例において、二分木制限下での3つの量子ビットを決定する。次に、1量子ビット反転ゲートを3つの量子ビットのうちのルートノード量子ビットに対応する第1ターゲットリーフノード量子ビットに作用させ、反転ゲートサブ回路を得る。2量子ビット位相シフトゲートをルートノード量子ビットに対応するリーフノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得る。1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得る。反転ゲートサブ回路、位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて3つの量子ビットに対応する量子状態準備回路を形成する。すなわち、二分木制限下で量子状態準備回路を生成することにより、経路制限が交差することを回避でき、それによって量子状態準備回路の回路深さを効果的に低減させることができる。
【0084】
1つの実施例において、反転ゲートサブ回路の回路深さは1であり、位相シフトゲートサブ回路の回路深さは0(1)であり、スワップゲートサブ回路の回路深さは3であり、リーフ位相シフトゲートサブ回路の回路深さは0(1)であり、1量子ビット位相シフトサブ回路の回路深さは1であり、該方法は、
反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路にそれぞれ対応する回路深さに基づいて、量子状態準備回路の回路深さを決定するステップであって、ここで、回路深さは0(n)である、ステップをさらに含む。
【0085】
具体的には、反転ゲートサブ回路において1つの1量子ビット反転ゲートのみが含まれると、該回路深さは1である。長さが3である経路制限下では、位相シフトゲートサブ回路の回路深さは0(1)であり、該長さが3であることとは、ルートノード量子ビットと2つの子ノード量子ビットとで形成される経路の長さが3であることを指す。スワップゲート[数16]の回路実現に基づきわかるように、スワップゲートサブ回路の回路深さは3である。二分木制限下では、ルートノード量子ビットと2つの子ノード量子ビットとで形成される経路制限は、いずれも交差せず、従って、すべての2量子ビット位相シフトゲートは、並行して実現でき、深さは、依然として0(1)である。1量子ビット相位シフトサブ回路は、異なる量子ビットに作用する1量子ビットゲートから構成され、従って、回路深さは1である。この場合、最終的に量子状態準備回路の回路深さが0(n)であることを得る。すなわち、本願において生成される二分木制限下での1進符号化された量子状態準備回路の深さは、線形深さである。本願は、CNOTゲートのみが二分木における結ぶ辺を有する2つの量子ビットに作用することを許可することにより、すなわち、回路が二分木制限下にあるときに、任意の1進符号化された2-量子ビット量子状態|ψ>は、回路深さが0(n)である2-量子ビット回路によって準備できる。本願において、量子回路において任意の1ビット量子ゲート、及びCNOTゲートの使用のみを許可する。すなわち、CNOTゲートのみが二分木における結ぶ辺を有する2つの量子ビットに作用することを許可することにより、経路制限下での量子回路は、いずれも交差せず、それによって本願で生成された量子状態準備回路の回路深さを著しく低減させる。
【0086】
【数16】
【0087】
1つの実施例において、第1ターゲット子ノード量子ビットは、第1左子ノード量子ビットを含み、第2ターゲット子ノード量子ビットは、第2左子ノード量子ビットを含み、
1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップ704は、
1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1左子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップを含む。
【0088】
ここで、第1左子ノード量子ビットとは、ルートノード量子ビットに対応する2つの子ノードのうち左ノード位置の量子ビットを指す。
【0089】
具体的には、電子機器は、1量子ビット反転ゲートを第1左子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることができる、すなわち、第1左子ノード量子ビットにおいて量子ビット反転ゲートを実現し、すなわち、第1左子ノード位置において量子ビット反転操作を行う。
【0090】
2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップ708は、
2量子ビットスワップゲートを第1左子ノード量子ビットと第2左子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップを含む。
【0091】
ここで、第2左子ノード量子ビットとは、第1左子ノード量子ビットに対応する2つの子ノードのうち左ノード位置の量子ビットを指す。
【0092】
具体的には、電子機器は、2量子ビットスワップゲートを第1左子ノード量子ビットと第2左子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることができ、すなわち、第1左子ノード量子ビットと第2左子ノード量子ビットとの間で2量子ビットスワップゲートを実現する。すなわち、第1左子ノード量子ビットと第2左子ノード量子ビットと、に対して量子ビットスワップ操作を行うことができる。
【0093】
上記実施例において、電子機器は、1量子ビット反転ゲートを子ノードの量子ビットに作用させるときに、2量子ビットスワップゲートを同方向ノードの量子ビットの間に作用させることで、二分木制限下での経路が交差するという問題の出現を回避し、それによって得られた量子回路の精度を向上させることができる。
【0094】
1つの実施例において、第1ターゲット子ノード量子ビットは、第1右子ノード量子ビットを含み、第2ターゲット子ノード量子ビットは、第2右子ノード量子ビットを含み、
1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップ704は、
1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1右子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップを含む。
【0095】
ここで、第1右子ノード量子ビットとは、ルートノード量子ビットに対応する2つの子ノードのうち右ノード位置の量子ビットを指す。
【0096】
具体的には、電子機器は、1量子ビット反転ゲートを第1右子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることができる。すなわち、第1右子ノード量子ビットにおいて量子ビット反転ゲートを実現し、すなわち、第1右子ノード位置において量子ビット反転操作を行う。
【0097】
2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップ708は、
2量子ビットスワップゲートを第1右子ノード量子ビットと第2右子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップを含む。
【0098】
ここで、第2右子ノード量子ビットとは、第1右子ノード量子ビットに対応する2つの子ノードのうち右ノード位置の量子ビットを指す。
【0099】
具体的には、電子機器は、2量子ビットスワップゲートをターゲット子ノード量子ビットに作用させるときに、2量子ビットスワップゲートをターゲット子ノード量子ビットと同じ位置の子ノード量子ビットの間に作用させる必要があり、得られたスワップゲートサブ回路の正確性を確保する。すなわち、第1右子ノード量子ビットと第2右子ノード量子ビットとの間で2量子ビットスワップゲートを実現し、すなわち、第1右子ノード量子ビットと第2右子ノード量子ビットと、に対して量子ビットスワップ操作を行うことができる。
【0100】
上記実施例において、電子機器は、1量子ビット反転ゲートを子ノードの量子ビットに作用させるときに、2量子ビットスワップゲートを同方向ノードの量子ビットの間に作用させることで、二分木制限下での経路が交差するという問題の出現を回避し、それによって得られた量子回路の精度を向上させることができる。
【0101】
1つの具体的な実施例において、二分木制限下での1進符号化された量子状態準備問題の具体的な定義は、以下の通りである。||v||=1を満たす任意の複素ベクトル[数17]を与え、初期状態[数18]を与え、以下[数19]のように2ビットの量子状態を準備する。
【0102】
【数17】
【数18】
【数19】
ここで、eは、番号xの量子ビットの値が1であり、他の位置の値が0であることを表す。且つ回路におけるCNOTゲートは、二分木における辺を有する2つの量子ビットにのみ作用できる。
【0103】
二分木制限下での1進符号化された量子状態準備回路の構造についての説明は、以下の通りである。
【0104】
まず、二分木制限下での2n+1-1個の量子ビットを番号付けする。
【0105】
1、二分木ルートノードにおける量子ビットは、[数20]とマークされ、ここで、[数21]は、空文字列を表す。このときに、二分木のルートノードは、二分木の第0層にある。
【0106】
【数20】
【数21】
【0107】
2、任意の0≦k≦n-1、且つx∈{0,1}について、二分木の第k層において、量子ビットqの左子ノードは、qx0とマークされ、右子ノードは、qx1とマークされる。
【0108】
上記すべての量子ビットの初期状態は、いずれも|0>である。任意の1進量子状態は、以下[数22]の通りであってもよい。
【0109】
【数22】
ここで、θ∈R、且つv∈R≧0である。0≦k≦n-1、且つz∈{0,1}について、[数23]を定義する。
【0110】
【数23】
【0111】
次に、二分木制限下での1進符号化された量子状態準備回路を生成する。構造の過程は、以下の通りである。
【0112】
ステップ0:
量子ビットq上に1ビット量子ゲートXを作用させる。
【0113】
ステップ1:
ステップ1.1:経路[数24]の制限下で2量子ビット位相シフトゲート[数25]を作用させ、ここで、[数26]、且つ[数27]である。
【0114】
【数24】
【数25】
【数26】
【数27】
【0115】
ステップ1.2:q、及びq00上に2量子ビット交換ゲート[数28]を作用させ、q、及びq10上に交換ゲート[数29]を作用させる。
【0116】
【数28】
【数29】
【0117】
ステップ2:
ステップ2.1:経路q00-q-q01の制限下で2量子ビット位相シフトゲート[数30]を作用させ、ここで、cos(2α)=v00/v、且つsin(2α)=v01/vである。経路q10-q-q11の制限下で2量子ビット位相シフトゲート[数31]を作用させ、ここで、cos(2α)=v10/v、且つsin(2α)=v11/vである。
【0118】
【数30】
【数31】
【0119】
ステップ2.2:q00、及びq000上に2量子ビット交換ゲート[数32]を作用させ、q01、及びq010上に2量子ビット交換ゲート[数33]を作用させ、q10、及びq100上に2量子ビット交換ゲート[数34]を作用させ、q11、及びq110上に2量子ビット交換ゲート[数35]を作用させる。
【0120】
【数32】
【数33】
【数34】
【数35】
【0121】
ステップj(2≦j≦n-1):
ステップj.1:すべてのz∈{0,1}j-1について、経路qz0-q-qz1の制限下で2量子ビット位相シフトゲート[数36]を作用させ、ここで、cos(2α)=vz0/v、且つsin(2α)=vz1/vである。
【0122】
【数36】
【0123】
ステップj.2:すべてのz∈{0,1}j-1について、qz0、及びqz00上に2量子ビット交換ゲート[数37]を作用させ、qz1、及びqz10上に2量子ビット交換ゲート[数38]を作用させる。
【0124】
【数37】
【数38】
【0125】
ステップn:
ステップn.1:すべてのz∈{0,1}n-1について、経路qz0-q-qz1の制限下で2量子ビット位相シフトゲート[数39]を作用させ、ここで、cos(2α)=vz0/v、且つsin(2α)=vz1/vである。
【0126】
【数39】
【0127】
ステップn.2:すべてのx∈{0,1}について、q上に1量子位相シフトゲートR(θ)を作用させる。
【0128】
上記二分木制限下での1進符号化された量子状態準備回路構造の正確性を説明する。上記構造に応じて以下[数40]のことがわかる。
【0129】
【数40】
【0130】
最終的に1進符号化された量子状態を得るため、従って、該量子回路の正確性が確保される。
【0131】
上記二分木制限下での1進符号化された量子状態準備回路構造の回路深さを説明する。
【0132】
1、ステップ0:1つの1ビット量子ゲートであるXゲートのみを含み、回路深さは1である。
【0133】
2、ステップ1:本願における4つのサブ回路の実現における2ビット回転ゲートの経路制限下での回路を実現することからわかるように、ステップ1.1において、長さが3である経路制限下では、[数41]は、深さが0(1)である回路によって実現できる。本願における4つのサブ回路の実現における2量子ビットスワップゲートの実現からわかるように、ステップ1.2は、深さが3である回路によって実現できる。
【0134】
【数41】
【0135】
3、ステップj(2≦j≦n-1):すべてのz∈{0,1}j-1について、本願における4つのサブ回路の実現における2量子ビット回転ゲートの経路制限下での回路実現からわかるように、経路qz0-q-qz1の制限下での[数42]ゲートは、深さが0(1)である回路によって実現できる。且つこれらの経路制限がいずれも交差しないため、ステップj.1におけるすべての2量子ビット回転ゲートは、並行して実現でき、深さは、依然として0(1)である。本願における4つのサブ回路の実現における2量子ビットスワップゲートの実現からわかるように、ステップj.2は、深さが3である回路によって実現できる。
【0136】
【数42】
【0137】
4、ステップn:すべてのz∈{0,1}n-1について、本願における4つのサブ回路の実現における2量子ビット回転ゲートの経路制限下での回路実現からわかるように、経路qz0-q-qz1の制限下での[数43]ゲートは、深さが0(1)である回路によって実現できる。且つこれらの経路制限がいずれも交差しないため、ステップn.1におけるすべての2量子ビット回転ゲートは、並行して実現でき、深さは、依然として0(1)である。ステップn.2が異なる量子ビットに作用する1ビット量子ゲートから構成されるため、回路深さは1である。
【0138】
【数43】
【0139】
以上のように、該1進符号化された量子状態準備回路の回路深さは0(n)であり、すなわち、CNOTゲートのみが二分木における結ぶ辺を有する2つの量子ビットに作用することを許可することにより、経路制限は、いずれも交差せず、それによって生成された量子状態準備回路の回路深さを著しく低減させる。
【0140】
1つの実施例において、図9に示すように、ステップ714の後、すなわち、反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップの後に、ステップ902~ステップ906をさらに含む。
【0141】
ステップ902:ターゲットデータベクトルを取得する。
【0142】
ここで、ターゲットデータベクトルとは、ターゲットデータに対応するベクトルを指し、該ターゲットデータは、古典的なデータである。該古典的なデータは、テキストデータ、画像データ、ビデオデータ、及び音声データ等であってもよい。該ターゲットデータは、対応する量子状態を準備する必要があるデータである。
【0143】
具体的には、電子機器は、量子状態を準備する必要があるターゲットデータベクトルを取得する。電子機器は、データベースからターゲットデータベクトルを取得してもよい。電子機器は、端末からアップロードされたターゲットデータベクトルを取得してもよい。電子機器は、さらにサービス側からターゲットデータベクトルを取得してもよい。
【0144】
ステップ904:ターゲットデータベクトルに基づいて量子ビット演算子を決定し、量子ビット演算子に基づいて量子状態準備回路における量子ビット量子ゲートを更新し、ターゲットデータベクトルに対応するターゲット量子状態準備回路を得る。
【0145】
ここで、量子ビット演算子は、ターゲットデータベクトルに基づき量子ビットゲートに対応するパラメータを決定した後に得られるものであり、量子ビット演算子は、2量子ビット位相シフト演算子、及び1量子ビット位相シフト演算子等を含むが、これらに限定されない。2量子ビット位相シフト演算子は、ターゲットデータベクトルに基づき2量子ビット位相シフトゲートに対応する位相シフトパラメータを決定した後に得られるものである。1量子ビット位相シフト演算子は、ターゲットデータベクトルに基づき1量子ビット位相シフトゲートに対応する位相シフトパラメータを決定した後に得られるものであり、位相シフトパラメータは、予め設定されたパラメータであり、ニーズに基づき設定できる。ターゲット量子状態準備回路とは、ターゲットデータベクトルに対応する量子状態準備回路を指し、ターゲットデータベクトルに対応する量子状態を準備することに用いられる。
【0146】
具体的には、電子機器は、ターゲットデータベクトルに基づき量子ビット演算子を決定し、次に量子ビット演算子を使用して量子状態準備回路における量子ビット量子ゲートを更新し、ターゲットデータベクトルに対応するターゲット量子状態準備回路を得る。すなわち、電子機器は、ターゲットデータベクトルに対応する量子ビット演算子を使用して量子状態準備回路における同じ量子ビット量子ゲートを置換し、それによって量子ゲートを更新した量子状態準備回路を得る、すなわち、ターゲットデータベクトルに対応するターゲット量子状態準備回路を得る。
【0147】
ステップ906:予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得る。
【0148】
ここで、予め設定された初期量子状態とは、予め設定された初期量子状態を指し、該初期量子状態は、[数44]であってもよい。
【0149】
【数44】
【0150】
具体的には、電子機器は、予め設定された初期量子状態をターゲット量子状態準備回路に入力し、ターゲット量子状態準備回路は、量子ビット演算子を使用して量子演算を行い、最後に、出力されたターゲットデータベクトルに対応する量子状態を得る。
【0151】
上記実施例において、ターゲットデータベクトルを使用して量子ビット演算子を決定し、量子ビット演算子に基づいて量子状態準備回路における量子ビット量子ゲートを更新することにより、ターゲットデータベクトルに対応するターゲット量子状態準備回路を得て、次に予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得る。すなわち、量子ビット演算子を使用して量子状態準備回路を更新し、ターゲット量子状態準備回路を得て、次に量子状態準備を行うことにより、ターゲットデータベクトルに対応する量子状態を得る効率を向上させる。
【0152】
1つの実施例において、図10に示すように、反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップの後に、ステップ1002~ステップ1008をさらに含む。
【0153】
ステップ1002:推奨プリファレンスデータベクトルを取得する。
【0154】
ここで、推奨プリファレンスデータベクトルとは、推奨プリファレンスデータに対応するベクトルを指し、該推奨プリファレンスデータは、推奨しようとする対象のプリファレンス情報を特徴付けることに用いられる。
【0155】
具体的には、電子機器は、推奨サービスシステムから推奨プリファレンスデータを取得し、次に推奨プリファレンスデータをベクトル化し、推奨プリファレンスデータベクトルを得るようにしてもよい。
【0156】
ステップ1004:推奨プリファレンスデータベクトルに基づいて量子ビット演算子を決定し、量子ビット演算子に基づいて量子状態準備回路における量子ビット量子ゲートを更新し、推奨プリファレンスデータベクトルに対応する推奨量子状態準備回路を得る。
【0157】
ここで、推奨量子状態準備回路は、推奨プリファレンスデータベクトルに対応する量子状態を準備することに用いられる量子回路である。
【0158】
具体的には、電子機器は、推奨プリファレンスデータベクトルを使用して計算して該推奨プリファレンスデータベクトルに対応する量子ビット演算子を得て、2量子ビット位相シフト演算子、及び1量子ビット位相シフト演算子等を含むが、これらに限定されない。次に量子ビット演算子を使用して量子状態準備回路における量子ビット量子ゲートを更新し、推奨プリファレンスデータベクトルに対応する推奨量子状態準備回路を得る。すなわち、電子機器は、推奨プリファレンスデータベクトルに対応する量子ビット演算子を使用して量子状態準備回路における同じ量子ビット量子ゲートを置換し、それによって量子ゲートを更新した量子状態準備回路を得る。すなわち、推奨プリファレンスデータベクトルに対応する推奨量子状態準備回路を得る。
【0159】
ステップ1006:予め設定された初期量子状態を推奨量子状態準備回路に入力して量子状態準備を行い、推奨プリファレンスデータベクトルに対応する量子状態を得る。
【0160】
ここで、予め設定された初期量子状態とは、予め設定された初期量子状態を指し、該初期量子状態は、[数45]であってもよい。
【0161】
【数45】
【0162】
具体的には、電子機器は、予め設定された初期量子状態を推奨量子状態準備回路に入力し、推奨量子状態準備回路は、量子ビット演算子を使用して量子演算を行い、最後に、出力された推奨プリファレンスデータベクトルに対応する量子状態を得る。
【0163】
ステップ1008:推奨プリファレンスデータベクトルに対応する量子状態、及び量子特異値推定アルゴリズム回路に基づいて量子演算を行い、ターゲット量子状態を得て、ターゲット量子状態に基づいて量子測定を行い、推奨プリファレンスデータベクトルに対応する推奨結果を得る。
【0164】
ここで、量子特異値推定アルゴリズム回路とは、量子特異値推定アルゴリズムに対応する量子回路を指す。ターゲット量子状態とは、量子特異値推定アルゴリズム回路により推奨プリファレンスデータベクトルに対応する量子状態に対して量子演算を行った後に出力した量子状態を指す。量子測定は、量子崩壊を引き起こし、不確定性を確定性に変え得る。量子測定により崩壊後の確定値を取得することができる。推奨プリファレンスデータベクトルに対応する推奨結果とは、推奨プリファレンスデータベクトルに対応する、推奨を行うか否かの結果を指し、該推奨結果は、推奨を行うことと、推奨を行わないこととを含む。
【0165】
具体的には、電子機器は、推奨プリファレンスデータベクトルに対応する量子状態を量子特異値推定アルゴリズム回路に入力して量子演算を行い、出力されたターゲット量子状態を得て、次にターゲット量子状態に対して量子測定を行う、すなわち、平方演算の測定操作を行う。推奨プリファレンスデータベクトルに対応する推奨結果を得て、推奨結果が推奨を行うことであるときには、推奨情報を推奨プリファレンスデータに対応する推奨対象端末に送信できる。推奨結果が推奨を行わないことであるときには、処理をせず、すなわち、推奨情報を推奨プリファレンスデータに対応する推奨対象端末に送信する必要がない。
【0166】
上記実施例において、推奨プリファレンスデータベクトルを推奨量子状態準備回路において使用して量子状態準備を行うことにより、推奨プリファレンスデータベクトルに対応する量子状態を得て、回路深さを低減させた量子状態準備回路を使用して量子状態準備を行うため、それによって推奨プリファレンスデータベクトルに対応する量子状態を得る効率を向上させる。次に量子特異値推定アルゴリズム回路を使用して量子演算を行い、ターゲット量子状態を得て、ターゲット量子状態に基づいて量子測定を行い、推奨プリファレンスデータベクトルに対応する推奨結果を得て、次に推奨プリファレンスデータベクトルに対応する量子状態を使用して量子テストを行い、それによって推奨結果を得る効率を向上させる。
【0167】
1つの具体的な実施例において、量子推奨システムにおいて、古典的なデータは、プリファレンス行列P=[Pijn×mである。量子推奨システムを実行する前に、プリファレンス行列における各行のデータP=[Pi1,Pi2,…,Pim]を対応する量子状態[数46]にロードする必要があり、ここで、{|j>:j=1,…,m}は、1組の直交基底を表す。量子推奨システムに加えて、量子線形連立方程式による量子サポートベクトルマシンの求解、量子クラスタリングアルゴリズム、及びハミルトニアンシミュレーション等の量子アルゴリズムにおいても、量子状態準備回路により古典的なデータを量子データに変換する必要がある。
【0168】
【数46】
【0169】
1つの実施例において、図11に示すように、量子状態準備方法を提供する。該方法が図1における電子機器に応用されることを例に説明すると、以下のステップを含む。
【0170】
ステップ1102:ターゲットデータベクトルを取得し、ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得する。
【0171】
ここで、ターゲットデータベクトルとは、ターゲットデータに対応するベクトルを指し、該ターゲットデータは、古典的なデータである。該古典的なデータは、テキストデータ、画像データ、ビデオデータ、及び音声データ等であってもよい。該ターゲットデータは、対応する量子状態を準備する必要があるデータである。ターゲット1量子ビット反転ゲートとは、ターゲットデータベクトルに対応する1量子ビット反転ゲートを指す。ターゲット1量子ビット位相シフトゲートとは、ターゲットデータベクトルに対応する1量子ビット位相シフトゲートを指す。ターゲット2量子ビットスワップゲートとは、ターゲットデータベクトルに対応する2量子ビットスワップゲートを指す。ターゲット2量子ビット位相シフトゲートとは、ターゲットデータベクトルに対応する2量子ビット位相シフトゲートを指す。
【0172】
具体的には、電子機器は、量子状態を準備する必要があるターゲットデータベクトルを取得する。電子機器は、データベースからターゲットデータベクトルを取得してもよい。電子機器は、端末からアップロードされたターゲットデータベクトルを取得してもよい。電子機器は、さらにサービス側からターゲットデータベクトルを取得してもよい。ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得する。
【0173】
ステップ1102:二分木制限下でのターゲット量子ビットセットを決定し、ターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得る。
【0174】
ここで、ターゲット反転ゲートサブ回路とは、ターゲット1量子ビット反転ゲートを第1ターゲット子ノード量子ビットに作用させて得た量子回路を指す。
【0175】
具体的には、電子機器は、各量子ビットを取得し、各量子ビットを使用して二分木制限下でのターゲット量子ビットセットを決定する。次にターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得る。すなわち、ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットにおいてターゲット1量子ビット反転ゲートを実現する。
【0176】
ステップ1104:ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得る。
【0177】
ここで、ターゲット位相シフトゲートサブ回路は、ターゲット2量子ビット位相シフトゲートを、ルートノード量子ビットの左子ノード位置にある量子ビットと右子ノード位置にある量子ビットとの間に作用させて得た量子回路である。
【0178】
具体的には、電子機器は、経路制限下での2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得て、すなわち、左子ノード位置にある量子ビットと右子ノード位置にある量子ビットとの間で2量子ビット位相シフトゲートを実現する。ここで、2量子ビット位相シフトゲートが1量子ビットゲートと経路制限下でのCNOTゲートとを組み合わせることによって実現されるため、位相シフトゲートサブ回路は、左子ノード位置にある量子ビットとルートノード量子ビットとの間に経路制限下でのCNOTゲートを作用させ、及び右子ノード位置にある量子ビットとルートノード量子ビットとの間に経路制限下でのCNOTゲートを作用させ、1量子ビットゲートを左子ノード位置にある量子ビット、右子ノード位置にある量子ビット、及びルートノード量子ビットに作用させた後に組み合わせることにより得られる。
【0179】
ステップ1106:ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得る。第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットである。
【0180】
ここで、ターゲットスワップゲートサブ回路とは、ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させて得た量子回路を指す。
【0181】
具体的には、電子機器は、ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得る、すなわち、電子機器は、第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間でターゲット2量子ビットスワップゲートを実現する。
【0182】
ステップ1108:子ノード量子ビットをルートノード量子ビットとし、子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行する。
【0183】
具体的には、電子機器は、子ノード量子ビットをルートノード量子ビットとし、子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行する。このときに、電子機器は、反復を完了し、子ノード量子ビットがリーフノード量子ビットではないときには反復を実行し続ける。反復を完了するときには、電子機器は、各ターゲット位相シフトゲートサブ回路、及び各ターゲットスワップゲートサブ回路を得る。
【0184】
ステップ1110:経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、ターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得る。
【0185】
ここで、ターゲットリーフ位相シフトゲートサブ回路とは、親ノード量子ビットに対応するリーフノード量子ビットの間に経路制限下でのターゲット2量子ビット位相シフトゲートを作用させて得た量子回路を指す。1量子ビット位相シフトサブ回路とは、ターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させて得た量子回路を指す。
【0186】
具体的には、電子機器は、子ノード量子ビットがリーフノード量子ビットであると判定するときに、経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、ターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得る。
【0187】
ステップ1112:ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成する。
【0188】
ここで、ターゲットデータベクトルに対応するターゲット量子状態準備回路とは、生成されたターゲットデータベクトルに対応する量子状態準備回路を指す。
【0189】
具体的には、電子機器は、ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成する。
【0190】
ステップ1114:予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得る。
【0191】
ここで、予め設定された初期量子状態とは、予め設定された初期量子状態を指し、該初期量子状態は、[数47]であってもよい。
【0192】
【数47】
【0193】
具体的には、電子機器は、予め設定された初期量子状態をターゲット量子状態準備回路に入力し、ターゲット量子状態準備回路は、量子ビット演算子を使用して量子演算を行い、最後に、出力されたターゲットデータベクトルに対応する量子状態を得る。
【0194】
上記量子状態準備方法は、ターゲットデータベクトルに対応するターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得することと、次にターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを使用して二分木制限下でのターゲット量子ビットセットによりターゲットデータベクトルに対応するターゲット量子状態準備回路を生成することと、ターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートの回路深さを二分木制限下でのターゲット量子ビットに作用させることであって、該二分木制限下での経路制限は、いずれも交差しない、ことと、により、得られた量子状態準備回路の回路深さを著しく低減させることができ、それによって量子状態準備回路の回路深さを効果的に低減させることができる。次に、予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得る、すなわち、回路深さを低減させたターゲット量子状態準備回路を使用して量子状態を準備することで、量子状態準備の時間を効果的に低減させ、量子計算の動作効率を向上させることができ、それによって量子状態の準備効率を向上させる。
【0195】
1つの具体的な実施例において、二分木制限下で1進符号化された量子状態準備回路の生成について、具体的に言えば、以下[数48]のように準備すべきベクトルを取得する。
【0196】
【数48】
【0197】
以下のように準備すべきベクトルvに対応する2量子ビット演算子を取得する。
【0198】
[数49]に対応する量子ビット演算子は、[数50]であり、[数51]に対応する量子ビット演算子は、[数52]であり、[数53]に対応する量子ビット演算子は、[数54]であり、[数55]に対応する量子ビット演算子は、[数56]であり、[数57]に対応する量子ビット演算子は、[数58]であり、[数59]に対応する量子ビット演算子は、[数60]である。
【0199】
【数49】
【数50】
【数51】
【数52】
【数53】
【数54】
【数55】
【数56】
【数57】
【数58】
【数59】
【数60】
【0200】
図12は、準備すべきベクトルvに対応する1進符号化された量子状態準備回路の実現の模式図であり、具体的に言えば、以下の通りである。
【0201】
ステップ0:量子ビットq上にXゲートを作用させる。
【0202】
ステップ1:
ステップ1.1:経路[数61]の制限下でq、及びqに作用する2量子ビット回転ゲート[数62]
を実現する。
【0203】
【数61】
【数62】
【0204】
ステップ1.2:同時にq、及びq00上に[数63]を作用させ、q、及びq10上に[数64]を作用させる。
【0205】
【数63】
【数64】
【0206】
ステップ2:
ステップ2.1:同時に経路のq00-q-q01の制限下でq00、及びq01に作用する2量子ビット回転ゲート[数65]を実現し、経路q10-q-q11の制限下でq10、及びq11に作用する2量子ビット回転ゲート[数66]を実現する。
【0207】
【数65】
【数66】
【0208】
ステップ2.2:同時にq00、及びq000上に[数67]を作用させ、q01、及びq010上に[数68]を作用させ、q10、及びq100上に[数69]を作用させ、q11、及びq110上に[数70]を作用させる。
【0209】
【数67】
【数68】
【数69】
【数70】
【0210】
ステップ3:
ステップ3.1:同時に経路q000-q00-q001の制限下でq000、及びq001に作用する2量子ビット回転ゲート[数71]を実現し、経路q010-q01-q011の制限下でq010、及びq011に作用する2量子ビット回転ゲート[数72]を実現し、経路q100-q10-q101の制限下でq100、及びq101に作用する2量子ビット回転ゲート[数73]を実現し、経路q110-q11-q111の制限下でq110、及びq111に作用する2量子ビット回転ゲート[数74]を実現する。
【0211】
【数71】
【数72】
【数73】
【数74】
【0212】
ステップ3.1:すべてのx∈{0,1}について、同時に量子ビットq上に1ビット量子ゲートR(θ)を作用させる。
【0213】
以上のように、準備すべきベクトルvに対応する1進符号化された量子状態準備回路を得て、該1進符号化された量子状態準備回路の回路深さは0(n)となり、量子状態準備回路の回路深さを効果的に低減させる。次に、予め設定された初期量子状態を準備すべきベクトルvに対応する1進符号化された量子状態準備回路に入力して量子状態準備を行い、準備すべきベクトルvに対応する量子状態を得て、更に量子状態準備の時間を効果的に低減させ、量子計算の動作効率を向上させ、それによって量子状態の準備効率を向上させる。
【0214】
1つの具体的な実施例において、該量子状態準備方法は、画像データに対応する量子状態の準備シーンに応用できる。具体的に言えば、電子機器は、画像データを取得し、次に画像データに対してベクトル化を行い、画像ベクトルを得る。次に本願の量子状態準備回路の生成方法を使用して生成された量子準備回路を取得する。次に画像ベクトルを使用して、2量子ビット位相シフト演算子、及び1量子ビット位相シフト演算子等を含む量子ビット演算子を計算する。次に量子ビット演算子を使用して量子準備回路における対応する量子ゲートを更新し、例えば、2量子ビット位相シフト演算子を使用して量子準備回路における2量子ビット位相シフトゲートを更新でき、1量子ビット位相シフト演算子を使用して量子準備回路における1量子ビット位相シフトゲートを更新できる。量子準備回路における量子ビット演算子を使用して更新する必要があるすべての量子ゲートの更新を完了すると、画像ベクトルに対応するターゲット量子状態準備回路を得る。最後に初期量子状態を画像ベクトルに対応するターゲット量子状態準備回路に入力して量子状態の準備を行い、ターゲット量子状態準備回路の出力を得る、すなわち、画像ベクトルに対応する量子状態を得る。次に画像ベクトルに対応する量子状態を使用して量子演算を行い、画像ベクトルに対応する量子状態の処理結果を得て、それによって画像データの処理効率を大幅に向上させることができる。
【0215】
理解すべきである点として、上記各実施例に係るフローチャートにおける各ステップは、矢印の指示に応じて順に表示されているが、これらのステップは、必ずしも矢印で指示される順序に応じて順に実行されるわけではない。本明細書において明確な説明がない限り、これらのステップの実行は、厳密な順序に制限されず、これらのステップは、他の順序で実行されてもよい。そして、上記各実施例に係るフローチャートにおける少なくとも一部のステップは、複数のステップ、又は、複数の段階を含んでもよく、これらのステップ、又は、段階は、必ずしも同一時刻において実行されて完了するわけではなく、異なる時刻において実行されてもよい。これらのステップ、又は、段階の実行順序も必ずしも順に行われるわけではなく、他のステップ、又は、他のステップのうちのステップ、又は、段階の少なくとも一部と交替して、又は、交互に実行されてもよい。
【0216】
同様の発明の技術的思想に基づいて、本願の実施例は、上記に係る量子状態準備回路の生成方法を実現することに用いられる量子状態準備回路の生成装置、又は、量子状態準備方法、及び量子状態準備装置をさらに提供する。該装置が提供する問題を解決する実現手段は、上記方法に記載される実現手段と類似しているため、以下に提示れる1つ、又は、複数の量子状態準備回路の生成装置、又は、量子状態準備装置の実施例における具体的な限定については、上記の量子状態準備回路の生成方法、又は、量子状態準備方法についての限定を参照すればよいため、ここでは、重複した説明を省略する。
【0217】
1つの実施例において、図13に示すように、量子状態準備回路の生成装置1300は、量子ゲート取得モジュール1302、反転ゲート作用モジュール1304、位相シフトゲート作用モジュール1306、スワップゲート作用モジュール1308、反復モジュール1310、リーフノード作用モジュール1312、及び組み合わせモジュール1314を含み、ここで、
量子ゲート取得モジュール1302は、1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得することに用いられ、
反転ゲート作用モジュール1304は、二分木制限下でのターゲット量子ビットセットを決定し、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることに用いられ、
位相シフトゲート作用モジュール1306は、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることに用いられ、
スワップゲート作用モジュール1308は、2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることに用いられ、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットであり、
反復モジュール1310は、子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行することに用いられ、
リーフノード作用モジュール1312は、経路制限下での2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることに用いられ、
組み合わせモジュール1314は、反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成することに用いられる。
【0218】
1つの実施例において、量子ゲート取得モジュール1302は、さらに、1量子ビットゲート、及び経路制限下での制御NOTゲートを取得することと、1量子ビットゲート、及び経路制限下での制御NOTゲートに基づいて組み合わせて2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを形成することと、に用いられる。
【0219】
1つの実施例において、ターゲット量子ビットセットにおける量子ビットの数量は、2n+1-1であり、nは、1以上の正整数である。
【0220】
1つの実施例において、量子状態準備回路の生成装置1300は、
nが1であるときに、二分木制限下での3つの量子ビットを決定することと、1量子ビット反転ゲートを3つの量子ビットのうちのルートノード量子ビットに対応する第1ターゲットリーフノード量子ビットに作用させ、反転ゲートサブ回路を得ることと、2量子ビット位相シフトゲートをルートノード量子ビットに対応するリーフノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることと、1量子位相シフトゲートをリーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることと、反転ゲートサブ回路、位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路を組み合わせて3つの量子ビットに対応する量子状態準備回路を形成することと、に用いられる生成モジュールをさらに含む。
【0221】
1つの実施例において、反転ゲートサブ回路の回路深さは1であり、位相シフトゲートサブ回路の回路深さは0(1)であり、スワップゲートサブ回路の回路深さは3であり、リーフ位相シフトゲートサブ回路の回路深さは0(1)であり、1量子ビット位相シフトサブ回路の回路深さは1であり、量子状態準備回路の生成装置1300は、
反転ゲートサブ回路、位相シフトゲートサブ回路、スワップゲートサブ回路、リーフ位相シフトゲートサブ回路、及び1量子ビット位相シフトサブ回路にそれぞれ対応する回路深さに基づいて、量子状態準備回路の回路深さを決定することに用いられる回路深さ決定モジュールをさらに含み、ここで、回路深さは0(n)である。
【0222】
1つの実施例において、第1ターゲット子ノード量子ビットは、第1左子ノード量子ビットを含み、第2ターゲット子ノード量子ビットは、第2左子ノード量子ビットを含み、
反転ゲート作用モジュール1304は、さらに、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1左子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることに用いられ、
スワップゲート作用モジュール1308は、さらに、2量子ビットスワップゲートを第1左子ノード量子ビットと第2左子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることに用いられる。
【0223】
1つの実施例において、第1ターゲット子ノード量子ビットは、第1右子ノード量子ビットを含み、第2ターゲット子ノード量子ビットは、第2右子ノード量子ビットを含み、
反転ゲート作用モジュール1304は、さらに、1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1右子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることに用いられ、
スワップゲート作用モジュール1308は、さらに、2量子ビットスワップゲートを第1右子ノード量子ビットと第2右子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることに用いられる。
【0224】
1つの実施例において、量子状態準備回路の生成装置1300は、
ターゲットデータベクトルを取得することと、ターゲットデータベクトルに基づいて量子ビット演算子を決定し、量子ビット演算子に基づいて量子状態準備回路における量子ビット量子ゲートを更新し、ターゲットデータベクトルに対応するターゲット量子状態準備回路を得ることと、予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得ることと、に用いられる量子状態準備モジュールをさらに含む。
【0225】
1つの実施例において、量子状態準備回路の生成装置1300は、
推奨プリファレンスデータベクトルを取得することと、推奨プリファレンスデータベクトルに基づいて量子ビット演算子を決定し、量子ビット演算子に基づいて量子状態準備回路における量子ビット量子ゲートを更新し、推奨プリファレンスデータベクトルに対応する推奨量子状態準備回路を得ることと、予め設定された初期量子状態を推奨量子状態準備回路に入力して量子状態準備を行い、推奨プリファレンスデータベクトルに対応する量子状態を得ることと、推奨プリファレンスデータベクトルに対応する量子状態、及び量子特異値推定アルゴリズム回路に基づいて量子演算を行い、ターゲット量子状態を得て、ターゲット量子状態に基づいて量子測定を行い、推奨プリファレンスデータベクトルに対応する推奨結果を得ることと、に用いられる量子推奨モジュールをさらに含む。
【0226】
1つの実施例において、図14に示すように、量子状態準備装置1400を提供し、ターゲット量子ゲート取得モジュール1402、ターゲット反転ゲート作用モジュール1404、ターゲット位相シフトゲート作用モジュール1406、ターゲットスワップゲート作用モジュール1408、ターゲット反復モジュール1410、ターゲットリーフノード作用モジュール1412、ターゲット組み合わせモジュール1414、及び準備モジュール1416を含み、ここで、
ターゲット量子ゲート取得モジュール1402は、ターゲットデータベクトルを取得し、ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得することに用いられ、
ターゲット反転ゲート作用モジュール1404は、二分木制限下でのターゲット量子ビットセットを決定し、ターゲット1量子ビット反転ゲートをターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得ることに用いられ、
ターゲット位相シフトゲート作用モジュール1406は、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得ることに用いられ、
ターゲットスワップゲート作用モジュール1408は、ターゲット2量子ビットスワップゲートを第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得ることに用いられ、第2ターゲット子ノード量子ビットは、第1ターゲット子ノード量子ビットの子ノード量子ビットであり、
ターゲット反復モジュール1410は、子ノード量子ビットをルートノード量子ビットとし、且つ子ノード量子ビットがリーフノード量子ビットになるまで、ターゲット2量子ビット位相シフトゲートをルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行することに用いられ、
ターゲットリーフノード作用モジュール1412は、経路制限下でのターゲット2量子ビット位相シフトゲートをターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つターゲット1量子位相シフトゲートをリーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得ることに用いられ、
ターゲット組み合わせモジュール1414は、ターゲット反転ゲートサブ回路、ターゲット位相シフトゲートサブ回路、ターゲットスワップゲートサブ回路、ターゲットリーフ位相シフトゲートサブ回路、及びターゲット1量子ビット位相シフトサブ回路を組み合わせてターゲットデータベクトルに対応するターゲット量子状態準備回路を形成することに用いられ、
準備モジュール1416は、予め設定された初期量子状態をターゲット量子状態準備回路に入力して量子状態準備を行い、ターゲットデータベクトルに対応する量子状態を得ることに用いられる。
【0227】
上記量子状態準備回路の生成装置、又は、量子状態準備装置における各モジュールの全部、又は、一部は、ソフトウェア、ハードウェア、及びそれらの組み合わせにより実現することができる。上記各モジュールは、ハードウェア形式で電子機器におけるプロセッサ内に内蔵され、又は、それから独立してもよく、ソフトウェア形式で電子機器におけるメモリに記憶されてもよく、それによってプロセッサは、以上の各モジュールに対応する操作を呼び出して実行する。
【0228】
1つの実施例において、電子機器を提供し、該電子機器は、工業化されたスマート機器であってもよく、その内部構造図は、図15に示されてもよい。該電子機器は、プロセッサ、メモリ、入力/出力インタフェース(Input/Output、I/Oと略称する)、及び通信インタフェースを含む。ここで、プロセッサ、メモリ、及び入力/出力インタフェースは、システムバスにより接続され、通信インタフェースは、入力/出力インタフェースによりシステムバスに接続される。ここで、該電子機器のプロセッサは、計算、及び制御能力を提供することに用いられる。該電子機器のメモリは、不揮発性記憶媒体と、内部メモリとを含む。該不揮発性記憶媒体には、オペレーティングシステム、コンピュータ可読命令、及びデータベースが記憶されている。該内部メモリは、不揮発性記憶媒体におけるオペレーティングシステム、及びコンピュータ可読命令の動作のために環境を提供する。該電子機器のデータベースは、ターゲットデータベクトルを記憶することに用いられる。該電子機器の入力/出力インタフェースは、プロセッサと外部機器との間で情報を交換することに用いられる。該電子機器の通信インタフェースは、外部の端末とネットワークにより接続して通信することに用いられる。該コンピュータ可読命令がプロセッサによって実行されるときに量子状態準備回路の生成方法、又は、量子状態準備方法を実現する。
【0229】
当業者が理解できるように、図15に示す構造は、単に本願の手段に関連する一部の構造のブロック図であり、本願の手段をそれに応用した電子機器に対する限定を構成せず、具体的な電子機器は、図示よりも多い、又は、少ない部材を含む、又は、あるいくつかの部材を組み合わせる、又は、異なる部材配置を有するようにしてもよい。
【0230】
1つの実施例において、量子チップを提供し、量子状態準備回路を含み、上記量子状態準備回路は、本願における量子状態準備回路の生成方法により実現される。該量子チップは、各スマート端末、及び車載機器に応用できる。
【0231】
1つの実施例において、電子機器をさらに提供し、メモリと、プロセッサとを含み、メモリには、コンピュータ可読命令が記憶されており、該プロセッサは、コンピュータ可読命令を実行するときに上記各方法実施例におけるステップを実現する。
【0232】
1つの実施例において、コンピュータ可読記憶媒体を提供し、それにおいてコンピュータ可読命令が記憶されており、該コンピュータ可読命令がプロセッサによって実行されるときに上記各方法実施例におけるステップを実現する。
【0233】
1つの実施例において、コンピュータプログラム製品を提供し、コンピュータ可読命令を含み、該コンピュータ可読命令がプロセッサによって実行されるときに上記各方法実施例におけるステップを実現する。
【0234】
説明する必要がある点として、本願に係るユーザー情報(ユーザー機器情報、及びユーザー個人情報等を含むが、これらに限定されない)、及びデータ(分析に用いられるデータ、記憶されるデータ、及び展示されるデータ等を含むが、これらに限定されない)は、いずれもユーザーによって認可され、又は、各関係者によって十分に認可された情報、及びデータであり、関連データの収集、使用、及び処理は、関連国や地域の関連法律・法規、及び標準に準拠する必要がある。プッシュされる情報については、推奨対象端末は拒否することができ、広告プッシュ情報等を簡易に拒否することができる。
【0235】
当業者が理解できるように、上記実施例方法における全部、又は、一部のプロセスの実現は、コンピュータ可読命令により関連ハードウェアに命令して完了させてもよく、上記コンピュータ可読命令は、1つの不揮発性コンピュータ読み取り可能な記憶媒体に記憶されてもよく、該コンピュータ可読命令が実行されるときに、上記各方法の実施例のプロセスを含んでもよい。ここで、本願が提供する各実施例において使用されるメモリ、データベース、又は、他の媒体についての何らの引用は、いずれも不揮発性、及び揮発性メモリのうちの少なくとも一種を含んでもよい。不揮発性メモリは、読み出し専用メモリ(Read-Only Memory、ROM)、磁気テープ、フロッピーディスク、フラッシュメモリ、光メモリ、高密度組み込み式不揮発性メモリ、抵抗変化型メモリ(ReRAM)、磁気抵抗メモリ(Magnetoresistive Random Access Memory、MRAM)、強誘電体メモリ(Ferroelectric Random Access Memory、FRAM(登録商標))、相変化メモリ(Phase Change Memory、PCM)、及びグラフェンメモリ等を含んでもよい。揮発性メモリは、ランダムアクセスメモリ(Random Access Memory、RAM)、又は、外部高速キャッシュメモリ等を含んでもよい。制限ではなく説明として、RAMは、例えばスタティックランダムアクセスメモリ(Static Random Access Memory、SRAM)、又は、ダイナミックランダムアクセスメモリ(Dynamic Random Access Memory、DRAM)等の複数種の形式であってもよい。本願が提供する各実施例に係るデータベースは、リレーショナルデータベース、及び非リレーショナルデータベースのうちの少なくとも一種を含んでもよい。非リレーショナルデータベースは、ブロックチェーンに基づく分散型データベース等を含んでもよいが、これに限定されない。本願が提供する各実施例に係るプロセッサは、汎用プロセッサ、中央プロセッサ、グラフィックスプロセッサ、デジタル信号プロセッサ、プログラマブルロジックデバイス、及び量子計算に基づくデータ処理ロジックデバイス等であってもよいが、これらに限定されない。
【0236】
以上の実施例の各技術的特徴は任意に組み合わせることができるが、記述を簡潔にするために、上記実施例における各技術的特徴のすべての可能な組み合わせを記述してはいない。しかし、これらの技術的特徴の組み合わせが矛盾しない限り、本明細書に記載される範囲に属すると考えられるべきである。
【0237】
上記実施例は、単に本願のいくつかの実施形態を示しており、その記述は、比較的具体的で詳細であるが、本願の特許の範囲を制限するものではないと理解すべきである。なお、当業者であれば、本願の発想を逸脱せずに種々の変形や改良を行うこともでき、これらは、すべて本願の保護範囲に属する。従って、本願の保護範囲は、添付する特許請求の範囲に準じるべきである。
【符号の説明】
【0238】
102 電子機器
104 量子チップ
1042 量子状態準備回路
1300 生成装置
1302 量子ゲート取得モジュール
1304 反転ゲート作用モジュール
1306 位相シフトゲート作用モジュール
1308 スワップゲート作用モジュール
1310 反復モジュール
1312 リーフノード作用モジュール
1400 量子状態準備装置
1402 ターゲット量子ゲート取得モジュール
1404 ターゲット反転ゲート作用モジュール
1406 ターゲット位相シフトゲート作用モジュール
1408 ターゲットスワップゲート作用モジュール
1410 ターゲット反復モジュール
1412 ターゲットリーフノード作用モジュール
1416 準備モジュール
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
【手続補正書】
【提出日】2023-09-05
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
量子状態準備回路の生成装置であって、前記装置は、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得することに用いられる量子ゲート取得モジュールと、
二分木制限下でのターゲット量子ビットセットを決定し、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得ることに用いられる反転ゲート作用モジュールと、
前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることに用いられる位相シフトゲート作用モジュールと、
前記2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得ることに用いられるスワップゲート作用モジュールであって、前記第2ターゲット子ノード量子ビットは、前記第1ターゲット子ノード量子ビットの子ノード量子ビットである、スワップゲート作用モジュールと、
前記子ノード量子ビットをルートノード量子ビットとし、且つ前記子ノード量子ビットがリーフノード量子ビットになるまで、前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることに戻って実行することに用いられる反復モジュールと、
前記経路制限下での2量子ビット位相シフトゲートを前記ターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ前記1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることに用いられるリーフノード作用モジュールと、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成することに用いられる組み合わせモジュールと、を含むことを特徴とする量子状態準備回路の生成装置。
【請求項2】
前記量子ゲート取得モジュールは、さらに、1量子ビットゲート、及び経路制限下での制御NOTゲートを取得することと、前記1量子ビットゲート、及び前記経路制限下での制御NOTゲートに基づいて組み合わせて前記2量子ビットスワップゲート、及び前記経路制限下での2量子ビット位相シフトゲートを形成することと、に用いられることを特徴とする請求項1に記載の装置。
【請求項3】
前記ターゲット量子ビットセットにおける量子ビットの数量は、2n+1-1であり、nは、1以上の正整数であることを特徴とする請求項に記載の装置。
【請求項4】
前記装置は、
前記nが1であるときに、二分木制限下での3つの量子ビットを決定することと、前記1量子ビット反転ゲートを前記3つの量子ビットのうちのルートノード量子ビットに対応する第1ターゲットリーフノード量子ビットに作用させ、反転ゲートサブ回路を得ることと、前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応するリーフノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得ることと、前記1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得ることと、前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて前記3つの量子ビットに対応する量子状態準備回路を形成することと、に用いられる生成モジュールをさらに含むことを特徴とする請求項3に記載の装置。
【請求項5】
前記反転ゲートサブ回路の回路深さは1であり、前記位相シフトゲートサブ回路の回路深さは0(1)であり、前記スワップゲートサブ回路の回路深さは3であり、前記リーフ位相シフトゲートサブ回路の回路深さは0(1)であり、前記1量子ビット位相シフトサブ回路の回路深さは1であり、前記装置は、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路にそれぞれ対応する回路深さに基づいて、前記量子状態準備回路の回路深さを決定することに用いられる回路深さ決定モジュールをさらに含み、ここで、前記回路深さは0(n)であることを特徴とする請求項3に記載の装置。
【請求項6】
前記第1ターゲット子ノード量子ビットは、第1左子ノード量子ビットを含み、前記第2ターゲット子ノード量子ビットは、第2左子ノード量子ビットを含み、
前記反転ゲート作用モジュールは、さらに、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1左子ノード量子ビットに作用させ、前記反転ゲートサブ回路を得ることに用いられ、
前記スワップゲート作用モジュールは、さらに、前記2量子ビットスワップゲートを前記第1左子ノード量子ビットと第2左子ノード量子ビットとの間に作用させ、前記スワップゲートサブ回路を得ることに用いられることを特徴とする請求項1に記載の装置。
【請求項7】
前記第1ターゲット子ノード量子ビットは、第1右子ノード量子ビットを含み、前記第2ターゲット子ノード量子ビットは、第2右子ノード量子ビットを含み、
前記反転ゲート作用モジュールは、さらに、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1右子ノード量子ビットに作用させ、前記反転ゲートサブ回路を得ることに用いられ、
前記スワップゲート作用モジュールは、さらに、前記2量子ビットスワップゲートを前記第1右子ノード量子ビットと第2右子ノード量子ビットとの間に作用させ、前記スワップゲートサブ回路を得ることに用いられることを特徴とする請求項1に記載の装置。
【請求項8】
前記装置は、
ターゲットデータベクトルを取得することと、前記ターゲットデータベクトルに基づいて量子ビット演算子を決定し、前記量子ビット演算子に基づいて前記量子状態準備回路における量子ビット量子ゲートを更新し、前記ターゲットデータベクトルに対応するターゲット量子状態準備回路を得ることと、予め設定された初期量子状態を前記ターゲット量子状態準備回路に入力して量子状態準備を行い、前記ターゲットデータベクトルに対応する量子状態を得ることと、に用いられる量子状態準備モジュールをさらに含むことを特徴とする請求項1に記載の装置。
【請求項9】
前記装置は、
推奨プリファレンスデータベクトルを取得することと、前記推奨プリファレンスデータベクトルに基づいて量子ビット演算子を決定し、前記量子ビット演算子に基づいて前記量子状態準備回路における量子ビット量子ゲートを更新し、前記推奨プリファレンスデータベクトルに対応する推奨量子状態準備回路を得ることと、予め設定された初期量子状態を前記推奨量子状態準備回路に入力して量子状態準備を行い、前記推奨プリファレンスデータベクトルに対応する量子状態を得ることと、前記推奨プリファレンスデータベクトルに対応する量子状態、及び量子特異値推定アルゴリズム回路に基づいて量子演算を行い、ターゲット量子状態を得て、前記ターゲット量子状態に基づいて量子測定を行い、前記推奨プリファレンスデータベクトルに対応する推奨結果を得ることと、に用いられる量子推奨モジュールをさらに含むことを特徴とする請求項1に記載の装置。
【請求項10】
量子状態準備装置であって、前記装置は、
ターゲットデータベクトルを取得し、前記ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得することに用いられるターゲット量子ゲート取得モジュールと、
二分木制限下でのターゲット量子ビットセットを決定し、前記ターゲット1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得ることに用いられるターゲット反転ゲート作用モジュールと、
前記ターゲット2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得ることに用いられるターゲット位相シフトゲート作用モジュールと、
前記ターゲット2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得ることに用いられるターゲットスワップゲート作用モジュールであって、前記第2ターゲット子ノード量子ビットは、前記第1ターゲット子ノード量子ビットの子ノード量子ビットである、ターゲットスワップゲート作用モジュールと、
前記子ノード量子ビットをルートノード量子ビットとし、且つ前記子ノード量子ビットがリーフノード量子ビットになるまで、前記ターゲット2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行することに用いられるターゲット反復モジュールと、
前記経路制限下でのターゲット2量子ビット位相シフトゲートを前記ターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つ前記ターゲット1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得ることに用いられるターゲットリーフノード作用モジュールと、
前記ターゲット反転ゲートサブ回路、前記ターゲット位相シフトゲートサブ回路、前記ターゲットスワップゲートサブ回路、前記ターゲットリーフ位相シフトゲートサブ回路、及び前記ターゲット1量子ビット位相シフトサブ回路を組み合わせて前記ターゲットデータベクトルに対応するターゲット量子状態準備回路を形成することに用いられるターゲット組み合わせモジュールと、
予め設定された初期量子状態を前記ターゲット量子状態準備回路に入力して量子状態準備を行い、前記ターゲットデータベクトルに対応する1進符号化された量子状態を得ることに用いられる準備モジュールと、を含むことを特徴とする量子状態準備装置。
【請求項11】
電子機器によって実行される量子状態準備回路の生成方法であって、前記方法は、
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
前記2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得るステップであって、前記第2ターゲット子ノード量子ビットは、前記第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
前記子ノード量子ビットをルートノード量子ビットとし、且つ前記子ノード量子ビットがリーフノード量子ビットになるまで、前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
前記経路制限下での2量子ビット位相シフトゲートを前記ターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、リーフ位相シフトゲートサブ回路を得て、且つ前記1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成するステップと、を含むことを特徴とする量子状態準備回路の生成方法。
【請求項12】
1量子ビット反転ゲート、1量子ビット位相シフトゲート、2量子ビットスワップゲート、及び経路制限下での2量子ビット位相シフトゲートを取得する前記ステップは、
1量子ビットゲート、及び経路制限下での制御NOTゲートを取得するステップと、
前記1量子ビットゲート、及び前記経路制限下での制御NOTゲートに基づいて組み合わせて前記2量子ビットスワップゲート、及び前記経路制限下での2量子ビット位相シフトゲートを形成するステップと、を含むことを特徴とする請求項11に記載の方法。
【請求項13】
前記ターゲット量子ビットセットにおける量子ビットの数量は、2n+1-1であり、nは、1以上の正整数であることを特徴とする請求項11に記載の方法。
【請求項14】
前記方法は、
前記nが1であるときに、二分木制限下での3つの量子ビットを決定するステップと、
前記1量子ビット反転ゲートを前記3つの量子ビットのうちのルートノード量子ビットに対応する第1ターゲットリーフノード量子ビットに作用させ、反転ゲートサブ回路を得るステップと、
前記2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応するリーフノード量子ビットの間に作用させ、位相シフトゲートサブ回路を得るステップと、
前記1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、1量子ビット位相シフトサブ回路を得るステップと、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて前記3つの量子ビットに対応する量子状態準備回路を形成するステップと、をさらに含むことを特徴とする請求項13に記載の方法。
【請求項15】
前記反転ゲートサブ回路の回路深さは1であり、前記位相シフトゲートサブ回路の回路深さは0(1)であり、前記スワップゲートサブ回路の回路深さは3であり、前記リーフ位相シフトゲートサブ回路の回路深さは0(1)であり、前記1量子ビット位相シフトサブ回路の回路深さは1であり、前記方法は、
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路にそれぞれ対応する回路深さに基づいて、前記量子状態準備回路の回路深さを決定するステップであって、ここで、前記回路深さは0(n)である、ステップをさらに含むことを特徴とする請求項13に記載の方法。
【請求項16】
前記第1ターゲット子ノード量子ビットは、第1左子ノード量子ビットを含み、前記第2ターゲット子ノード量子ビットは、第2左子ノード量子ビットを含み、
二分木制限下でのターゲット量子ビットセットを決定し、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得る前記ステップは、
前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1左子ノード量子ビットに作用させ、前記反転ゲートサブ回路を得るステップを含み、
前記2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得る前記ステップは、
前記2量子ビットスワップゲートを前記第1左子ノード量子ビットと第2左子ノード量子ビットとの間に作用させ、前記スワップゲートサブ回路を得るステップを含むことを特徴とする請求項11に記載の方法。
【請求項17】
前記第1ターゲット子ノード量子ビットは、第1右子ノード量子ビットを含み、前記第2ターゲット子ノード量子ビットは、第2右子ノード量子ビットを含み、
二分木制限下でのターゲット量子ビットセットを決定し、前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、反転ゲートサブ回路を得る前記ステップは、
前記1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1右子ノード量子ビットに作用させ、前記反転ゲートサブ回路を得るステップを含み、
前記2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、スワップゲートサブ回路を得る前記ステップは、
前記2量子ビットスワップゲートを前記第1右子ノード量子ビットと第2右子ノード量子ビットとの間に作用させ、前記スワップゲートサブ回路を得るステップを含むことを特徴とする請求項11に記載の方法。
【請求項18】
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成する前記ステップの後に、
ターゲットデータベクトルを取得するステップと、
前記ターゲットデータベクトルに基づいて量子ビット演算子を決定し、前記量子ビット演算子に基づいて前記量子状態準備回路における量子ビット量子ゲートを更新し、前記ターゲットデータベクトルに対応するターゲット量子状態準備回路を得るステップと、
予め設定された初期量子状態を前記ターゲット量子状態準備回路に入力して量子状態準備を行い、前記ターゲットデータベクトルに対応する量子状態を得るステップと、をさらに含むことを特徴とする請求項11に記載の方法。
【請求項19】
前記反転ゲートサブ回路、前記位相シフトゲートサブ回路、前記スワップゲートサブ回路、前記リーフ位相シフトゲートサブ回路、及び前記1量子ビット位相シフトサブ回路を組み合わせて量子状態準備回路を形成する前記ステップの後に、
推奨プリファレンスデータベクトルを取得するステップと、
前記推奨プリファレンスデータベクトルに基づいて量子ビット演算子を決定し、前記量子ビット演算子に基づいて前記量子状態準備回路における量子ビット量子ゲートを更新し、前記推奨プリファレンスデータベクトルに対応する推奨量子状態準備回路を得るステップと、
予め設定された初期量子状態を前記推奨量子状態準備回路に入力して量子状態準備を行い、前記推奨プリファレンスデータベクトルに対応する量子状態を得るステップと、
前記推奨プリファレンスデータベクトルに対応する量子状態、及び量子特異値推定アルゴリズム回路に基づいて量子演算を行い、ターゲット量子状態を得て、前記ターゲット量子状態に基づいて量子測定を行い、前記推奨プリファレンスデータベクトルに対応する推奨結果を得るステップと、をさらに含むことを特徴とする請求項11に記載の方法。
【請求項20】
量子状態準備方法であって、前記方法は、
ターゲットデータベクトルを取得し、前記ターゲットデータベクトルに基づいてターゲット1量子ビット反転ゲート、ターゲット1量子ビット位相シフトゲート、ターゲット2量子ビットスワップゲート、及び経路制限下でのターゲット2量子ビット位相シフトゲートを取得するステップと、
二分木制限下でのターゲット量子ビットセットを決定し、前記ターゲット1量子ビット反転ゲートを前記ターゲット量子ビットセットにおけるルートノード量子ビットに対応する第1ターゲット子ノード量子ビットに作用させ、ターゲット反転ゲートサブ回路を得るステップと、
前記ターゲット2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップと、
前記ターゲット2量子ビットスワップゲートを前記第1ターゲット子ノード量子ビットと第2ターゲット子ノード量子ビットとの間に作用させ、ターゲットスワップゲートサブ回路を得るステップであって、前記第2ターゲット子ノード量子ビットは、前記第1ターゲット子ノード量子ビットの子ノード量子ビットである、ステップと、
前記子ノード量子ビットをルートノード量子ビットとし、且つ前記子ノード量子ビットがリーフノード量子ビットになるまで、前記ターゲット2量子ビット位相シフトゲートを前記ルートノード量子ビットに対応する子ノード量子ビットの間に作用させ、ターゲット位相シフトゲートサブ回路を得るステップに戻って実行するステップと、
前記経路制限下でのターゲット2量子ビット位相シフトゲートを前記ターゲット量子ビットセットにおける親ノード量子ビットに対応するリーフノード量子ビットの間に作用させ、ターゲットリーフ位相シフトゲートサブ回路を得て、且つ前記ターゲット1量子ビット位相シフトゲートを前記リーフノード量子ビットに作用させ、ターゲット1量子ビット位相シフトサブ回路を得るステップと、
前記ターゲット反転ゲートサブ回路、前記ターゲット位相シフトゲートサブ回路、前記ターゲットスワップゲートサブ回路、前記ターゲットリーフ位相シフトゲートサブ回路、及び前記ターゲット1量子ビット位相シフトサブ回路を組み合わせて前記ターゲットデータベクトルに対応するターゲット量子状態準備回路を形成するステップと、
予め設定された初期量子状態を前記ターゲット量子状態準備回路に入力して量子状態準備を行い、前記ターゲットデータベクトルに対応する量子状態を得るステップと、を含むことを特徴とする量子状態準備方法。
【請求項21】
量子状態準備回路を含む量子チップであって、前記量子状態準備回路は、請求項1~10のいずれか一項に記載の量子状態準備回路の生成方法により実現されることを特徴とする量子チップ。
【請求項22】
メモリと、プロセッサとを含み、前記メモリには、コンピュータ可読命令が記憶されている電子機器であって、前記プロセッサは、前記コンピュータ可読命令を実行するときに請求項1~10のいずれか一項に記載の方法を実現することを特徴とする電子機器。
【請求項23】
ンピュータプログラムであって、プロセッサによって実行されるときに請求項1~10のいずれか一項に記載の方法を実現することを特徴とするコンピュータプログラム。
【国際調査報告】