情報科学 › アルゴリズムとデータ構造 › 動的計画法

メモ化再帰の計算量

命題 3.3(「動的計画法」§3) ・ ✓公理まで証明済み

定義 3.1 の設定のもとで、次の再帰手続き solve(s)\mathrm{solve}(s) を考える。

  • 表 T[s]T[s] が「未計算」でなければ T[s]T[s] を返す。
  • そうでなければ、D(s)=(s1,…,sk)D(s) = (s_1, \ldots, s_k) の各要素に対して solve(si)\mathrm{solve}(s_i) を呼び、その結果に gsg_s を適用した値を T[s]T[s] に書き込んで返す。

このとき、s0∈Ss_0 \in S から GG の辺を逆向きに辿って到達できる部分問題の集合を R⊆SR \subseteq S(s0∈Rs_0 \in R)とすると、solve(s0)\mathrm{solve}(s_0) は停止し、V(s0)V(s_0) を返す。その計算時間は O(∣R∣+∑s∈Rc(s))O\bigl(|R| + \sum_{s \in R} c(s)\bigr) であり、RR に属さない部分問題は一度も評価されない。

本文で読む(証明と前後の説明)→

閉包の状態

✓ 公理まで証明済み

証明が使う定理を 前提 としてたどると、Rikai の中の証明だけで定義・公理(物理では基本仮定)までつながっています(前提の定理類 1 件、定義なども含めて 2 件)。

印の意味: ✓公理まで証明済み ・ △証明あり(閉包未完)・ ※主張のみ。テーマごとの集計は 閉包の状況。

前提をたどる 証明が使う定理・定義(直接 1 件)

▸ を開くと、その項目の証明が使う前提が出ます。深い先は各項目のページでたどれます。

これを使っている定理

証明で明示的に参照している定理は、まだありません。