形状图逻辑扩展的实现

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:yanjiawei2005
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
信息时代的发展,引领计算机软件应用深入到千家万户,各行各业。随着软件的应用领域迅速加大,规模急速扩张,软件安全性的要求也逐步提升,软件调试和维护的成本越来越高,软件的安全形势日渐严峻。基于逻辑推理的形式验证是提高软件可信程度的一种重要方法。进入21世纪来,国际国内对该方法的推广和工业应用进行了大量的研究与开发,本实验室(中科大一耶鲁高可信软件联合研究中心)在并行程序的验证方法和串行程序的验证工具的研发工作也相当活跃。本文工作基于一个类C小语言PointerC的程序验证器原型。它是研究操作易变数据结构的指针程序的验证的试验性工具。本文对此验证器进行了两方面扩展,一是使验证器可以更好地用于一维数组程序的验证。二是使验证器能用于操作带附加单链表的数据结构的程序的验证。本文的主要贡献如下:第一,设计并实现了对一维数组元素进行赋值的语句的推理规则,并将此规则延伸应用到全称量词的约束变元出现在访问路径的上角标中的情况。原型系统虽然主要是针对指针程序设计的,但同时也考虑了操作其他数据类型的程序的验证,比如操作数组的程序的验证。操作一维数组的程序中,数组的很多性质需要使用量化断言(如全称断言)来描述。这样在遇到数组元素的赋值语句时,在运行赋值公理时需要使用本文设计的规则对量化断言进行展开。同理,此规则也适用在验证包含带上角标表达式的全称量词的程序中。第二,设计并实现了一种操作带附加链表的数据结构的程序的验证方法。在形状分析时,若想让附加链表指针指在主数据结构的节点上,则不可能进行精确的指针分析,导致基于精确指针分析的形状图逻辑不能使用。本文设计的解决方法是,将附加链表从主数据结构的形状图中分离出来,建立分离的虚拟附加链表。通过上述对原型系统中形状图逻辑的扩展,使得系统原型能够验证复杂的一维数组程序和包含带上角标表达式的全称量词的程序,并能验证操作带附加单链表的数据结构的程序,扩展了原型系统的验证范围。
其他文献
多传感器数据融合技术在军事和民用领域有着广泛的应用,是目前热门的研究领域之一。本文以多传感器数据融合系统为研究对象,以数据融合算法为侧重点主要做了如下工作:首先,针
云计算是新兴商业计算模式之一,是并行计算、分布式计算和网格计算的发展。云计算充分利用成熟的虚拟化这一关键技术封装打包数据中心的资源,通过互联网将服务提供给用户,以满足
伴随着网络和信息技术的发展,互联网已经融入到了我们生活的方方面面。特别是随着Web2.0技术的应用,社交网络迅速兴起,如QQ空间(Qzone)、人人网(Renren)、朋友网(Pengyou)、
随着互联网的飞速发展,HTML5标准的提出并广泛被各种浏览器所支持,传统的基于二维图形的网络页面已经不能满足用户的视觉和交互需求。在这一趋势下,通过HTML5引入并实现的Web
近年来,随着物联网的快速发展和人们对传感器网络研究倍加关注,作为物联网核心技术的无线传感器网络也得到了广泛的应用和研究。由于无线传感器节点具有价格低廉、功耗低和体
随着软件行业的发展,软件开发技术的提高,软件产品的规模变得日益庞大,软件的复杂度不断增加,软件测试日益得到重视和变得专业化。软件测试作为保证软件质量的重要环节,测试
无线传感器网络是一门综合了计算机技术、现代通信技术、微电子技术、嵌入式系统、分布式信息处理等理论的新兴科学。它是由大量具有感知能力、计算能力和通信能力的微型传感
随着近些年来测序技术的飞速发展,人类产生了海量的生物序列数据,亟需通过有效的计算手段进行分析和处理。而在众多的生物序列分析与处理问题中,生物序列数据的k-mer频次信息是
科学技术不断发展进步,人类每天都要处理大量繁冗复杂的信息。数据挖掘技术就是从这些大量纷繁的数据中挖掘潜在有用的信息,使数据的分析和解释更简洁容易。特征选择是数据挖
基于车联网应用的云计算支撑平台利用虚拟化技术将不同类型的物理服务器和虚拟机等异构资源整合成一个虚拟资源池,按需为不同的用户提供不同类型的车联网应用服务。车联网大