1995 年 12 巻 5 号 p. 5_487-5_501
プログラミングの過程において,あるプログラムを元に,複数の異なったバージョンのプログラムを作ることがある.プログラム差分合成アルゴリズム(program difference integration algorithm)とは,このようにして作られた,2つの異なるバージョンのプログラムを1つに合成するためのアルゴリズムである.プログラム差分合成アルゴリズムには,HPRアルゴリズムなどが提案されている.しかし,これらのアルゴリズムでは,条件分岐などによるプログラム・コードの取捨選択を考慮しなければならない場合は,合成ができないことがしられている. 本論文では,HPRアルゴリズムで使われている後方プログラムスライスに加えて,前方プログラムスライスを用いてプログラムの解析を行なうことにより,上記の問題を解決するPDIアルゴリズムを提案する.また,プログラムを代数の要素とみなすことによって,PDIアルゴリズムが結合律を満たすことも示す.