Files in this item
Automatically proving equivalence by type-safe reflection
Item metadata
dc.contributor.author | Slama, Franck | |
dc.contributor.author | Brady, Edwin Charles | |
dc.contributor.editor | Geuvers, Herman | |
dc.contributor.editor | England, Matthew | |
dc.contributor.editor | Hasan, Osman | |
dc.contributor.editor | Rabe, Florian | |
dc.contributor.editor | Teschke, Olaf | |
dc.date.accessioned | 2017-07-18T14:30:11Z | |
dc.date.available | 2017-07-18T14:30:11Z | |
dc.date.issued | 2017 | |
dc.identifier | 250039705 | |
dc.identifier | 364c78c5-b4d9-4465-89ae-9cae497abb91 | |
dc.identifier | 85025128999 | |
dc.identifier | 000441207700004 | |
dc.identifier.citation | Slama , F & Brady , E C 2017 , Automatically proving equivalence by type-safe reflection . in H Geuvers , M England , O Hasan , F Rabe & O Teschke (eds) , Intelligent Computer Mathematics : 10th International Conference, CICM 2017, Edinburgh, UK, July 17-21, 2017, Proceedings . Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence) , vol. 10383 (LNCS) , Springer , Cham , pp. 40-55 , 10th Conference on Intelligent Computer Mathematics (CICM 2017) , Edinburgh , United Kingdom , 17/07/17 . https://doi.org/10.1007/978-3-319-62075-6_4 | en |
dc.identifier.citation | conference | en |
dc.identifier.isbn | 9783319620749 | |
dc.identifier.isbn | 9783319620756 | |
dc.identifier.issn | 0302-9743 | |
dc.identifier.other | ORCID: /0000-0002-9734-367X/work/58054942 | |
dc.identifier.uri | https://hdl.handle.net/10023/11247 | |
dc.description | We are also grateful for the support of the Scottish Informatics and Computer Science Alliance (SICSA) and EPSRC grant EP/N024222/1. | en |
dc.description.abstract | One difficulty with reasoning and programming with dependent types is that proof obligations arise naturally once programs become even moderately sized. For example, implementing an adder for binary numbers indexed over their natural number equivalents naturally leads to proof obligations for equalities of expressions over natural numbers. The need for these equality proofs comes, in intensional type theories, from the fact that the propositional equality enables us to prove as equal terms that are not judgementally equal, which means that the typechecker can’t always obtain equalities by reduction. As far as possible, we would like to solve such proof obligations automatically. In this paper, we show one way to automate these proofs by reflection in the dependently typed programming language Idris. We show how defining reflected terms indexed by the original Idris expression allows us to construct and manipulate proofs. We build a hierarchy of tactics for proving equivalences in semi-groups, monoids, commutative monoids, groups, commutative groups, semi-rings and rings. We also show how each tactic reuses those from simpler structures, thus avoiding duplication of code and proofs. | |
dc.format.extent | 16 | |
dc.format.extent | 271970 | |
dc.language.iso | eng | |
dc.publisher | Springer | |
dc.relation.ispartof | Intelligent Computer Mathematics | en |
dc.relation.ispartofseries | Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence) | en |
dc.subject | Proof automation | en |
dc.subject | Equivalence | en |
dc.subject | Equality | en |
dc.subject | Proof by reflection | en |
dc.subject | Correct-by-construction software | en |
dc.subject | Type-driven development | en |
dc.subject | QA75 Electronic computers. Computer science | en |
dc.subject | QA76 Computer software | en |
dc.subject | TA Engineering (General). Civil engineering (General) | en |
dc.subject | T-NDAS | en |
dc.subject | BDC | en |
dc.subject | R2C | en |
dc.subject | ~DC~ | en |
dc.subject.lcc | QA75 | en |
dc.subject.lcc | QA76 | en |
dc.subject.lcc | TA | en |
dc.title | Automatically proving equivalence by type-safe reflection | en |
dc.type | Conference item | en |
dc.contributor.sponsor | EPSRC | en |
dc.contributor.institution | University of St Andrews. School of Computer Science | en |
dc.identifier.doi | 10.1007/978-3-319-62075-6_4 | |
dc.identifier.grantnumber | EP/N024222/1 | en |
This item appears in the following Collection(s)
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.