「計算モデル」の版間の差分
m 記事の読み仮名の追加 |
|||
1行目: | 1行目: | ||
{{読み仮名|'''計算モデル'''|けいさんモデル|{{lang-en-short|model of computation}}}}は、[[計算]]・[[推論]]・[[証明]]といった行為を理論的・抽象的に考察するための[[数理モデル]]である。'''計算模型'''とも。これに含まれるうちで、[[チューリングマシン]]などのように感覚的に機械っぽいものを'''[[抽象機械]]'''という。機械っぽくないものとしては[[ラムダ計算]]などがある。 |
{{読み仮名|'''計算モデル'''|けいさんモデル|{{lang-en-short|model of computation}}}}は、[[計算]]・[[推論]]・[[証明 (数学)|証明]]といった行為を理論的・抽象的に考察するための[[数理モデル]]である。'''計算模型'''とも。これに含まれるうちで、[[チューリングマシン]]などのように感覚的に機械っぽいものを'''[[抽象機械]]'''という。機械っぽくないものとしては[[ラムダ計算]]などがある。 |
||
[[理論計算機科学]]の多くの分野で、「計算機械」を理論的に、すなわちモデル化して扱うために多大に活用されている。また特に抽象機械は、実際の[[プロセッサ]]や[[コンパイラ]]や[[インタプリタ]]の研究や開発など、理論に限らず実際的な分野でも活用される。[[計算理論]]においては、[[計算可能性理論|計算可能性]]や[[計算複雑性理論|計算複雑性]]について形式的・定量的に示すためなどに使われており、古典的な成果に[[チャーチ=チューリングのテーゼ]]がある。 |
[[理論計算機科学]]の多くの分野で、「計算機械」を理論的に、すなわちモデル化して扱うために多大に活用されている。また特に抽象機械は、実際の[[プロセッサ]]や[[コンパイラ]]や[[インタプリタ]]の研究や開発など、理論に限らず実際的な分野でも活用される。[[計算理論]]においては、[[計算可能性理論|計算可能性]]や[[計算複雑性理論|計算複雑性]]について形式的・定量的に示すためなどに使われており、古典的な成果に[[チャーチ=チューリングのテーゼ]]がある。 |
2021年4月28日 (水) 23:21時点における版
理論計算機科学の多くの分野で、「計算機械」を理論的に、すなわちモデル化して扱うために多大に活用されている。また特に抽象機械は、実際のプロセッサやコンパイラやインタプリタの研究や開発など、理論に限らず実際的な分野でも活用される。計算理論においては、計算可能性や計算複雑性について形式的・定量的に示すためなどに使われており、古典的な成果にチャーチ=チューリングのテーゼがある。
より現実の計算機に近づけた機械の定義には命令セット、レジスタ、メモリモデルなども含まれる。現在の一般的なコンピュータ(要するにいわゆるノイマン型)を抽象化した計算モデルとしてはRAMモデル(ランダムアクセスマシン)がある。これはメモリに対してインデックス付けによりランダムアクセス可能な計算モデルである(チューリングマシンではテープの1区画ずつの移動しかできない)。キャッシュメモリが一般化し、そのヒット率が性能に与える影響が大きくなってくると、メモリの階層を前提とした計算モデルが重要となってきた。
ハードウェアとして実装されていない(実装する予定のない)プロセッサの設計も一種の抽象機械である[1]。特にインタプリタの形式でソフトウェアとして実装されている抽象機械を仮想機械と呼ぶ。研究目的などで、より抽象的な抽象機械の実装を作って研究などに使うこともある。
抽象機械を使用することで、実際にシステムを組み立てることなく時間、メモリ使用量など特定の操作の実行に要するリソースを計算で求めることが可能である。
関連項目
- ^ と言えなくもないが、実機のプロセッサに近い設計では、理論的に扱うための利点はほぼ無い。