形式语义学 Formal Semantics

Slides:



Advertisements
Similar presentations
〈媽媽的手〉 國二甲 蔡于均. 一.題旨 作者寫本文時,已身為人母,深深體會 到一個母親持家的辛勞,自然想起 了母親,以「媽媽的手」為題,歌 頌中國傳統婦女堅忍耐勞的美德, 並表達對母親的懷念。
Advertisements

版 画 制 作版 画 制 作 版 画 种 类版 画 种 类 版 画 作 品版 画 作 品 刘承川.
撒哈拉以南的非 洲. 学习目标(一) 1. 了解撒哈拉以南的非 洲的自然环境特点。 2. 记住撒哈拉以南的非 洲独特的人文特点。
组长:肖志远 组员:王嘉乐 翁家程 冯乐微 陶天皓 赵泽昊 “读书有味”主题阅读 阅读书目: 《西游记》 研究主题: 孙悟空的性格特点.
团队指导老师:李春虎 团队核心:黄跃民 团队成员:廖育人 朱蒙 郁倩.  姓名:黄跃民  专业:印度尼西亚语  学历:研究生  学位:博士  主要承担课程:高级印 尼语,印尼语泛读,印 尼文化  姓名:郁倩  专业:印度尼西亚语  学历:本科  学位:学士  主要承担课程:基础印.
yyx1 按鍵換頁 音樂:俄羅斯田野! 按鍵換頁 音樂:俄羅斯田野! yyx2 由於媒體的片面性,國內很多人對俄羅斯的印象是貧窮,酗酒,黑社會 …… 我有 幸在那裏生活過一段時間,考察了一些城市,我感覺俄羅斯人生活的很悠閒,甚 至很幸福。
第三單元 我的世界宇宙大 教學設計:黃筱晶. 一、使用說明 (一) 本教學設計核心概念為「生涯發展」,共 四節課, 160 分鐘。 (二) 為了讓小學教學現場更加適用,教師可選 擇連續實施四節課,或彈性選擇其中一節 課或二節或三節課實施。 (三)四節課都進行是最完整的,但若因時間不允 許只進行其中一節課或二節或三節課實施,
建筑构成基础 —— 平面构成 构成的概念  构成:在艺术领域中,构成是一种造型概 念,即把一个以上单元或元素组合成为一 个新的单元。主要研究造型元素分解、组 合、变化的规律,从而创造新的形式。
頭皮處理 和 頭髮保養.
荒岛求生 ——浅谈鲁滨逊的生存智慧.
【我真歡喜來讚美你】 1.睜開眼睛 感覺好熟悉 在你面前 一切都不會在意.
我見我思我實踐 品德教育實踐分享.
讲解:赵玲 PPT制作:祝菁菁 材料搜集:石岩 田甜
引 言 亚里士多德 法治应该包含两种意义:已成立的法律获得普遍的服从,而大家所服从的法律又应该本身是制定得良好的法律。
课程名称 《性别决定的方式》 生物学 学 科 年 级 八年级 学校名称 辽中县冷子堡九年一贯制学校 姓 名 张贵武.
12/06 主日證道: 『有使命的人生、 有使命的教會』
培训师——薛老师.
组长:蒋琪炎 PPT制作:蒋琪炎 发言人:刘熠星 组员:邱丽芸、陈越 张园园
班级: 组长: 组员:.
幼兒教材教法期末報告 組別:第四組 繪本名稱:獅 子 大 開 口 組員: 張惠雯 王靖雯
页眉 勾画课堂教学的“蓝图” ——新课程理念下的教学设计 上海市复旦中学 孙宗良.
2016年道德讲堂 慈善知识讲座 主讲人:田睿. 2016年道德讲堂 慈善知识讲座 主讲人:田睿.
莫做铁棒只用力 常学钥匙勤用心 ——苏州一模调研试卷讲评 张家港市中学政治组 张丽艳 2015年4月3日.
淮阴师范学院学生参保材料 后勤管理处 宣.
注:本PPT资料来自教科书、百度图片和实验课图片
日期 星期一 星期二 星期三 星期四 星期五 (12月01日) (12月02日) (12月03日) (12月04日) (12月05日)
鳥兒鳥兒帶我飛 一年級溼地課程第三節.
一、平面点集 定义: x、y ---自变量,u ---因变量. 点集 E ---定义域, --- 值域.
個人衛生-口腔衛生之 教學模組設計範例 臺北縣大豐國小 輔導主任何文雀.
神秘 浩瀚 美丽 十一月阅读领航 —— 的 科学 蜕变 注:仅从我们的角度.
“武侠魅力”阅读领航 六(8)班第二小组.
“淡雅浓香 中国风尚” 山东低度浓香白酒整合传播侧记
请说出牛顿第一定律的内容。.
2014年度部级“优课”评审 评审流程、评价指标及操作细则的解读 绍兴市教育教学研究院 陆一黎.
民俗风情主题阅读 范峻昊小组.
安徽工商职业学院 文明班级申请材料 14会计电算化3班 PPT制作:吴优 PPT演讲:吴优 汪慧 蒋璐.
組長:41蘇珮茵(報告) 組員:4朱思璇36蔡念芸(PPT製作) 15徐嫚璟25黃奕瑄(查資料) 3謝文豪22陳玟伶(圖片&影片)
校外体育教育工作者的素养 一、校外教育育人价值与意义 二、校外教育工作者的任务 三、校外体育教育的基本特征 四、校外体育教育工作者的基本素养
主題:家暴 組員: 莊小萱、林昀儒、劉思妤、周昱昀 林幸儀、盧楊紅、蔡佳璇、陳玉琴 指導老師:吳麗雲老師
社会服务机构的功能 —— 以11.15静安大火后续事件为例 资料收集:王小可 车铭洁 肖轶 PPT制作:车铭洁 王小可 宣讲人: 车铭洁.
“六人行”财务 学习小组.
2015年9月29日 声明: 此PPT内容根据我市深化中小学教师职称制度改革试点方案有关文件编辑而成,如与文件内容不符,请以文件表述为准。
西游记 之 兵器.
中学生日常饮食搭配 研究报告 高一10班.
管理学基本知识.
模块一 物流客户服务工作体验 任务二 认识物流客户服务的重要性.
国培计划(2014)示范性远程培训项目 ——幼儿园骨干教师远程培训 第五期简报 (广西幼教14班)    班级Q群号: 主编:廖寿兰 2014年12月7日.
滁州学院首届微课程教学设计竞赛 课程名称:高等数学 主讲人:胡贝贝 数学与金融学院.
输入用户名 输入密码 也可以注册.
生命之光天使服务队 ——孕产知识宣教与爱心医疗服务 三下乡暑期活动PPT答辩 14助产专业 张嘉怡.
形式化验证的非正式介绍 南京大学计算机系 赵建华.
第四节 重积分的应用 一、平面区域的面积 二、立体体积 三、曲面的面积 四、物体的质量 五、物体的质心 六、物体的转动惯量 七、物体的引力
妊 娠 期 婦 女 的 護 理 第2小組.
教研员引领下的“吉林省教育资源公共服务平台”规模化推进
航空服务沟通与语言艺术 非语言沟通的含义 主讲人:李敬华.
函数式编程语言、编程和程序验证 计算机科学与技术学院 陈意云
走进古代寓言故事 《人有亡鈇者》+《杯弓蛇影》 城南中心小学 吴景双.
兒童及少年保護/ 兒少高風險家庭宣導 公誠國小輔導處 中華民國104年9月23日 本PPT檔由雲林縣政府社會處社會工作科陳琬晴 社工督導提供
氣候變遷對南台灣降雨造成之影響 研究背景 結果與討論 研究方法 結論 朱振豪1 、彭康豪1 、莊煌甲1 、邱俊彥2,* 研究目的
第七章 幼儿园教学活动 幼儿园教育活动:生活活动、游戏活动、教学活动.
中学生心理承受能力研究 结题报告 高一7班.
对程序进行推理的逻辑 计算机科学导论第二讲
拾貳、 教育行政 一、教育行政的意義 教育行政,可視為國家對教育事務的管理 ,以增進教育效果。 教育行政,乃是一利用有限資源在教育參
課程銜接 九年一貫暫行綱要( )  九年一貫課程綱要( ) 國立台南大學數學教育系 謝 堅.
2.4 二元一次方程组的应用(1).
港口股份有限公司东源分公司 降本增效 部门:机械队流机二班 发言人:程广州.
第7章 程序验证 内容概述 程序逻辑:描述和论证程序行为的逻辑 从程序到定理 从定理到证明 循环不变式的推断
课前注意 课前注意 大家好!欢迎加入0118班! 请注意以下几点: 1.服务:卡顿、听不清声音、看不见ppt—管家( ) 2.课堂秩序:公共课堂,勿谈与课堂无关或消极的话题。 3.答疑:上课听讲,课后答疑,微信留言。 4.联系方式:提示老师手机/微信: QQ:
第八章 服務部門成本分攤.
用加減消去法解一元二次聯立方程式 台北縣立中山國中 第二團隊.
Presentation transcript:

