Python(Cirq)について(11)

概要

  • Cirq について, Custom Gates に関するサンプルをいくつか動かしてみた.
  • 動作環境は, Google Colaboratory で行った

感想

  1. 量子物理学に関する知識(用語, 数式の意味ほか)は, 徐々に身につけていく必要があると感じた.
  2. 時間を見つけて, 今後も, チュートリアルの残りの部分を進めていこうと思う.

Gates and operations

  1. cirq.NamedQubit を 使う サンプル

  2. Custom gates

  3. cirq.Gate を 使う サンプル

  4. cirq.TwoQubitGate を 使う サンプル

  5. cirq.ThreeQubitGate を 使う サンプル

  6. ユニタリ行列の確認

参照サイト

C++ の動作確認をしてみた(422)

C++の練習を兼ねて, AtCoder Beginner Contest 195 の 問題E (Lucky 7 Battle) を解いてみた.

■感想.
1. 問題Eは, 解答方針が見えなかったので, 解説を参考に実装して, ようやく, AC版に到達できた.
2. 苦手なdpの訓練を積めたので良かったと思う.
3. 解説上 の dp更新式 に 不思議な印象(dpの各要素が集合になっている)を受け, 個人的には, 非常に, 面白い問題に感じた.
4. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイト AtCoder Beginner Contest 195 解説 の 各リンク を ご覧下さい.

■C++版プログラム(問題E/AC版).

■参照サイト
パナソニックプログラミングコンテスト(AtCoder Beginner Contest 195)

C++ の動作確認をしてみた(421)

C++の練習を兼ねて, AtCoder Beginner Contest 195 の 問題C (Comma) ~ 問題D (Shipping Center) を解いてみた.

■感想.
1. 問題Dは, 解答方針が見えなかったので, 解説を参考に実装して, ようやく, AC版に到達できた.
2. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイト AtCoder Beginner Contest 195 解説 の 各リンク を ご覧下さい.

■C++版プログラム(問題C/AC版).

■C++版プログラム(問題D/AC版).

■参照サイト
パナソニックプログラミングコンテスト(AtCoder Beginner Contest 195)

Python(Cirq)について(10)

概要

  • Cirq について, 前回に続き, シュミレーションに関するサンプルをいくつか動かしてみた.
  • 動作環境は, Google Colaboratory で行った

感想

  1. 量子物理学に関する知識(用語, 数式の意味ほか)は, 徐々に身につけていく必要があると感じた.
  2. 時間を見つけて, 今後も, チュートリアルの残りの部分を進めていこうと思う.

Mixed state simulations

cirq.DensityMatrixSimulator の 使い方 を 確認

  1. cirq.DensityMatrixSimulator を 使う サンプル

  2. cirq.DensityMatrixSimulator を 使う サンプル

参照サイト

Python(Cirq)について(9)

概要

  • Cirq の 理解を, さらに深めるため, シュミレーションに関するサンプルをいくつか動かしてみた.
  • 動作環境は, Google Colaboratory で行った

感想

  1. Google社 の Simulation に 関する記事を少しずつ進めることが出来たと思う.
  2. 量子物理学に関する知識(用語, 数式の意味ほか)は, 徐々に身につけていく必要があると感じた.
  3. 時間を見つけて, 今後も, チュートリアルの残りの部分を進めていこうと思う.

Parameterized values and studies

cirq.ParamResolver の 使い方 を 確認

  1. cirq.ParamResolver を 使う サンプル

  2. cirq.ParamResolver を 使わない サンプル.

  3. cirq.ParamResolver を 使う サンプル

  4. cirq.ParamResolver を 使わない サンプル

  5. simulator.run_sweep の 使い方 を 確認

  6. simulator.run_sweep を 使う サンプル

  7. simulator.run_sweep を 使わない サンプル

  8. Mixed state simulations

    cirq.DensityMatrixSimulator の 使い方 を 確認

  9. cirq.DensityMatrixSimulator を 使う サンプル

  10. cirq.DensityMatrixSimulator を 使わない サンプル

参照サイト

Python(Cirq)について(8)

概要

  • Cirq の 理解を, さらに深めるため, 量子ビットの表示順などのサンプルをいくつか動かしてみた.
  • 動作環境は, Google Colaboratory で行った

感想

  1. Google社 の Simulation に 関する記事を少しずつ進めることが出来たと思う.
  2. 量子物理学に関する知識(用語, 数式の意味ほか)は, 徐々に身につけていく必要があると感じた.
  3. 時間を見つけて, 今後も, チュートリアルの残りの部分を進めていこうと思う.

Qubit and Amplitude Ordering

量子ビットの出力順を操作出来るとのこと.

