Top 8
Outer WildsストーリーMODを色々やってみた
June 18, 2023, 10:04 a.m.表面符号と戯れる【量子コンピューター Advent Calendar 2023 23 日目】
Dec. 23, 2023, 3:28 a.m.位数発見アルゴリズム ~Quantum Zooやっていく【特別編】~
Jan. 27, 2023, 2:50 p.m.ストーリー追加 Mod: The Outsider やっていく日記【Outer Wilds】
Feb. 19, 2023, 6:33 a.m.意識が量子効果で生じることを示す実験結果についてちょっと調べただけのメモ
April 21, 2022, 3:09 p.m.ストーリー追加 MOD: Astral Codec やっていく日記【Outer Wilds】
Feb. 25, 2024, 8:47 a.m.Outer Wilds の量子は計算能力が(ある程度)すごいのではという話
Jan. 15, 2022, 8:35 a.m.MacでAge of Empires 2 DE (AoE2DE)をCrossOverで動かす
May 31, 2021, 11:52 a.m.Square-and-multiplyを使った冪乗計算
July 21, 2024, 6:03 a.m. edited July 21, 2024, 3:38 p.m.\(N^x\) を計算するとき、単純に計算すると
$$N^x=N\cdot N\cdot N\cdots N$$
と \(x\) 回掛けるので、計算量は \(x\) である。
では、 \(x\) を 2 進数で \(x_{m-1} x_{m-2} \dots x_1 x_0\) と表す(つまり \(x=2^0x_0+2^1x_1+\cdots+2^{m-2}x_{m-2}+2^{m-1}x_{m-1}\))として、次のように計算すると
$$ \begin{align} N^x&=N^{2^0x_0+2^1x_1+\cdots+2^{m-2}x_{m-2}+2^{m-1}x_{m-1}}\\ &=N^{2^0x_0}\cdot N^{2^1x_1}\cdots N^{2^{m-2}x_{m-2}}\cdot N^{2^{m-1}x_{m-1}} \end{align} $$
と \(m=O(\log_2 x)\) 回の計算量で済みそうである。しかし、それは事前に \(N^{2^i}\) それぞれを計算しておいた場合であり、そうでないなら計算量は変わらない。
Square-and-multiply
では、他に方法はあるのだろうか?その例として、 square-and-multiply という方法がある。これは 2 進数の上の桁から順に
- 0 なら現在の値を 2 乗する(1 ステップ消費)
- 1 なら
- はじめて 1 が出てきたなら何もしない(0 ステップ消費)
- 2 回目以降なら 2 乗したうえで、 \(N\) を掛け算する(2 ステップ消費)
というものである。いくつかの例を見ていく:
\(x=3\) (2 進数で \(11\)) なら
$$N^3=(N\to N\to N^2\cdot N=N^3)$$
\(x=10\) (2 進数で \(1010\)) なら
$$N^{10}=(N\to N\to N^2\to (N^2)^2\cdot N=N^5\to (N^5)^2=N^{10})$$
これは \(x=10\) ステップ必要だったのが、 4 ステップに減っている。
では、計算量としてはどうなっているのかを考える。先ほどのリンク先にはその議論はなかったが、 \(x\) の 2 進数がすべて 1 であったとしても、 2 ステップが \(\log_2 x\) 回あるわけなので、結局その計算量は \(O(\log_2 x)\) ということになる。
Top 8
Outer WildsストーリーMODを色々やってみた
June 18, 2023, 10:04 a.m.表面符号と戯れる【量子コンピューター Advent Calendar 2023 23 日目】
Dec. 23, 2023, 3:28 a.m.位数発見アルゴリズム ~Quantum Zooやっていく【特別編】~
Jan. 27, 2023, 2:50 p.m.ストーリー追加 Mod: The Outsider やっていく日記【Outer Wilds】
Feb. 19, 2023, 6:33 a.m.意識が量子効果で生じることを示す実験結果についてちょっと調べただけのメモ
April 21, 2022, 3:09 p.m.ストーリー追加 MOD: Astral Codec やっていく日記【Outer Wilds】
Feb. 25, 2024, 8:47 a.m.Outer Wilds の量子は計算能力が(ある程度)すごいのではという話
Jan. 15, 2022, 8:35 a.m.MacでAge of Empires 2 DE (AoE2DE)をCrossOverで動かす
May 31, 2021, 11:52 a.m.Tags
- #Python (26)
- #量子力学 (25)
- #量子情報 (23)
- #Unity (11)
- #Outer Wilds (11)
- #数学 (9)
- #Mac (9)
- #AoE2 (8)
- #Linux (7)
- #Quantum Zoo (6)
- #意識 (5)
- #シミュレーション (5)
- #NumPy (5)
- #Bash (5)
- #相対論 (4)
- #Docker (4)
- #Android (4)
- #Qiskit (4)
- #Rust (3)
- #PyO3 (3)
- #GitHub (3)
- #Django (2)
- #情報理論 (2)
- #LaTeX (2)
- #AR (2)
- #Git (2)
- #iOS (2)
- #C++ (2)
- #正規表現 (2)
- #論文 (2)
- #電磁気学 (1)
- #Google Drive (1)
- #Overleaf (1)
- #Let's Encrypt (1)
- #ポケモン (1)
- #AdMob (1)
- #Autoya (1)
- #docopt (1)
- #SymPy (1)
- #AWS (1)
- #Twitter (1)
- #URP (1)
- #iMovie (1)
- #PyTorch (1)
- #C# (1)
- #Vim (1)