形式语义学 Formal Semantics 本PPT参考了金英老师的课程内容 形式语义学 Formal Semantics 2019/4/26

2019/4/26

操作语义学 代数语义学 公理语义学 程序设计语言 形式语义 指称语义学 函数式描述方法 理论基础 执行 公理语义学 程序设计语言 形式语义 代数 逻辑 关系 模型 功能 指称语义学 函数式描述方法 理论基础 2019/4/26

程序设计语言 编译原理 程序设计语言 形式语义 离散数学 语义形式化 语法形式化 程序设计语言 形式语义 理论基础 离散数学 2019/4/26

程序设计语言理解 程序设计方法 抽象能力 程序设计语言 形式语义 软件开发方法 Formal Method 程序设计语言理解 程序设计方法 抽象能力 程序设计语言 形式语义 Formal Verification 软件开发方法 Formal Specification 2019/4/26

前言:“形式语义学”概述 What? 分类:从不同的角度研究程序的含义 形式语义学:给出对(形式)语言及其程序采用形式系统方法进行语义定义的方法。 分类:从不同的角度研究程序的含义 操作语义学(执行) 指称语义学(功能) 公理语义学(逻辑) 代数语义学(代数,抽象数据结构) 其他 2019/4/26

Lambda演算 2019/4/26

