A New Look at Generalized Rewriting in Type Theory
DOI:
https://doi.org/10.6092/issn.1972-5787/1574Abstract
Rewriting is an essential tool for computer-based reasoning, both automated and assisted. This is because rewriting is a general notion that permits modeling a wide range of problems and provides a means to effectively solve them. In a proof assistant, rewriting can be used to replace terms in arbitrary contexts, generalizing the usual equational reasoning to reasoning modulo arbitrary relations. This can be done provided the necessary proofs that functions appearing in goals are congruent with respect to specific relations. We present a new implementation of generalized rewriting in the Coq proof assistant, making essential use of the expressive power of dependent types and the recently implemented type class mechanism. The new rewrite tactic improves on and generalizes previous versions by natively supporting higher-order functions, polymorphism and subrelations. The type class system inspired by Haskell provides a perfect interface between the user and the tactic, making it easily extensible.Downloads
Published
2010-01-04
How to Cite
Sozeau, M. (2009). A New Look at Generalized Rewriting in Type Theory. Journal of Formalized Reasoning, 2(1), 41–62. https://doi.org/10.6092/issn.1972-5787/1574
Issue
Section
Articles
License
Copyright (c) 2009 Matthieu Sozeau
Copyrights and publishing rights of all the texts on this journal belong to the respective authors without restrictions.
This journal is licensed under a Creative Commons Attribution 3.0 Unported License (full legal code).
See also our Open Access policy