首页> 外文会议>ACM SIGPLAN Conference on Programming Language Design Implementation >Ditto: Automatic Incrementalization of Data Structure Invariant Checks (in Java)
【24h】

Ditto: Automatic Incrementalization of Data Structure Invariant Checks (in Java)

机译:DITTO:数据结构不变检查的自动递增化(在Java中)

获取原文

摘要

We present Ditto, an automatic incrementalizer for dynamic, side-effect-free data structure invariant checks. Incrementalization speeds up the execution of a check by reusing its previous executions, checking the invariant anew only on the changed parts of the data structure. Ditto exploits properties specific to the domain of invariant checks to automate and simplify the process without restricting what mutations the program can perform. Our incrementalizer works for modern imperative languages such as Java and C#. It can incrementalize, for example, verification of red-black tree properties and the consistency of the hash code in a hash table bucket. Our source-to-source implementation for Java is automatic, portable, and efficient. Ditto provides speedups on data structures with as few as 100 elements; on larger data structures, its speedups are characteristic of non-automatic incrementalizers: roughly 5-fold at 5,000 elements, and growing linearly with data structure size.
机译:我们呈现了一个自动增量器,用于动态,副作用的无效数据结构不变检查。通过重用其先前的执行,递增速度加快执行检查,仅在数据结构的已更改的部分上检查不变性。 Ditto利用特定于不变性检查域的属性来自动化和简化过程而不限制程序可以执行的突变。我们的递增器为现代命令语言工作,如Java和C#。它可以递增,例如,验证红黑树属性以及哈希表桶中的哈希代码的一致性。我们对Java的来源实现是自动,便携和高效的。 DITTO在数据结构上提供少量为100个元素的加速;在较大的数据结构上,其加速是非自动增量器的特性:5,000元元大约为5倍,并与数据结构大小线性生长。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号