[发明专利]源代码等价性验证装置以及源代码等价性验证方法有效
申请号: | 201380078502.X | 申请日: | 2013-08-28 |
公开(公告)号: | CN105408872B | 公开(公告)日: | 2017-11-24 |
发明(设计)人: | 铃木康文;新原敦介;市井诚;野口秀人 | 申请(专利权)人: | 株式会社日立制作所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京银龙知识产权代理有限公司11243 | 代理人: | 范胜杰,王立杰 |
地址: | 日本*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 源代码 等价 验证 装置 以及 方法 | ||
1.一种源代码等价性验证装置,其验证最初的源代码和重构实施后的源代码的等价性,该源代码等价性验证装置的特征在于,具有:
源代码输入单元,其输入重构前的源代码和重构后的源代码;
重构模式输入单元,其输入所述源代码的重构模式信息;
源代码信息生成单元,其进行所述重构前的源代码和所述重构后的源代码各自的字句解析/句法解析,并变换为结构图,生成重构前源代码信息和重构后源代码信息;
正规化单元,其参照对重构模式信息定义的正规化信息,对所述重构前源代码信息和所述重构后源代码信息进行正规化,分别生成重构前正规化源代码信息和重构后正规化源代码信息;
结构比较单元,其比较所述重构前正规化源代码信息和所述重构后正规化源代码信息的结构;
符号执行单元,其对所述重构前正规化源代码信息和所述重构后正规化源代码信息进行符号执行;以及
等价性判定单元,其比较基于所述符号执行单元的符号执行的结果,来判定所述重构前源代码和所述重构后源代码的等价性,
所述正规化单元还具备:变更位置确定单元,其参照对所述重构模式信息定义的变更位置确定信息,比较所述重构前源代码信息和所述重构后源代码信息,生成用于确定源代码的结构上的变更位置的变更位置信息,
所述符号执行单元还具备:抽象化单元,其参照所述变更位置确定单元提取的所述重构前源代码信息与所述重构后源代码信息的变更位置信息以及对所述重构模式信息定义的抽象化信息,对所述重构前正规化源代码信息和所述重构后正规化源代码信息进行抽象化,
对所述抽象化单元生成的重构前抽象化源代码信息和重构后抽象化源代码信息进行符号执行。
2.根据权利要求1所述的源代码等价性验证装置,其特征在于,
所述结构比较单元比较所述重构前正规化源代码信息和所述重构后正规化源代码信息的结构图,在判定为结构一致的情况下,判定所述重构前源代码和所述重构后源代码等价,结束等价性验证处理,在判定为所述结构不一致的情况下,向所述符号执行单元的处理转移。
3.根据权利要求1所述的源代码等价性验证装置,其特征在于,
所述符号执行单元对所述重构前正规化源代码信息和所述重构后正规化源代码信息实施对每个所述重构模式信息定义的抽象化处理后,生成执行树,对所有叶节点取各叶节点的路径制约和变量状态的逻辑积,计算出对所有叶节点的逻辑积取逻辑和来表现符号执行一览的逻辑式,
所述等价性判定单元判定表示所述符号执行单元计算出的所述重构前正规化源代码信息的符号执行一览的逻辑式与表示所述重构后正规化源代码信息的符号执行一览的逻辑式在逻辑上是否等价。
4.根据权利要求1所述的源代码等价性验证装置,其特征在于,
该源代码等价性验证装置还具有:验证结果输出单元,其在显示画面上,与源代码等价性验证结果一起对比地显示所述重构前正规化源代码信息的结构图和所述重构后正规化源代码信息的结构图,并且,对比地显示针对重构前的源代码的符号执行一览信息和针对重构后的源代码的符号执行一览信息,或向输出装置输出所有显示信息。
5.根据权利要求4所述的源代码等价性验证装置,其特征在于,
所述验证结果输出单元在所述等价性判定单元判定所述重构前正规化源代码信息的逻辑式和所述重构后正规化源代码信息的逻辑式逻辑上不等价的情况下,还显示或输出反例信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于株式会社日立制作所,未经株式会社日立制作所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380078502.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:等离激元电学
- 下一篇:通过表面活性和反应性端基对聚合物的表面改性