A Coq Library of Sets for Teaching Denotational Semantics

Q4 Computer Science
Qinxiang Cao, Xiwei Wu, Yalun Liang
{"title":"A Coq Library of Sets for Teaching Denotational Semantics","authors":"Qinxiang Cao, Xiwei Wu, Yalun Liang","doi":"10.4204/EPTCS.400.6","DOIUrl":null,"url":null,"abstract":"Sets and relations are very useful concepts for defining denotational semantics. In the Coq proof assistant, curried functions to Prop are used to represent sets and relations, e.g. A ->Prop, A ->B ->Prop, A ->B ->C ->Prop, etc. Further, the membership relation can be encoded by function applications, e.g. X a represents a in X if X: A ->Prop. This is very convenient for developing formal definitions and proofs for professional users, but it makes propositions more difficult to read for non-professional users, e.g. students of a program semantics course. We develop a small Coq library of sets and relations so that standard math notations can be used when teaching denotational semantics of simple imperative languages. This library is developed using Coq's type class system. It brings about zero proof-term overhead comparing with the existing formalization of sets.","PeriodicalId":30085,"journal":{"name":"Electronic Proceedings in Theoretical Computer Science","volume":"36 7","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-04-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Electronic Proceedings in Theoretical Computer Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4204/EPTCS.400.6","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"Computer Science","Score":null,"Total":0}
引用次数: 0

Abstract

Sets and relations are very useful concepts for defining denotational semantics. In the Coq proof assistant, curried functions to Prop are used to represent sets and relations, e.g. A ->Prop, A ->B ->Prop, A ->B ->C ->Prop, etc. Further, the membership relation can be encoded by function applications, e.g. X a represents a in X if X: A ->Prop. This is very convenient for developing formal definitions and proofs for professional users, but it makes propositions more difficult to read for non-professional users, e.g. students of a program semantics course. We develop a small Coq library of sets and relations so that standard math notations can be used when teaching denotational semantics of simple imperative languages. This library is developed using Coq's type class system. It brings about zero proof-term overhead comparing with the existing formalization of sets.
用于指称语义学教学的 Coq 集合库
集合和关系是定义指称语义非常有用的概念。在 Coq 证明助手中,Prop 的卷曲函数用于表示集合和关系,例如 A ->Prop, A ->B ->Prop, A ->B ->C ->Prop 等。此外,成员关系也可以通过函数应用来编码,例如 X a 表示 X 中的 a,如果 X.A ->Prop:这对于为专业用户开发形式化定义和证明非常方便,但对于非专业用户,如程序语义学课程的学生来说,这使得命题更难阅读。我们开发了一个小型的集合和关系 Coq 库,以便在教授简单命令式语言的指称语义时使用标准数学符号。这个库是使用 Coq 的类型类系统开发的。与现有的集合形式化相比,它的证明期开销为零。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
CiteScore
1.10
自引率
0.00%
发文量
295
审稿时长
21 weeks
×
引用
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学术官方微信