ブログ
1
7月
,
2022

Competition Solutions: マルチ制御トッフォリゲートの分解

記事をシェア
ライブラリ

In the recent Classiq Coding Competition, one of the challenges was a Multi-Controlled Toffoli Decomposition problem. Below is a brief recap of the problem as well as some of the winning solutions.

Background:


Each hardware vendor has varying basis gates, with all operations being high-level abstractions composed of one or more basis gates. The Toffoli is an operation composed of a considerable number of single-qubit operations and CX gates.

Many quantum operations include multi-controlled Toffoli (MCX) gates. Among the most notable are Grover Operator, logical AND operator, various state preparation algorithms, and arithmetic comparators.

Problem:


The challenge for the Classiq Coding Competition was to decompose an MCX gate with 14 control qubits into single-qubit and double-qubit CX gates. Competitors were allowed up to five clean auxiliary qubits that needed to be released (uncomputed) at the end of the circuit.

Winning Metric:

The winners were chosen based on the minimal depth in their decompositions. We confirmed the submitted depth and used an equivalence tool to verify circuit validity.

FIRST PLACE - Soshun Naito, Japan


Soshun manually decomposed the MCX gate into concentration, calculation, and uncomputation steps and searched for the optimal circuit of depth-efficient approximate and exact MCX gates with his Python script. He successfully decomposed a 14 control MCX gate into a 20 qubit circuit composed of only 11 high-level operations with a depth of 57.

For a Jupyter Notebook of the first place MCX decomposition, see here.

Read his full explanation here.

SECOND PLACE - Nikita Nemkov, Russia


Nikita maximized parallelism in his circuit by splitting the 14 controls into four groups with manually-constructed relative phase CCX, CCCX, and CCCCX gates, storing each result in an ancilla qubit, and simultaneously executing an AND on all four ancilla qubits. He successfully decomposed a 14 control MCX gate into a 20 qubit circuit composed of 9 high-level operations with a depth of 70.

For a Jupyter Notebook of the second place decomposition, see here.

THIRD PLACE - Team Carnivorous Cacti (Tarushii Goel, Kareem Jaber, Cyril Sharma), USA


Team Carnivorous Cacti manually constructed an RC4X gate using Qiskit’s RC3X and MCX gates. They successfully decomposed a 14 control MCX gate into a 20 qubit circuit composed of 11 high-level operations with a depth of 71.

For a Jupyter Notebook of the third place decomposition, see here.

FOURTH PLACE- Alexander Gramolin, USA

Alexander’s submission manually constructs relative phase C3X and C4X gates. The final circuit is composed of 11 high-level operations, matching the first place submission. He successfully decomposed a 14 control MCX gate into a 20 qubit circuit with a depth of 90.

For a Jupyter Notebook of the fourth place decomposition, see here.

 

FIFTH PLACE - Jan Tułowiecki, Poland


This submission relies on Qiskit’s RC3XGate, which is a relative phase controlled-controlled-controlled-NOT gate inspired by this paper, and one MCX gate, which is not simplified compared to relative phase gates. Uncomputation is via the .inverse() of the RC3XGate. The large_toffoli() function shows that you can construct a C14X with only 11 lines of code while remaining competitive enough to earn the second honorable mention. Jan successfully decomposed a 14 control MCX gate into a 20 qubit circuit with a depth of 101.

For a Jupyter Notebook of the fifth place decomposition, see here.

Read his full explanation here.

 

SIXTH PLACE - Witold Jarnicki, Poland


Witold successfully decomposed a 14 control MCX gate into a 20 qubit circuit with a depth of 140.

For a Jupyter Notebook of the sixth place decomposition, see here.

 

A graph showing all the solutions is below:

2022年春季Classiq Coding Competitionにご参加ご協力いただいた皆様、ありがとうございました!

In the recent Classiq Coding Competition, one of the challenges was a Multi-Controlled Toffoli Decomposition problem. Below is a brief recap of the problem as well as some of the winning solutions.

Background:


Each hardware vendor has varying basis gates, with all operations being high-level abstractions composed of one or more basis gates. The Toffoli is an operation composed of a considerable number of single-qubit operations and CX gates.

