はじめに

このpythonパッケージはハミルトニアンがPauli行列積の線型結合で 表現できる場合に量子回路上で再現する手法、Block-Encoding法を 実行するものである。
このプログラムでは量子コンピュータ向け量子化学計算パッケージであるOpenfermionや量子コンピュータシミュレータのQulacs(推奨)またはQiskitの利用を前提としているので利用する際には これらのパッケージのダウンロードを強く推奨する。
本プログラムの一部の作成にはXANADA社の開発したPennyLaneというライブラリの実行結果を参考にした。

利用方法

~~利用方法はdocsファイルをダウンロードしてもらいindex.htmlを開いて欲しい。 詳しくはそこに記載してある。注意点としてこのライブラリ内からアクセスできる github pageは同様のことが記載されているが、 現在筆者の想定した通りの表示ができていない。 今後の修正度合いに応じて新しい発表を行うので今はアクセスしないことを強く勧める~~ 本パッケージはフォルダPItBEごと、あるいはフォルダsrc内のフォルダpitbeのみをgithubを介して手持ちの端末にリポジトリを複製して利用することを推奨する。
Block-Encoding法の理論及びpitbeに含まれている関数についての説明は関数一覧に記述してあるため、一読することを推奨する。pitbeに含まれている関数についてはフォルダsrc/rst_filesに存在する関数名と同じ名前のjupyter notebookでも参照可能。
実際の利用方法の見本としてデモプレイという章を用意してあるので、そちらも一読することを推奨する。
なお本ページに含まれているフォルダのうちpitbe及びsrc以外のファイルについては実行上無視してもらっても構わない。

最後に

本プログラムはまだまだ荒削りであり、利用者にとって扱いやすいものであるとは 到底言える状態ではない。しかしそれは更なる発展が見込まれることを 同時に示唆している。今後のアップデートに期待してほしい。

更新情報

2025/06/20 更新

関数mat_makerを実装。同時にGithub pageにおける関数mat_makeについての記述を関数mat_makerに変更。
関数mat_makeで生じていたユニタリ行列が正しく生成されない問題を解決。
今後はmat_makeを使用せず、mat_makerを使用することを強く推奨する。
関数read_generalを実装。
関数read_jwでは対応できなかったOpenfermionによるBravyi変換結果にも対応できるように改良。
read_jwの完全上位互換版であるのでread_generalへの移行を強く推奨。
関数qiskit_circ_makeを実装。
QiskitにおいてもPItBEを用いたBlock-Encodingを実行可能になった。
ただ製作者の環境ではQulacsの方が実行時間は短かった。
Github pagesの不具合のうち大部分を解消、再度公開。
ただし、circ_make及びqiskit_circ_makeのページにおいて画像が読み込まれないことは未だ解消されていない。
これらのページについてはsrc/rst_files中に存在するcirc_make.ipynbまたはqiskit_circ_make.ipynbを参考にしてほしい。

2025/06/25 更新

READMEの内容のうち利用方法の部分を更新。

2025/06/26 更新

Github pagesに利用方法を説明するページDemo Playを掲載。

2025/06/30 更新

Github pagesにBlock-Encoding法及びPItBEを説明するページWhat is Block-Encoding and PItBEにてBlock-Encoding法の理論的背景を解説するページの日本語版を公開。
PItBEについての説明及び英語版は今後の更新で公開予定。

2025/07/01 更新

PItBEについての説明を行うページの公開。

2025/07/07 更新

英語版のページを公開。
Githubで最初に確認できるReadmeを英語版に変更。

2025/07/08 更新

各ページ間にリンクを貼り付け。
軽微な入力ミスの修正。