关于Lambda演算 表达式 自由变量(计算一个表达式的自由变量集合) 替换(计算) 变换规则 (三种变换) 归约 范式(性质及其计算) 2019/4/26

关于Lambda演算 表达式 < 表达式> ::= <变量名> 一个表达式由变量名、抽象符号,.以及括号等符号构成, 其语法为: < 表达式> ::= <变量名> | < 表达式> < 表达式> |  <变量名>.< 表达式> | (< 表达式> ) 2019/4/26

关于Lambda演算 变换规则 (三种变换) 变换:设E是表达式,x是变量,则称下面变换为α变换(其中y不在 FV( x.E )中) x.E ------〉 y.[y/x] E 变换:设 (x.E)和E0为表达式,则称下面变换为β变换(称β变换规则的左部表达式为β基) (x.E)E0 E[E0/x] 变换:假设x.Mx是一个表达式,且满足条件xFV(M),则称下面变换为η变换: (x.M x) M    2019/4/26

关于Lambda演算 自由变量(计算一个表达式的自由变量集合) 替换(计算) 表达式E中变量名x的一次出现称为自由出现,如果E中任何一个形如x. E’的子表达式包含该出现; y (x y. y (x. x y ) ) (z (x. x x) )的自由变量集合{y, z} 替换(计算) 设E和E0是表达式,x是变量名,替换E[E0/x]是表示 把E中的所有x的自由出现替换成E0。 需要明确变量的自由出现 计算规则 ( y. x+y) [y/x] = z. y+z 2019/4/26

关于Lambda演算 范式(性质及其计算) 假设E是一个表达式,且其中没有任何一个归约基,则称该表达式为范式。 范式的存在性:如果有范式,则最左归约法一定能求出范式。 范式的唯一性:如果有范式则在变换下一定唯一。 2019/4/26

函数式描述方法 2019/4/26

关于函数式描述方法 函数式语言的特点 函数式语言的组成部分 用函数式语言来描述算法(解释器) 引用透明性;高阶性;模式匹配;并行性; 程序结构 类型及其操作 表达式 用函数式语言来描述算法(解释器) 函数空间 函数定义(方程) 2019/4/26

关于函数式描述方法 函数式语言的组成部分 程序结构 类型及其操作 函数定义 目标表达式 标准类型 - 集合类型 幂集类型 - 元组类型 标准类型 - 集合类型 幂集类型 - 元组类型 联合类型 - 序列类型 函数类型 - 递归类型 抽象类型 2019/4/26

关于函数式描述方法 函数式语言的组成部分 表达式 非let表达式(常量,变量,表达式,条件表达式,以及各种操作) let表达式 let x = E’ in E letrec表达式 letrec x = E1 in E 在表达式中增加类型说明 2019/4/26

关于函数式描述方法 用函数式语言来描述算法 函数空间:INT*  INT  BOOL 函数定义(方程) lookup L a = (null L→FALSE, a=hd L→TRUE,lookup (tl L) a ) 2019/4/26

操作语义学 2019/4/26

2019/4/26

操作语义学 三种方法 从实现的角度,通过程序的执行过程来定义程序设计语言的语义; 解释器方法 抽象机 归约方法(归约系统) 2019/4/26

操作语义学 抽象机方法 2019/4/26

主要思想: 抽象机的定义包括两个部分: 针对如下语言结构给出抽象机定义 针对计算机语言,定义一个抽象机来解释执行将该语言的程序; 抽象机组成的抽象定义 – 状态结构 执行机制的形式定义 -- 状态转换规则 针对如下语言结构给出抽象机定义 表达式 语句 输入输出 声明 Block 过程/函数 2019/4/26

基于抽象机的操作语义的定义过程 状态结构(形式定义) 初始状态和终止状态 状态转换规则 栈(保存中间计算结果) 语句控制区 表达式控制区 静态环境区 动态环境去 堆区(保存中断现场) 初始状态和终止状态 状态转换规则 针对每个语法结构给出执行过程 状态到状态的映射 2019/4/26

