Title
Combining Testing and Proving in Dependent Type Theory
Abstract
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.
Year
DOI
Venue
2003
10.1007/10930755_12
Lecture Notes in Computer Science
Keywords
Field
DocType
random testing,proof assistant,functional programming
Random testing,Computer science,Algorithm,Type theory,Test case,Agda,Dependent type,Test data generation,Proof assistant,Debugging
Conference
Volume
ISSN
Citations 
2758
0302-9743
26
PageRank 
References 
Authors
1.31
4
3
Name
Order
Citations
PageRank
Peter Dybjer154076.99
Qiao Haiyan2423.61
Makoto Takeyama3677.46