SHF: Medium: Fiat: Correct-by-Construction and Mostly Automated Derivation of Programs with an Interactive Theorem Prover
SHF:Medium:Fiat:使用交互式定理证明器进行构造正确和大部分自动推导程序
基本信息
- 批准号:1512611
- 负责人:
- 金额:$ 80万
- 依托单位:
- 依托单位国家:美国
- 项目类别:Standard Grant
- 财政年份:2015
- 资助国家:美国
- 起止时间:2015-09-01 至 2020-08-31
- 项目状态:已结题
- 来源:
- 关键词:
项目摘要
Title: SHF: Medium: Fiat: Correct-by-Construction and Mostly Automated Derivation of Programs with an Interactive Theorem ProverTo scale to ambitious software-development tasks, programming languages must provide features for abstraction and modularity. Large advances in programming productivity have often come via new features of that kind. This project investigates new program-structuring ideas based fundamentally on machine-checked mathematical proofs. More specifically, through the design of a prototype system Fiat within the Coq proof assistant, the project studies how to derive efficient programs automatically from logical specifications. Programmers may package new notations and associated styles of automation as libraries, and a single program may mix notations, automatically benefiting from the combination of all of their associated automation for deriving efficient programs. In this way, Fiat makes it possible to split a program into parts for functionality and performance, with strong guarantees that bugs in the performance parts can never violate the requirements in the functionality parts. The intellectual merits are widely applicable new ideas in modular program structuring, with strong formal guarantees of correctness. The project's broader significance and importance are based on the potential to improve programmer productivity dramatically, for software projects in a wide variety of contexts; and the project also studies how the idea of mostly automated refinement from specifications can be integrated into introductory programming and discrete-math classes, to drive home the value of logical notation in programming.The primary case-study domain in the project is practical Internet servers, such as for domain-name lookup or delivery of electronic mail. The goal is to develop Fiat versions of these key services, deriving efficient executable code automatically. Past work on deriving data layers from specifications in the style of SQL is being extended, in addition to exploration of other domains for specification and automated derivation, such as synthesis of parsers from grammars, to use for the protocols that servers speak, the configuration files that they read, etc. Beyond studying how such new libraries may be constructed and composed, the project also investigates how to push the synthesis process to lower abstraction levels than in our prototype implementation, which generates functional programs. The improved Fiat system will derive assembly programs, enabling choice of more effective optimizations thanks to more direct control of machine resources, integrating with the Bedrock Coq library for verified multilanguage programming.
题目:SHF: Medium: Fiat:基于交互式定理的程序构造更正和大部分自动化派生为了扩展到雄心勃勃的软件开发任务,编程语言必须提供抽象和模块化的特性。编程生产力的巨大进步往往来自于这类新特性。本项目主要研究基于机器检验数学证明的新的程序结构思想。更具体地说,通过Coq证明助手中的原型系统Fiat的设计,研究了如何从逻辑规范中自动导出高效的程序。程序员可以将新的符号和相关的自动化风格打包为库,并且单个程序可以混合符号,自动地从所有相关的自动化组合中受益,从而派生出高效的程序。通过这种方式,Fiat使得将程序分为功能和性能两个部分成为可能,并强有力地保证了性能部分的错误永远不会违反功能部分的要求。智力上的优点是在模块化程序结构中广泛应用的新思想,具有很强的正确性的形式保证。项目更广泛的意义和重要性是基于在各种各样的环境中显著提高程序员生产力的潜力;该项目还研究了如何将规范的大部分自动化改进的想法集成到入门编程和离散数学课程中,以充分说明逻辑符号在编程中的价值。项目中的主要案例研究领域是实用的Internet服务器,例如用于域名查找或电子邮件传递的服务器。目标是开发这些关键服务的Fiat版本,自动生成高效的可执行代码。过去从SQL风格的规范中派生数据层的工作正在得到扩展,此外还在探索规范和自动派生的其他领域,例如从语法中合成解析器,用于服务器所说的协议,它们读取的配置文件等。除了研究如何构建和组合这样的新库之外,该项目还研究了如何将合成过程推进到比我们的原型实现更低的抽象级别,从而生成功能程序。改进后的Fiat系统将派生装配程序,通过对机器资源的更直接控制,实现更有效的优化选择,并与Bedrock Coq库集成,实现经过验证的多语言编程。
项目成果
期刊论文数量(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 }}
Adam Chlipala其他文献
Towards a Scalable Proof Engine: A Performant Prototype Rewriting Primitive for Coq
- DOI:
10.1007/s10817-024-09705-6 - 发表时间:
2024-08-14 - 期刊:
- 影响因子:0.800
- 作者:
Jason Gross;Andres Erbsen;Jade Philipoom;Rajashree Agrawal;Adam Chlipala - 通讯作者:
Adam Chlipala
Adam Chlipala的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Adam Chlipala', 18)}}的其他基金
Collaborative Research: SHF: Medium: High-Performance, Verified Accelerator Programming
合作研究:SHF:中:高性能、经过验证的加速器编程
- 批准号:
2313023 - 财政年份:2023
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
SaTC: CORE: Small: Scaling Correct-by-Construction Code Generation for Cryptography
SaTC:核心:小型:扩展密码学的构造正确代码生成
- 批准号:
2130671 - 财政年份:2022
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
Collaborative Research: Expeditions in Computing: The Science of Deep Specification
合作研究:计算探索:深度规范的科学
- 批准号:
1521584 - 财政年份:2015
- 资助金额:
$ 80万 - 项目类别:
Continuing Grant
CAREER: A Formal Verification Platform Focused on Programmer Productivity
CAREER:专注于程序员生产力的正式验证平台
- 批准号:
1253229 - 财政年份:2013
- 资助金额:
$ 80万 - 项目类别:
Continuing Grant
SHF: Small: Capitalizing on First-Class SQL Support in the Ur/Web Programming Language
SHF:小型:利用 Ur/Web 编程语言中的一流 SQL 支持
- 批准号:
1217501 - 财政年份:2012
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
相似海外基金
Collaborative Research: CyberTraining: Implementation: Medium: Training Users, Developers, and Instructors at the Chemistry/Physics/Materials Science Interface
协作研究:网络培训:实施:媒介:在化学/物理/材料科学界面培训用户、开发人员和讲师
- 批准号:
2321102 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
RII Track-4:@NASA: Bluer and Hotter: From Ultraviolet to X-ray Diagnostics of the Circumgalactic Medium
RII Track-4:@NASA:更蓝更热:从紫外到 X 射线对环绕银河系介质的诊断
- 批准号:
2327438 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
Collaborative Research: Topological Defects and Dynamic Motion of Symmetry-breaking Tadpole Particles in Liquid Crystal Medium
合作研究:液晶介质中对称破缺蝌蚪粒子的拓扑缺陷与动态运动
- 批准号:
2344489 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
Collaborative Research: AF: Medium: The Communication Cost of Distributed Computation
合作研究:AF:媒介:分布式计算的通信成本
- 批准号:
2402836 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Continuing Grant
Collaborative Research: AF: Medium: Foundations of Oblivious Reconfigurable Networks
合作研究:AF:媒介:遗忘可重构网络的基础
- 批准号:
2402851 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Continuing Grant
Collaborative Research: CIF: Medium: Snapshot Computational Imaging with Metaoptics
合作研究:CIF:Medium:Metaoptics 快照计算成像
- 批准号:
2403122 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
Collaborative Research: SHF: Medium: Differentiable Hardware Synthesis
合作研究:SHF:媒介:可微分硬件合成
- 批准号:
2403134 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
Collaborative Research: SHF: Medium: Enabling Graphics Processing Unit Performance Simulation for Large-Scale Workloads with Lightweight Simulation Methods
合作研究:SHF:中:通过轻量级仿真方法实现大规模工作负载的图形处理单元性能仿真
- 批准号:
2402804 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
Collaborative Research: CIF-Medium: Privacy-preserving Machine Learning on Graphs
合作研究:CIF-Medium:图上的隐私保护机器学习
- 批准号:
2402815 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Standard Grant
Collaborative Research: SHF: Medium: Tiny Chiplets for Big AI: A Reconfigurable-On-Package System
合作研究:SHF:中:用于大人工智能的微型芯片:可重新配置的封装系统
- 批准号:
2403408 - 财政年份:2024
- 资助金额:
$ 80万 - 项目类别:
Standard Grant