関数プログラミングおけるプログラムは、その参照透明性により形
式的に等価変換することができる。このため、問題の仕様から素直
に得られるプログラムを等価変換することで、より高速なプログラ
ムを導出することができる。問題の仕様は複数の部分プログラムで
表現されるため、fusionと呼ばれる手法で部分プログラムを合成す
ることに重点がおかれる。fusionによって導出後のプログラムの評
価における簡約段数が減少することが期待できるが、時間計算量の
観点では、fusionによって必ずしも高速なプログラムが得られない。
本発表では、このような例を示すとともに、fusion との併用で時
間計算量の高速化が望めるようなプログラム導出の一方針を示す。
Back