[发明专利]面向批量未解释程序的联合验证方法在审
申请号: | 202210258615.9 | 申请日: | 2022-03-16 |
公开(公告)号: | CN114706757A | 公开(公告)日: | 2022-07-05 |
发明(设计)人: | 陈振邦;王戟;杜一德;洪伟疆;毛晓光;董威;李姗姗;文艳军;陈立前;刘万伟;尹良泽 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 胡君 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 批量 解释程序 联合 验证 方法 | ||
1.一种面向批量未解释程序的联合验证方法,其特征在于,步骤包括:
步骤S01.对当前待验证的未解释进行程序抽象得到程序自动机,使用当前保存的抽象模型对所述程序自动机进行精化以去除已被验证的路径,得到精化后的程序自动机;
步骤S02.判断所述精化后的程序自动机是否为空,如果为空则判断当前待验证的未解释程序正确,转入步骤S05,否则转入步骤S03;
步骤S03.从所述精化后的程序自动机中抽取一条路径并进行路径可行性检查,若路径可行则判定当前待验证的未解释程序错误,得到一条错误路径,转入步骤S05;若路径不可行则转入步骤S04;
步骤S04.根据抽取出路径的路径类型进行路径泛化得到反例自动机,使用所述反例自动机对所述精化后的程序自动机进行精化以去除已被验证的路径,并将所述反例自动机保存为所述抽象模型以在新未解释程序验证时进行复用,返回步骤S02;
步骤S05.判断是否完成所有未解释程序验证,如果是则退出验证,否则取新的未解释程序后返回步骤S01。
2.根据权利要求1所述的面向批量未解释程序的联合验证方法,其特征在于,所述步骤S01中,通过将所述抽象模型取反操作后结果与所述程序自动机求取交集,使得去除所述程序自动机中已被验证的路径,实现初始精化。
3.根据权利要求1所述的面向批量未解释程序的联合验证方法,其特征在于,所述步骤S03中,采用基于一致性的路径可行性检查方式检查抽取出路径的可行性。
4.根据权利要求1所述的面向批量未解释程序的联合验证方法,其特征在于,所述步骤S04中根据路径类型进行泛化包括:判断抽取出路径的路径类型,对不同路径类型使用不同的补全信息方式进行信息补全,并基于一致性的抽象方法进行路径抽象,得到所述泛化结果的反例自动机。
5.根据权利要求4所述的面向批量未解释程序的联合验证方法,其特征在于,所述基于一致性的抽象方法进行路径抽象包括:计算当前抽取的不可行路径对应的状态序列,对所述状态序列进行等价状态合并,得到抽象后的自动机作为所述泛化结果。
6.根据权利要求5所述的面向批量未解释程序的联合验证方法,其特征在于,所述判断抽取出路径的路径类型时,如果为Coherent的路径类型,直接利用基于一致性的抽象方法进行抽象;如果为违反memoizing的路径类型,通过添加辅助变量补全丢失项的信息,然后利用基于一致性的抽象方法进行抽象;如果为违反early-assumes的路径类型,通过将assume语句提前以补全丢失的信息,然后利用基于一致性的抽象方法进行抽象,得到抽象后的自动机。
7.根据权利要求6所述的面向批量未解释程序的联合验证方法,其特征在于,如果为Coherent的路径类型,直接根据对应的状态序列进行等价状态合并,得到抽象后的自动机;如果为违反memoizing的路径类型,通过添加辅助变量补全丢失项的信息后,删除辅助变量作用域(辅助变量保存的项第一次被计算和最后一次被计算的位置之间)之外的信息,然后将根据对应的状态序列进行等价状态合并,得到抽象后的自动机;如果为违反early-assumes的路径类型,将违反early-assumes的语句提前至程序最前面的位置,提前拿到assume语句中的信息,然后根据对应的状态序列进行等价状态合并,得到抽象后的自动机。
8.根据权利要求1~7中任意一项所述的面向批量未解释程序的联合验证方法,其特征在于,所述步骤S04中,所述反例自动机对所述精化后的程序自动机进行精化包括:将泛化得到的所述反例自动机取反然后与所述精化后自动机进行取交集操作,得到精化结果。
9.一种面向批量未解释程序的联合验证装置,包括处理器以及存储器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序,所述处理器用于执行所述计算机程序以执行如权利要求1~8中任意一项所述方法。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序执行时实现如权利要求1~8中任意一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210258615.9/1.html,转载请声明来源钻瓜专利网。