华南理工大学林连南获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉华南理工大学申请的专利基于抽象语法树优化和多表征的代码克隆检测方法及系统获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN117389616B 。
龙图腾网通过国家知识产权局官网在2025-11-04发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202311135704.5,技术领域涉及:G06F8/75;该发明授权基于抽象语法树优化和多表征的代码克隆检测方法及系统是由林连南;于天辰;钟欣蕾;何宏魁;郭侦俊;蒋澈设计研发完成,并于2023-09-05向国家知识产权局提交的专利申请。
本基于抽象语法树优化和多表征的代码克隆检测方法及系统在说明书摘要公布了:本发明公开了一种基于抽象语法树优化和多表征的代码克隆检测方法及系统,该方法包括:对代码文本进行编译得到对应的抽象语法树;对抽象语法树进行优化,包括去除编译器生成的节点和编译错误的复原节点,去除声明节点和常量节点,对表达式节点细化,以及分别将选择结构和循环结构转换为对应统一的子树结构;对优化后的抽象语法树进行遍历,获得前后两个序列;将两个序列输入Transformer网络,输出代码文本对应的特征指纹;根据多个代码文本,得到多个对应的特征指纹;若任意两个特征指纹的余弦相似度大于第一设定阈值,则两个特征指纹对应的两个文本代码是相似的。本发明通过对抽象语法树进行优化在提高预测结果的同时降低了预测成本。
本发明授权基于抽象语法树优化和多表征的代码克隆检测方法及系统在权利要求书中公布了:1.一种基于抽象语法树优化和多表征的代码克隆检测方法,其特征在于,所述方法包括: 对代码文本进行编译得到对应的抽象语法树AST; 对所述抽象语法树AST进行优化,包括去除编译器生成的节点和编译错误的复原节点,去除声明节点和常量节点,对表达式节点细化,以及分别将选择结构和循环结构转换为对应统一的子树结构; 对优化后的抽象语法树AST进行遍历,获得前序序列和后序序列; 将前序序列和后序序列输入多层的Transformer网络,输出代码文本对应的特征指纹; 根据多个代码文本,得到多个对应的特征指纹;若任意两个特征指纹的余弦相似度大于第一设定阈值,则两个特征指纹对应的两个文本代码是相似的; 其中,所述去除编译器生成的节点和编译错误的复原节点,包括: 将内部类型转换表达式对应的节点删除并重新连接上下节点;所述内部类型转换表达式通过编译器分析代码文本并将隐式的类型转换保留得到; 删除语法错误的节点及其子树;所述语法错误的节点由编译器置于恢复表达式中; 所述对表达式节点细化,具体为: 将二元运算符表达式和一元运算符表达式细化为以下结构:BinaryUnaryOperatorExpr_表达式符号_返回值类型; 所述分别将选择结构和循环结构转换为对应统一的子树结构,包括: 将分支语句中的每一个分支拆解为两个部分:条件和语句,并将条件和语句归到同一个选择单元节点中; 将for语句的第一个表达式移动到for之前语句的末尾,同时将for语句的第三个表达式移动到循环体的末尾;这样循环结构就能统一表示为含有一个condition子节点和一个复合语句子节点的循环语句。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人华南理工大学,其通讯地址为:510640 广东省广州市天河区五山路381号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
以上内容由龙图腾AI智能生成。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

皖公网安备 34010402703815号
请提出您的宝贵建议,有机会获取IP积分或其他奖励