JP7227322B2 - 位相演算を行うための方法および装置 - Google Patents

位相演算を行うための方法および装置 Download PDF

Info

Publication number
JP7227322B2
JP7227322B2 JP2021130663A JP2021130663A JP7227322B2 JP 7227322 B2 JP7227322 B2 JP 7227322B2 JP 2021130663 A JP2021130663 A JP 2021130663A JP 2021130663 A JP2021130663 A JP 2021130663A JP 7227322 B2 JP7227322 B2 JP 7227322B2
Authority
JP
Japan
Prior art keywords
qubit
qubits
control
quantum
phase
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021130663A
Other languages
English (en)
Other versions
JP2021193570A (ja
Inventor
クレイグ・ギドニー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2021193570A publication Critical patent/JP2021193570A/ja
Application granted granted Critical
Publication of JP7227322B2 publication Critical patent/JP7227322B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/20Models of quantum computing, e.g. quantum circuits or universal quantum computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/40Physical realisations or architectures of quantum processors or components for manipulating qubits, e.g. qubit coupling or qubit control
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
  • Superconductor Devices And Manufacturing Methods Thereof (AREA)
  • Circuits Of Receivers In General (AREA)
  • Networks Using Active Elements (AREA)

Description

本明細書は量子コンピューティングに関する。
量子計算のための1つの例示モデルが量子回路モデルである。量子回路モデルでは、計算は、nビットレジスタの量子力学的類似体の一連の量子ゲート可逆変換である。この類似構造はnキュービットレジスタと称される。例示量子ゲートとしては、アダマールゲート、パウリXゲート、パウリYゲートおよびパウリZゲートなどの単一キュービットゲート、ならびにSWAPゲートまたは制御X、YもしくはZゲートなどの多重キュービットゲートを含む。
国際公開第2019/050555号
本明細書は、量子回路において位相演算を行うための技術について記載する。
本明細書に記載される対象の1つの革新的な態様は、第1および第2のキュービットに、フェーズドプラス状態(phased plus state)で準備される第3のキュービットを使用して、同じ位相演算を行うための方法および構成であって、第3のキュービットに第1のNOT演算を行うステップと、第1、第2および第3のキュービットの制御加算器演算を計算するステップであり、制御加算器演算の結果を第4のキュービットに符号化することを含む、ステップと、第4のキュービットに位相演算の2乗を行うステップと、第1、第2および第3のキュービットの制御加算器演算を逆計算する(uncomputing)ステップと、第1のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第1のキュービットがコントロール(control)として作用する、ステップと、第2のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第2のキュービットがコントロールとして作用する、ステップと、第3のキュービットに第2のNOT演算を行うステップとを含む方法で実装できる。本方法は、第1、第2、第3および第4のキュービットを備える量子コンピューティングデバイスによって行われてよい。
この態様の他の実装例は、同方法の作用を行うように各々構成される、対応する古典および/または量子コンピュータシステム、装置、ならびに1つまたは複数のコンピュータ記憶デバイスに記録されるコンピュータプログラムを含む。1つまたは複数の古典または量子コンピュータのシステムは、動作に際して同システムに作用を行わせる、同システムにインストールされるソフトウェア、ファームウェア、ハードウェアまたはその組合せを有することにより特定の動作または作用を行うように構成できる。1つまたは複数のコンピュータプログラムは、データ処理装置によって実行されると、同装置に作用を行わせる命令を含むことにより特定の動作または作用を行うように構成できる。
上記および他の実装例は各々任意選択で、以下の特徴の1つまたは複数を単独でまたは組み合わせて含むことができる。一部の実装例では、制御加算器演算を計算するステップは、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2および第3のキュービット間の論理AND演算を計算するステップと、論理AND計算の結果を第4のキュービットに符号化するステップと、第1のキュービットと第4のキュービットとの間のCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップとを含む。
一部の実装例では、制御加算器演算を逆計算するステップは、第1のキュービットおよび第4のキュービットにCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2および第3のキュービット間の論理AND演算を逆計算するステップと、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップとを含む。
一部の実装例では、第1、第2および第3のキュービットの制御加算器演算を逆計算するステップと、第1のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第2のキュービットがコントロールとして作用する、ステップとは、第1のキュービットおよび第4のキュービットにCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2および第3のキュービット間の論理AND演算を逆計算するステップと、第2のキュービットおよび第3のキュービットにCNOT演算を行うステップであり、第2のキュービットがコントロールとして作用する、ステップと、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップとを含む。
一部の実装例では、第3のキュービットに第2のNOT演算を行うステップは、第3のキュービットをフェーズドプラス状態に戻す。
一部の実装例では、第1および第2のキュービットは最初は任意の初期状態で準備される。
本明細書に記載される対象の別の革新的な態様は、第1のキュービットに位相演算を行うときに第2のキュービットを第3のキュービットと同じ状態で準備するための、第1のキュービットが任意の初期状態で準備され、第2のキュービットがプラス状態で準備され、かつ第3のキュービットがフェーズドプラス状態で準備される、方法および構成であって、第3のキュービットに第1のNOT演算を行うステップと、第1、第2および第3のキュービットの制御加算器演算を計算するステップであり、制御加算器演算の結果を第4のキュービットに符号化することを含む、ステップと、第4のキュービットに位相演算の2乗を行うステップと、第1、第2および第3のキュービットの制御加算器演算を逆計算するステップと、第1のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第2のキュービットがコントロールとして作用する、ステップと、第3のキュービットに第2のNOT演算を行うステップとを含む方法で実装できる。
この態様の他の実装例は、同方法の作用を行うように各々構成される、対応する古典または量子コンピュータシステム、装置、および1つまたは複数のコンピュータ記憶デバイスに記録されるコンピュータプログラムを含む。1つまたは複数の古典または量子コンピュータのシステムは、動作に際して同システムに作用を行わせる、同システムにインストールされるソフトウェア、ファームウェア、ハードウェアまたはその組合せを有することにより特定の動作または作用を行うように構成できる。1つまたは複数のコンピュータプログラムは、データ処理装置によって実行されると、同装置に作用を行わせる命令を含むことにより特定の動作または作用を行うように構成できる。
上記および他の実装例は各々任意選択で、以下の特徴の1つまたは複数を単独でまたは組み合わせて含むことができる。一部の実装例では、制御加算器演算を計算するステップは、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2および第3のキュービット間の論理AND演算を計算するステップと、論理AND計算の結果を第4のキュービットに符号化するステップと、第1のキュービットと第4のキュービットとの間のCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップとを含む。
一部の実装例では、制御加算器演算を逆計算するステップは、第1のキュービットおよび第4のキュービットにCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2および第3のキュービット間の論理AND演算を逆計算するステップと、第2および第3のキュービット間のCNOT演算を行うステップであり、第2のキュービットがコントロールとして作用する、ステップと、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップとを含む。
一部の実装例では、第1、第2および第3のキュービットの制御加算器演算を逆計算するステップと、第1のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第2のキュービットがコントロールとして作用する、ステップとは、第1のキュービットおよび第4のキュービットにCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2および第3のキュービット間の論理AND演算を逆計算するステップと、第2のキュービットおよび第3のキュービットにCNOT演算を行うステップであり、第2のキュービットがコントロールとして作用する、ステップと、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップとを含む。
一部の実装例では、第1、第2および第3のキュービットの制御加算器演算を逆計算するステップと、第1のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第1のキュービットがコントロールとして作用する、ステップと、第2のキュービットと第3のキュービットとの間のCNOT演算を行うステップであり、第2のキュービットがコントロールとして作用する、ステップと、第3のキュービットに第2のNOT演算を行うステップとは、第3のキュービットをフェーズドプラス状態に戻しかつ第2のキュービットをフェーズドプラス状態で準備する。
一部の実装例では、本方法は、ゲートテレポーテーション演算に使用するためにフェーズドプラス状態で準備される第2のキュービットを提供するステップを更に含む。
一部の実装例では、ゲートテレポーテーション演算は、第5および第6のキュービットへの同じ位相演算か、第5のキュービットに位相演算を行うときに第6のキュービットを第7のキュービットと同じ状態で準備するステップか、第5のキュービットに位相演算を行うステップかを含む。
一部の実装例では、第5のキュービットに位相演算を行うステップは、フェーズドプラス状態で準備される第2のキュービットと任意の状態で準備される第5のキュービットとの間のCNOT演算を適用するステップであり、第5のキュービットがコントロールとして作用する、ステップと、第2のキュービットを測定するステップと、第2のキュービットを測定することから生成される測定結果が第2のキュービットがオンであることを示す場合、第5のキュービットに2乗位相演算を適用するステップとを含む。
一部の実装例では、第4のキュービットに位相演算の2乗を行うステップは、第6の方法を行って、第5のキュービットに位相演算の2乗を行うときに第6のキュービットを第7のキュービットと同じ状態で準備するステップを含む。
一部の実装例では、本方法は、位相演算の2乗を反復的に行ってn回目の反復で
Figure 0007227322000001
位相演算を行うステップと、演算のグループにわたってコストを償却するステップと、生成される状態のハミング重みを決定するステップとを更に含む。
一部の実装例では、本方法は、N回の位相演算が複数のそれぞれのキュービットに行われることを必要とするシステムに対して、同じ位相演算を必要とするキュービットをサイズО(sqrt(N))のО(sqrt(N))個のグループへグループ化するステップと、サイズО(log(N))の総計キュービットレジスタを準備するステップと、各グループに対して、グループ内のキュービットのハミング重みを計算するステップと、総計レジスタへ計算されるグループ合計を加算するステップと、グループ内のキュービットのハミング重みを逆計算するステップと、総計レジスタに位相演算を行うステップと、各グループに対して、グループ内のキュービットのハミング重みを計算するステップと、総計レジスタから計算されるグループ合計を減算するステップと、グループ内のキュービットのハミング重みを逆計算するステップとを更に含む。一部の実装例では、総計レジスタはクリアおよび破棄されてよい。
同じ位相演算は、式
Figure 0007227322000002
の単一キュービット演算を含んでよく、式中θは位相演算を特定し、そして位相演算の2乗はZによって与えられる。フェーズドプラス状態は、プラス状態
Figure 0007227322000003
に適用される所望の位相演算を含んでよい。位相演算は、
Figure 0007227322000004
演算でよい。
本明細書の対象の1つまたは複数の実装例の詳細が添付図面および以下の説明に記載される。対象の他の特徴、態様および利点は、同説明、同図面および特許請求の範囲から明らかになるであろう。
位相演算を行うための例示システムを図示する。 第1のキュービットおよび第2のキュービットに、フェーズドプラス状態で準備される第3のキュービットを使用して、目標位相演算を行うための例示プロセスのフロー図である。 第1および第2のキュービットに、フェーズドプラス状態で準備される第3のキュービットを使用して、目標位相演算を行うための例示量子回路の回路図である。 第1および第2のキュービットに、フェーズドプラス状態で準備される第3のキュービットを使用して、目標位相演算を行うための代替量子回路の回路図である。 第1および第2のキュービットに、
Figure 0007227322000005
状態で準備される第3のキュービットを使用して、
Figure 0007227322000006
ゲートを行うための例示量子回路の回路図である。
目標位相演算を行うと共に量子状態を複製するための例示量子回路の回路図である。 個々の
Figure 0007227322000007
ゲートを行うための例示量子回路の回路図である。
図7は、
Figure 0007227322000008
ゲートを行うための例示量子回路の回路図である。
目標位相演算を行うための例示反復構成の回路図である。 演算のペアにわたってゲートコストを償却するための例示量子回路構成の第1の回路図を示す。 4つの演算のグループにわたってゲートコストを償却するための例示量子回路構成の第2の回路図を示す。 追加の状態を保つことがどのようにハミング重みフェージングによって回避され得るかを示す。
概観
位相演算Zθは、基礎状態|0〉を不変のままにし、基礎状態|1〉をeiπθ|1〉にマッピングする単一キュービットゲートであり、式中θは位相シフトを表現する:
Figure 0007227322000009
位相演算の適用後に|0〉または|1〉と測定する確率は変化しないが、量子状態の位相はシフトされる。
位相演算は量子回路における一般的な演算である。180度(Zゲート)または90度(Sゲート)ごとのフェージング(phasing)は実装するのが比較的簡単であり、かつコストが低い。45度(Tゲート)ごとのフェージングはコストが上昇する。更には、45度の倍数でない角度ごとのフェージングでは、そのような位相演算が典型的にTゲートで目標演算を近似することを必要とし、そして目標精度が正確になるにつれて目標位相角の良好な近似を得るために必要とされるTゲート数が増加するので、より一層高コストである。例えば、一部の場合には、非45度フェージング演算を行うことは、50個までのTゲートを必要とし得る。
本明細書は、位相演算Zθを行うために必要とされるTゲート数を削減するための様々な技術について記載する。同技術は、加算演算を使用してフェージング演算を併合することを、例えば、5つのTゲートを使用して2つの
Figure 0007227322000010
ゲートを行い、位相演算を行うときに状態を複製し、そして削減されたT数で個々の
Figure 0007227322000011

Figure 0007227322000012
またはより一般に
Figure 0007227322000013
ゲートを行うことを含む。
例示ハードウェア
図1は、位相演算を行うための例示的システム100を描く。システム100は、1つまたは複数の位置の1つまたは複数の量子コンピューティングデバイスおよび/または古典コンピュータ上の量子および/または古典コンピュータプログラムとして実装されるシステムの一例であり、ここに、下記されるシステム、コンポーネントおよび技術が実装できる。
システム100は、1つまたは複数の古典プロセッサ104とデータ通信状態にある量子コンピューティングデバイス102を含む。便宜上、量子コンピューティングデバイス102および古典プロセッサ104は別体として例示されるが、しかしながら一部の実装例では、1つまたは複数の古典プロセッサは量子コンピューティングデバイス102に含まれてよい。
量子コンピューティングデバイス102は、量子計算を行うためのコンポーネントを含む。例えば、量子コンピューティングデバイス102は、少なくとも量子回路網106および制御デバイス108を含む。
量子回路網106は、量子計算を行うためのコンポーネント、例えば、図2~図11を参照しつつ下記される様々な量子回路および演算を実装するためのコンポーネントを含む。例えば、量子回路網は、1つまたは複数の多準位量子部分系を含む量子系、例えば、キュービットのレジスタ114を含んでよい。システム100が活用する多準位量子部分系の種類は異なってよい。例えば、一部の実装例では、多準位量子部分系は、超伝導キュービット、例えば、GmonまたはXmonキュービットでよい。一部の場合には、1つまたは複数の超伝導キュービットに接続される1つまたは複数の共振器を含むことが好都合でよい。他の場合には、イオントラップ、光子デバイスまたは超伝導空洞(キュービットを必要とすることなく状態が準備され得る)が使用されてよい。多準位量子部分系の実現の更なる例としては、fluxmonキュービット、シリコン量子ドットまたはリン不純物キュービットを含む。
異なる量子論理演算、例えば、図2~図11を参照しつつ下記されるNOTゲート、CNOTゲート、マルチターゲットCNOTゲートおよび論理AND演算などの単一キュービットゲート、2キュービットゲートおよび3キュービットゲートを備える量子回路が、量子回路網106を使用して構築されてよい。構築される量子回路は、制御デバイス108を使用して動作/実装できる。量子系に含まれる制御デバイス108の種類は、量子コンピューティングデバイスに含まれるキュービットの種類に依存する。例えば、一部の場合には、制御デバイス108は、量子回路網106に含まれるキュービットの周波数を制御するデバイス、励起パルス発生器、および励起パルス発生器にキュービットを結合する制御線を含んでよい。制御デバイスは、そこで各キュービットの周波数が、対応する制御駆動線上の励起パルスの量子ゲート周波数に向けてまたはそれから離れて調整されるようにしてよい。制御デバイス108は、測定デバイス、例えば、読出し共振器を更に含んでよい。測定デバイスを介して得られる測定結果は、処理および解析のために古典プロセッサ104に提供されてよい。
量子コンピューティングデバイス102は、量子計算を行うときに量子回路網によって消費されてよい量子状態を生成するための1つまたは複数の量子状態ファクトリ、例えば、Tファクトリ112を含んでよい。例えば、図2および図4を参照しつつ下記されるように、Tファクトリ112は、T状態または
Figure 0007227322000014
状態を生成し、そして生成した状態を量子回路網106に提供してよい。
ハードウェアを動作させる:加算を使用して2つの目標位相演算を併合するための例示方法
図2は、第1の入力状態で準備される第1のキュービットにも第2の入力状態で準備される第2のキュービットにも、フェーズドプラス状態Zθ|+〉で準備される第3のキュービットを使用して、目標位相演算Zθを行うための例示プロセス200のフローチャートである。目標位相演算の目標角に専用のフェーズドプラス状態は、多数の既存の技術のいずれかを使用して作成できる。便宜上、プロセス200は、1つまたは複数の位置に設けられる1つまたは複数の古典または量子コンピューティングデバイスのシステムによって行われるとして説明されることになる。例えば、本明細書に従って適切にプログラムされる量子計算システム、例えば、図1のシステム100がプロセス200を行うことができる。
システムは、第3のキュービットに第1のNOT演算を行う(ステップ202)。
システムは、第1、第2および第3のキュービットに制御加算器演算を行い、これには制御加算器演算の結果を第4のキュービットに符号化することを含む(ステップ204)。図3Aを参照しつつ下記される例示量子回路300に図示されるように、第1、第2および第3のキュービットの制御加算器演算を計算することは、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うことであり、第1のキュービットがマルチターゲットCNOT演算のためのコントロールとして作用する、ことと、第2および第3のキュービット間の論理AND演算を計算し、そして論理AND計算の結果を第4のキュービットに符号化することと、第1のキュービットと第4のキュービットとの間のCNOT演算を行うことであり、第1のキュービットがCNOT演算のためのコントロールとして作用する、こととを含んでよい。論理AND演算を計算および逆計算するための例示方法が「Quantum circuits with reduced T gate count」、WO 2019/050555に詳細に記載されている。
システムは、第4のキュービットに目標位相演算の2乗、(Zθ)2=Zを行う(ステップ206)。目標角の二倍にフェージングするこの内部フェージング演算は、幾つかの可能な方法で実装されてよい。例示実装例は、所望の角度(或る最大深さまで)だけフェージング演算を行うために使用される同じプロセスによって、Tゲートを使用して(2倍した角度が45度の倍数である場合)または再帰的に、成功まで繰返し技術などの既存の技術を応用することを含む。
システムは、第1、第2および第3のキュービットの制御加算器演算を逆計算する(ステップ208)。制御加算器演算を逆計算することは、第1のキュービットおよび第4のキュービットにCNOT演算を行うことであり、第1のキュービットがCNOT演算のためのコントロールとして作用する、ことと、ステップ204を参照しつつ上記した論理AND演算を逆計算することと、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うことであり、第1のキュービットがマルチターゲットCNOT演算のためのコントロールとして作用する、こととを含んでよい。
システムは、第1のキュービットと第3のキュービットとの間のCNOT演算を行い、ここで第1のキュービットがCNOT演算のためのコントロールとして作用する(ステップ210)。
システムは、第2のキュービットと第3のキュービットとの間のCNOT演算を行い、ここで第2のキュービットがCNOT演算のためのコントロールとして作用する(ステップ212)。
システムは、第3のキュービットに第2のNOT演算を行う(ステップ214)。
一部の実装例では、ステップ208~212は以下のステップと置き換えられてよい:図3Aを参照しつつ下記される例示量子回路300に図示されるように、第1のキュービットおよび第4のキュービットにCNOT演算を行うことであり、第1のキュービットがCNOT演算のためのコントロールとして作用する、ことと、第2および第3のキュービット間の論理AND演算を逆計算することと、第2のキュービットおよび第3のキュービットにCNOT演算を行うことであり、第2のキュービットがCNOT演算のためのコントロールとして作用する、ことと、第1、第2および第3のキュービットにマルチターゲットCNOT演算を行うことであり、第1のキュービットがマルチターゲットCNOT演算のためのコントロールとして作用する、こと。
一旦第3のキュービットに第2のNOT演算が行われたなら、目標位相演算が第1の入力状態におよび第2の入力状態に適用されたことになる。第3のキュービットは、その初期状態-フェーズドプラス状態-に戻る。これらの出力状態の1つまたは複数は次いで、以下により詳細に記載されるように、以降の計算に使用するために提供できる。
一部の実装例では、量子回路は、異なるキュービットへの位相演算の多数の適用、例えば、異なるキュービットへの同じ位相演算の3回以上の適用を含んでよい。これらの実装例では、ハミング重みフェージングが適用されて、同一の位相演算をより少数の異なる位相演算へ併合してよい。
例えば、同じフェージング演算Zθが3つの異なるキュービットに同時に適用される量子回路を考える。3つのキュービットの論理状態への作用は、その論理状態のハミング重みにのみ応じて、異なる位相である。すなわち、全零状態000は位相-3θ/2を取り、ハミング重み1の3つの状態001、010および100は各々位相-θ/2を取り、ハミング重み2の3つの状態011、101および110は全てθ/2だけフェージングされ、そして全1状態111は位相3θ/2を取る。
同じ角度θだけ3回の回転を適用するよりはむしろ、入力状態のハミング重みが計算でき、そしてハミング重みに2つの異なった回転が適用できる:1sビットにθおよび2sビットに2θ。この場合には、全零状態000(ハミング重み0)に位相
Figure 0007227322000015
が適用され、001、010および100(ハミング重み1=2進法で01b)に
Figure 0007227322000016
が適用され、011、101および110(ハミング重み2=10b)に
Figure 0007227322000017
が適用され、そして全1状態111(ハミング重み3=11b)に
Figure 0007227322000018
が適用される。各論理状態への位相は2つの手順で同一である。しかしながら、任意の回転が高コストのTゲートを使用して合成されなければならないので、回路における任意の回転ゲート数を削減することが、その耐故障コストを削減する。
この概念は、回路において並列に見えるn回の繰り返される等角回転の場合に拡張でき、n回の元の任意の回転を適用するよりはむしろ、関連したキュービットのハミング重みが計算でき、そして代わりにハミング重みに
Figure 0007227322000019
回の任意の回転θ、2θ、4θ、...が適用できる。この技術はハミング重みフェージングと呼ばれる。
ハミング重みフェージングは、無料で改善すると思われ得る。しかしながら、ハミング重みを計算するときの加算器回路(上記した論理AND計算および逆計算を含む回路)の使用から両方とも生じる2つの主要なコスト源-Tゲートの追加数および補助キュービット要件-がある。しかしながら、キュービットのサイズ
Figure 0007227322000020
の部分集合のハミング重みを一度に計算し、そしてこれらの部分集合ハミング重みを合計することによって、総ハミング重みを直接計算するよりはむしろ、必要とされる補助キュービット数はn-1から
Figure 0007227322000021
にまたは2log2nにさえ削減できる。
例えば、システムは、n回の位相演算(または同等に、n回の位相演算が行われることになるn個のキュービット)をサイズ
Figure 0007227322000022
の多数のグループへグループ化し、そしてサイズ
Figure 0007227322000023
の総計キュービットレジスタを準備できる。各グループに対して、システムは、
Figure 0007227322000024
個の補助キュービットを使用してグループ内のキュービットのハミング重みを計算し、そして準備した総計キュービットレジスタへ計算されるグループ合計を加算する。システムは、次いでグループ内のキュービットのハミング重みを逆計算する。同じ
Figure 0007227322000025
個の補助キュービットが、各グループのハミング重みを計算するために使用できる。全ての
Figure 0007227322000026
個のグループのハミング重みが計算されて合計に加算された後に、上記したように総計レジスタ内の合計ハミング重みに位相演算が適用できる。次いで、各グループに対して、システムは、グループ内のキュービットのハミング重みを再計算し、そして総計レジスタから計算されるグループ合計を減算して、総計ハミング重みレジスタを逆計算する。これは、必要とされる補助キュービット数をn-1から
Figure 0007227322000027
に削減する。補助キュービット数は、より多くのTゲートを必要とすることを犠牲にして削減されるが、しかしながら元のn回の位相演算を
Figure 0007227322000028
回の位相演算に削減するために必要とされるTゲート数は、
Figure 0007227322000029
がほぼ上限であり、これは著しく多くの(すなわち、n個の)補助キュービット以外に4n-4個のTゲートを必要とするハミング重みフェージング方法の既存の応用より僅かに多いだけである。
n回の位相演算を各々サイズlog2nのn/log2n個のグループへ分割することによって、更なる削減も達成できる。これらのグループの各々に対して、システムは、グループ内のキュービットのハミング重みを計算し、この重みを累算器レジスタ(総計キュービットレジスタ)へ加算し、次いでグループ内のキュービットのハミング重みを逆計算できる。累算器レジスタは、そこでキュービットの全集合のハミング重みを含む。上記したように累算器レジスタ内の合計ハミング重みに位相演算が適用できる。次いで、各グループに対して、システムは計算プロセスの逆を行う、例えば、システムは、グループ内のキュービットのハミング重みを再計算し、そして累算器レジスタから計算されるグループ合計を減算して、総計ハミング重みレジスタを逆計算する。これは、行われなければならない加算演算数を2倍にするが、空間要件を2log2nに削減する。
図3~図10は、例示プロセス200およびハミング重みフェージングの様々な応用を図示する。例えば、図3Aは、第1および第2のキュービットに、フェーズドプラス状態Zθ|+〉で準備される第3のキュービットを使用して、目標位相演算Zθを行うための例示量子回路の回路図300である。
回路図300に図示される例示量子回路では、第1のキュービット、第2のキュービットおよび第3のキュービットは横線302a~cによって表現される。例示量子回路300では、キュービット302aおよび302bは、目標位相演算Zθが行われることになる第1および第2のキュービットを表現する。キュービット302aおよび302bは、それぞれ、入力状態|ψ0〉および|ψ1〉で例示量子回路300に提供される。入力状態|ψ0〉および|ψ1〉は、キュービット302aもしくは302bのいずれかの初期状態であることができる、すなわち、キュービット302aもしくは302bは任意の初期状態で準備されたかもしれず、または以前の計算の出力を表現する状態であることができる。キュービット302cは、フェーズドプラス状態Zθ|+〉で準備される第3のキュービットを表現する。キュービット302cは、既存の技術のいずれか1つを使用してフェーズドプラス状態で準備できる。
例示量子回路300は、キュービット302a~302cに適用される一連のゲートを含む。一連のゲートは、第3のキュービット302cに適用される第1のNOT演算304を含む。キュービット302a~302cに第1の演算の集合306が次いで適用されてキュービット302a~302cの制御加算器演算を計算する。第1の演算の集合306は、3つのキュービット302a~302cに適用されるマルチターゲットCNOTゲート306aを含み、ここで第1のキュービットがマルチターゲットCNOTゲートのためのコントロールとして作用する。第1の演算の集合306は、第2および第3のキュービット間で行われる論理AND演算306bを更に含む。論理AND演算の結果は第4のキュービット302dに符号化される。第1の演算の集合306は、第1のキュービット302aおよび第4のキュービット302dに適用されるCNOTゲート306cを更に含み、ここで第1のキュービット302aがCNOTゲートのためのコントロールとして作用する。
一連のゲートは、第4のキュービット302dに適用される目標位相演算の2乗308を更に含む。キュービット302a~302dに第2の演算の集合310が次いで適用されて、第1の演算の集合306によって行われた制御加算器演算を逆計算する。第2の演算の集合310は、第1のキュービット302aにかつ第4のキュービット302dに適用されるCNOT演算310aを含み、ここで第1のキュービット302aがCNOT演算310aのためのコントロールとして作用する。第2の演算の集合310は、第2のキュービット302bと第3のキュービット302cとの間の論理AND演算の逆計算310bを更に含む。
一連のゲートは、第2のキュービット302bおよび第3のキュービット302cに適用されるCNOT演算312を更に含み、ここで第2のキュービット302bがCNOT演算312のためのコントロールとして作用する。一連のゲートは、第1のキュービット302a、第2のキュービット302bおよび第3のキュービット302cに適用されるマルチターゲットCNOT演算314を更に含み、ここで第1のキュービット302aがマルチターゲットCNOT演算314のためのコントロールとして作用する。一連のゲートは、第3のキュービット302cに適用されるNOT演算316を含む。NOT演算316はキュービットを元のフェーズドプラス状態Zθ|+〉に戻す。
例示量子回路が3つのキュービット302a~c(および第4のキュービット302d)に適用された後、目標位相演算Zθが第1のキュービット302aおよび第2のキュービット302bに適用されたことになる。すなわち、例示量子回路300は、資源状態-目標位相演算の角度に同等の角度だけフェージングされた|+〉状態-および同角度だけフェージングされることになる2つの入力状態に作用し、目標方法で2つの入力状態をフェージングし、そして資源状態を返す。
図3Bは、第1および第2のキュービットに、フェーズドプラス状態で準備される第3のキュービットを使用して、目標位相演算を行うための代替量子回路の回路図350である。図3Bに図示される代替量子回路は、図3Aに図示される量子回路によって生成されるものと同じである出力状態を生成するが、補助(第4の)キュービットを必要としない。すなわち、代替量子回路は、3つのキュービット302a~cに適用される一連のゲートを含む。一連のゲートは、第3のキュービットに適用されるNOT演算、全ての3つのキュービットに適用される、第3のキュービットがコントロールとして作用する、マルチターゲットCNOTゲート、第3のキュービットに適用される、第1および第2のキュービットがコントロールとして作用する、CNOTゲート、第3のキュービットに適用される2乗位相演算、第3のキュービットに適用される、第1および第2のキュービットがコントロールとして作用する、CNOT演算、全ての3つのキュービットに適用される、第3のキュービットがコントロールとして作用する、マルチターゲットCNOTゲート、第1および第3のキュービットに適用され、第1のキュービットがコントロールとして作用する、CNOTゲート、第2および第3のキュービットに適用され、第2のキュービットがコントロールとして作用する、CNOTゲート、ならびに第3のキュービットに行われるNOT演算を含む。
例示プロセス200は、第1の入力状態で準備される第1のキュービットにも第2の入力状態で準備される第2のキュービットにも、
Figure 0007227322000030
状態で準備される第3のキュービットを使用して、
Figure 0007227322000031
ゲートを行うために使用されてよい。図4は、第1の入力状態で準備される第1のキュービットおよび第2の入力状態で準備される第2のキュービットに、
Figure 0007227322000032
状態で準備される第3のキュービットを使用して、
Figure 0007227322000033
ゲートを行うための例示量子回路の回路図400である。図4は、2つの
Figure 0007227322000034
ゲートがどのように5つのTゲート(加算器計算および逆計算のために4つならびに回路の内部、例えば、演算308のために1つ)または
Figure 0007227322000035
演算当たり2.5個のTゲートの合計コストで行われ得るかを図示する。既存の方法(すなわち、本明細書に記載されるものと異なる方法)を使用して
Figure 0007227322000036
状態を準備するために50個のTゲートの初期コストが必要とされ得るので、本記載の技術はコストの点で既存の技術より1桁良好である。
ハードウェアを動作させる:位相演算を適用するときに量子状態を複製するための例示方法
図2~図4を参照しつつ上記した例示プロセス200は、第1の入力状態で準備される第1のキュービットにも第2の入力状態で準備される第2のキュービットにも、フェーズドプラス状態で準備される第3のキュービットを使用して、任意の目標位相演算を行うために使用され、ここで第1の入力状態および第2の入力状態がいかなる任意の初期状態または以前の計算の出力を表現する状態も含むことができる。図2~図4を参照しつつ記載した技術は、目標位相演算を適用すると共に量子状態を複製するためにも活用できる。
例えば、任意の第1の入力状態で準備される第1のキュービットに単一の位相演算Zθが行われることになる設定では、第2のキュービットはプラス状態で準備されてよく(すなわち、第2の入力状態はプラス状態であり)、そして第3のキュービットはフェーズドプラス状態で準備されてよい。例示プロセス200の応用は、次いで第2のキュービットをフェーズドプラス状態で出力することによって、第3のキュービットの状態を維持して第3のキュービットの状態を複製する。この複製した状態は次いで、次の量子計算に使用するために、例えば、図6を参照しつつ下記されるように、第5および第6のキュービットに同じ目標位相演算を行うための次の例示プロセス200の応用での資源状態として、目標位相演算を適用すると共に量子状態を複製するための次の例示プロセス200の応用での資源状態として、または別の位相演算を行うための資源状態として、提供されてよい。
図5は、目標位相演算Zθを行うと共に量子状態を複製するための例示量子回路の回路図500である。回路図500に図示される例示量子回路では、第1のキュービット、第2のキュービットおよび第3のキュービットは横線502a~cによって表現される。キュービット502aは、目標位相演算Zθが行われることになる第1のキュービットを表現する。キュービット502cは、状態Zθ|+〉がキュービット502bを使用して複製されることになる第3のキュービットを表現する。
図3Aを参照しつつ上記したように、キュービット502aは、任意の入力状態|ψ〉で例示量子回路に提供される。例えば、入力状態|ψ〉は、キュービット502aの最初で準備される状態であることができる、または以前の計算の出力を表現する状態であることができる。キュービット502cは、フェーズドプラス状態Zθ|+〉で例示量子回路に提供される。図3Aに図示される例示回路とは異なり、キュービット502bは、プラス状態|+〉504で準備される。すなわち、図3および図4を参照しつつ上記した第2の入力状態はプラス状態である。
図5に図示される例示量子回路によって行われる動作は、上記図3Aを参照しつつ図示および上記したものと同様である一連のゲートを含む。便宜上、この一連のゲートの説明は繰り返さない。
図5に図示される例示量子回路が3つのキュービット502a~c(および第4のキュービット502d)に適用された後、目標位相演算Zθが第1のキュービット502aに適用されたことになる。目標位相演算Zθは第2のキュービット502bにも適用されており、結果としてフェーズドプラス状態Zθ|+〉506となる。第3のキュービット502cの量子状態は消費されておらず、同じくフェーズドプラス状態Zθ|+〉である。すなわち、第2の位相演算を適用する機会を逃がして第1の位相演算を適用するだけの代わりに、資源状態Zθ|+〉の第2のコピー506が作成されて回路へ渡された。
ハードウェアを動作させる:2.75個のTゲートを使用して個々の
Figure 0007227322000037
ゲートを行うための例示方法
図2~図5を参照しつつ記載した技術は、個々の(Zθ)1/2位相演算、例えば、
Figure 0007227322000038
ゲートを行うためにも使用できる。上記した技術を使用して
Figure 0007227322000039
ゲートを行うことは、図5を参照しつつ上記した回路を
Figure 0007227322000040
として3つのキュービット-任意の第1の入力状態|ψ〉で準備される第1のキュービット、プラス状態で準備される第2のキュービットおよびフェーズドプラス状態で準備される第3のキュービット-に適用して、第1のキュービットを
Figure 0007227322000041
状態に、第2のキュービットをフェーズドプラス状態
Figure 0007227322000042
に、そして第3のキュービットを同じフェーズドプラス状態
Figure 0007227322000043
に置くことを含んでよい。
Figure 0007227322000044
の第3のキュービットは資源状態であり、以降のゲートテレポーテーション演算、例えば、例示プロセス200に基づく演算を行うために再使用されてよい。
Figure 0007227322000045
状態の第2のキュービットは、次の回路の適用を通じて
Figure 0007227322000046
を発生するために使用されてよい。次の回路の適用は、目下フェーズドプラス状態にある第2のキュービットと任意の入力状態で準備される第5のキュービットとの間のCNOT演算を適用することを含んでよく、ここで第5のキュービットがCNOT演算のためのコントロールとして作用する。第2のキュービットは次いで測定されてよく、そして第2のキュービットを測定することから生成される測定結果が第2のキュービットがオンであることを示す場合、第5のキュービットに2乗位相演算(T演算/ゲート)が行われてよい。
図6は、個々の
Figure 0007227322000047
ゲートを行うための例示量子回路の回路図600である。図6に図示される例示量子回路は、2つの部分回路602および604を含む。部分回路602は、
Figure 0007227322000048
として図5に図示される例示量子回路と同じであり、したがって便宜上再度説明しない。部分回路604は、2つのキュービット-任意の入力状態|ψ〉で準備される第5のキュービット606およびフェーズドプラス状態
Figure 0007227322000049
で部分回路604に提供される部分回路602からの第2のキュービットに作用する。
部分回路604は、フェーズド入力状態
Figure 0007227322000050
614を提供できる一連のゲートを含む。一連のゲートは、第5のキュービット606とフェーズドプラス状態の第2のキュービットとの間のCNOT演算608、第2のキュービットに適用されて、それぞれの測定結果を発生する測定演算610、および演算610から生成される測定結果が第2のキュービットがオンであることを示す場合、第5のキュービットに位相演算(修正演算)を適用する制御位相演算612を含む。量子重ね合わせのため、修正演算が行われる可能性が50%ある。したがって、
Figure 0007227322000051
演算を行うコストは、
Figure 0007227322000052
状態を消費するときに、平均して0.5である。追加の状態
Figure 0007227322000053
を生成することと追加の状態
Figure 0007227322000054
を消費することとの間で交互することによって、いかなる数の不対の
Figure 0007227322000055
演算も(5+0.5)/2=2.75個のTゲートの平均コストで行うことができる。
Figure 0007227322000056
演算を行うためのコストが所望の精度の量とともには増えないことが留意される。最初の
Figure 0007227322000057
状態を生成するコストだけが所望の精度とともに増える。しかし、これらの段取コストは一度払われるだけであるので、行われる
Figure 0007227322000058
演算ごとのコストにわたって償却できる。
ハードウェアを動作させる:4.07個のTゲートを使用して個々の
Figure 0007227322000059
ゲートを行うための例示方法
図2~図6を参照しつつ上記した技術は、個々の(Zθ)1/4位相演算、例えば、
Figure 0007227322000060
ゲートを行うための例示方法を提供するために組み合わせることができる。
図7は、
Figure 0007227322000061
演算を行うための例示量子回路の回路図700である。この場合には、
Figure 0007227322000062
状態702も
Figure 0007227322000063
状態704も例示量子回路から出力として提供される。
Figure 0007227322000064
状態は、孤立した
Figure 0007227322000065
演算を行うときに択一的に生成および消費され、この場合には
Figure 0007227322000066
内部フェージング演算が行われる。図7に図示される
Figure 0007227322000067
構成のT数は、したがって、
Figure 0007227322000068
である。一般に、T演算の2^k乗根を行うことは、漸化関係R(k)=1、R(k)=2+3/4*R(k)を充足し、かつ角度または所望の精度がどんなに微細であろうとも、8の上限によって制限されるコストを有する。
時間の4分の3、上記したフェージング構成は、目標フェージング演算の角度の2倍の第2のフェージング演算が行われることを必要とする。第2のフェージング演算は、同じ技術を使用して行われてよい。しかしながら、第2のフェージング演算は次いで、元のフェージング演算の角度の4倍ごとの第3のフェージング演算を生成してもよい。必要な状態が準備される限り、この再帰は、所望される限り続けることができる。(但し、実際には、それは、空間対時間トレードオフ-反復が多いほど多くのTゲートを節約するが、反復が多いほど多くの空間を必要とする-によって決定される数の反復後に終了されてよい。)
ハードウェアを動作させる:Tゲートを行うための例示反復方法
図7を参照しつつ上記した技術は、梯子状の位相演算を使用して目標位相演算を行う例示方法を提供するために反復できる。例えば、図8は、Zθゲートが行われるまで
Figure 0007227322000069
ゲートを反復的に行うための例示量子回路梯子構成800の回路図である。例示梯子構成800はTゲートを行うとして図示されるが、これは単に便宜上であり、他の位相演算が行われてもよい。
図2~図8に図示されるように、行われることになるフェージング演算は、2倍にフェージングする内部フェージング演算、例えば、図3Aの演算308および図8の演算802a~cに委ねられる。出発点が相当数の2による乗算後に45度の倍数になる角度であると、このプロセスはTゲートとなり終了できる。120度などの奇数周期を持つ角度、1ラジアンなどの45度の無理倍数である角度、または目標角からTゲートに達するまでの全ての必要な資源状態を準備することが必要以上に高コストとなるほど小さな角度に対しては、異なる手法が必要とされる。これらの場合、資源状態は、或る有限長まで所望の角度、所望の角度の2倍、所望の角度の4倍等で準備できる。定数のTゲートを達成するために、この長さは、lg(lg(1/epsilon))として漸近的に拡縮するべきである。一部の場合には、例えば、実際上は、連鎖は25未満の長さを有し得る。フェージング演算は次いで、「連鎖の先端が通される」ときに演算が既存の技術で「難儀して(the hard way)」適用される以外は、それがTゲートにおいて終了する角度に対する通りに行われる。これは、コストを記述している漸化関係を、R(k)=1、R(k)=2+3/4*R(k)からR(k)=1.15*lg(1/epsilon)、R(k)=2+3/4*R(k)に変化させる。この漸化関係を解き、そしてR(k)≦10となるkを長さに対して解くことによりlg(lg(1/epsilon))拡縮を示す。
一旦状態の連鎖が所与の角度で準備されたなら、それは破棄前に可能な限り使用できる。1つの特に有益な状況は、2つまたは4つの演算が同時に行われる必要があるときである。例えば、行うべき2つの演算があるときに、追加の状態を生成することまたは追加の状態を消費することは必要でない。例示プロセス200を直接適用できる。これは、角度2θのフェージング演算を発生させることになるが、この基本演算(および加算器)のコストは、1つの代わりに2つの所望の演算にわたって償却されることになる。そこで、P[n]のコストがR[n]のように2+3/4 R[n-1]である代わりに、そのコストは(4+R[n-1])/2=2+1/2 R[n-1]である。1/4 R[n-1]の節約が達成される。R[k]が、あまり大きくないkに対して8に収束するので、これは約2つのTゲートの節約を意味する。更には、
Figure 0007227322000070
が偶然にも45度の倍数であれば、プロセスは、単一のTゲートを適用することによってk次レベルで直ちに終了できる。図9は、演算のペアにわたってゲートコストを償却するための例示量子回路構成の第1の回路図900を示す。図10は、4つの演算のグループにわたってゲートコストを償却するための例示量子回路構成の第2の回路図1000を示す。資源状態を消費することなく2つのフェージングを適用する回路が、状態を消費する回路と交互しなければならない代わりに、その全潜在能力まで使用できるので、このように梯子登りコスト(ladder climbing costs)を償却することは、最大平均T数を約8からそれぞれ約6または約5に削減する。
追加の状態を保つことは、図11に例示されるように、ハミング重みを計算することを通じて回避され得る。図11は、ゲートの反復適用およびゲートの並列に近い適用からの更なる補間がどのように予測コストを低下させるかを示す。これは、生ハミング重みフェージング技術(raw Hamming weight phasing technique)が反復梯子ベースの技術より一層効率的であるからである。
本明細書に記載されるデジタルおよび/または量子対象ならびにデジタル機能操作および量子演算の実装例は、デジタル電子回路網、適切な量子回路網もしくは、より一般に、量子計算システムで、有形に具現化されたデジタルおよび/もしくは量子コンピュータソフトウェアもしくはファームウェアで、本明細書に開示される構造およびそれらの構造等価物を含め、デジタルおよび/もしくは量子コンピュータハードウェアで、またはそれらの1つもしくは複数の組合せで実装できる。用語「量子計算システム」は、量子コンピュータ、量子情報処理システム、量子暗号システムまたは量子シミュレータを含んでよいが、これに限定されない。
本明細書に記載されるデジタルおよび/または量子対象の実装例は、1つまたは複数のデジタルおよび/または量子コンピュータプログラム、すなわち、データ処理装置による実行のために、またはその動作を制御するために有形の非一時的記憶媒体に符号化されたデジタルおよび/または量子コンピュータプログラム命令の1つまたは複数のモジュールとして実装できる。デジタルおよび/または量子コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムもしくはシリアルアクセスメモリデバイス、1つもしくは複数のキュービット、またはそれらの1つもしくは複数の組合せであることができる。代替的にまたは加えて、プログラム命令は、データ処理装置による実行のために適切な受信器装置に送信するためのデジタルおよび/または量子情報を符号化するために生成される、デジタルおよび/または量子情報を符号化することが可能である人工発生伝搬信号、例えば、機械発生電気、光または電磁信号上に符号化できる。
用語、量子情報および量子データは、最小の重要な系がキュービット、すなわち、量子情報の単位を定義する系である、量子系によって伝達、保持または記憶される情報またはデータを指す。用語「キュービット」が対応する文脈で二準位系として適切に近似され得る全ての量子系を包含することが理解される。そのような量子系としては、例えば、二準位以上の多準位系を含んでよい。例として、そのような系としては、原子、電子、光子、イオンまたは超伝導キュービットを含むことができる。多くの実装例では、計算基礎状態は基底および第1の励起状態と識別されるが、しかしながら計算状態が高次励起状態と識別される他の構成が可能であることが理解される。
用語「データ処理装置」は、デジタルおよび/または量子データ処理ハードウェアを指し、そして例としてプログラマブルデジタルプロセッサ、プログラマブル量子プロセッサ、デジタルコンピュータ、量子コンピュータ、多数のデジタルおよび量子プロセッサまたはコンピュータ、ならびにその組合せを含む、デジタルおよび/または量子データを処理するための全ての種類の装置、デバイスおよび機械を包含する。同装置は、専用論理回路網、例えば、FPGA(フィールドプログラマブルゲートアレイ)、ASIC(特定用途向け集積回路)、または量子シミュレータ、すなわち、特定の量子系についての情報をシミュレーションもしくは生成するように設計される量子データ処理装置であることも、またはそれを更に含むこともできる。特に、量子シミュレータは、全般的な量子計算を行う能力を有しない専用量子コンピュータである。同装置は、ハードウェアに加えて、デジタルおよび/または量子コンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの1つもしくは複数の組合せを構成するコードを任意選択で含むことができる。
デジタルコンピュータプログラムは、プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプトまたはコードとも称してまたは記載してよく、コンパイラ型もしくはインタープリタ型言語、または宣言型もしくは手続き型言語を含め、任意の形式のプログラミング言語で書くことができ、そしてそれは、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、もしくはデジタルコンピューティング環境での使用に適する他のユニットとしてを含め、任意の形式に展開できる。量子コンピュータプログラムは、プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプトまたはコードとも称してまたは記載してよく、コンパイラ型もしくはインタープリタ型言語、または宣言型もしくは手続き型言語を含め、任意の形式のプログラミング言語で書かれ、そして適切な量子プログラミング言語へ変換できる、あるいは量子プログラミング言語、例えば、QCLまたはQuipperで書くことができる。
デジタルおよび/または量子コンピュータプログラムは、ファイルシステムにおけるファイルに対応し得るが、しなくてもよい。プログラムは、他のプログラムもしくはデータ、例えば、マークアップ言語文書に記憶される1つもしくは複数のスクリプトを保持するファイルの一部分に、当該プログラムに専用の単一のファイルに、または多数の連係ファイル、例えば、1つもしくは複数のモジュール、サブプログラムもしくはコードの一部分を記憶するファイルに記憶できる。デジタルおよび/または量子コンピュータプログラムは、展開されて1つのデジタルまたは1つの量子コンピュータ上で、あるいは1つのサイトに設けられるまたは多数のサイトにわたって分散されてデジタルおよび/もしくは量子データ通信ネットワークによって相互接続される多数のデジタルおよび/または量子コンピュータ上で実行できる。量子データ通信ネットワークは、量子系、例えばキュービットを使用して量子データを送信し得るネットワークであると理解される。一般に、デジタルデータ通信ネットワークは量子データを送信できないが、しかしながら量子データ通信ネットワークは量子データもデジタルデータも送信し得る。
本明細書に記載されるプロセスおよび論理フローは、1つまたは複数のデジタルおよび/または量子プロセッサが、適宜、1つまたは複数のデジタルおよび/または量子コンピュータプログラムを実行して、入力デジタルおよび量子データを演算して出力を発生することによって機能を行って動作する、1つまたは複数のプログラマブルデジタルおよび/または量子コンピュータによって行うことができる。同プロセスおよび論理フローは、専用論理回路網、例えば、FPGAもしくはASIC、または量子シミュレータによって、あるいは専用論理回路網または量子シミュレータならびに1つまたは複数のプログラムされたデジタルおよび/または量子コンピュータの組合せによっても行うことができ、ならびに装置もそれとして実装できる。
1つまたは複数のデジタルおよび/または量子コンピュータのシステムが特定の動作または作用を行う「ように構成」されることは、システムが自らに、動作に際して同システムに同動作または作用を行わせるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せをインストールしたことを意味する。1つまたは複数のデジタルおよび/または量子コンピュータプログラムが特定の動作または作用を行うように構成されることは、1つまたは複数のプログラムが、デジタルおよび/または量子データ処理装置によって実行されると、同装置に同動作または作用を行わせる命令を含むことを意味する。量子コンピュータは、量子コンピューティング装置によって実行されると、同装置に同動作または作用を行わせる命令をデジタルコンピュータから受信してよい。
デジタルおよび/または量子コンピュータプログラムの実行に適するデジタルおよび/または量子コンピュータは、汎用もしくは専用デジタルおよび/もしくは量子プロセッサもしくは両方、または任意の他の種類の中央デジタルおよび/もしくは量子処理ユニットに基づくことができる。一般に、中央デジタルおよび/または量子処理ユニットは、リードオンリメモリ、ランダムアクセスメモリ、もしくは量子データ、例えば光子を送るのに適する量子系、またはその組合せから命令ならびにデジタルおよび/または量子データを受けることになる。
デジタルおよび/または量子コンピュータの必須要素は、命令を行うまたは実行するための中央処理ユニット、ならびに命令およびデジタルおよび/または量子データを記憶するための1つまたは複数のメモリデバイスである。中央処理ユニットおよびメモリは、専用論理回路網または量子シミュレータによって補足、またはそれに統合できる。一般に、デジタルおよび/または量子コンピュータは更に、デジタルおよび/または量子データを記憶するための1つまたは複数の大容量記憶デバイス、例えば、磁気、光磁気ディスク、光ディスク、または量子情報を記憶するのに適する量子系を含む、あるいは作動的に結合されて、それからデジタルおよび/もしくは量子データを受けるまたはそれにデジタルおよび/もしくは量子データを転送するまたは両方行うことになる。しかしながら、デジタルおよび/または量子コンピュータはそのようなデバイスを有する必要はない。
デジタルおよび/または量子コンピュータプログラム命令ならびにデジタルおよび/または量子データを記憶するのに適するデジタルおよび/または量子コンピュータ可読媒体としては、例として、半導体メモリデバイス、例えば、EPROM、EEPROMおよびフラッシュメモリデバイス;磁気ディスク、例えば、内蔵ハードディスクまたは取外し可能ディスク;光磁気ディスク;CD-ROMおよびDVD-ROMディスク;ならびに量子系、例えば、トラップ原子または電子を含む、全ての形態の不揮発性デジタルおよび/または量子メモリ、媒体およびメモリデバイスを含む。量子メモリが、高忠実度および効率で長時間の間、量子データを記憶できる素子、例えば、伝送のために光が使用され、そして重ね合わせまたは量子コヒーレンスなどの量子データの量子特徴を記憶および保存するために物質が使用される光-物質インタフェースであることが理解される。
本明細書に記載される様々なシステムまたはそれらの一部分の制御は、1つまたは複数の非一時的機械可読記憶媒体に記憶され、かつ1つまたは複数のデジタルおよび/または量子処理デバイス上で実行可能である命令を含むデジタルおよび/または量子コンピュータプログラム製品で実装できる。本明細書に記載されるシステムまたはそれらの一部分は各々、1つまたは複数のデジタルおよび/または量子処理デバイスならびにメモリを含んで、実行可能命令を記憶して、本明細書に記載される動作を行い得る装置、方法またはシステムとして実装できる。
本明細書が多くの具体的な実装詳細を含むが、これらは、特許請求され得るものの範囲への限定としてでなく、むしろ特定の実装例に固有であり得る特徴の記述として解釈されるべきである。別々の実装例の文脈で本明細書に記載される或る特徴が、組み合わせて単一の実装例でも実装できる。反対に、単一の実装例の文脈で記載される様々な特徴が、別々に多数の実装例でも、または任意の適切な下位組合せでも実装できる。その上、特徴が或る組合せで作用すると上記され、しかもそのように最初に特許請求され得るが、特許請求された組合せからの1つまたは複数の特徴が、一部の場合には、同組合せから削除でき、そして特許請求された組合せは、下位組合せまたは下位組合せの変形とされ得る。
同様に、動作が特定の順に図面に描かれるが、これは、望ましい結果を達成するために、そのような動作が図示される特定の順にもしくは順番に行われること、または全ての例示された動作が行われることを必要とすると理解されるべきでない。或る状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記した実装例における様々なシステムモジュールおよび部品の分離は、全ての実装例においてそのような分離を必要とすると理解されるべきでなく、記載されたプログラム部品およびシステムが一般に単一のソフトウェア製品に共に統合できるまたは多数のソフトウェア製品へ実装できることが理解されるべきである。
本対象の特定の実装例が記載された。他の実装例は以下の特許請求の範囲内である。例えば、特許請求の範囲に列挙される作用は異なる順に行え、それでも望ましい結果を達成できる。一例として、添付図に描かれるプロセスは、望ましい結果を達成するために、必ずしも図示される特定の順または順番を必要とするわけではない。一部の場合には、マルチタスキングおよび並列処理が有利であり得る。
100 システム
102 量子コンピューティングデバイス
104 古典プロセッサ
106 量子回路網
108 制御デバイス
112 Tファクトリ
114 キュービットのレジスタ
300 量子回路
302a 第1のキュービット
302b 第2のキュービット
302c 第3のキュービット
302d 第4のキュービット
304 第1のNOT演算
306 第1の演算の集合
306a マルチターゲットCNOTゲート
306b 論理AND演算
306c CNOTゲート
308 目標位相演算の2乗
310 第2の演算の集合
310a CNOT演算
310b 論理AND演算の逆計算
312 CNOT演算
314 マルチターゲットCNOT演算
316 第2のNOT演算
350 量子回路
400 量子回路
500 量子回路
502a 第1のキュービット
502b 第2のキュービット
502c 第3のキュービット
502d 第4のキュービット
504 プラス状態
506 フェーズドプラス状態
600 量子回路
602 部分回路
604 部分回路
606 第5のキュービット
608 CNOT演算
610 測定演算
612 制御位相演算
614 フェージング入力状態
700 量子回路
800 量子回路梯子構成
900 量子回路構成
1000 量子回路構成

Claims (15)

  1. 目標位相を第1のキュービットおよび第2のキュービットに適用するとともにフェーズドプラス状態を複製するために量子コンピューティングデバイスによって実行される方法であって、前記フェーズドプラス状態は、前記目標位相と同等の角度だけフェージングされたプラス状態を含み、前記方法が、
    前記フェーズドプラス状態で準備される第3のキュービットを使用して、任意の初期状態で準備される第1のキュービットとプラス状態で準備される第2のキュービットとに位相演算を行うステップであって、
    i)前記第3のキュービットに第1のNOT演算を行うステップと、
    ii)前記第1、第2、および第3のキュービットの制御加算器演算を計算するステップであって、前記制御加算器演算の結果を第4のキュービットに符号化するステップを含むステップと、
    iii)前記第4のキュービットに前記位相演算の2乗を行うステップと、
    iv)前記第1、第2、および第3のキュービットの前記制御加算器演算を逆計算するステップと、
    v)前記第1のキュービットと前記第3のキュービットとの間のCNOT演算を行うステップであって、前記第1のキュービットがコントロールとして作用する、ステップと、
    vi)前記第2のキュービットと前記第3のキュービットとの間のCNOT演算を行うステップであって、前記第2のキュービットが前記コントロールとして作用する、ステップと、
    vii)前記第3のキュービットに第2のNOT演算を行うステップと
    を含む、位相演算を行うステップと
    を含む、方法。
  2. 前記第2のキュービットと前記第3のキュービットとの間で前記CNOT演算を実行する前記ステップであって、前記第2のキュービットが前記コントロールとして作用する、前記ステップの後において、前記第2のキュービットが前記フェーズドプラス状態にあり、前記第1のキュービットに前記位相演算が行われている、請求項1に記載の方法。
  3. 前記第3のキュービットに前記第2のNOT演算を行うステップの後において、前記第3のキュービットがフェーズドプラス状態にある、請求項1または請求項2に記載の方法。
  4. 前記制御加算器演算を計算するステップが、
    前記第1、第2、および第3のキュービットにマルチターゲットCNOTを実行するステップであって、前記第1のキュービットが前記コントロールとして作用する、ステップと、
    前記第2のキュービットと前記第3のキュービットとの間の論理AND演算を計算するステップと、
    前記論理AND演算の結果を前記第4のキュービットに符号化するステップと、
    前記第1のキュービットと前記第4のキュービットとの間でCNOT演算を行うステップであって、前記第1のキュービットが前記コントロールとして作用する、ステップと
    を含む、請求項1に記載の方法。
  5. 前記制御加算器演算を逆計算するステップが、
    前記第1のキュービットおよび前記第4のキュービットにCNOT演算を行うステップであって、前記第1のキュービットが前記コントロールとして作用する、ステップと、
    前記第2のキュービットと前記第3のキュービットとの間の論理AND演算を逆計算するステップと
    を含み、前記第1のキュービットと前記第3のキュービットとの間でCNOT演算を行う前記ステップであって、前記第1のキュービットが前記コントロールとして作用する、前記ステップが、前記第1、第2、および第3のキュービットにマルチターゲットCNOT演算を行うステップであって、前記第1のキュービットが前記コントロールとして作用する、ステップを含む、請求項1から4のうちのいずれか一項に記載の方法。
  6. 前記第1、第2、および第3のキュービットの前記制御加算器演算を逆計算するステップと、
    前記第1のキュービットと前記第3のキュービットとの間でCNOT演算を行うステップであって、前記第1のキュービットが前記コントロールとして作用する、ステップと、
    前記第2のキュービットと前記第3のキュービットとの間でCNOT演算を行うステップであって、前記第2のキュービットが前記コントロールとして作用し、
    前記第1のキュービットおよび前記第4のキュービットにCNOT演算を行うステップであって、前記第1のキュービットが前記コントロールとして作用する、ステップと、
    前記第2のキュービットと前記第3のキュービットとの間の論理AND演算を逆計算するステップと、
    記第2のキュービットおよび前記第3のキュービットにCNOT演算を行うステップであって、前記第2のキュービットが前記コントロールとして作用する、ステップと、
    前記第1、第2、および第3のキュービットにマルチターゲットCNOT演算を行うステップであって、前記第1のキュービットが前記コントロールとして作用する、ステップとを含む、前記CNOT演算を行うステップと
    を含む、請求項1から5のうちのいずれか一項に記載の方法。
  7. ゲートテレポーテーション演算に使用するために前記フェーズドプラス状態の第2のキュービットを提供するステップをさらに含む、請求項2に記載の方法。
  8. 前記ゲートテレポーテーション演算が、
    請求項1に記載の方法を使用して、第5および第6のキュービットに第2の位相演算を行うこと、
    請求項3に記載の方法を使用して、第5のキュービットに位相演算を行うときに、第7のキュービットと同じ状態で第6のキュービットを準備すること、および
    第5のキュービットに前記位相演算を行うこと
    のうちのいずれか1つを含む、請求項7に記載の方法。
  9. 前記第5のキュービットに前記位相演算を行うことが、
    前記フェーズドプラス状態で準備される前記第2のキュービットと任意の状態で準備される前記第5のキュービットとの間にCNOT演算を適用することであって、前記第5のキュービットが前記コントロールとして作用する、適用することと、
    前記第2のキュービットを測定することと、
    前記第2のキュービットを測定することから生成される測定結果が前記第2のキュービットがオンであることを示す場合、前記第5のキュービットに2乗位相演算を適用すること
    を含む、請求項8に記載の方法。
  10. 記前記第4のキュービットに前記位相演算の2乗を行うステップが、
    第5のキュービットに前記位相演算の2乗を行うときに、請求項7に記載の方法を行い、第7のキュービットと同じ状態で第6のキュービットを準備するステップを含み、
    任意で前記位相演算の2乗を反復的に行うステップをさらに含む、請求項6から9のうちのいずれか一項に記載の方法。
  11. 前記位相演算が、式
    Figure 0007227322000071
    の単一のキュービット演算を含み、θが前記位相演算を示し、前記位相演算の2乗が、Zにより与えられる、請求項1から10のうちのいずれか一項に記載の方法。
  12. フェーズドプラス状態は、プラス状態
    Figure 0007227322000072
    に前記位相演算を適用した状態を含む、および/または
    前記位相演算が、
    Figure 0007227322000073
    演算を含む、請求項1から11のうちのいずれか一項に記載の方法。
  13. N回の位相演算が複数のそれぞれのキュービットに行われることを必要とするシステムに対して、
    位相演算を必要とするキュービットをサイズO(sqrt(N))のO(sqrt(N))個のグループへグループ化するステップと、
    サイズO(log(N))の総計キュービットレジスタを準備するステップと、
    各グループに対して、
    前記グループ内の前記キュービットのハミング重みを計算し、
    計算されるグループ合計を前記総計キュービットレジスタに加算し、
    前記グループ内の前記キュービットの前記ハミング重みを逆計算するステップと、
    前記総計キュービットレジスタに位相演算を行うステップと、
    各グループに対して、
    前記グループ内の前記キュービットのハミング重みを計算し、
    計算されるグループ合計を前記総計キュービットレジスタから減算し、
    前記グループ内の前記キュービットの前記ハミング重みを逆計算するステップと
    をさらに含み、
    任意で、前記総計キュービットレジスタをクリアおよび破棄するステップをさらに含む、請求項1から6のうちのいずれか一項に記載の方法。
  14. 1つまたは複数の古典プロセッサとデータ通信する量子ハードウェアを含む装置であって、前記量子ハードウェアが請求項1から13のうちのいずれか一項に記載の方法を実行するように構成される、装置。
  15. キュービットのレジスタと、
    前記キュービットのレジスタに結合される複数の制御線と、
    前記制御線に結合される複数の制御回路であって、請求項1から13のうちのいずれか一項に記載の方法を実行するように構成された制御回路と
    を備える、請求項14に記載の装置。
