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 Dybjer | 1 | 540 | 76.99 |
Qiao Haiyan | 2 | 42 | 3.61 |
Makoto Takeyama | 3 | 67 | 7.46 |