Towards Correctness of Program Transformations Through Unification and Critical Pair Computation

UNIF Pub Date : 2010-12-21 DOI:10.4204/EPTCS.42.4
Conrad Rau, M. Schmidt-Schauß
{"title":"Towards Correctness of Program Transformations Through Unification and Critical Pair Computation","authors":"Conrad Rau, M. Schmidt-Schauß","doi":"10.4204/EPTCS.42.4","DOIUrl":null,"url":null,"abstract":"Correctness of program transformations in extended lambda calculi with a contextual semantics is usually based on reasoning about the operational semantics which is a rewrite semantics. A successful approach to proving correctness is the combination of a context lemma with the computation of overlaps between program transformations and the reduction rules, and then of so-called complete sets of diagrams. The method is similar to the computation of critical pairs for the completion of term rewriting systems. We explore cases where the computation of these overlaps can be done in a first order way by variants of critical pair computation that use unification algorithms. As a case study we apply the method to a lambda calculus with recursive let-expressions and describe an effective unification algorithm to determine all overlaps of a set of transformations with all reduction rules. The unification algorithm employs many-sorted terms, the equational theory of left-commutativity modelling multi-sets, context variables of different kinds and a mechanism for compactly representing binding chains in recursive let-expressions.","PeriodicalId":164988,"journal":{"name":"UNIF","volume":"40 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-12-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"UNIF","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4204/EPTCS.42.4","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5

Abstract

Correctness of program transformations in extended lambda calculi with a contextual semantics is usually based on reasoning about the operational semantics which is a rewrite semantics. A successful approach to proving correctness is the combination of a context lemma with the computation of overlaps between program transformations and the reduction rules, and then of so-called complete sets of diagrams. The method is similar to the computation of critical pairs for the completion of term rewriting systems. We explore cases where the computation of these overlaps can be done in a first order way by variants of critical pair computation that use unification algorithms. As a case study we apply the method to a lambda calculus with recursive let-expressions and describe an effective unification algorithm to determine all overlaps of a set of transformations with all reduction rules. The unification algorithm employs many-sorted terms, the equational theory of left-commutativity modelling multi-sets, context variables of different kinds and a mechanism for compactly representing binding chains in recursive let-expressions.
从统一和临界对计算探讨程序变换的正确性
在具有上下文语义的扩展lambda演算中,程序转换的正确性通常基于对操作语义的推理,而操作语义是一种重写语义。证明正确性的一种成功方法是将上下文引理与程序转换和约简规则之间的重叠计算结合起来,然后是所谓的图的完整集。该方法类似于项重写系统补全的临界对的计算。我们探讨了这些重叠的计算可以通过使用统一算法的关键对计算的变体以一阶方式完成的情况。作为一个案例研究,我们将该方法应用于具有递归let表达式的lambda演算,并描述了一个有效的统一算法,以确定具有所有约简规则的一组变换的所有重叠。统一算法采用多排序项、左交换性方程理论建模多集、不同类型的上下文变量和一种用递归let-表达式紧凑表示绑定链的机制。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信