课题基金 / 基金详情

CAREER: Automated Verification of Loops in Systems Code

CAREER: Automated Verification of Loops in Systems Code
职业:系统代码中循环的自动验证
批准号:
2239484
负责人:
Ronghui Gu
金额:
$52.5万
依托单位:
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2023
资助国家:
美国
项目状态:
未结题
起止时间:
2023-02-01 至 2028-01-31

项目摘要

项目成果

Ronghui Gu的其他基金

相似基金

相关文献

中文摘要
翻译
点击翻译按钮获取中文摘要
英文摘要
System software such as operating systems and hypervisors forms the software foundations of our computing infrastructure. Formally verifying the correctness and security of system software is highly demanding but comes at a considerable cost especially when there are many loops. Complex system software typically requires months of verification effort into loops alone. This project is designing, implementing, and evaluating Ashera, a data-driven framework for automatically verifying loops in systems code. The project’s novelties are the introduction of a new learning architecture, Recursive Continuous Logic Networks (R-CLNs), for learning loop invariants using system execution traces. This project, for the first time, enables automated verification for complex loops in real-world systems code and will be a crucial step to scale formal verification techniques for building modern resilient system software so that everyone can have access to trustworthy computing environments.Ashera verifies loops by inferring and validating loop invariants, which capture the effect of the loop on the program state irrespective of the actual number of loop iterations. These invariants for systems code usually contain quantifiers and recursive functions over iterative data structures, which are difficult and time-consuming to manually infer and prove, even for verification experts. To tackle these challenges, Ashera introduces R-CLN, a neural architecture specialized for learning quantified and recursive loop invariants using novel training data collected from execution traces of the target program, such as sliding windows and randomized history windows. Ashera incorporates a Dafny-based validation scheme and translators for C, Go, and Coq proof assistant, such that a system designer only needs to provide pre- and post-conditions of the loop in order for the learning framework to sample, infer, and validate an invariant. This project will use Ashera to conduct end-to-end, automated verification for loops in all major verified systems and several real systems, including KVM, the Linux Buddy system, and the Linux page fault handler, which was previously considered intractable, demonstrating that Ashera is capable of scaling verification for system software.This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
期刊论文(3)
专著(0)
科研奖励(0)
会议论文
DOI: --
发表时间: 2023
期刊: ArXiv
影响因子: --
作者: [Xupeng Li;Xuheng Li;Wei Qiang;Ronghui Gu;Jason Nieh]
通讯作者: Xupeng Li;Xuheng Li;Wei Qiang;Ronghui Gu;Jason Nieh
Mostly Automated Verification of Liveness Properties for Distributed Protocols with Ranking Functions
具有排名功能的分布式协议的活性属性的自动验证
DOI: 10.1145/3632877
发表时间: 2024
期刊: Proceedings of the ACM on Programming Languages
影响因子: --
作者: [Yao, Jianan, Tao, Runzhou, Gu, Ronghui, Nieh, Jason]
通讯作者: Nieh, Jason
SaTC: CORE: Medium: Microverification of Information-Flow Security for the Linux Operating System Kernel
  • 批准号:
    2052947
  • 项目类别:
    Standard Grant
  • 资助金额:
    $116.7万
  • 财政年份:
    2021
  • 负责人:
    Ronghui Gu
  • 依托单位:
海外基金