平成8年度委託研究「KL1プログラム開発支援ツール」の成果ソフトウェアである kimaの機能を拡張し、klint第2.1版に添付した。
kimaは、モード解析機能のデバッグへの応用を目指したものであり、矛盾するモー ド制約の極小部分集合を求めることによるバグ同定機能[2]、および 簡単な自動バグ修正 機能を備えていた。kima第1版は、基礎となるモード解析機能としてklint第1版を 用いていたが、 klint第2版に基づいてkimaの機能拡張を行ない、またその後の研究成果 [6,1,7]も反映させたものをkima第2版とし、klint第2.1版に添付す ることとした。
kima第2版はKL1プログラムを対象とする自動診断系で,klint同様KL1言語で記述 されており,KLIC処理系で動作する.klintでモード誤りが検出された場合、 kimaを用いることによって、変数の書き間違いのような軽微な誤りの場所を同定 し、さらにその修正案を探索することができる。 kima第2版は、型誤りの解析とモード誤りの解析を併用することによって、単数 または複数の軽微な誤りを持つプログラムに対し、プログラムの修正案を少数個 に絞り込んで提示する。「軽微な誤り」の仮定から、この少数個の中には正解も 含まれる。修正案は深さ漸増探索によって見つけているが、モード情報を枝刈り に用いることによって探索空間の増大を押さえている。