ソフトウェア設計変更支援のための依存論理に関する研究

新田 直也 (9851081)


本研究では, ソフトウェアの設計変更に伴って発生する資源(ソースコードやデータなど)の移行作業を支援することを目的と して, 新しい論理体系(依存論理)を提案する. 従来の論理が関数や述語を論理式の構成要素としていたのに対し,依存論理では,高階変数間の依存関係という概念を導入 して,それを関数や述語を構成するより基本的な要素としている.これにより,ソフトウェアの設計情報とその設計に基づい て作成された資源を同じ枠組の中で扱うことが可能になる.

本論文では,依存論理の重要な部分クラスである一階依存論理の構文と意味を定義し,その健全かつ準完全な公理系を導入する. さらに,一階依存論理にif文を表す特殊公理を追加した体系が, 任意の一般帰納的関数を定義できることを示す. また, 依存 論理の適用例としてデータベース設計変更問題を取り上げる. データベース設計変更問題とは, 変更前後のスキーマS,S'が 与えられたとき,SのもとでのインスタンスIをS'のもとでのインスタンスに変換する問題である. この問題を依存論理 の枠組内で形式的に定義し, 依存論理における推論を用いた解法を提案する.