INFORMATION | |
PROCESSING | |
LABORATORY |
TOP | MEMBERS | RESEARCH | PAPERS | SEMINARS | ACCESS | |
TOP(J) | MEMBERS(J) | RESEARCH(J) | PAPERS(J) | SEMINARS(J) | ACCESS(J) |
計算機を用いて問題を解決するには,アルゴリズムをプログラムとして表現し,そのプログラムにしたがって計算機を動作させればよい.計算機のハードウェアの進歩とともに,対象とする問題もより高度なものとなり,それに応じてプログラムもますます複雑さを増している.問題解決の過程には,アルゴリズムをプログラムとして表現するプログラミングの段階と,そのプログラムを計算機で実現する段階とがある.これらのいずれの段階においても,プログラムに内在するさまざまな性質を扱う工学が求められる.これに対して,計算機プログラムを厳密な科学・工学の対象として数理的にとらえて,プログラミングの方法論にあらたな視点を与えるとともに,効率のよいプログラムの実現法を得る計算機プログラムの数理工学を広く研究している.
高性能の計算機もプログラムがあってはじめて能力を発揮することができ,プログラムを作るためにはプログラミング言語が必要である.我々の研究室では,プログラミング言語を対象とし,言語の設計,高性能な処理系 (インタプリタ,コンパイラ,実行時システム) の実現方法,あるいは,このような言語で記述されたプログラムの静的な解析手法の開発など,幅広い研究を行っている.現在特に注目しているのは,Lisp のような記号処理計算向きの言語,関数に基づきプログラムを記述する関数型言語,Java のように「もの」をオブジェクトとして捉えるオブジェクト指向言語である. また,これらの言語を記述言語としたシステムソフトウェアも研究対象としている.
素朴で効率のよくない初期プログラムを,数学的な理論に基づいた変換規則を適用することにより,効率のよいプログラムを導出するための手法についての研究を行っている.特に現在は,構成的アルゴリズム論に基づいて,プログラムを導出するための運算規則とそれをプログラムに適用するための運算アルゴリズムを中心にして研究を進めている.これによって,数の運算(算術の運用・計算,calculation)が計算器(電卓)で行なわれるように, 計算機プログラムも計算的な手法を用いた運算システムで操作することが可能になる.