收藏本站
收藏 | 手机打开
二维码
手机客户端打开本文

递归问题循环不变式开发新策略的研究与应用

杨庆红  
【摘要】: 软件形式化是提高软件可靠性和生产效率、实现软件自动化的有效途径。循环不变式在软件形式化方法中占有十分重要的地位,它是理解、证明和推导算法程序的基础和关键。因此目前许多算法和程序设计的著作和教材中,均广泛地使用了循环不变式的概念和技术。 然而循环不变式的理论和开发技术尚很不完备,这直接影响了循环不变式在算法程序形式化开发中作用的发挥,导致大量复杂算法程序缺乏令人信服的推导和证明,使得许多计算机科学工作者对Dijkstra,Hoare和Gries等著名计算机科学家积极倡导的算法程序形式化开发方法的可行性和实用性产生了怀疑。 为了克服已有循环不变式开发技术存在的局限性,薛锦云教授在两个国家自然科学基金课题“若干新的算法程序设计和证明方法研究”和“实用的软件形式化方法及其开发工具的研究”的资助下,对循环不变式的理论和方法进行了系统的研究,提出了关于循环不变式的新定义和新的开发策略,并在此基础上形成了一种实用的算法程序形式化开发方法(PAR方法)及其开发环境,在复杂算法程序及软件形式化开发中发挥了重要作用。本文是PAR方法及其开发环境研究的继续,也是薛锦云当前主持承担的国家自然科学基金项目“基于PAR方法的算法设计形式化和自动化研究”的重要研究内容。 本文研究的主要目标是利用薛教授在开发循环不变式的新策略中提出的递归定义思想,探索一类递归定义问题的循环不变式开发技术,并应用于涉及组合数据结构的复杂算法程序的形式化推导和证明。具体研究成果如下: 1.进一步深入研究了循环不变式在算法程序形式化方法中的地位和作用; 2.对现有的循环不变式开发技术进行了分析和比较,剖析了其难以实用的原因; 3.基于现有循环不变式开发技术中的递归定义思想,提出了开发复杂递归问题循环不变式的两种新策略; 4.利用抽象程序设计语言Apla精确描述了6个典型树、图等问题的程序规约和求解算法程序,用上述提出的两种新策略开发了循环不变式,实现了严格的形式化推导或证明,并用PAR方法提供的算法程序自动转换系统将得到的Apla算法程序转换成对应的Delphi和C~(++)程序,均得到了正确的运行结果,大幅度地提高了这类复杂算法程序的可靠性和开发效率。 总之,本文得到的结果可应用于一类复杂算法程序的形式化推导和证明,方法简单,应用方便,为实现算法设计的形式化和自动化作出了有益的贡献。


知网文化
【相似文献】
中国期刊全文数据库 前20条
1 王晓东,吴英杰,傅仰耿,傅志祥;算法归纳设计策略与循环不变式[J];福州大学学报(自然科学版);2004年04期
2 姚朝灼;关于循环与循环不变式的讨论[J];福州大学学报(自然科学版);2001年S1期
3 王彩芬;程序正确性证明及循环不变式的寻找方法[J];甘肃科学学报;2000年03期
4 游晓明,刘升;试论循环不变式和囿界函数在循环研制中的地位和作用[J];湖北师范学院学报(自然科学版);1998年06期
5 行飞;一重循环结构的分类及其循环不变性质的讨论[J];内蒙古大学学报(自然科学版);1995年02期
6 李云清;分划递推法及其应用[J];计算机工程与应用;2001年17期
7 杨庆红,李云清;一种基于程序正确性证明理论的程序开发方法[J];计算机应用研究;2001年02期
8 杨淑群,吴文兵,丁树良;从集合论的角度分析循环不变式[J];吉林化工学院学报;2005年03期
9 李云清;基于算法框架的可重用部件设计与实现[J];计算机工程与应用;2001年23期
10 彭佳红,张军;程序的形式推导方法[J];吉首大学学报(自然科学版);2001年04期
11 康慕宁,胡正国,叶军;Petri网在程序正确性证明中的应用研究[J];西北工业大学学报;1996年01期
12 肖晓明;旷东林;蔡自兴;;单亲遗传算法种群初始化方法分析[J];电脑与信息技术;2009年04期
13 陈石坤;李舟军;;基于QBF的循环不变式构造技术[J];计算机工程与科学;2010年09期
14 杨庆红,罗坚;充分发挥循环不变式在程序设计课程教学中的作用[J];计算机时代;2005年11期
15 石海鹤;肖正兴;薛锦云;;循环不变式开发新策略及其应用[J];计算机工程与应用;2006年04期
16 石海鹤;揭安全;薛锦云;;0-1背包问题的一种新解法[J];计算机工程;2008年17期
17 化志章;杨庆红;揭安全;;树非递归遍历统一的新解法及其形式证明[J];江西师范大学学报(自然科学版);2010年02期
18 万松松;薛锦云;谢武平;;循环不变式开发技术研究[J];计算机工程与科学;2010年09期
19 冯玉琳;;程序自动证明技术[J];计算机科学;1981年02期
20 杨庆红,肖燕娟;一种高效的算法程序设计方法—PAR方法[J];计算机与现代化;2000年06期
中国重要会议论文全文数据库 前2条
1 刘润杰;申金媛;穆维新;;形式化开发非递归Koch曲线算法[A];计算机研究新进展(2010)——河南省计算机学会2010年学术年会论文集[C];2010年
2 石海鹤;薛锦云;;一种基于PAR的高可靠算法程序设计技术[A];第六届中国测试学术会议论文集[C];2010年
中国博士学位论文全文数据库 前4条
1 陈石坤;面向程序验证的循环不变式自动构造技术研究[D];国防科学技术大学;2010年
2 武斌;基于符号计算方法的程序验证技术研究[D];华东师范大学;2010年
3 葛琳;可信软件开发框架下的出具证明编译研究[D];中国科学技术大学;2007年
4 高鹰;代码迷惑及其语义研究[D];中国科学技术大学;2007年
中国硕士学位论文全文数据库 前10条
1 刘自恒;循环不变式生成方法研究与改进[D];南京大学;2012年
2 杨庆红;递归问题循环不变式开发新策略的研究与应用[D];江西师范大学;2003年
3 单学广;基于递推技术的算法程序设计方法的研究与应用[D];江西师范大学;2011年
4 万松松;循环不变式开发技术研究[D];江西师范大学;2008年
5 刘刚;指针程序的分析以及循环不变形状图的推断[D];中国科学技术大学;2011年
6 孙凌宇;PAR方法在组合数学问题中的应用研究[D];江西师范大学;2005年
7 罗晓娟;PAR方法在解信息学奥林匹克赛题中的应用研究[D];江西师范大学;2006年
8 康亮;Apla组合数据类型的Delphi实现[D];江西师范大学;2008年
9 黄海飞;PAR方法在构建高可靠管理信息系统中的应用研究[D];江西师范大学;2007年
10 廖卫兵;基于PAR方法下的组合数据类型的Delphi实现[D];华东师范大学;2008年
中国知网广告投放
 快捷付款方式  订购知网充值卡  订购热线  帮助中心
  • 400-819-9993
  • 010-62982499
  • 010-62783978