numpy.kron に 類似しているとのこと.

  1. numpy.kron の サンプル

  2. ループ の サンプル

  3. 量子ビット表示順

  4. 量子ビット表示順 の サンプル

  5. 量子ビット表示順 の サンプル

  6. 量子ビット表示順 の サンプル

  7. 量子ビット表示順 の サンプル

  8. 量子ビットのデバッグ表示

  9. 量子ビットのデバッグ表示 の サンプル

参照サイト

C++ の動作確認をしてみた(420)

C++の練習を兼ねて, AtCoder Beginner Contest 194 の 問題D (Journey) ~ 問題E (Mex Min) を解いてみた.

■感想.
1. どちらも, 解答方針が見えなかったので, 解説を参考に実装して, ようやく, AC版に到達できた.
2. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイト AtCoder Beginner Contest 194 解説 の 各リンク を ご覧下さい.

■C++版プログラム(問題D/AC版).

■C++版プログラム(問題E/AC版).

■参照サイト
AtCoder Beginner Contest 194

Python(Cirq)について(7)

概要

  • Cirq の 理解を, さらに深めるため, シュミレートするサンプルをいくつか動かしてみた.
  • 動作環境は, Google Colaboratory で行った

感想

  1. Google社 の Simulation に 関する記事を少しずつ進めることが出来たと思う.
  2. 量子物理学に関する知識(用語, 数式の意味ほか)は, 徐々に身につけていく必要があると感じた.
  3. 時間を見つけて, 今後も, チュートリアルの残りの部分を進めていこうと思う.

Introduction to pure state simulation

量子回路を作成して, シュミレートするサンプル.

  1. Circuit(sqrt X, CZ, sqrt X) の サンプル

  2. Circuit(X, CNOT) の サンプル

  3. Circuit(X, X, CSWAP) の サンプル

  4. Simulator(X, X, CSWAP) の サンプル

  5. Simulator(X, X, CCNOT) の サンプル

  6. Simulator(sqrt X, CNOT) の サンプル

  7. Simulator(sqrt X, sqrt X, CSWAP) の サンプル

  8. Simulator(sqrt X, CNOT) で simulate を 使用する サンプル

  9. Simulator(sqrt X, sqrt X, CSWAP) で simulate を 使用する サンプル

参照サイト

C++ の動作確認をしてみた(419)

C++の練習を兼ねて, AtCoder Grand Contest 052 の 問題A (Long Common Subsequence) を解いてみた.

■感想.
1. 解答方針が見えなかったので, 解説を参考に実装して, ようやく, AC版に到達できた.
2. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイト AtCoder Grand Contest 052 解説 の 各リンク を ご覧下さい.

■C++版プログラム(問題A/AC版).

■参照サイト
AtCoder Grand Contest 052

Python(Cirq)について(6)

概要

  • Cirq の 理解を, さらに深めるため, シュミレートするサンプルをいくつか動かしてみた.
  • 動作環境は, Google Colaboratory で行った

感想

  1. Google社 の Github上 の サンプルプログラムを, いろいろ変えてみて, 量子ビットに対する操作のイメージが, 少しだけ身近なものに感じたと思う.
  2. 量子物理学に関する知識(用語, 数式の意味ほか)は, 徐々に身につけていく必要があると感じた.
  3. 時間を見つけて, 今後も, チュートリアルの残りの部分を進めていこうと思う.

Simulation (1量子ビット)

量子回路(1量子ビット)を作成して, シュミレートするサンプル.

  1. Simulation(Pauli-X Gate) の サンプル

  2. Simulation(Square root of Pauli-X Gate) の サンプル

  3. Simulation(Pauli-Y Gate) の サンプル

  4. Simulation(Pauli-Z Gate) の サンプル

  5. Simulation(Hadamard Gate) の サンプル

  6. Simulation (2量子ビット)

    量子回路(2量子ビット)を作成して, シュミレートするサンプル.

  7. Simulation(CNOT Gate) の サンプル

  8. Simulation(X, CNOT Gate) の サンプル

  9. Simulation(CZ Gate) の サンプル

  10. Simulation(X, CZ Gate) の サンプル

  11. Simulation(X, SWAP Gate) の サンプル

  12. Simulation (3量子ビット)

    量子回路(3量子ビット)を作成して, シュミレートするサンプル.

  13. Simulation(CCNOT Gate) の サンプル

  14. Simulation(X, CCNOT Gate) の サンプル

  15. Simulation(X, X, CCNOT Gate) の サンプル

  16. Simulation(X, CSWAP Gate) の サンプル

  17. Simulation(X, X, CSWAP Gate) の サンプル

参照サイト