Entanglionやろうぜ！番外:Entanglionと量子コンピュータの関係

# この記事は，記事[Entanglionやろうぜ！](https://qiita.com/nisuikiba/items/838a59b78965c849fcad)の派生記事です
[Entanglion](https://entanglion.github.io/)とは， IBM Researchが作成した，オープンソースのボードゲームです．なんとこのゲーム，量子ゲート方式の理論がベースになっています！Entanglionを一緒にやってくれる人を増やすために，[こちらの記事](https://qiita.com/nisuikiba/items/838a59b78965c849fcad)にて，日本語のEntanglionルールブック的なものを作成してみました．詳しくは記事をご覧ください．
上記の記事で，文量と内容を鑑みて採用しなかった内容について，番外編としてこちらで別に記事を設けました．

## この記事の仕様
- 英語が苦手な人がGoogle先生と一緒にえっちらおっちらつくりました
    - 意訳している箇所が多々あります．おかしな表現がありましたらご指摘ください．
- ソースはIBM Researchが発表している[GitHub](https://github.com/Entanglion/entanglion/tree/master/game#how-entanglion-relates-to-quantum-computing)です
- この記事に使用している画像は，上記のGitHubから拝借しています．

![image.png](https://qiita-image-store.s3.amazonaws.com/0/252893/9589384c-734b-ff22-21b4-5172c743626e.png)

# Entanglionと量子コンピュータの関係
Entanglionのルールには，量子コンピュータの理論が盛り込まれています．
具体的には，2つの宇宙船は2つの量子ビットを表し，各銀河の各惑星はそれらの量子ビットの異なる状態を表しています．エンジンカードは，量子ビットを異なる状態に遷移させるために使用される，量子ゲートを表します．

Centarious銀河は，0と1の古典的な状態を表し，ケット記法で⎢0〉(ZERO)と⎢1〉(ONE)と表記されます．Superious銀河は，|+〉（PLUS）および⎢-〉(MINUS)として知られる，重ね合わせ状態を表します．Entanglion銀河は量子もつれの状態を表します．４つの絡み合った状態，⎢Ψ+〉(PSI PLUS)，⎢Ψ-〉(PSI MINUS)．⎢Φ+〉(PHI PLUS)，そして⎢Φ-〉(PHI MINUS)は，[ベル状態](https://en.wikipedia.org/wiki/Bell_state)として知られています．⎢ω0〉(OMEGA ZERO)から⎢ω3〉(OMEGA THREE)までの，私たちが名前をつけた追加の絡み合った状態は，X，H，SWAP，およびCNOTゲートを組み合わせて作用させることで，達成可能です．

両方の船が絡み合いの中で一緒に動かなければならないのは，絡み合った状態のために，システムの状態が個々の量子ビットの状態の単純な組み合わせよりも複雑であるという事実による結果です．これは，量子力学が古典物理学との一番大きな違いと言えるでしょう．

## エンジンカード
エンジンカードは，量子コンピュータで使用されるいくつかの異なる種類の量子論理ゲートを表します．

<img src="https://qiita-image-store.s3.amazonaws.com/0/252893/66a92768-98db-9241-4e8e-4da56cc61cee.png">

<dl>
  <dt>X</dt>
  <dd>Xゲートは量子ビットの値を反転します．ビット反転ゲートとも呼ばれます．</dd>
  <br>
  <dt>H</dt>
  <dd>アダマールゲートは，重ね合わせ状態の作成または崩壊に使用されます．量計算における最も重要なゲートの1つです．</dd>
  <br>
  <dt>SWAP</dt>
  <dd>SWAPは2つの量子ビットの値を交換します．</dd>
  <br>
  <dt>CNOT</dt>
  <dd>CNOTは "Controlled Not"の略です．動作するには2つの量子ビットが必要です．1つの量子ビットは”ターゲット(標的)ビット”と呼ばれます．”コントロール(制御)ビット”と呼ばれるもう1つのキュビットの値が1の場合，標的ビットを反転します．</dd>
</dl>

## コンポーネントカード
Entanglionのコンポーネント(量子コンピュータの構成部品)は，実際の量子コンピュータを構築するために必要な，さまざまな物理的または論理的成分を表します．

<img src="https://qiita-image-store.s3.amazonaws.com/0/252893/f3cf5ecc-2dd3-a5c7-7546-9e510f675d04.png">

<dl>
  <dt>Physical Qubits -実際の量子ビット-</dt>
  <dd>古典的なコンピュータプロセッサがハードウェアトランジスタを介してどのように実装されるのと同様に，量子コンピュータのプロセッサはハードウェアの量子ビットを介して実装されます．ジョセフソン接合，イオントラップ，量子ドットなど，科学者が物理的な量子ビットを作成する方法は[いくつか](https://en.wikipedia.org/wiki/Qubit#Physical_representation)存在します．</dd>
  <br>
  <dt>Qubit Interconnect -量子ビットの連結-</dt>
  <dd>量子もつれ状態になるためには，量子ビットは互いに物理的に接続されていなければなりません．</dd> 
  <br>
  <dt>Dilution Refrigerator -希釈冷凍機-</dt>
  <dd>物理的な量子ビットは，それらのコヒーレンスを維持するために，非常に低い温度(宇宙よりも低温)に保たなければなりません．希釈冷凍機は物理的量子ビットを2ミリケルビンという低い温度で冷却することができます．</dd> 
  <br>
  <dt>Quantum Gates -量子ゲート-</dt>
  <dd>古典的な計算では，AND，OR，NOT，NANDなどの論理ゲートを組み合わせ，高次計算を行います．量子計算では，X，CNOT，SWAP，Hなどの量子ゲートが計算に使用されます．</dd> 
  <br>
  <dt>Quantum Programming -量子プログラミング-</dt>
  <dd>量子プログラマーの生産性を向上させるためには，より高度な量子プログラミング言語が必要です．IBM [OpenQASM](https://github.com/IBM/qiskit-openqasm)では，アセンブリスタイルの言語で量子コンピュータをプログラムでき，IBM [QISKit](https://qiskit.org/)では，Pythonで量子コンピュータをプログラムできます．</dd> 
  <br>
  <dt>Quantum Error Correction -量子誤り訂正-</dt>
  <dd>物理的な量子ビットでは，測定中にエラーが発生する原因となるノイズが存在します．[量子誤り訂正](https://en.wikipedia.org/wiki/Quantum_error_correction)は，これらの誤差を補正するために使用されます．量子誤り訂正を行うには，1つの論理量子ビットをシミュレートするために，複数の物理量子ビットを使用しなければなりません．</dd>
  <br>
  <dt>Control Infrastructure -制御基盤-</dt>
  <dd>量子コンピュータには，量子ビットの状態を測定するための何らかの方法が必要です．制御基盤は，マイクロ波放射を使用して量子ビットの状態を観測し，それをバイナリ状態にデジタル化します．</dd> 
  <br>
  <dt>Magnetic Shielding -磁気シールド-</dt>
  <dd>量子ビットは漂遊磁界に非常に敏感です．磁気シールドにより，量子ビットは外部の磁気源から確実に保護されます．</dd>  
</dl>

## イベントカード
イベントカードは，ゲームをより楽しく，ランダムなものにします．いくつかのイベントカードは，Werner HeisenbergやErwinSchrödingerのように，量子物理学や量子情報科学の分野に大きく貢献した人々にちなんで名付けられました．そのうちの一つは，量子情報理論の創始者であり，量子テレポーテーション効果の発見への重要な貢献者の1人である，IBMの研究者Charles Bennettにちなんで名付けられた特別なものです．他のイベントカードは，量子トンネル，ビット反転エラー，波動関数崩壊，アインシュタインの"spooky action at a distance"など，量子効果にちなんで名付けられました．私たちは，熱心なプレイヤーがこれらの人々やトピックを研究して量子情報の物理学についての学びが進むことを期待しています！

<img src="https://qiita-image-store.s3.amazonaws.com/0/252893/69656ecf-1be2-bb07-ff96-efdc255fbe61.png">

## 防衛，観測，そしてエラー

Entanglion銀河を操縦するときに軌道防衛システムに遭遇するというプロセスは，量子状態で古典的な測定(Z測定)を実行することに似ています．さらに，コンポーネントを回収するというプロセスは，[Bellテスト](https://en.wikipedia.org/wiki/Bell_test_experiments)としても知られている測定を実行することに似ています．ときには，量子系のノイズによって，信頼できる測定値が得られないこともあります．これをリードアウトエラーと呼びます．ノイズとエラーの影響は，検出率によってモデル化されています．