An Extension of Equivalence-based Rewriting
暂无分享,去创建一个
Previous work by the authors generalized conditional rewrit- ing from the use of equalities to the use of arbitrary equivalence relations. This (classic) equivalence-based rewriting automates the replacement of one subterm by another that may not be strictly equal to it, but is equivalent to it, where this equivalence is determined automatically to be sufficient at that subterm occurrence. We extend that capability by introducing patterned congruence rules in the ACL2 theorem prover, to provide more control over the occurrences where such a replacement may be made. This extension enables additional automation of the rewriting process, which is important in industrial-scale applications. However, be- cause this feature is so new (introduced January, 2014), we do not yet have industrial applications to verify its utility, so we present a small example that illustrates how it supports scaling to large proof efforts.
[1] Peter V. Homeier. A Design Structure for Higher Order Quotients , 2005, TPHOLs.
[2] Bishop Brock,et al. Rewriting with Equivalence Relations in ACL2 , 2008, Journal of Automated Reasoning.
[3] Panagiotis Manolios,et al. Computer-Aided Reasoning: An Approach , 2011 .
[4] Brian Huffman,et al. Lifting and Transfer: A Modular Design for Quotients in Isabelle/HOL , 2013, CPP.
[5] Cyril Cohen. Pragmatic Quotient Types in Coq , 2013, ITP.