期刊文献+
共找到12篇文章
< 1 >
每页显示 20 50 100
逐步求精的一种模型 被引量:7
1
作者 钟珞 管昌生 +1 位作者 赵愚 潘昊 《武汉工业大学学报》 CSCD 1995年第3期52-57,共6页
提出一种支持程序开发的结构化方法.该方法以一种简单的问题分解策略为基础,比Wirth-Dijkstra的自顶向下逐步求精方法更利于面向目标的程序设计.由该方法可知,一个程序可经一系列求精而开发出来,每一步求精都能为相... 提出一种支持程序开发的结构化方法.该方法以一种简单的问题分解策略为基础,比Wirth-Dijkstra的自顶向下逐步求精方法更利于面向目标的程序设计.由该方法可知,一个程序可经一系列求精而开发出来,每一步求精都能为相应的最弱前置条件序列建立后置条件.这种策略使情况分析减少到极限,简化了结构化程序的证明,并保证了程序结构和数据结构之间的对应. 展开更多
关键词 面向目标 后置条件 软件开发 逐步求精
原文传递
一种基于符号执行的测试用例生成方法
2
作者 郑华利 刘钊远 田野 《计算机与数字工程》 2019年第9期2327-2331,共5页
针对符号执行中存在的路径爆炸问题,提出一种冗余路径删除方法,该方法利用Hoare逻辑中的后置条件引导符号执行以生成有效的测试用例。首先利用最弱前置条件来计算已探索的路径,然后通过后置条件引导符号执行以识别程序中多个共享的路径... 针对符号执行中存在的路径爆炸问题,提出一种冗余路径删除方法,该方法利用Hoare逻辑中的后置条件引导符号执行以生成有效的测试用例。首先利用最弱前置条件来计算已探索的路径,然后通过后置条件引导符号执行以识别程序中多个共享的路径后缀,并在测试用例生成时进行消除。最后通过对多个基准程序进行实验,结果表明论文方法在一定程度上能够减少程序的路径探索数目和执行时间,削弱了符号执行中的路径爆炸问题。 展开更多
关键词 符号执行 路径爆炸 后置条件 最弱前置条件
下载PDF
相关路径静态分析中协同式逆向推理方法 被引量:5
3
作者 郭曦 王盼 《软件学报》 EI CSCD 北大核心 2015年第1期1-13,共13页
相关路径生成,是程序动态分析中的一种重要方法.通过对目标执行路径的获取和分析来生成与其相关的近邻执行路径,在程序行为特征分析、编译优化和调试等研究方向有重要的作用.现有的方法主要通过改变路径节点序列来生成近邻的路径集合,... 相关路径生成,是程序动态分析中的一种重要方法.通过对目标执行路径的获取和分析来生成与其相关的近邻执行路径,在程序行为特征分析、编译优化和调试等研究方向有重要的作用.现有的方法主要通过改变路径节点序列来生成近邻的路径集合,由于缺乏关键节点的路径引导信息,导致生成大量冗余或者无效的路径集合.提出采用协同式逆向分析的近邻路径生成方法,针对目标路径的后置条件,采用逆向符号分析方法产生程序各个基本块的前置条件作为执行路径的引导信息.同时,通过调整距离因子k的取值,可以有针对性地生成与目标路径的编辑距离不超过k的近邻路径集合.实验结果表明:与现有方法相比,该方法在准确性和效率方面有明显的优势. 展开更多
关键词 逆向分析 近邻路径 最弱前置条件 符号执行
下载PDF
基于设计演算的形式化用例分析建模框架 被引量:4
4
作者 陈鑫 李宣东 《软件学报》 EI CSCD 北大核心 2008年第10期2539-2549,共11页
提出一种形式化用例分析建模框架,引入类图、用例顺序图、用例状态图、功能规约函数和系统不变式从多个角度为需求建模.通过定义这些视图的形式化语义,为需求的各个方面定义了准确的形式化描述.利用该框架,可以从方法的交互行为规约和... 提出一种形式化用例分析建模框架,引入类图、用例顺序图、用例状态图、功能规约函数和系统不变式从多个角度为需求建模.通过定义这些视图的形式化语义,为需求的各个方面定义了准确的形式化描述.利用该框架,可以从方法的交互行为规约和功能规约合成描述方法全部行为的全规约;也可以定义用例模型的性质,并通过设计演算中的证明来分析验证这些性质.作为应用,研究了检查用例模型一致性的规则.给出一个实例说明建模框架的可行性. 展开更多
关键词 用例模型 语义 多视图 一致性检验 最弱前提条件
下载PDF
Constraint-Preserving Architecture Transformations: A Graph Rewriting Approach
5
作者 袁春 陈意云 《Journal of Computer Science & Technology》 SCIE EI CSCD 2001年第6期590-594,共5页
Architecture transformations are frequently performed during software design and maiatenance. However this activity is not well supported at a sufficiently abstract level. In this paper, the authors characterize archi... Architecture transformations are frequently performed during software design and maiatenance. However this activity is not well supported at a sufficiently abstract level. In this paper, the authors characterize architecture transformations using graph rewriting rules, where architectures are represented in graph notations. Architectures are usually required to satisfy certain constraints during evolution. Therefore a way is presented to construct the suffi- cient and necessary condition for a transformation to preserve a constraint. The condition can be verified before the application of the transformation. Validated transformations are guaranteed not to violate corresponding constraints whenever applied. 展开更多
关键词 architecture transformation graph rewriting weakest precondition constraint checking
原文传递
A Logical Treatment of Non-Termination and Program Behaviour
6
作者 Martin Ward Hussein Zedan 《Journal of Software Engineering and Applications》 2014年第7期555-561,共7页
Can the semantics of a program be represented as a single formula? We show that one formula is insufficient to handle assertions, refinement or slicing, while two formulae are sufficient: A (S) , defining non-terminat... Can the semantics of a program be represented as a single formula? We show that one formula is insufficient to handle assertions, refinement or slicing, while two formulae are sufficient: A (S) , defining non-termination, and B (S), defining behaviour. Any two formulae A and B will define a corresponding program. Refinement is defined as implication between these formulae. 展开更多
关键词 FORMAL Methods Refinement Non-Termination NON-DETERMINISM weakest preconditION Temporal Logic Wide-Spectrum Language
下载PDF
基于最弱前置条件的静态分析误报消除技术 被引量:1
7
作者 陈杰 《计算机工程与应用》 CSCD 2012年第33期1-4,33,共5页
针对程序静态分析技术误报过多的问题,提出一种基于最弱前置条件的静态分析误报消除方法。根据不同的软件安全性质,从目标状态出发,以需求驱动的方式得到过程起始位置的最弱前置条件,判断该条件公式的可满足性来消除误报。将该方法实例... 针对程序静态分析技术误报过多的问题,提出一种基于最弱前置条件的静态分析误报消除方法。根据不同的软件安全性质,从目标状态出发,以需求驱动的方式得到过程起始位置的最弱前置条件,判断该条件公式的可满足性来消除误报。将该方法实例化来消除静态分析工具检测数组访问越界和空指针解引用的误报,实验结果表明该方法是有效且实用的。 展开更多
关键词 静态分析 误报消除 最弱前置条件 数组访问越界 空指针解引用
下载PDF
基于动态协同双向映射的相似执行路径生成方法 被引量:1
8
作者 郭曦 王盼 《电子学报》 EI CAS CSCD 北大核心 2014年第11期2168-2173,共6页
相似执行路径的生成是代码分析和检测的基础性工作之一,现有的方法通常以程序的行为序列或结构为分析对象,通过改变关键谓词的取值等方法来进行分析,但由于缺乏必要的引导信息导致生成的相似路径的有效性较低,另外由于路径的谓词集合较... 相似执行路径的生成是代码分析和检测的基础性工作之一,现有的方法通常以程序的行为序列或结构为分析对象,通过改变关键谓词的取值等方法来进行分析,但由于缺乏必要的引导信息导致生成的相似路径的有效性较低,另外由于路径的谓词集合较长而难以求解也降低了分析的精度.提出基于动态协同双向映射的分析方法,通过对程序控制流图的表示形式进行扩展,结合后向符号分析的方法生成候选路径的最弱前置条件,并以此为引导信息使用编辑距离的方法通过改变距离因子的取值来生成有针对性的相似路径集合.实验结果表明,与现有的方法相比,该方法的准确性和效率有明显的优势. 展开更多
关键词 静态分析 控制流图 最弱前置条件 相似执行路径
下载PDF
面向二进制程序的空指针解引用错误的检测方法
9
作者 傅玉 邓艺 +3 位作者 孙晓山 程亮 张阳 冯登国 《计算机学报》 EI CSCD 北大核心 2018年第3期574-587,共14页
空指针解引用是C/C++程序中常见的一类程序错误,它可让攻击者旁路安全机制或窥探操作系统敏感信息,一直是计算机安全领域的重要研究课题之一.目前已有很多(自动)分析工具对其进行检测,然而它们都在源代码层面上进行检测.大量的商业软件... 空指针解引用是C/C++程序中常见的一类程序错误,它可让攻击者旁路安全机制或窥探操作系统敏感信息,一直是计算机安全领域的重要研究课题之一.目前已有很多(自动)分析工具对其进行检测,然而它们都在源代码层面上进行检测.大量的商业软件不公开源代码,因此基于源代码的工具无法对这类软件中空指针解引用进行检测.此外,一些空指针解引用无法在源代码层面检测,因为这些缺陷由编译选项和编译优化不当引入.因此进行基于二进制的空指针解引用检测非常必要.基于二进制的空指针解引用检测的一个优势是可以包含库函数的代码,而基于源代码的分析通常采用人工构造的库函数摘要,从而影响检测的准确性和召回率.该文首次提出并实现了面向二进制程序的空指针解引用静态检测工具NPtrChecker,直接接受二进制程序进行分析,并给出代码中出现空指针的来源和解引用的位置以及对应的路径条件.在二进制上进行空指针解引用检测的一个重要难点是二进制程序中缺少指针类型、结构体类型等相关数据类型信息.如果缺乏这类信息,会导致分析结果的准确率大大降低.但是从二进制中恢复类型、数据结构本身是非常困难的问题.针对上述问题,我们提出了一种内存模型,区分来自同一数据结构的不同域的引用,实现了针对空指针解引用检测的域敏感指针分析.为了进一步提高分析的准确率,文章在此基础上设计实现了一套基于函数摘要的上下文敏感的数据流分析算法.此外,工具采用最弱前置条件对数据流分析结果进行验证,检查从指针来源到解引用点的路径条件是否可以被满足,以降低误报率.我们应用NPtrChecker分析了SPEC2000中的11个程序,总共报告了37个可疑空指针解引用,通过人工确认,其中22个是真实的程序错误.相对于Saturn报告的92个,仅13个为真;LUKE报告的3个 展开更多
关键词 空指针解引用检测 静态程序分析 二进制程序分析 最弱前置条件 数据流分析
下载PDF
Hanoi塔非递归算法的形式化推导和正确性验证 被引量:5
10
作者 游珍 薛锦云 《计算机研究与发展》 EI CSCD 北大核心 2008年第z1期143-147,共5页
关于Hanoi塔问题的非递归算法已有大量的研究.运用薛锦云教授自创的PAR方法和循环不变式开发的新策略,形式化推导出逻辑结构清晰的Hanoi塔非递归算法及其循环不变式,并用Dijkstra最弱前置谓词法验证了该算法的正确性.充分体现了PAR方法... 关于Hanoi塔问题的非递归算法已有大量的研究.运用薛锦云教授自创的PAR方法和循环不变式开发的新策略,形式化推导出逻辑结构清晰的Hanoi塔非递归算法及其循环不变式,并用Dijkstra最弱前置谓词法验证了该算法的正确性.充分体现了PAR方法的优越性、高效性和可靠性. 展开更多
关键词 HANOI塔 PAR方法 循环不变式 非递归算法 Dijkstra最弱前置谓词法
下载PDF
由规格说明到排序算法 被引量:2
11
作者 钟珞 《计算机技术与发展》 1992年第3期1-6,共6页
本文给出由程序的规格说明变换出程序的一种系统化方法的新概念.对规格说明进行不同的变换可得到不同的不变式形式.这些不变式通过计算最弱前置条件给出了多种相应算法的框架。本文以若干著名的排序算法例示了以上的概念和方法。
关键词 规格说明 变换 最弱前置条件 排序算法
下载PDF
量子最弱自由前置条件的交换性及其性质 被引量:4
12
作者 雷红轩 席政军 李永明 《软件学报》 EI CSCD 北大核心 2013年第5期933-941,共9页
首先给出了量子最弱自由前置条件(weakest liberal precondition,简称wlp)wlp(A,B,C)-可交换的定义,研究了wlp(A,B,C)-可交换的充分必要条件;其次,得到了wlp不是良好的谓词转换,验证了wlp是比量子最弱前置条件(weakest precondition,简... 首先给出了量子最弱自由前置条件(weakest liberal precondition,简称wlp)wlp(A,B,C)-可交换的定义,研究了wlp(A,B,C)-可交换的充分必要条件;其次,得到了wlp不是良好的谓词转换,验证了wlp是比量子最弱前置条件(weakest precondition,简称wp)更弱的谓词转换,揭示了wlp和wp的本质区别;最后证明了wlp的序列合成、并行合成和块结构等性质. 展开更多
关键词 量子谓词 超算子 量子最弱自由前置条件 交换
下载PDF
上一页 1 下一页 到第
使用帮助 返回顶部