JP2021130663A 2018-04-17 2021-08-10 位相演算を行うための方法および装置 Active JP7227322B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862658993P 2018-04-17 2018-04-17
US62/658,993 2018-04-17
JP2020520504A JP6930032B2 (ja) 2018-04-17 2019-04-16 位相演算を行うための方法および装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020520504A Division JP6930032B2 (ja) 2018-04-17 2019-04-16 位相演算を行うための方法および装置

Publications (2)

Publication Number Publication Date
JP2021193570A JP2021193570A (ja) 2021-12-23
JP7227322B2 true JP7227322B2 (ja) 2023-02-21

Family

ID=66380182

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020520504A Active JP6930032B2 (ja) 2018-04-17 2019-04-16 位相演算を行うための方法および装置
JP2021130663A Active JP7227322B2 (ja) 2018-04-17 2021-08-10 位相演算を行うための方法および装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2020520504A Active JP6930032B2 (ja) 2018-04-17 2019-04-16 位相演算を行うための方法および装置

Country Status (7)

Country Link
US (3) US11625637B2 (ja)
EP (1) EP3586278A1 (ja)
JP (2) JP6930032B2 (ja)
CN (2) CN111279368B (ja)
AU (4) AU2019255217B2 (ja)
CA (2) CA3080180A1 (ja)
WO (1) WO2019204282A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11687816B2 (en) 2020-04-08 2023-06-27 QC Ware Corp. Quantum data loader

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140118024A1 (en) 2012-10-26 2014-05-01 Bryan K. Eastin Efficient toffoli state generation from low-fidelity single qubit magic states
US20170351967A1 (en) 2016-06-02 2017-12-07 Google Inc. Training quantum evolutions using sublogical controls

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030164490A1 (en) * 2001-02-13 2003-09-04 Alexandre Blais Optimization method for quantum computing process
JP4615014B2 (ja) 2004-07-26 2011-01-19 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 量子コヒーレントシステム及び動作
CN101118608B (zh) * 2007-08-23 2011-07-20 清华大学 任意量子比特门的分解方法
US9692419B2 (en) * 2014-11-15 2017-06-27 Wave Computing, Inc. Compact logic evaluation gates using null convention
US10311370B2 (en) * 2016-08-17 2019-06-04 International Business Machines Corporation Efficient reduction of resources for the simulation of Fermionic Hamiltonians on quantum hardware
WO2019050555A1 (en) 2017-09-08 2019-03-14 Google Llc QUANTUM CIRCUITS HAVING A NUMBER OF DOORS T REDUCED
EP3776384A1 (en) * 2019-03-29 2021-02-17 Google LLC Oblivious carry runway registers for performing piecewise additions
CA3191400A1 (en) * 2020-09-01 2022-03-10 Google Llc Verified quantum phase estimation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140118024A1 (en) 2012-10-26 2014-05-01 Bryan K. Eastin Efficient toffoli state generation from low-fidelity single qubit magic states
JP2016500886A (ja) 2012-10-26 2016-01-14 ノースロップ グラマン システムズ コーポレイションNorthrop Grumman Systems Corporation 低忠実度の単一キュービットマジック状態からの効率的なトフォリ状態生成
US20170351967A1 (en) 2016-06-02 2017-12-07 Google Inc. Training quantum evolutions using sublogical controls

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Craig Gidney,Halving the cost of quantum addition,[オンライン],arXiv,2018年01月19日,pp.1-5,インターネット<URL: https://arxiv.org/pdf/1709.06648v2.pdf>

