Braquehais, Rudy and Runciman, Colin orcid.org/0000-0002-0151-3233 (2017) Speculate: discovering conditional equations and inequalities about black-box functions by reasoning from test results. In: Proceedings of the ACM SIGPLAN Haskell Symposium 2017. ACM , pp. 40-51.
Abstract
This paper presents Speculate, a tool that automatically conjectures laws involving conditional equations and inequalities about Haskell functions. Speculate enumerates expressions involving a given collection of Haskell functions, testing to separate those expressions into apparent equivalence classes. Expressions in the same equivalence class are used to conjecture equations. Representative expressions of different equivalence classes are used to conjecture conditional equations and inequalities. Speculate uses lightweight equational reasoning based on term rewriting to discard redundant laws and to avoid needless testing. Several applications demonstrate the effectiveness of Speculate.
Metadata
Item Type: | Proceedings Paper |
---|---|
Authors/Creators: |
|
Copyright, Publisher and Additional Information: | © 2017 Copyright held by the owner/author(s). This is an author-produced version of the published paper. Uploaded in accordance with the publisher’s self-archiving policy. Further copying may not be permitted; contact the publisher for details |
Keywords: | formal specification,property-based testing,Haskell |
Dates: |
|
Institution: | The University of York |
Academic Units: | The University of York > Faculty of Sciences (York) > Computer Science (York) |
Depositing User: | Pure (York) |
Date Deposited: | 12 Apr 2018 10:00 |
Last Modified: | 09 Dec 2024 00:21 |
Published Version: | https://doi.org/10.1145/3122955.3122961 |
Status: | Published |
Publisher: | ACM |
Identification Number: | 10.1145/3122955.3122961 |
Open Archives Initiative ID (OAI ID): | oai:eprints.whiterose.ac.uk:129495 |
Download
Filename: speculate_v3.0_20170717_camera_ready.pdf
Description: speculate-v3.0-20170717-camera-ready