SHF: Small: Integrating separation logic and SMT for better heap verification

SHF:小型:集成分离逻辑和 SMT 以实现更好的堆验证

基本信息

  • 批准号:
    1320583
  • 负责人:
  • 金额:
    $ 50万
  • 依托单位:
  • 依托单位国家:
    美国
  • 项目类别:
    Standard Grant
  • 财政年份:
    2013
  • 资助国家:
    美国
  • 起止时间:
    2013-09-01 至 2017-08-31
  • 项目状态:
    已结题

项目摘要

Heap-allocated pointer structures are a common source of software errors. In particular, pointer safety errors, like memory leaks and dereferencing null or dangling pointers, often cause programs to fail or leave them vulnerable to be exploited by malware. Tools that are able to detect such errors at compile time have long been considered impractical because they scale badly to large programs. This has started to change recently with the advent of verification tools based on separation logic (SL), which scale to software components of industrial size. The aim of this project is to increase the degree of automation, precision, and soundness of today's SL-based verification tools and broaden the scope of tools that could use separation logic. Because heap-allocated data structures are among the most difficult software constructs to reason about, this work has the potential to make a significant impact on the reliability of software.SL-based tools depend on theorem provers for separation logic to automatically discharge proof obligations concerned with properties about pointer structures. Today's tools implement tailor-made provers for this task. However, the analysis of real-world programs involves reasoning about other data types including, for instance, integers, arrays, and bit-vectors. To cope with this, existing separation logic tools make simplifying (and in general unsound) assumptions, rely on interactive help from the user, or implement ad-hoc and incomplete extensions of their tailor-made provers. The PIs will investigate a more systematic approach towards combined reasoning about heap and other data types by integrating an SL theorem prover into a satisfiability modulo theories (SMT) solver. This research is motivated by the observation that reasoning about separation logic fragments can be reduced entirely to reasoning in decidable first-order theories that fit well into the SMT framework. Modern SMT solvers implement decision procedures for many first-order theories that are relevant in program verification, such as linear arithmetic, arrays, and bit-vectors. A reduction to first-order logic enables a seamless combination of separation logic with these theories. Moreover, SMT solvers are already an integral part in the tool chain of many existing verification tools. These tools could directly benefit from an integrated SL prover. In addition, we expect that specific capabilities added to the SMT solver as a result of the project will be useful to a broad set of SMT users.
堆分配的指针结构是软件错误的常见来源。特别是,指针安全错误,如内存泄漏和解引用空指针或悬空指针,经常导致程序失败或使它们容易被恶意软件利用。能够在编译时检测此类错误的工具长期以来被认为是不切实际的,因为它们很难扩展到大型程序。最近,随着基于分离逻辑(SL)的验证工具的出现,这种情况开始发生变化,这种工具可以扩展到工业规模的软件组件。这个项目的目的是增加自动化的程度,精度,以及今天基于sl的验证工具的可靠性,并扩大可以使用分离逻辑的工具的范围。因为堆分配的数据结构是最难理解的软件结构之一,所以这项工作有可能对软件的可靠性产生重大影响。基于语言的工具依赖于分离逻辑的定理证明程序来自动履行与指针结构的属性有关的证明义务。今天的工具为这项任务实现了量身定制的证明程序。但是,对实际程序的分析涉及到对其他数据类型的推理,例如整数、数组和位向量。为了解决这个问题,现有的分离逻辑工具简化了(通常是不健全的)假设,依赖于用户的交互式帮助,或者实现定制的证明程序的特别的和不完整的扩展。pi将研究一种更系统的方法,通过将SL定理证明器集成到可满足模理论(SMT)求解器中,来对堆和其他数据类型进行组合推理。这项研究的动机是观察到关于分离逻辑片段的推理可以完全简化为适合SMT框架的可决定的一阶理论的推理。现代SMT求解器实现了许多与程序验证相关的一阶理论的决策过程,例如线性算法、数组和位向量。还原为一阶逻辑使分离逻辑与这些理论无缝结合。此外,SMT求解器已经成为许多现有验证工具的工具链中不可或缺的一部分。这些工具可以直接受益于集成的SL证明程序。此外,我们期望作为项目的结果添加到SMT求解器中的特定功能将对广泛的SMT用户有用。