Also Published As

Publication number Publication date
CN117910585A (zh) 2024-04-19
JP2021505982A (ja) 2021-02-18
AU2021201027B2 (en) 2021-12-02
AU2022201377A1 (en) 2022-03-24
US20230297864A1 (en) 2023-09-21
JP2021193570A (ja) 2021-12-23
CA3080180A1 (en) 2019-10-24
AU2024200037A1 (en) 2024-01-25
CA3219315A1 (en) 2019-10-24
CN111279368A (zh) 2020-06-12
US20240232673A1 (en) 2024-07-11
AU2022201377B2 (en) 2023-10-05
US11625637B2 (en) 2023-04-11
WO2019204282A1 (en) 2019-10-24
AU2019255217B2 (en) 2021-01-14
US11941488B2 (en) 2024-03-26
US20210027187A1 (en) 2021-01-28
JP6930032B2 (ja) 2021-09-01
EP3586278A1 (en) 2020-01-01
CN111279368B (zh) 2024-01-09
AU2021201027A1 (en) 2021-03-11
AU2019255217A1 (en) 2020-04-16

Similar Documents

Publication Publication Date Title
AU2021200999B2 (en) Quantum circuits with reduced t gate count
US20240232673A1 (en) Methods and apparatus for performing phase operations
AU2019454277B2 (en) Patch and elided fidelity estimation
CN111788584A (zh) 一种神经网络计算方法和装置
Choi et al. Convergence property of the Quantized Distributed Gradient descent with constant stepsizes and an effective strategy for the stepsize selection

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210908

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221005

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230209

R150 Certificate of patent or registration of utility model

Ref document number: 7227322

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150