- 1
- 0
- 约9.07千字
- 约 25页
- 2019-07-02 发布于天津
- 举报
中国科大安全语言程序验证器的研发报告人陈意云中国科学技术大学程序验证器简介对一个文件称为模块验证的数据流程图对各模块连接验证的有用信息语法分析和类型检查代码和标注的中间表示代码及其注释中的标注验证条件验证条件生成器自动定理证明器验证条件及其证明情况各验证条件是否得证有助于排错的信息用户界面工具简单的验证实例二分查找代码白色标注绿色初步的辅助排错功能改动代码原是初步的辅助排错功能改动代码原是发现断言证明不了初步的辅助排错功能辅助排错信息红色的和分别表示相关断言在蕴涵式后件的和个分支中未能证明初步的
* * * * * * * * * * * * * * * * * * 中国科大 安全C语言程序验证器的研发 报告人:陈意云 中国科学技术大学 0551 yiyun@ /~yiyun/ 程序验证器简介 对一个.c文件(称为模块)验证的数据流程图 对各模块连接 验证的有用信息 语法分析和 类型检查 代码和标注 的中间表示 代码及其注 释中的标注 验证条件 验证条件 生成器 自动定理 证明器 验证条件及其证明情况 1. 各验证条件是否得证 2. 有助于排错的信息 用户界面 工具 简单的验证实例:二分查找 int m = 100; typedef int array[100]; array a; /*@requires m==100(\forall integer n:[0..m-2]. a[n]a[n+1]); ensures m == 100 -1 = \result \result = m-1 (\result = 0 a[\result] == val || \result == -1 (\forall integer n:[0.. m-1]. a[n] != val)); */ int bsearch(int val){ int i, j, k; i = 0; j = m-1; /*@loop invariant m==100 0 =i= m -1= j =m-1 (\forall integer n:[0..m-2].a[n] a[n+1]) (j-i = -1 (\forall integer n:[j+1..m-1]. val a[n]) (\forall integer n:[0..i-1]. val a[n]) || j-i == -2 k == i-1 val == a[k]) ; */ while(i = j) { k = i + (j - i)/2; if(val = a[k]) j = k -1; if(val = a[k]) i = k + 1;} if(j - i == -1) k = -1; return k; } * 代码:白色,标注:绿色 初步的辅助排错功能 int m = 100; typedef int array[100]; array a; /*@requires m==100(\forall integer n:[0..m-2]. a[n]a[n+1]); ensures m == 100 -1 = \result \result = m-1 (\result = 0 a[\result] == val || \result == -1 (\forall integer n:[0.. m-1]. a[n] != val)); */ // 改动代码 int bsearch(int val){ int i, j, k; i = 0; j = m-0; // 原是j = m-1 /*@loop invariant m==100 0 =i= m -1= j =m-1 (\forall integer n:[0..m-2].a[n] a[n+1]) (j-i = -1 (\forall integer n:[j+1..m-1]. val a[n]) (\forall integer n:[0..i-1]. val a[n]) || j-i == -2 k == i-1 val == a[k]) ; */ while(i = j) { k = i + (j - i)/2; if(val = a[k]) j = k -1; if(val = a[k]) i = k + 1;} if(j - i == -1) k = -1; return k; } * 初步的辅助排错功能 int m = 100; typedef int array[100]; array a; /*@requires m==100(\forall integer n:[0..m-2]. a[n]a[n+1]); ensures m == 100 -1 = \result \result = m-1
您可能关注的文档
- 中央与地方科技事权与支出责任划分的考虑-中国科学技术发展战略.pdf
- 国立台中高农98学下学期有机农业毕业考试试题.doc
- 国立大甲高工建筑科测量实习平时测验试题卷.doc
- 国立宜兰大学园艺系九十二第一次系教评会议记录.doc
- 国立屏东高级工业职业学校选手培训要点.doc
- 国立成功大学光电工程学系-98年新生e-mail.ppt
- 中小学生教育工作者的超基本55条唯一被美国总统接见过三次的小学.ppt
- 国际政治经济学-北京大学国际关系学院.doc
- 国际环保纺织协会推出新版Oeko-TexStandard100生态认证标准.doc
- 国际足联世界杯-阜阳五中.ppt
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
最近下载
- (高清版)-B-T 30146-2023 安全与韧性 业务连续性管理体系 要求.pdf VIP
- 安徽师大附中2026届高二化学第一学期期末综合测试试题含答案.doc
- 化学元素读音及顺口溜大全.doc VIP
- 成都市固体废弃物卫生处置场三期工程环评报告书小.pdf VIP
- 新编英语教程4(第三版)李观仪习题答案.pdf
- (一模)潍坊市2026届高三高考模拟考试物理试卷(含标准答案).pdf
- 2026 年人教版八年级数学下册期末综合测评试卷(附答案可下载).docx VIP
- 2025年铁路局招聘笔试真题及答案.docx VIP
- 2025年新疆中考物理试题(含答案详解)原卷.pdf
- Midea 美的 ET1065QL-01SE嵌入式电烤箱 说明书.pdf
原创力文档

文档评论(0)