CAREER: Marlin: A Unified Framework for Automatic and Interactive Quantitative Program Analysis

职业:Marlin:自动和交互式定量程序分析的统一框架

基本信息

  • 批准号:
    1845514
  • 负责人:
  • 金额:
    $ 51.88万
  • 依托单位:
  • 依托单位国家:
    美国
  • 项目类别:
    Continuing Grant
  • 财政年份:
    2019
  • 资助国家:
    美国
  • 起止时间:
    2019-07-01 至 2024-06-30
  • 项目状态:
    已结题

项目摘要

Achieving reliability and security of software systems that we use on a daily basis is one of the most pressing challenges of modern technology. It has been demonstrated that software verification with mathematical methods is an important component in meeting this challenge. However, most extant verification projects and tools focus on demonstrating the functional correctness of software. They do not analyze important quantitative properties of software such as resource usage, side channels, and probabilistic guarantees, which are crucial for reliability and security. The project's novelty is the design and implementation of a general framework for quantitative verification that can be applied to analyze resource usage, probabilistic programs (that incorporate randomness), and side channels. The project's impact is that this framework enables software developers to reduce the energy consumption of data centers, to mitigate serious security vulnerabilities, and to connect statistical safety guarantees to software systems that have machine-learning components. The project also provides a pedagogical opportunity for curriculum development and outreach activities. Quantitative verification and analysis tools implemented in the project are being integrated in Carnegie-Mellon's undergraduate courses on functional programming and data structures and algorithms, to both help students reason about the complexity of their code, and help instructors and teaching assistants automatically grade programming assignments by verifying complexity requirements. As part of the project's outreach activities, the investigator is designing two course modules for high-school students that are rolled out through existing programs at Carnegie-Mellon.Current research on quantitative analysis and verification is often problem-specific, separated into manual or automatic techniques, and there is little cross-fertilization between different areas. The aim of this project is to develop Marlin, a unified framework for quantitative verification. A distinctive feature of Marlin is the tight integration of interactive and automatic reasoning. This includes converting manually derived quantitative properties into constraints that can be consumed by automatic techniques and supporting more lightweight forms of automation beyond full inference. Marlin is based on a full-featured probabilistic programming language and an expressive quantitative program logic that supports compositional and relational reasoning. Specific innovations of Marlin include easily-understood descriptions of sub-languages for which the automation is guaranteed to succeed, the automatic generation of worst-case inputs, tail-bound analysis with higher moments, and automatic relational reasoning. Marlin's foundation is shared by three specialized quantitative analysis tools: Resource Aware ML (RaML), a language for static resource analysis; ParML, a new language for side-channel free programming; and Borel, a tool for probabilistic inference.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.
实现我们日常使用的软件系统的可靠性和安全性是现代技术最紧迫的挑战之一。事实证明,使用数学方法进行软件验证是应对这一挑战的重要组成部分。然而,大多数现有的验证项目和工具都侧重于证明软件功能的正确性。他们不分析软件的重要定量属性,例如资源使用、侧通道和概率保证,而这些属性对于可靠性和安全性至关重要。该项目的新颖之处在于设计和实现了定量验证的通用框架,该框架可用于分析资源使用情况、概率程序(包含随机性)和侧通道。该项目的影响在于,该框架使软件开发人员能够减少数据中心的能源消耗,减少严重的安全漏洞,并将统计安全保证连接到具有机器学习组件的软件系统。该项目还为课程开发和推广活动提供了教学机会。该项目中实现的定量验证和分析工具正在被集成到卡内基梅隆大学函数式编程和数据结构与算法的本科课程中,以帮助学生推理代码的复杂性,并帮助教师和助教自动对编程作业进行评分验证复杂性要求。作为该项目推广活动的一部分,研究人员正在为高中生设计两个课程模块,这些模块将通过卡内基梅隆大学的现有项目推出。当前定量分析和验证的研究通常是针对特定问题的,分为手动或自动技术上,不同地区之间很少有交叉施肥。该项目的目的是开发 Marlin,一个用于定量验证的统一框架。 Marlin 的一个显着特点是交互式和自动推理的紧密结合。这包括将手动导出的定量属性转换为可由自动技术使用的约束,并支持超越完全推理的更轻量级的自动化形式。 Marlin 基于功能齐全的概率编程语言和支持组合推理和关系推理的富有表现力的定量程序逻辑。 Marlin 的具体创新包括易于理解的子语言描述(保证自动化成功)、自动生成最坏情况输入、具有更高矩的尾部绑定分析以及自动关系推理。 Marlin 的基础由三个专门的定量分析工具共享:Resource Aware ML (RaML),一种用于静态资源分析的语言; ParML,一种用于侧通道自由编程的新语言;该奖项反映了 NSF 的法定使命,并通过使用基金会的智力价值和更广泛的影响审查标准进行评估,被认为值得支持。

