SHF:Small: Extensible Models and Proofs via Family Polymorphism
SHF:Small:通过族多态性的可扩展模型和证明
基本信息
- 批准号:2303983
- 负责人:
- 金额:$ 39.69万
- 依托单位:
- 依托单位国家:美国
- 项目类别:Standard Grant
- 财政年份:2023
- 资助国家:美国
- 起止时间:2023-07-01 至 2025-06-30
- 项目状态:未结题
- 来源:
- 关键词:
项目摘要
Proof assistants enable interactive development of models and their machine-checked proofs. These developments provide guarantees that a model has certain properties, such as security, correctness, and soundness of systems. They are also used as a teaching vehicle, for example in classes on the semantics of programming languages. Unfortunately, proof assistants such as Coq lack a mechanism for extensible design of models and proofs. Today, when a model and its corresponding proofs need to be extended, developers typically copy-paste the development and manually propagate the changes. This leads to a proliferation of developments that are not linked together and that duplicate one another, obscuring concepts. This project brings built-in extensibility of models and proofs to proof assistants. In particular, it prioritizes code reuse, code modularity, and soundness of extensions. The project also aims to make extensibility intuitive for the user and a minimal disruption to the user experience. The project’s novelties are the built-in nature of extensibility — since related solutions are largely add-ons or plug-ins, as well as the use of family polymorphism to support extensibility of proofs. The project’s impacts are the rapid, incremental verification of evolving systems, code modularity and reuse in the proof setting, and lowered barriers to entry for beginners in verification.This project brings family polymorphism to the world of proof assistants. Family polymorphism is a mechanism in the theory of programming languages by which families of features can be inherited integrally. Families provide organizational benefits, such as code modularity, as well as extensibility benefits, such as type safety of code in the presence of inheritance. Family polymorphism will support extensible designs of models and proofs, facilitating code reuse and proof reuse. Furthermore, it will be possible to specify and prove family-polymorphic guarantees for any sound family derived from a base family. A derived family is sound if it satisfies all the proof obligations inherited from a base family. Family polymorphism supports both a “vertical” extension, where features are extended in a single hierarchy, as well as “horizontal” extension, where features are combined independently. The latter is achieved with traits and mixin composition in systems such as Scala. Since nested family polymorphism enables the encoding of mixin composition, the same mechanism for both vertical and horizontal extensions can be used. This project uses family polymorphism as a unifying mechanism for its set of extensibility strategies for the proof setting. The challenges include integrating family polymorphism and extensibility strategies with the dependent type theory of proof assistants, finding strategies to reuse proofs as well as models, and making the integration seamless for practical use. Informed by these challenges, the project researches three main areas related to modular reuse in proof assistants: (1) meta-theories, (2) strategies, and (3) implementations.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.
Proof Assistant支持模型的交互式开发及其机器检查的证明。这些发展保证了模型具有某些属性,如系统的安全性、正确性和可靠性。它们也被用作教学工具,例如在编程语言语义的课程中。不幸的是,像Coq这样的证明助手缺乏一种可扩展的模型和证明设计机制。今天,当一个模型及其相应的证明需要扩展时,开发人员通常会复制粘贴开发并手动传播更改。这就导致了相互之间没有联系和相互重复的发展扩散,模糊了概念。该项目为证明助手带来了模型和证明的内置可扩展性。特别是,它优先考虑代码重用,代码模块化和扩展的可靠性。该项目还旨在为用户提供直观的可扩展性,并将对用户体验的干扰降至最低。该项目的新颖之处在于内置的可扩展性--因为相关的解决方案主要是附加组件或插件,以及使用家族多态性来支持证明的可扩展性。该项目的影响是对不断发展的系统进行快速、增量的验证,验证设置中的代码模块化和重用,以及降低初学者进入验证的门槛。该项目将家族多态性带到了验证助手的世界。家族多态性是编程语言理论中的一种机制,通过它可以完整地继承特征家族。族提供了组织上的好处,比如代码模块化,以及可扩展性的好处,比如在存在继承的情况下代码的类型安全。家族多态性将支持模型和证明的可扩展设计,促进代码重用和证明重用。此外,它将有可能指定和证明家庭多态保证任何健全的家庭来自一个基本家庭。如果派生族满足从基族继承的所有证明义务,则派生族是可靠的。族多态性支持“垂直”扩展(其中功能在单个层次结构中扩展)和“水平”扩展(其中功能独立组合)。后者是在Scala等系统中通过traits和mixin组合实现的。由于嵌套的家族多态性支持对mixin组合进行编码,因此可以对垂直和水平扩展使用相同的机制。这个项目使用家族多态性作为证明设置的扩展策略集的统一机制。面临的挑战包括集成家庭多态性和扩展性策略与依赖类型理论的证明助手,找到策略,以重用证明以及模型,并使实际使用的无缝集成。鉴于这些挑战,该项目研究了与证明助手中的模块化重用相关的三个主要领域:(1)元理论,(2)策略,(3)实现。该奖项反映了NSF的法定使命,并通过使用基金会的知识价值和更广泛的影响审查标准进行评估,被认为值得支持。
项目成果
期刊论文数量(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 }}
Nada Amin其他文献
Extensible Metatheory Mechanization via Family Polymorphism
通过族多态性的可扩展元理论机械化
- DOI:
10.1145/3591286 - 发表时间:
2023 - 期刊:
- 影响因子:0
- 作者:
Ende Jin;Nada Amin;Yizhou Zhang - 通讯作者:
Yizhou Zhang
Type soundness for dependent object types (DOT)
依赖对象类型 (DOT) 的类型健全性
- DOI:
- 发表时间:
2016 - 期刊:
- 影响因子:0
- 作者:
Tiark Rompf;Nada Amin - 通讯作者:
Nada Amin
What are the Odds?: probabilistic programming in Scala
可能性有多大?:Scala 中的概率编程
- DOI:
10.1145/2489837.2489848 - 发表时间:
2013 - 期刊:
- 影响因子:0
- 作者:
Sandro Stucki;Nada Amin;Manohar Jonnalagedda;Tiark Rompf - 通讯作者:
Tiark Rompf
Dependent Object Types Towards a foundation for Scala's type system
依赖对象类型 为 Scala 类型系统奠定基础
- DOI:
- 发表时间:
2012 - 期刊:
- 影响因子:0
- 作者:
Nada Amin;Adriaan Moors;Martin Odersky - 通讯作者:
Martin Odersky
Nada Amin的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
相似国自然基金
昼夜节律性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: CNS Core: Small: Creating An Extensible Internet Through Interposition
合作研究:CNS核心:小:通过介入创建可扩展的互联网
- 批准号:
2242503 - 财政年份:2023
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
Collaborative Research: CNS Core: Small: Creating An Extensible Internet Through Interposition
合作研究:CNS核心:小:通过介入创建可扩展的互联网
- 批准号:
2242502 - 财政年份:2023
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
Collaborative Research: SHF: Small: Scalable and Extensible I/O Runtime and Tools for Next Generation Adaptive Data Layouts
协作研究:SHF:小型:可扩展和可扩展的 I/O 运行时以及下一代自适应数据布局的工具
- 批准号:
2401274 - 财政年份:2023
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
Collaborative Research: SHF: Small: Scalable and Extensible I/O Runtime and Tools for Next Generation Adaptive Data Layouts
协作研究:SHF:小型:可扩展和可扩展的 I/O 运行时以及下一代自适应数据布局的工具
- 批准号:
2221811 - 财政年份:2022
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
Collaborative Research: SHF: Small: Scalable and Extensible I/O Runtime and Tools for Next Generation Adaptive Data Layouts
协作研究:SHF:小型:可扩展和可扩展的 I/O 运行时以及下一代自适应数据布局的工具
- 批准号:
2221812 - 财政年份:2022
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
TWC: Small: Collaborative: Extensible Symbolic Analysis Modulo SMT: Combining the Powers of Rewriting, Narrowing, and SMT Solving in Maude
TWC:小:协作:可扩展符号分析 Modulo SMT:结合 Maude 中重写、缩小和 SMT 求解的能力
- 批准号:
1319109 - 财政年份:2013
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
TWC: Small: Collaborative: Extensible Symbolic Analysis Modulo SMT: Combining the Powers of Rewriting, Narrowing, and SMT Solving in Maude
TWC:小:协作:可扩展符号分析 Modulo SMT:结合 Maude 中重写、缩小和 SMT 求解的能力
- 批准号:
1318848 - 财政年份:2013
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
TWC: Small: Provably Enforcing Practical Multi-Layer Policies in Today's Extensible Software Platforms
TWC:小型:在当今的可扩展软件平台中可证明地执行实用的多层策略
- 批准号:
1320470 - 财政年份:2013
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
TWC: Small: Extensible Web Browsers and User Privacy
TWC:小型:可扩展的 Web 浏览器和用户隐私
- 批准号:
1223231 - 财政年份:2012
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant
TTP: Small: NFS4Sec: An Extensible Security Layer for Network Storage
TTP:小:NFS4Sec:网络存储的可扩展安全层
- 批准号:
1223239 - 财政年份:2012
- 资助金额:
$ 39.69万 - 项目类别:
Standard Grant