动态顺序统计树类结构的函数式建模及其自动化验证
CSTR:
作者:
作者单位:

作者简介:

通讯作者:

王昌晶,E-mail:wcj@jxnu.edu.cn

中图分类号:

TP311

基金项目:

国家自然科学基金(62462036,62462037);江西省自然科学基金面上项目(20232BAB202010,20212BAB202018);江西省教育厅科技重点项目(GJJ210307,GJJ2200302,GJJ210333);江西省主要学科学术与技术带头人培养项目(20232BCJ22013)


Functional Modeling and Automatic Verification of Dynamic Order Statistic Tree Structures
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    动态顺序统计树结构是一类融合了动态集合、顺序统计量以及搜索树结构特性的数据结构,支持高效的数据检索操作,广泛应用于数据库系统、内存管理和文件管理等领域.然而,当前工作侧重讨论结构不变性,如平衡性,而忽略了功能正确性的讨论.且现有研究方法主要针对具体的算法程序进行手工推导或交互式机械化验证,缺乏成熟且可靠的通用验证模式,自动化水平较低.为此,设计了动态顺序统计搜索树类结构的Isabelle函数式建模框架和自动化验证框架,构建了经过验证的通用验证引理库,可以节省开发人员验证代码的时间和成本.基于函数式建模框架,选取了不平衡的二叉搜索树、平衡的二叉搜索树(以红黑树为代表)和平衡的多叉搜索树(以2-3树为代表)作为实例化的案例来展示.借助自动验证框架,多个实例化案例可自动验证,仅需要使用归纳法并调用一次auto方法或使用try命令即可,为复杂数据结构算法功能和结构正确性的自动化验证提供了参考.

    Abstract:

    Dynamic order statistic tree structures are a type of data structure that integrates the features of dynamic sets, order statistics, and search tree structures, supporting efficient data retrieval operations. These structures are widely used in fields like database systems, memory management, and file management. However, current research primarily focuses on structural invariants, such as balance, while neglecting discussions on functional correctness. Additionally, existing research methods mainly involve manual derivation or interactive mechanized verification for specific algorithms, lacking mature and reliable general verification patterns and having a low level of automation. To address this, an Isabelle-based functional modeling and automated verification framework for dynamic order statistic search tree structures was designed, establishing a verified general lemma library to reduce the time and cost of code verification for developers. Using this functional modeling framework, unbalanced binary search trees, balanced binary search trees (exemplified by red-black trees), and balanced multi-way search trees (exemplified by 2-3 trees) were selected as instantiated cases for demonstration. With the help of the automated verification framework, multiple instantiated cases can be automatically verified by simply using induction and calling the auto method once or the try command, providing a reference for automated verification of functional and structural correctness in complex data structure algorithms.

    参考文献
    相似文献
    引证文献
引用本文

左正康,刘增鑫,柯雨含,游珍,王昌晶.动态顺序统计树类结构的函数式建模及其自动化验证.软件学报,2025,36(8):0

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2024-08-26
  • 最后修改日期:2024-10-14
  • 录用日期:
  • 在线发布日期: 2024-12-10
  • 出版日期:
文章二维码
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号