一种基于gep的程序不变量动态发现方法-南华大学学报
第30卷第4期 南华大学学报(自然科学版) Vol30 No4
2016年12月 Journal of University of South China(Science and Technology) Dec2016
- - -
文章编号:1673 0062(2016)04 0106 06
一种基于 GEP的程序不变量动态发现方法
郭培甲ꎬ吴取劲∗
(南华大学 计算机科学与技术学院ꎬ湖南 衡阳421001)
摘 要:利用GEP(基因表达式编程)获取最优解的函数发现能力和数学理论的精确
计算能力获得较客观的程序不变量的预置形式ꎬ能够进行目前技术没有处理的函数
型程序不变量的发现生成工作.在函数型程序不变量范围内ꎬ有效地克服了目前程序
不变量发现技术中存在的两个缺点ꎬ即计算盲目性与程序不变量形式预置的主观性.
整个工作可以理解为是对目前程序不变量发现技术的一个扩展ꎬ它拓广了原有技术
可发现的程序不变量种类ꎬ增大了从程序运行轨迹数据中发现更多不变量的可能性.
关键词:程序不变量ꎻGEP 函数型程序不变量
中图分类号:TP311 文献标志码:B
A Method of Detecting Likely Program Invariants Based on GEP
GUO Pei ̄jiaꎬWU Qu ̄jing∗
(School of Computer Science and TechnologyꎬUniversity of South ChinaꎬHengyangꎬHunan421001ꎬChina)
Abstract:It introduces a new algorithm based on GEP which canfind Functional Program
Invariantsfrom data formed by observing program executing.In the field of detecting pro ̄
gram invariantsꎬthe algorithm improvespossibility of mining more invariantswhich can not
be found by the technology in existence and can get successfully polynomial functional in ̄
variants.
key words:program invariantsꎻGEPꎻfunctional program invariants
0 引 言 质.由于采集的数据总是有限的ꎬ所以似然程序不
变量也许是真正的不变量ꎬ也许是伪不变量.动态
程序不变量(Invariants)是指软件程序运行 发现程序不变量研究的主要目的是通过观察和分
时保持不变性质的逻辑断言.严格来讲ꎬ在动态分 析程序运行数据获取程序不变量ꎬ提供给程序员
析方法中程序不变量应该称为似然程序不变量ꎬ 作为提高程序质量的重要依据.
它描述的是在程序的多次运行中保持不变的性 通过程序的实际运行轨迹发现其不变性质的
- -
收稿日期:2016 10 10
-
作者简介:郭培甲(1994 )ꎬ男ꎬ宁夏中卫人ꎬ南华大学计算机科学与技术学院.主要研究方向:软件工程. ∗通讯
作者.
第30卷第4期 郭培甲等:一种基于GEP 的程序不变量动态发现方法 107