SHF: Small: VeriFFI -- Formally Verified Functional+C programs
SHF:小型:VeriFFI——经过正式验证的函数式 C 程序
基本信息
- 批准号:2005545
- 负责人:
- 金额:$ 50万
- 依托单位:
- 依托单位国家:美国
- 项目类别:Standard Grant
- 财政年份:2020
- 资助国家:美国
- 起止时间:2020-06-15 至 2025-05-31
- 项目状态:未结题
- 来源:
- 关键词:
项目摘要
Formal deductive verification -- machine-checked proofs of program correctness using tools such as proof assistants -- is an effective way of building very high assurance secure components, such as operating-system kernels and cryptographic communications primitives. Existing logics, tools, and methods for program verification apply either to low-level languages (such as C) or high-level functional languages. But real-world systems are programmed in a mix of languages: low-level imperative languages for components such as operating-system (OS) kernels and cryptographic primitives; high-level languages for most applications, for OS-management code, for cryptographic protocols, and for the runtime systems of the high-level languages. This project develops methods and tools for formal verification of high-level language programs linked with low-level programs, proved correct to a unified specification that crosses the boundary with no gaps. The high-level language is the functional programming language inside the Coq proof assistant, verified using Coq’s logic, and compiled (provably correctly) with the CertiCoq compiler. The low-level language is C, verified using the Verified Software Toolchain (VST), and compiled (provably correctly) using the CompCert verified C compiler. The new Verified Foreign Function Interface (VeriFFI) exploits synergies between CertiCoq’s toolchain and VST/CompCert to enable such unified verifications.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.
形式演绎验证-使用证明助手等工具对程序正确性进行机器检查证明-是构建非常高保证安全组件(如操作系统内核和密码通信原语)的有效方法。现有的逻辑、工具和程序验证方法适用于低级语言(如C)或高级函数式语言。 但现实世界的系统是用多种语言混合编程的:低级命令式语言用于操作系统(OS)内核和密码原语等组件;高级语言用于大多数应用程序,用于OS管理代码,用于密码协议,以及用于高级语言的运行时系统。 该项目开发了用于与低级程序相关联的高级语言程序的形式化验证的方法和工具,证明了对跨越边界的统一规范的正确性。 高级语言是Coq证明助手中的函数式编程语言,使用Coq的逻辑进行验证,并使用CertiCoq编译器进行编译(可证明正确)。低级语言是C,使用经过验证的软件工具链(VST)进行验证,并使用CompCert验证的C编译器进行编译(可证明正确)。 新的已验证外部功能接口(VeriFFI)利用了CertiCoq工具链和VST/CompCert之间的协同作用,实现了此类统一验证。该奖项反映了NSF的法定使命,并通过使用基金会的知识价值和更广泛的影响审查标准进行评估,被认为值得支持。
项目成果
期刊论文数量(3)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
Deriving efficient program transformations from rewrite rules
从重写规则中导出有效的程序转换
- DOI:10.1145/3473579
- 发表时间:2021
- 期刊:
- 影响因子:0
- 作者:Li, John M.;Appel, Andrew W.
- 通讯作者:Appel, Andrew W.
A Proof Tree Builder for Sequent Calculus and Hoare Logic
用于顺序微积分和霍尔逻辑的证明树构建器
- DOI:10.4204/eptcs.375.5
- 发表时间:2023
- 期刊:
- 影响因子:0
- 作者:Korkut, Joomy
- 通讯作者:Korkut, Joomy
Compositional optimizations for CertiCoq
CertiCoq 的成分优化
- DOI:10.1145/3473591
- 发表时间:2021
- 期刊:
- 影响因子:0
- 作者:Paraskevopoulou, Zoe;Li, John M.;Appel, Andrew W.
- 通讯作者:Appel, Andrew W.
{{
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 }}
Andrew Appel其他文献
Andrew Appel的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Andrew Appel', 18)}}的其他基金
Collaborative Research: FMitF: Track I: Formally Verified Numerical Methods
合作研究:FMitF:第一轨:形式验证的数值方法
- 批准号:
2219757 - 财政年份:2022
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
Collaborative Research: Expeditions in Computing: The Science of Deep Specification
合作研究:计算探索:深度规范的科学
- 批准号:
1521602 - 财政年份:2015
- 资助金额:
$ 50万 - 项目类别:
Continuing Grant
SHF: Medium: Collaborative Research: Principled Optimizing Compilation of Dependently Typed Languages
SHF:媒介:协作研究:依赖类型语言的原则优化编译
- 批准号:
1407794 - 财政年份:2014
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
TC: Large:Collaborative Research: Combining Foundational and Lightweight Formal Methods to Build Certifiably Dependable Software
TC:大型:协作研究:结合基础和轻量级形式方法来构建可证明可靠的软件
- 批准号:
0910448 - 财政年份:2009
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
End-to-end source-to-object verification of interface safety
接口安全的端到端源到对象验证
- 批准号:
0540914 - 财政年份:2006
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
Collaborative Research: High-Assurance Common Language Runtime
协作研究:高保证的公共语言运行时
- 批准号:
0208601 - 财政年份:2002
- 资助金额:
$ 50万 - 项目类别:
Continuing Grant
Applying Compiler Techniques to Proof-Carrying Code
将编译器技术应用于证明代码
- 批准号:
9974553 - 财政年份:1999
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
Framework, Algorithms, and Applications for Cross-Module Inlining
跨模块内联的框架、算法和应用
- 批准号:
9625413 - 财政年份:1996
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
Standard ML of New Jersey Software Capitalization
新泽西州软件资本化的标准 ML
- 批准号:
8914570 - 财政年份:1990
- 资助金额:
$ 50万 - 项目类别:
Standard 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 RNA 测序技术解析鸽分泌鸽乳的分子机制
- 批准号:31802058
- 批准年份:2018
- 资助金额:26.0 万元
- 项目类别:青年科学基金项目
肠道细菌关键small RNAs在克罗恩病发生发展中的功能和作用机制
- 批准号:31870821
- 批准年份:2018
- 资助金额:56.0 万元
- 项目类别:面上项目
Small RNA介导的DNA甲基化调控的水稻草矮病毒致病机制
- 批准号:31772128
- 批准年份:2017
- 资助金额:60.0 万元
- 项目类别:面上项目
基于small RNA-seq的针灸治疗桥本甲状腺炎的免疫调控机制研究
- 批准号:81704176
- 批准年份:2017
- 资助金额:20.0 万元
- 项目类别:青年科学基金项目
水稻OsSGS3与OsHEN1调控small RNAs合成及其对抗病性的调节
- 批准号:91640114
- 批准年份:2016
- 资助金额:85.0 万元
- 项目类别:重大研究计划
相似海外基金
CSR: Small: Leveraging Physical Side-Channels for Good
CSR:小:利用物理侧通道做好事
- 批准号:
2312089 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
NeTS: Small: NSF-DST: Modernizing Underground Mining Operations with Millimeter-Wave Imaging and Networking
NeTS:小型:NSF-DST:利用毫米波成像和网络实现地下采矿作业现代化
- 批准号:
2342833 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
CPS: Small: NSF-DST: Autonomous Operations of Multi-UAV Uncrewed Aerial Systems using Onboard Sensing to Monitor and Track Natural Disaster Events
CPS:小型:NSF-DST:使用机载传感监测和跟踪自然灾害事件的多无人机无人航空系统自主操作
- 批准号:
2343062 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
Collaborative Research: FET: Small: Reservoir Computing with Ion-Channel-Based Memristors
合作研究:FET:小型:基于离子通道忆阻器的储层计算
- 批准号:
2403559 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
オミックス解析を用いたブドウ球菌 small colony variants の包括的特徴づけ
使用组学分析全面表征葡萄球菌小菌落变体
- 批准号:
24K13443 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Grant-in-Aid for Scientific Research (C)
AF: Small: Problems in Algorithmic Game Theory for Online Markets
AF:小:在线市场的算法博弈论问题
- 批准号:
2332922 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
Collaborative Research: FET: Small: Algorithmic Self-Assembly with Crisscross Slats
合作研究:FET:小型:十字交叉板条的算法自组装
- 批准号:
2329908 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
NeTS: Small: ML-Driven Online Traffic Analysis at Multi-Terabit Line Rates
NeTS:小型:ML 驱动的多太比特线路速率在线流量分析
- 批准号:
2331111 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
Collaborative Research: SHF: Small: LEGAS: Learning Evolving Graphs At Scale
协作研究:SHF:小型:LEGAS:大规模学习演化图
- 批准号:
2331302 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant
Collaborative Research: SHF: Small: LEGAS: Learning Evolving Graphs At Scale
协作研究:SHF:小型:LEGAS:大规模学习演化图
- 批准号:
2331301 - 财政年份:2024
- 资助金额:
$ 50万 - 项目类别:
Standard Grant