Combining Testing and Proving in Dependent Type Theory
Combining Testing and Proving in Dependent Type Theory
复制标题
在依赖类型理论中结合测试和证明
DOI:
10.1007/10930755_12
复制
发表时间:
2003
影响因子:
1.1
通讯作者:
M. Takeyama
中科院分区:
文献类型:
--
作者:
P. Dybjer;Haiyan Qiao;M. Takeyama
We extend the proof assistant Agda/Alfa for dependent type theory with a modified version of Claessen and Hughes' tool QuickCheck for random testing of functional programs. In this way we combine testing and proving in one system. Testing is used for debugging programs and specifications before a proof is attempted. Furthermore, we demonstrate by example how testing can be used repeatedly during proof for testing suitable subgoals. Our tool uses testdata generators which are defined inside Agda/Alfa. We can therefore use the type system to prove properties about them, in particular surjectivity stating that all possible test cases can indeed be generated.