期刊文献+
共找到16篇文章
< 1 >
每页显示 20 50 100
基于k近邻最弱前置条件的程序多路径验证方法 被引量:5
1
作者 郭曦 王盼 +1 位作者 王建勇 张焕国 《计算机学报》 EI CSCD 北大核心 2015年第11期2203-2214,共12页
程序多路径验证方法是对软件性质进行发掘的重要方法之一,现有的验证方法主要通过求解路径条件或者自动构造不同的输入来触发生成不同的路径,从而分析程序中潜在的安全问题,但存在对路径条件不加选择地进行多路径扩展而生成缺乏针对性... 程序多路径验证方法是对软件性质进行发掘的重要方法之一,现有的验证方法主要通过求解路径条件或者自动构造不同的输入来触发生成不同的路径,从而分析程序中潜在的安全问题,但存在对路径条件不加选择地进行多路径扩展而生成缺乏针对性的路径的问题,另外由于路径条件过长而难以求解也限制了它的使用范围.该文提出基于k近邻最弱前置条件的程序多路径验证方法,该方法通过后向符号分析对程序调用图的构建过程进行改进,同时对指定的程序检测点生成最弱前置条件,并以该最弱前置条件为引导信息使用符号执行的方法在保证检测点可达的前提下有针对性地生成对程序性质进行验证的精简路径集合.实验结果表明,该方法可以提高程序验证的精度和准确性,并减少误报. 展开更多
关键词 程序验证 静态分析 最弱前置条件 符号执行 控制流图
下载PDF
相关路径静态分析中协同式逆向推理方法 被引量:5
2
作者 郭曦 王盼 《软件学报》 EI CSCD 北大核心 2015年第1期1-13,共13页
相关路径生成,是程序动态分析中的一种重要方法.通过对目标执行路径的获取和分析来生成与其相关的近邻执行路径,在程序行为特征分析、编译优化和调试等研究方向有重要的作用.现有的方法主要通过改变路径节点序列来生成近邻的路径集合,... 相关路径生成,是程序动态分析中的一种重要方法.通过对目标执行路径的获取和分析来生成与其相关的近邻执行路径,在程序行为特征分析、编译优化和调试等研究方向有重要的作用.现有的方法主要通过改变路径节点序列来生成近邻的路径集合,由于缺乏关键节点的路径引导信息,导致生成大量冗余或者无效的路径集合.提出采用协同式逆向分析的近邻路径生成方法,针对目标路径的后置条件,采用逆向符号分析方法产生程序各个基本块的前置条件作为执行路径的引导信息.同时,通过调整距离因子k的取值,可以有针对性地生成与目标路径的编辑距离不超过k的近邻路径集合.实验结果表明:与现有方法相比,该方法在准确性和效率方面有明显的优势. 展开更多
关键词 逆向分析 近邻路径 最弱前置条件 符号执行
下载PDF
基于设计演算的形式化用例分析建模框架 被引量:4
3
作者 陈鑫 李宣东 《软件学报》 EI CSCD 北大核心 2008年第10期2539-2549,共11页
提出一种形式化用例分析建模框架,引入类图、用例顺序图、用例状态图、功能规约函数和系统不变式从多个角度为需求建模.通过定义这些视图的形式化语义,为需求的各个方面定义了准确的形式化描述.利用该框架,可以从方法的交互行为规约和... 提出一种形式化用例分析建模框架,引入类图、用例顺序图、用例状态图、功能规约函数和系统不变式从多个角度为需求建模.通过定义这些视图的形式化语义,为需求的各个方面定义了准确的形式化描述.利用该框架,可以从方法的交互行为规约和功能规约合成描述方法全部行为的全规约;也可以定义用例模型的性质,并通过设计演算中的证明来分析验证这些性质.作为应用,研究了检查用例模型一致性的规则.给出一个实例说明建模框架的可行性. 展开更多
关键词 用例模型 语义 多视图 一致性检验 最弱前提条件
下载PDF
Constraint-Preserving Architecture Transformations: A Graph Rewriting Approach
4
作者 袁春 陈意云 《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
5
作者 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
6
作者 袁春 陈意云 《计算机研究与发展》 EI CSCD 北大核心 2003年第7期1088-1094,共7页
约束检查是保持数据库语义合法性的关键环节 由于在事务执行后直接检查约束的代价太大 ,一般通过分析对数据库的修改和约束公式得出简化的测试条件 ,只要在修改前检查其能否成立就可以确定修改后数据库是否满足约束 给出计算这种约束... 约束检查是保持数据库语义合法性的关键环节 由于在事务执行后直接检查约束的代价太大 ,一般通过分析对数据库的修改和约束公式得出简化的测试条件 ,只要在修改前检查其能否成立就可以确定修改后数据库是否满足约束 给出计算这种约束检查条件的最弱及增量前条件方法 ,分别用于生成充要及充分测试条件 后者利用当前数据库状态满足约束的假设通常得出较简单的条件 与其他技术相比 ,这一方法处理的约束和事务种类更一般 。 展开更多
关键词 约束检查 最弱前条件 增量前条件 数据库 语义合法性
下载PDF
基于最弱前置条件的静态分析误报消除技术 被引量:1
7
作者 陈杰 《计算机工程与应用》 CSCD 2012年第33期1-4,33,共5页
针对程序静态分析技术误报过多的问题,提出一种基于最弱前置条件的静态分析误报消除方法。根据不同的软件安全性质,从目标状态出发,以需求驱动的方式得到过程起始位置的最弱前置条件,判断该条件公式的可满足性来消除误报。将该方法实例... 针对程序静态分析技术误报过多的问题,提出一种基于最弱前置条件的静态分析误报消除方法。根据不同的软件安全性质,从目标状态出发,以需求驱动的方式得到过程起始位置的最弱前置条件,判断该条件公式的可满足性来消除误报。将该方法实例化来消除静态分析工具检测数组访问越界和空指针解引用的误报,实验结果表明该方法是有效且实用的。 展开更多
关键词 静态分析 误报消除 最弱前置条件 数组访问越界 空指针解引用
下载PDF
基于动态协同双向映射的相似执行路径生成方法 被引量:1
8
作者 郭曦 王盼 《电子学报》 EI CAS CSCD 北大核心 2014年第11期2168-2173,共6页
相似执行路径的生成是代码分析和检测的基础性工作之一,现有的方法通常以程序的行为序列或结构为分析对象,通过改变关键谓词的取值等方法来进行分析,但由于缺乏必要的引导信息导致生成的相似路径的有效性较低,另外由于路径的谓词集合较... 相似执行路径的生成是代码分析和检测的基础性工作之一,现有的方法通常以程序的行为序列或结构为分析对象,通过改变关键谓词的取值等方法来进行分析,但由于缺乏必要的引导信息导致生成的相似路径的有效性较低,另外由于路径的谓词集合较长而难以求解也降低了分析的精度.提出基于动态协同双向映射的分析方法,通过对程序控制流图的表示形式进行扩展,结合后向符号分析的方法生成候选路径的最弱前置条件,并以此为引导信息使用编辑距离的方法通过改变距离因子的取值来生成有针对性的相似路径集合.实验结果表明,与现有的方法相比,该方法的准确性和效率有明显的优势. 展开更多
关键词 静态分析 控制流图 最弱前置条件 相似执行路径
下载PDF
基于最弱前置条件的程序正确性分析
9
作者 郭莎莎 侯春燕 王劲松 《高技术通讯》 EI CAS 北大核心 2019年第6期556-563,共8页
随着软件的不断更新迭代,软件正确性检测的必要性愈加凸显,软件正确性检测的处理时间直接决定软件的维护成本。动态测试的断言编写和静态分析的符号执行均针对程序正确性进行优化完善,但分析结果易出现路径缺失甚至错误无法识别等问题... 随着软件的不断更新迭代,软件正确性检测的必要性愈加凸显,软件正确性检测的处理时间直接决定软件的维护成本。动态测试的断言编写和静态分析的符号执行均针对程序正确性进行优化完善,但分析结果易出现路径缺失甚至错误无法识别等问题。现有验证方法在路径扩展时易生成较多无用路径,且针对性不强,因此有必要研究一种更为可靠的方案。本文采用最弱前置条件对软件可行性加以分析,对程序执行语义正确建模,使用程序切片技术预处理程序代码,并根据层级结构存储节点及其子程序。实验结果表明,该方法可以有效减小静态分析对程序状态抽象操作带来的验证精度损耗,且能够遍历求解出程序的所有可能路径,并通过分组标出条件表达式的结论真假值,以此验证路径正确性,同时可对高复杂的程序代码进行有效的正确性分析。 展开更多
关键词 程序正确性 最弱前置条件 静态分析 路径扩展 程序切片技术
下载PDF
面向二进制程序的空指针解引用错误的检测方法
10
作者 傅玉 邓艺 +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
11
作者 游珍 薛锦云 《计算机研究与发展》 EI CSCD 北大核心 2008年第z1期143-147,共5页
关于Hanoi塔问题的非递归算法已有大量的研究.运用薛锦云教授自创的PAR方法和循环不变式开发的新策略,形式化推导出逻辑结构清晰的Hanoi塔非递归算法及其循环不变式,并用Dijkstra最弱前置谓词法验证了该算法的正确性.充分体现了PAR方法... 关于Hanoi塔问题的非递归算法已有大量的研究.运用薛锦云教授自创的PAR方法和循环不变式开发的新策略,形式化推导出逻辑结构清晰的Hanoi塔非递归算法及其循环不变式,并用Dijkstra最弱前置谓词法验证了该算法的正确性.充分体现了PAR方法的优越性、高效性和可靠性. 展开更多
关键词 HANOI塔 PAR方法 循环不变式 非递归算法 Dijkstra最弱前置谓词法
下载PDF
由规格说明到排序算法 被引量:2
12
作者 钟珞 《计算机技术与发展》 1992年第3期1-6,共6页
本文给出由程序的规格说明变换出程序的一种系统化方法的新概念.对规格说明进行不同的变换可得到不同的不变式形式.这些不变式通过计算最弱前置条件给出了多种相应算法的框架。本文以若干著名的排序算法例示了以上的概念和方法。
关键词 规格说明 变换 最弱前置条件 排序算法
下载PDF
逐步求精的一种模型 被引量:7
13
作者 钟珞 管昌生 +1 位作者 赵愚 潘昊 《武汉工业大学学报》 CSCD 1995年第3期52-57,共6页
提出一种支持程序开发的结构化方法.该方法以一种简单的问题分解策略为基础,比Wirth-Dijkstra的自顶向下逐步求精方法更利于面向目标的程序设计.由该方法可知,一个程序可经一系列求精而开发出来,每一步求精都能为相... 提出一种支持程序开发的结构化方法.该方法以一种简单的问题分解策略为基础,比Wirth-Dijkstra的自顶向下逐步求精方法更利于面向目标的程序设计.由该方法可知,一个程序可经一系列求精而开发出来,每一步求精都能为相应的最弱前置条件序列建立后置条件.这种策略使情况分析减少到极限,简化了结构化程序的证明,并保证了程序结构和数据结构之间的对应. 展开更多
关键词 面向目标 后置条件 软件开发 逐步求精
原文传递
一种基于符号执行的测试用例生成方法
14
作者 郑华利 刘钊远 田野 《计算机与数字工程》 2019年第9期2327-2331,共5页
针对符号执行中存在的路径爆炸问题,提出一种冗余路径删除方法,该方法利用Hoare逻辑中的后置条件引导符号执行以生成有效的测试用例。首先利用最弱前置条件来计算已探索的路径,然后通过后置条件引导符号执行以识别程序中多个共享的路径... 针对符号执行中存在的路径爆炸问题,提出一种冗余路径删除方法,该方法利用Hoare逻辑中的后置条件引导符号执行以生成有效的测试用例。首先利用最弱前置条件来计算已探索的路径,然后通过后置条件引导符号执行以识别程序中多个共享的路径后缀,并在测试用例生成时进行消除。最后通过对多个基准程序进行实验,结果表明论文方法在一定程度上能够减少程序的路径探索数目和执行时间,削弱了符号执行中的路径爆炸问题。 展开更多
关键词 符号执行 路径爆炸 后置条件 最弱前置条件
下载PDF
量子最弱自由前置条件的交换性及其性质 被引量:4
15
作者 雷红轩 席政军 李永明 《软件学报》 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
Verifying Mutual Exclusion and Liveness Properties with Split Preconditions
16
作者 AwadheshKumarSingh AnupKumarBandyopadhyay 《Journal of Computer Science & Technology》 SCIE EI CSCD 2004年第6期795-802,共8页
This work is focused on presenting a split precondition approach for the modeling and proving the correctness of distributed algorithms. Formal specification and precise analysis of Peterson's distributed mutual e... This work is focused on presenting a split precondition approach for the modeling and proving the correctness of distributed algorithms. Formal specification and precise analysis of Peterson's distributed mutual exclusion algorithm for two process has been considered. The proof of properties like, mutual exclusion, liveness, and lockout-freedom have also been presented. Keywords distributed algorithms - state transition rule - mutual exclusion - weakest self-precondition - weakest co-operation - correctness Regular PaperAwadhesh Kumar Singh received the B.E. degree in computer science & engineering from Gorakhpur University, Gorakhpur, India in 1988. He received the M.E. and Ph.D. (Engg) degrees in the same area from Jadavpur University, Kolkata, India. He is a faculty member in Computer Engineering Department, National Institute of Technology, Kurukshetra, India. His present research interest is distributed systems.Anup Kumar Bandyopadhyay received the B.E. (Tel.E.), M.E. (Tel.E.), and Ph.D. (Engg) degrees from Jadavpur University, Calcutta, India in 1968, 1970 and 1983, respectively. From 1970 to 1972 he worked with the Microwave Antenna System Engineering Group of the Indian Space Research Organization. In 1972 he joined the Department of Electronics and Telecommuication Engineering, Jadavpur University, where he is currently a professor. His research interests include computer communication networks and distributed systems. 展开更多
关键词 distributed algorithms state transition rule mutual exclusion weakest self-precondition weakest co-operation CORRECTNESS
原文传递
上一页 1 下一页 到第
使用帮助 返回顶部