![]() ![]() |
|
タケヤマ マコト
Takeyama Makoto 武山 誠 所属 神奈川大学 理学部 情報科学科 神奈川大学大学院 理学研究科 理学専攻(情報科学領域) 職種 教授 |
|
言語種別 | 英語 |
発行・発表の年月 | 2003 |
形態種別 | 学術雑誌 |
査読 | 査読あり |
標題 | Verifying Haskell Programs by Combining Testing and Proving |
執筆形態 | 共著 |
掲載誌名 | 3rd International Conference on Quality Software(QSIC 2003),IEEE Computer Society Press |
掲載区分 | 国外 |
著者・共著者 | Peter Dybjer, Qiao Haiyan, Makoto Takeyama |
概要 | We propose a method for improving confidence in the correctness of Haskell programs by combining testing and proving. Testing is used for debugging programs and specification before a costly proof attempt. During a proof development, testing also quickly eliminates wrong conjectures. Proving helps us to decompose a testing task in a way that is guaranteed to be correct. To demonstrate the method, we have extended the Agda/Alfa proof assistant for dependent type theory with a tool for random testing. As an example, we show how the correctness of a BDD-algorithm written in Haskell is verified by testing properties of component functions. We also discuss faithful translations from Haskell to type theory. |