1994 Fiscal Year Annual Research Report
プログラム言語とその変換の形式的仕様記述に対するテストおよび誤り検出の研究
Project/Area Number |
05680269
|
Research Institution | Tokyo Institute of Technology |
Principal Investigator |
佐々 政孝 東京工業大学, 大学院・情報理工学研究科・数理・計算科学専攻, 教授 (20016182)
|
Co-Investigator(Kenkyū-buntansha) |
脇田 建 東京工業大学, 大学院・情報理工学研究科・数理・計算科学専攻, 助手 (10242265)
|
Keywords | 形式的仕様 / プログラム言語 / テスト / デバッグ / コンパイラ / 属性文法 |
Research Abstract |
本研究では,プログラム言語とその変換系(たとえばコンパイラ)の形式的仕様が与えられたとき,記述した形式的仕様自身が正しく記述されていることをテストし,誤り検出を行う手法を開発した. 仕様記述の方法には種々のものがあるが,本研究では,プログラム言語の意味(静的意味),実行(動的意味,インタプリテーション),変換(例えば最適化や目的コードの生成)がいずれも記述できる属性文法を採用する. さて,記述した形式的仕様のテストおよび誤り検出のためには,実用的な観点から次の2つのツールが必要である:(a)仕様をテストする際,あるソースプログラムに対して仕様が意味,実行,変換の点で誤っていることが分かったときに,仕様のデバッグを支援するツール,(b)仕様をテストできるようなソースプログラムの集合を,プログラム言語やその変換の形式的仕様から生成するツール.平成6年度は,そのうち次を実現した. 1.(a)については,従来論理型言語のデバッグに用いられていたアルゴリズミック・デバッギングの手法を属性文法に応用したバグ究明戦略を提案した.さらに,その拡張アルゴリズム,属性文法クラスとの関係を考察し,属性文法に基づく生成系Junをもとにプロトタイプ・システムを作成した.属性文法に対する系統的デバッグ法の研究は従来ほとんどなされていないので,これは独創性の高い研究であると考える[研究発表2,3]. 2.(b)については,プログラム言語の構文および意味が与えられたとき,構文および意味の双方について正しい/誤ったソースプログラムを生成する方法を開発し,Prologを用いてプロトタイプ・システムを作成した.本研究の特徴は,属性文法の文脈条件(プログラム言語が満たすべき意味的条件)を用いて,その条件を真/偽にすることにより,意味的に正しい/誤ったテストプログラムを生成できることである[研究発表1].
|
-
[Publications] 太田行紀,ほか: "属性文法に基づくテストプログラム生成器の設計と実装" 情報処理学会ソフトウェア工学研究会. SE-103. (1995)
-
[Publications] 大久保琢也,ほか: "属性文法に対するデバッグの開発" 日本ソフトウェア科学会第11回大会論文集. 11. 345-348 (1994)
-
[Publications] 大久保琢也,ほか: "属性文法に対するデバッガ" 情報処理学会記号処理研究会. SYM-78. (1995)
-
[Publications] 佐々 政孝: "属性文法に基づくプログラミング環境の生成方法" コンピュータソフトウェア. 11,4. 300-312 (1994)