项目成果

期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ patent.updateTime }}

Thomas Wies其他文献

Complete Multiparty Session Type Projection with Automata
使用自动机完成多方会话类型投影
Learning Invariants using Decision Trees
使用决策树学习不变量
  • DOI:
  • 发表时间:
    2015
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Siddharth Krishna;Christian Puhrsch;Thomas Wies
  • 通讯作者:
    Thomas Wies
A Notion of Dynamic Interface for Depth-Bounded Object-Oriented Packages
深度有限的面向对象包的动态接口概念
  • DOI:
  • 发表时间:
    2013
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Shahram Esmaeilsabzali;R. Majumdar;Thomas Wies;D. Zufferey
  • 通讯作者:
    D. Zufferey
Dynamic Package Interfaces
动态包接口
Cascade 2.0
级联2.0

Thomas Wies的其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

{{ truncateString('Thomas Wies', 18)}}的其他基金

SHF: Small: Modular Automated Verification of Concurrent Data Structures
SHF:小型:并发数据结构的模块化自动验证
  • 批准号:
    2304758
  • 财政年份:
    2023
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
NSF Student Travel Grant for 2020 Computer-Aided Verification (CAV)
NSF 2020 年计算机辅助验证 (CAV) 学生旅行补助金
  • 批准号:
    2019514
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
NSF Student Travel Grant for 2019 International Conference on Computer-Aided Verification (CAV)
2019 年计算机辅助验证 (CAV) 国际会议 NSF 学生旅费补助金
  • 批准号:
    1928837
  • 财政年份:
    2019
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SHF: Small:Verifying Complex Concurrent Data Structures with Flow Interfaces
SHF:小型:使用流接口验证复杂的并发数据结构
  • 批准号:
    1815633
  • 财政年份:
    2018
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SHF: Small: Collaborative Research: Concurrent Software Verification with Rely/Guarantee Abstractions
SHF:小型:协作研究:具有依赖/保证抽象的并发软件验证
  • 批准号:
    1618059
  • 财政年份:
    2016
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CAREER: Abstracting Programs for Automated Debugging
职业:抽象程序以进行自动调试
  • 批准号:
    1350574
  • 财政年份:
    2014
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant

相似国自然基金

昼夜节律性small RNA在血斑形成时间推断中的法医学应用研究
  • 批准号:
  • 批准年份:
    2024
  • 资助金额:
    0.0 万元
  • 项目类别:
    省市级项目
tRNA-derived small RNA上调YBX1/CCL5通路参与硼替佐米诱导慢性疼痛的机制研究
  • 批准号:
    n/a
  • 批准年份:
    2022
  • 资助金额:
    10.0 万元
  • 项目类别:
    省市级项目
Small RNA调控I-F型CRISPR-Cas适应性免疫性的应答及分子机制
  • 批准号:
    32000033
  • 批准年份:
    2020
  • 资助金额:
    24.0 万元
  • 项目类别:
    青年科学基金项目
Small RNAs调控解淀粉芽胞杆菌FZB42生防功能的机制研究
  • 批准号:
    31972324
  • 批准年份:
    2019
  • 资助金额:
    58.0 万元
  • 项目类别:
    面上项目
变异链球菌small RNAs连接LuxS密度感应与生物膜形成的机制研究
  • 批准号:
    81900988
  • 批准年份:
    2019
  • 资助金额:
    21.0 万元
  • 项目类别:
    青年科学基金项目
肠道细菌关键small RNAs在克罗恩病发生发展中的功能和作用机制
  • 批准号:
    31870821
  • 批准年份:
    2018
  • 资助金额:
    56.0 万元
  • 项目类别:
    面上项目