Many quantum operations include multi-controlled Toffoli (MCX) gates. Among the most notable are Grover Operator, logical AND operator, various state preparation algorithms, and arithmetic comparators.

Problem:


The challenge for the Classiq Coding Competition was to decompose an MCX gate with 14 control qubits into single-qubit and double-qubit CX gates. Competitors were allowed up to five clean auxiliary qubits that needed to be released (uncomputed) at the end of the circuit.

Winning Metric:

The winners were chosen based on the minimal depth in their decompositions. We confirmed the submitted depth and used an equivalence tool to verify circuit validity.

FIRST PLACE - Soshun Naito, Japan


Soshun manually decomposed the MCX gate into concentration, calculation, and uncomputation steps and searched for the optimal circuit of depth-efficient approximate and exact MCX gates with his Python script. He successfully decomposed a 14 control MCX gate into a 20 qubit circuit composed of only 11 high-level operations with a depth of 57.

For a Jupyter Notebook of the first place MCX decomposition, see here.

Read his full explanation here.

SECOND PLACE - Nikita Nemkov, Russia


Nikita maximized parallelism in his circuit by splitting the 14 controls into four groups with manually-constructed relative phase CCX, CCCX, and CCCCX gates, storing each result in an ancilla qubit, and simultaneously executing an AND on all four ancilla qubits. He successfully decomposed a 14 control MCX gate into a 20 qubit circuit composed of 9 high-level operations with a depth of 70.

For a Jupyter Notebook of the second place decomposition, see here.

THIRD PLACE - Team Carnivorous Cacti (Tarushii Goel, Kareem Jaber, Cyril Sharma), USA


Team Carnivorous Cacti manually constructed an RC4X gate using Qiskit’s RC3X and MCX gates. They successfully decomposed a 14 control MCX gate into a 20 qubit circuit composed of 11 high-level operations with a depth of 71.

For a Jupyter Notebook of the third place decomposition, see here.

FOURTH PLACE- Alexander Gramolin, USA

Alexander’s submission manually constructs relative phase C3X and C4X gates. The final circuit is composed of 11 high-level operations, matching the first place submission. He successfully decomposed a 14 control MCX gate into a 20 qubit circuit with a depth of 90.

For a Jupyter Notebook of the fourth place decomposition, see here.

 

FIFTH PLACE - Jan Tułowiecki, Poland


This submission relies on Qiskit’s RC3XGate, which is a relative phase controlled-controlled-controlled-NOT gate inspired by this paper, and one MCX gate, which is not simplified compared to relative phase gates. Uncomputation is via the .inverse() of the RC3XGate. The large_toffoli() function shows that you can construct a C14X with only 11 lines of code while remaining competitive enough to earn the second honorable mention. Jan successfully decomposed a 14 control MCX gate into a 20 qubit circuit with a depth of 101.

For a Jupyter Notebook of the fifth place decomposition, see here.

Read his full explanation here.

 

SIXTH PLACE - Witold Jarnicki, Poland


Witold successfully decomposed a 14 control MCX gate into a 20 qubit circuit with a depth of 140.

For a Jupyter Notebook of the sixth place decomposition, see here.

 

A graph showing all the solutions is below:

2022年春季Classiq Coding Competitionにご参加ご協力いただいた皆様、ありがとうございました!

"Qubit Guyのポッドキャスト "について

The Qubit Guy(弊社最高マーケティング責任者ユヴァル・ボーガー)がホストを務めるこのポッドキャストは、量子コンピューティングのオピニオンリーダーをゲストに迎え、量子コンピューティングのエコシステムに影響を与えるビジネスや技術的な疑問について議論します。ゲストは、量子コンピュータのソフトウェアやアルゴリズム、量子コンピュータのハードウェア、量子コンピューティングの主要なアプリケーション、量子産業の市場調査などについて興味深いインサイトを提供します。

ポッドキャストへのゲスト推薦をご希望の方は、こちらまでご連絡ください

量子ソフトウェア開発を開始

お問い合わせ