操作语义学 归约方法 2019/4/26

归约的对象为格局(configuration),归约的结果也是格局; 初始格局和终止格局; 归约方法的主要思想: 一种结构化方法(只依赖于成分的结果) 根据语言的成分给出归约系统的方法 归约系统是由以下部分组成的: 一组归约公理 一组推理规则,称为归约规则 归约的对象为格局(configuration),归约的结果也是格局; 初始格局和终止格局; 2019/4/26

基于归约方法的操作语义的定义过程 格局的形式:<comp1,…, compn>,通过模式给出 初始格局和终止格局 一组归约公理: configure1  configure2 一组归约规则形: A1,……,An 条件公理 configure1  configure2 推导出的公理 其中A1,……,An是关于configure1中成分的公理,而configure2中的成分只能从configure1和A1,……,An中的结果格局中得到; 2019/4/26

2019/4/26

2019/4/26

2019/4/26

2019/4/26

2019/4/26

指称语义学 2019/4/26

2019/4/26

指称语义学 直接指称语义 两个方面 定义指称语义(五个部分) 给出具体语法元素的指称语义解释(语义函数) 完整语言 某个语法单位 根据该语法元素所属的语法域的具体的语义指派函数; 确定已知条件(静态环境,动态环境) 给出语义解释(函数;值……) 2019/4/26

直接指称语义 主要原理: 从功能角度出发,对每一个语法单位(如程序、声明、语句、表达式、变量、整数、标识符等),给出其功能的严格形式化描述,即定义功能函数; 功能函数是描述一个语法单位的语义,因此称为语义函数(语义物); 本质上是建立语法域到语义函数域的映射; 语法域 语义函数域 语义指派函数 2019/4/26

直接指称语义 直接指称语义的定义包括: 语法域 (Syntax Domain) 抽象语法 (Abstract Syntax) 语义域 (Semantic Domain) 语义函数 (Semantic Functions) 预定义函数 (Predefined Functions) 关键:掌握好每个语法单位的功能; 语言不一样,相同的语法单位其语义也不尽相同; 2019/4/26

过程式语言的直接指称语义 语法域(根据语言定义应给出具体定义) 程序 声明(还可以细化) 语句 Block 表达式 常量 类型 2019/4/26

过程式语言的直接指称语义 语义域(根据语言定义应给出具体定义) 环境域 静态环境 动态环境 值域 存储域 2019/4/26

过程式语言的直接指称语义 语义函数 针对每个语法单位语义指派函数空间 针对每个语法单位定义语义指派函数 针对每个语法单位中的每种语法元素,定义相应的语义方程 2019/4/26

公理语义学 2019/4/26

主要思想 公理语义学是基于谓词逻辑中的逻辑归纳方法,一个程序的语义是建立在每次程序运行时都成立的关于变量的值之间关系的断言; 定义过程 为计算机语言建立一个公理系统公理系统由两部分组成: (1)一组公理;(2)一组推理规则 局限性 2019/4/26

2019/4/26

2019/4/26

2019/4/26

2019/4/26

2019/4/26

Hoare 公理系统 2019/4/26

公理和命题的形式:{ P } S { Q } 推理规则的形式 Hoare公理系统由五条规则 F1,…… , Fn F 赋值公理 复合推理规则 条件推理规则 循环推理规则 推论规则 F1,…… , Fn F 2019/4/26

最弱前置条件和最强后置条件 2019/4/26

最弱前置条件的计算规则 求WP(S,q) 为什么没有给出while语句的WP求法? WP(skip,q) = q; WP(x:=e,q) = q[e/x]; WP(s1;s2,q) = WP(s1,WP(s2,q)); WP(if(e,s1,s2),q) = (e  WP(s1,q))  (e  WP(s2,q)) 为什么没有给出while语句的WP求法? 比较复杂 2019/4/26

最强后置条件的计算规则 求SP(p,S) SP(p,skip) = p; SP(p,x:=e) = x’(p[x’/x]  x=e[x’/x]); SP(p,s1;s2) = SP(SP(s1,p),s2); SP(p,if(e,s1,s2)) = (SP(pe,s1)  SP(pe,s2)) 2019/4/26

程序正确性证明 2019/4/26

程序正确性证明 程序正确性证明 目的 采用的方法 (应用Hoare公理系统,SP,WP) 难点:循环不变式 证明验证公式{p}S{q}成立 Forward Backward Meet in the middle 难点:循环不变式 2019/4/26

求循环不变式过程 步骤: 从循环语句出发,手工找出一些循环不变式; 然后将它们合取,从而构造出更强的循环不变式; 检查强度,直至找到合适的循环不变式; 2019/4/26