Skip to main content
CenXiv.org
此网站处于试运行阶段,支持我们!
我们衷心感谢所有贡献者的支持。
贡献
赞助
cenxiv logo > cs > arXiv:2509.25023v1

帮助 | 高级搜索

计算机科学 > 计算机科学中的逻辑

arXiv:2509.25023v1 (cs)
[提交于 2025年9月29日 ]

标题: 带绑定器的变元结构的推广:一种用于结构代码比较的工具

标题: Generalization of Variadic Structures with Binders: A Tool for Structural Code Comparison

Authors:Alexander Baumgartner, Temur Kutsia
摘要: 本文介绍了一种新颖的反统一算法,用于具有绑定器的变元结构的泛化,设计为一种灵活的结构代码比较工具。 通过结合处理变量绑定的名义技术以及对变元表达式(常见于抽象语法树和编程语言)的支持,该方法解决了关键挑战,例如过度强调绑定变量名称以及在代码片段中处理插入或删除的困难。 该算法区分原子和两种类型的变量(项变量和树状变量),以计算最佳泛化,最大程度地保留结构相似性,同时抽象系统差异。 它还提供详细信息以重建原始表达式并量化结构差异。 这些信息在代码克隆检测、重构和程序分析等任务中可能很有用。 通过引入可参数化的刚性函数,该技术提供了对相似性标准的细粒度控制,并减少了非确定性,使得能够灵活适应实际场景,在这些场景中应忽略微不足道的相似性。 尽管主要在代码相似性检测的背景下进行演示,但此框架广泛适用于任何需要精确比较变元和绑定器丰富的表示的场景。
摘要: This paper introduces a novel anti-unification algorithm for the generalization of variadic structures with binders, designed as a flexible tool for structural code comparison. By combining nominal techniques for handling variable binding with support for variadic expressions (common in abstract syntax trees and programming languages), the approach addresses key challenges such as overemphasis on bound variable names and difficulty handling insertions or deletions in code fragments. The algorithm distinguishes between atoms and two kinds of variables (term and hedge variables) to compute best generalizations that maximally preserve structural similarities while abstracting systematic differences. It also provides detailed information to reconstruct original expressions and quantify structural differences. This information can be useful in tasks like code clone detection, refactoring, and program analysis. By introducing a parametrizable rigidity function, the technique offers fine-grained control over similarity criteria and reduces nondeterminism, enabling flexible adaptation to practical scenarios where trivial similarities should be discounted. Although demonstrated primarily in the context of code similarity detection, this framework is broadly applicable wherever precise comparison of variadic and binder-rich representations is required.
主题: 计算机科学中的逻辑 (cs.LO)
引用方式: arXiv:2509.25023 [cs.LO]
  (或者 arXiv:2509.25023v1 [cs.LO] 对于此版本)
  https://doi.org/10.48550/arXiv.2509.25023
通过 DataCite 发表的 arXiv DOI(待注册)

提交历史

来自: Alexander Baumgartner [查看电子邮件]
[v1] 星期一, 2025 年 9 月 29 日 16:47:58 UTC (26 KB)
全文链接:

获取论文:

    查看标题为《》的 PDF
  • 查看中文 PDF
  • 查看 PDF
  • HTML(实验性)
  • TeX 源代码
  • 其他格式
许可图标 查看许可
当前浏览上下文:
cs.LO
< 上一篇   |   下一篇 >
新的 | 最近的 | 2025-09
切换浏览方式为:
cs

参考文献与引用

  • NASA ADS
  • 谷歌学术搜索
  • 语义学者
a 导出 BibTeX 引用 加载中...

BibTeX 格式的引用

×
数据由提供:

收藏

BibSonomy logo Reddit logo

文献和引用工具

文献资源探索 (什么是资源探索?)
连接的论文 (什么是连接的论文?)
Litmaps (什么是 Litmaps?)
scite 智能引用 (什么是智能引用?)

与本文相关的代码,数据和媒体

alphaXiv (什么是 alphaXiv?)
CatalyzeX 代码查找器 (什么是 CatalyzeX?)
DagsHub (什么是 DagsHub?)
Gotit.pub (什么是 GotitPub?)
Hugging Face (什么是 Huggingface?)
带有代码的论文 (什么是带有代码的论文?)
ScienceCast (什么是 ScienceCast?)

演示

复制 (什么是复制?)
Hugging Face Spaces (什么是 Spaces?)
TXYZ.AI (什么是 TXYZ.AI?)

推荐器和搜索工具

影响之花 (什么是影响之花?)
核心推荐器 (什么是核心?)
IArxiv 推荐器 (什么是 IArxiv?)
  • 作者
  • 地点
  • 机构
  • 主题

arXivLabs:与社区合作伙伴的实验项目

arXivLabs 是一个框架,允许合作伙伴直接在我们的网站上开发和分享新的 arXiv 特性。

与 arXivLabs 合作的个人和组织都接受了我们的价值观,即开放、社区、卓越和用户数据隐私。arXiv 承诺这些价值观,并且只与遵守这些价值观的合作伙伴合作。

有一个为 arXiv 社区增加价值的项目想法吗? 了解更多关于 arXivLabs 的信息.

这篇论文的哪些作者是支持者? | 禁用 MathJax (什么是 MathJax?)
  • 关于
  • 帮助
  • contact arXivClick here to contact arXiv 联系
  • 订阅 arXiv 邮件列表点击这里订阅 订阅
  • 版权
  • 隐私政策
  • 网络无障碍帮助
  • arXiv 运营状态
    通过...获取状态通知 email 或者 slack

京ICP备2025123034号