形式语义学 之论域基础.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
形式语义学 之论域基础

序列域的例子 例8:{1,2} * D1 = {1,2},1 ? 1,1 ?2,2 ?2 (整数上的?) 集合:D = {, 1,2,1,1,1,2,……} 关系: ?* : 自身: ?* , 1 ?*1 …. 元素个数相同的序列之间满足条件的关系有: 1 ?*2, 1,1 ?*1,2, 1,1 ?*2,2, 1,2 ?*2,2, 1,1,1?*2,2,2, 1,1,1 ?*1,2,1,…… 最小元: * * 论域构造符 (4)函数空间 (D?D’ , ?)定义如下: D?D’ = { f | ?d?D, f(d) = d’ ?D’}; 关系? :对于任意f,h ?[D ?D’], f?h,当且仅当?d ?D ,f(d) ?D? h(d) 简记为 [D?D’]或D?D’ 最小元 ?: ?d ?D , ?(d) = ?D ? * * 函数域的例子 例9:{1,2} ?BOOL D1 = {1,2},1 ? 1,1 ?2,2 ?2 (整数上的?) D2 = BOOL,false ?b false,false ?b true,true ?b true 集合:函数的集合,其中每个函数的定义域是D1,值域是D2;{f1, f2, f3, f4} f1 = {1 ? false, 2 ? false } f2 = {1 ? false, 2 ? true } f3 = {1 ? true, 2 ? false } f4 = {1 ? true, 2 ? true } 关系: ?f : 自身: f1 ?ff1 , f2 ?ff2 …. f ?fg: 应满足 f(1) ?f g(1) , f(2) ?f g(2),即f1?ff2,f1?ff3,f1?ff4,f2?ff4,f3?ff4 最小元: ? = f1 * * 论域表达式 语法定义 原始域是完全半序集,则论域表达式定义的集合仍然是完全半序集。 通常表示论域时就把关系省略掉了。 * * 论域表达式 ::= 原始域 | 论域表达式 ? 论域表达式 | 论域表达式 + 论域表达式 | 论域表达式 ? 论域表达式 | 论域表达式 * | ? 论域表达式 ? 论域举例 形式语义学研究的论域可以是数据域、字符域、布尔域、函数域、表域等,其中函数域也称函数空间最为复杂; 原始域是完全半序集,则论域表达式定义的集合仍然是完全半序集。 通常表示论域时就把关系省略掉了。 * * 基本域(原始域):INT,BOOL,[x,y]… 集合域:{a1,…,an}? {?} 元组域:INT ? BOOL 联合域:BOOL + REAL 序列域: (INT ? BOOL)* 函数域(函数空间):INT* ? INT ? BOOL 总 结 知识点: 基本概念 完全半序集 平坦集 论域及其构造符 任何一个集合可以扩展成平坦集,因此任何一个集合可以扩展成一个完全半序集; 论域理解为完全半序集; 通过论域构造符定义的仍然是完全半序集; 论域用于定义数据类型; * * * 形式语义学 Formal Semantics of Programming Languages 2011.09 内容回顾 形式语义学 什么是形式语义学? 形式语义学的分类; 程序设计语言的基本概念 语法和语义 不同程序设计范例及其特点 命令式语言不同结构的抽象语法定义 * * 形式语义学的分类 从不同角度研究程序的含义 操作语义:用机器模型语言来解释语言语义。即设定一个抽象机,用语言成分在该机器上的执行来解释语言成分的含义。(实现 或 执行) 指称语义:采用形式系统方法,用相应的数学对象对一个语言的语义进行注释。考虑每个语言成分的执行效果(数学对象-指称);(效果) 公理语义:把程序设计语言视为一个数学对象,建立它的公理系统,在此基础上对程序进行推理验证。从而使程序设计语言具有坚实的逻辑基础。(逻辑) 代数语义:采用代数的方法进行语义注释的方法。主要基于范畴论、类别代数理论、抽象数据类型;(数据和操作行为) * * 程序设计语言的基本概念 词法(lexeme) 定义语言所允许的单词的种类及其构成(spelling) 标识符,保留字,整数,实数等 语法(syntax) 定义程序所允许的语法结构(grammar) 表达式,语句,声明,函数等 语义(semantics) 定义语法结构正确的程序的含义(meaning) 重复声明,作用域,类型检查等 * * 第二章 函数式抽象描述方法 2.1 论

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档