项目成果

期刊论文数量(12)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
Resource-Aware Session Types for Digital Contracts
数字合约的资源感知会话类型
Probabilistic Resource-Aware Session Types
Raising expectations: automating expected cost analysis with types
Central moment analysis for cost accumulators in probabilistic programs
A Denotational Semantics for Low-Level Probabilistic Programs with Nondeterminism
  • DOI:
    10.1016/j.entcs.2019.09.016
  • 发表时间:
    2019-11
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Di Wang;Jan Hoffmann;T. Reps
  • 通讯作者:
    Di Wang;Jan Hoffmann;T. Reps
{{ 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 }}

Jan Hoffmann其他文献

Finding a tree structure in a resolution proof is NP-complete
  • DOI:
    10.1016/j.tcs.2009.02.018
  • 发表时间:
    2009-05
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Jan Hoffmann
  • 通讯作者:
    Jan Hoffmann
Types with potential: polynomial resource bounds via automatic amortized analysis
具有潜力的类型:通过自动摊销分析的多项式资源界限
  • DOI:
  • 发表时间:
    2011
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Jan Hoffmann
  • 通讯作者:
    Jan Hoffmann
Draft – April 16 , 2013 Observing Progress Properties via Contextual Refinements ( Extended Version )
草案 – 2013 年 4 月 16 日 通过上下文细化观察进度属性(扩展版本)
  • DOI:
  • 发表时间:
    2013
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Hongjin Liang;Jan Hoffmann;Xinyu Feng;Zhong Shao
  • 通讯作者:
    Zhong Shao
Higher-order functional reactive programming in bounded space
有界空间中的高阶函数反应式编程
Replication Package for Article: Central Moment Analysis for Cost Accumulators in Probabilistic Programs
文章的复制包:概率程序中成本累加器的中心矩分析

Jan Hoffmann的其他文献

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

{{ truncateString('Jan Hoffmann', 18)}}的其他基金

SHF: Medium: Language Support for Sound and Efficient Programmable Inference
SHF:中:对健全且高效的可编程推理的语言支持
  • 批准号:
    2311983
  • 财政年份:
    2023
  • 资助金额:
    $ 51.88万
  • 项目类别:
    Continuing Grant
SHF: Small: Automatic Qualitative and Quantitative Verification of CUDA Code
SHF:Small:CUDA代码的自动定性和定量验证
  • 批准号:
    2007784
  • 财政年份:
    2020
  • 资助金额:
    $ 51.88万
  • 项目类别:
    Standard Grant
SHF: Small: Collaborative Research: Resource-Guided Program Synthesis
SHF:小型:协作研究:资源引导程序综合
  • 批准号:
    1812876
  • 财政年份:
    2018
  • 资助金额:
    $ 51.88万
  • 项目类别:
    Standard Grant

相似海外基金

Project MARLIN (Maritime, Acoustic, Realtime, Learning, Information and Notification)
MARLIN 项目(海事、声学、实时、学习、信息和通知)
  • 批准号:
    10065619
  • 财政年份:
    2023
  • 资助金额:
    $ 51.88万
  • 项目类别:
    Collaborative R&D
MARLIN AQUA - Sustainable Energy Access for Offshore Aquaculture
MARLIN AQUA - 近海水产养殖的可持续能源获取
  • 批准号:
    10050623
  • 财政年份:
    2022
  • 资助金额:
    $ 51.88万
  • 项目类别:
    Collaborative R&D
MARLIN STAR Community Access to Stored and Transferrable Energy from Floating Renewables
MARLIN STAR 社区从浮动可再生能源中获取储存和可转移的能源
  • 批准号:
    105915
  • 财政年份:
    2020
  • 资助金额:
    $ 51.88万
  • 项目类别:
    Collaborative R&D
MARLIN Modular Floating Platform for OffShore Wind: Concept Assessment
用于海上风电的 MARLIN 模块化浮动平台:概念评估
  • 批准号:
    132491
  • 财政年份:
    2017
  • 资助金额:
    $ 51.88万
  • 项目类别:
    Feasibility Studies
MARLIN Modular Floating Platform for Offshore Wind: Concept Assessment
MARLIN 海上风电模块化浮动平台:概念评估
  • 批准号:
    EP/P032958/1
  • 财政年份:
    2017
  • 资助金额:
    $ 51.88万
  • 项目类别:
    Research Grant
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了