基于small RNA 测序技术解析鸽分泌鸽乳的分子机制
  • 批准号:
    31802058
  • 批准年份:
    2018
  • 资助金额:
    26.0 万元
  • 项目类别:
    青年科学基金项目
Small RNA介导的DNA甲基化调控的水稻草矮病毒致病机制
  • 批准号:
    31772128
  • 批准年份:
    2017
  • 资助金额:
    60.0 万元
  • 项目类别:
    面上项目
基于small RNA-seq的针灸治疗桥本甲状腺炎的免疫调控机制研究
  • 批准号:
    81704176
  • 批准年份:
    2017
  • 资助金额:
    20.0 万元
  • 项目类别:
    青年科学基金项目
水稻OsSGS3与OsHEN1调控small RNAs合成及其对抗病性的调节
  • 批准号:
    91640114
  • 批准年份:
    2016
  • 资助金额:
    85.0 万元
  • 项目类别:
    重大研究计划

相似海外基金

Collaborative Research: AF: Small: Graph Analysis: Integrating Metric and Topological Perspectives
合作研究:AF:小:图分析:整合度量和拓扑视角
  • 批准号:
    2310412
  • 财政年份:
    2023
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CC* Integration-Small: Integrating Application Agnostic Learning with FABRIC for Enabling Realistic High-Fidelity Traffic Generation and Modeling
CC* Integration-Small:将应用程序无关学习与 FABRIC 集成,以实现现实的高保真流量生成和建模
  • 批准号:
    2419070
  • 财政年份:
    2023
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Collaborative Research: CNS Core: Small: Efficient Ways to Enlarge Practical DNA Storage Capacity by Integrating Bio-Computer Technologies
合作研究:中枢神经系统核心:小型:通过集成生物计算机技术扩大实用 DNA 存储容量的有效方法
  • 批准号:
    2343863
  • 财政年份:
    2023
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
RI: Small: Integrating physics, data, and art-based insights for controllable generative models
RI:小型:集成物理、数据和基于艺术的见解以实现可控生成模型
  • 批准号:
    2323086
  • 财政年份:
    2023
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Collaborative Research: AF: Small: Graph Analysis: Integrating Metric and Topological Perspectives
合作研究:AF:小:图分析:整合度量和拓扑视角
  • 批准号:
    2310411
  • 财政年份:
    2023
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
III : Small : Integrating and Learning on Spatial Data via Multi-Agent Simulation
III:小:通过多智能体模拟集成和学习空间数据
  • 批准号:
    2311954
  • 财政年份:
    2023
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Collaborative Research: CNS Core: Small: Efficient Ways to Enlarge Practical DNA Storage Capacity by Integrating Bio-Computer Technologies
合作研究:中枢神经系统核心:小型:通过集成生物计算机技术扩大实用 DNA 存储容量的有效方法
  • 批准号:
    2204656
  • 财政年份:
    2022
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Collaborative Research: CNS Core: Small: Efficient Ways to Enlarge Practical DNA Storage Capacity by Integrating Bio-Computer Technologies
合作研究:中枢神经系统核心:小型:通过集成生物计算机技术扩大实用 DNA 存储容量的有效方法
  • 批准号:
    2204657
  • 财政年份:
    2022
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Integrating HDX-MS and Molecular Dynamics to investigate the mechanism of activation of the RORy by multiple small molecule modulators
整合 HDX-MS 和分子动力学研究多种小分子调节剂激活 RORy 的机制
  • 批准号:
    2736597
  • 财政年份:
    2022
  • 资助金额:
    $ 50万
  • 项目类别:
    Studentship
CNS Core: Small: Integrating Real-Time Learning and Control for Large and Dynamic Networked Computer Systems
CNS 核心:小型:集成大型动态网络计算机系统的实时学习和控制
  • 批准号:
    2113893
  • 财政年份:
    2021
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了