SHF: Small: RUI: New Foundations for Indexed Programming
SHF: Small: RUI: New Foundations for Indexed Programming
批准号:
1713389
负责人:
Patricia Johann
金额:
$46.35万
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2017
资助国家:
美国
项目状态:
已结题
起止时间:
2017-09-15 至 2021-08-31
中文摘要
在过去50年的软件开发中,程序测试占据了主导地位,但在接下来的50年里,对可证明正确的软件的需求将会增加。这部分是因为现代应用程序对安全的要求越来越高,部分是因为测试本质上只是部分正确性保证,部分是因为编程语言技术现在已经发展到可以正式验证关键程序的阶段。基于语言的验证使用语言的类型系统来保证程序的正确性,因此类型检查就相当于验证程序的正确性。因此,类型系统可以表达的程序属性越多,编译器可以自动验证的就越多。索引编程是使用语言的类型系统来表达程序越来越复杂的性质的一项关键技术。索引式编程使用类型索引中存在的额外信息来帮助弥合程序员对程序的了解与类型系统可以表达的程序之间的所谓“语义鸿沟”。该项目的学术价值在于为在支持类型的类型索引的语言和支持类型的术语索引的语言之间传递关于有效编程和证明的知识提供了一种原则性的方法,开发了一个语义框架,增强了研究人员和实践者对索引类型的一般性质的理解,并为能够加强更大正确性保证的新的索引形式开辟了道路。这个项目更广泛的影响是使用索引类型来开发更好和更广泛适用的正式程序验证方法,从而帮助确保即使是大型和复杂的软件系统也是安全和可靠的。由于它将导致可证明正确和安全的软件,该项目有可能影响任何应用领域,从而影响任何经济部门,对这些软件至关重要。该项目将使用索引的代数结构来指导程序员使用索引类型编程的方式。具体地说,它将通过为索引编程提供一个原则性的、概念简单的、全面的、统一的和预测性的公理框架来推进最先进的技术。它将使用分支的范畴概念来确保框架足够通用,以描述传统的类型索引和术语索引,并在索引具有更复杂和计算有用的代数结构时规定索引编程的方法。为此,它将开发类似于传统类型和术语索引下的纤颤中存在的伴随结构,以用于更通用的纤颤解释程序、它们的类型和它们的属性。由于纤颤可以在非常通用的计算环境中统一建模非常通用的“索引”和“程序属性”概念,因此它们确实是新框架的一个很有前途的基础。该框架的开发将推动理论和实践向前发展,方法是在传统的类型索引和术语索引环境之间传递知识,解决这些环境中的最新问题,并提供对索引方案编制概念实质的理解,使这些传统环境中的问题解决方案能够推广到新的环境。
英文摘要
Testing of programs has dominated the last 50 years of software development, but the next 50 will see an increased demand for provably correct software. This is partly because modern applications are increasingly safety critical, partly because testing is by its very nature only a partial correctness guarantee, and partly because programming language technology has now advanced to the stage where it is feasible to formally verify critical programs. Language-based verification uses a language's type system to guarantee program correctness, so that type-checking a program becomes tantamount to verifying its correctness. Thus, the more program properties a type system can express, the more the compiler can automatically verify. Indexed programming is a key technique for using a language's type system to express more and more sophisticated properties of programs. Indexed programming uses the extra information present in type indices to help close the so-called "semantic gap" between what programmers know about their programs and what type systems can express about them. The intellectual merits of this project lie in providing a principled methodology for transferring knowledge about effective programming and proving between languages supporting type-indexing of types and those supporting term-indexing of types, developing a semantic framework that enhances researchers' and practitioners' understanding of the nature of indexed types in general, and opening the way for new forms of indexing that can enforce even greater correctness guarantees. The broader impact of this project is to use indexed types to develop better and more widely applicable formal program verification methods, and, thereby, to help ensure that even large and sophisticated software systems are safe and reliable. Because it will lead to provably correct and secure software, this project has the potential to impact any application area, and thus any sector of the economy, for which such software is paramount.This project will use the algebraic structure of indexing to guide the way programmers program with indexed types. Specifically, it will advance the state-of-the-art by providing an axiomatic framework for indexed programming that is principled, conceptually simple, comprehensive, uniform, and predictive. It will use the categorical notion of a fibration to ensure that the framework is general enough both to describe traditional type- and term-indexing of types, and to prescribe approaches to indexed programming when indices have more sophisticated and computationally useful algebraic structure. To this end, it will develop analogues of the adjoint structure present in the fibrations underlying traditional type- and term-indexing for more general fibrations interpreting programs, their types, and their properties. Because fibrations can uniformly model very general notions of "index" and "program property" in very general computational settings, they are indeed a promising foundation for the new framework. The development of the framework will drive both theory and practice forward by transferring knowledge between the traditional type- and term-indexed settings, solving state-of-the-art problems in each of these settings, and providing an understanding of the conceptual essence of indexed programming that allows problem solutions from these traditional settings to be extended to new ones.
期刊论文(3)
专著(0)
科研奖励(0)
会议论文
GADTs, Functoriality, Parametricity: Pick Two
GADT、函数性、参数性:选择两个
DOI:
--
发表时间:
2021
期刊:
Logical And Semantic Frameworks with Applications
影响因子:
--
作者:
[Johann, P., Ghiorzi, E., and Jeffries, D.]
通讯作者:
and Jeffries, D.
Local Presentability of Certain Comma Categories
某些逗号类别的本地可呈现性
DOI:
10.1007/s10485-019-09574-w
发表时间:
2019
期刊:
Applied categorical structures
影响因子:
0.6
作者:
[Polonsky, Andrew, Johann, Patricia]
通讯作者:
Johann, Patricia
SHF:Small:RUI: Deep Induction Rules for Advanced Data Types
-
批准号:2203217
-
项目类别:Standard Grant
-
资助金额:$61.31万
-
财政年份:2022
-
负责人:Patricia Johann
-
依托单位:
SHF:Small:RUI: Semantic Complexity of Advanced Data Types
-
批准号:1906388
-
项目类别:Standard Grant
-
资助金额:$51.08万
-
财政年份:2019
-
负责人:Patricia Johann
-
依托单位:
SHF: Small: Relational Parametricity for Program Verification
-
批准号:1420175
-
项目类别:Standard Grant
-
资助金额:$37.71万
-
财政年份:2014
-
负责人:Patricia Johann
-
依托单位:
Categorical Foundations for Indexed Programming
-
批准号:EP/G068917/1
-
项目类别:Research Grant
-
资助金额:$35.92万
-
财政年份:2010
-
负责人:Patricia Johann
-
依托单位:
RUI:Initial Algebra Packages for GADTs: Principled Tools for Structured Programming
-
批准号:0700341
-
项目类别:Standard Grant
-
资助金额:$13.8万
-
财政年份:2007
-
负责人:Patricia Johann
-
依托单位:
RUI: Provable Safety for Performance-Improving Free Theorems-Based Program Transformations
-
批准号:0429072
-
项目类别:Continuing Grant
-
资助金额:$12.38万
-
财政年份:2004
-
负责人:Patricia Johann
-
依托单位:
RUI: Testing and Enhancing a Prototype Program Fusion Engine
-
批准号:0296006
-
项目类别:Standard Grant
-
资助金额:$5.04万
-
财政年份:2001
-
负责人:Patricia Johann
-
依托单位:
RUI: Testing and Enhancing a Prototype Program Fusion Engine
-
批准号:9900510
-
项目类别:Standard Grant
-
资助金额:$5.04万
-
财政年份:1999
-
负责人:Patricia Johann
-
依托单位:
Mathematical Sciences: Toward a Theory of Well-Founded Orderings for Use in Automated Deduction
-
批准号:9696043
-
项目类别:Standard Grant
-
资助金额:$1.8万
-
财政年份:1995
-
负责人:Patricia Johann
-
依托单位:
Mathematical Sciences: Toward a Theory of Well-Founded Orderings for Use in Automated Deduction
-
批准号:9510164
-
项目类别:Standard Grant
-
资助金额:$1.8万
-
财政年份:1995
-
负责人:Patricia Johann
-
依托单位:
International Postdoctoral Fellows Program: A Transformation-Based Order-Sorted Higher-Order Unification Algorithm in Combinatory Logic
-
批准号:9224443
-
项目类别:Standard Grant
-
资助金额:$0.0万
-
财政年份:1993
-
负责人:Patricia Johann
-
依托单位:
国内基金
海外基金
登录
查看更多内容
昼夜节律性small RNA在血斑形成时间推断中的法医学应用研究
-
批准号:
-
项目类别:省市级项目
-
资助金额:--
-
批准年份:2024
-
负责人:
-
依托单位:
tRNA-derived small RNA上调YBX1/CCL5通路参与硼替佐米诱导慢性疼痛的机制研究
-
批准号:
-
项目类别:省市级项目
-
资助金额:10.0万元
-
批准年份:2022
-
负责人:张祥忠
-
依托单位:
Small RNA调控I-F型CRISPR-Cas适应性免疫性的应答及分子机制
-
批准号:32000033
-
项目类别:青年科学基金项目
-
资助金额:24.0万元
-
批准年份:2020
-
负责人:林平
-
依托单位:
Small RNAs调控解淀粉芽胞杆菌FZB42生防功能的机制研究
-
批准号:31972324
-
项目类别:面上项目
-
资助金额:58.0万元
-
批准年份:2019
-
负责人:高学文
-
依托单位:
变异链球菌small RNAs连接LuxS密度感应与生物膜形成的机制研究
-
批准号:81900988
-
项目类别:青年科学基金项目
-
资助金额:21.0万元
-
批准年份:2019
-
负责人:毛梦莹
-
依托单位:
肠道细菌关键small RNAs在克罗恩病发生发展中的功能和作用机制
-
批准号:31870821
-
项目类别:面上项目
-
资助金额:56.0万元
-
批准年份:2018
-
负责人:陈江宁
-
依托单位:
基于small RNA 测序技术解析鸽分泌鸽乳的分子机制
-
批准号:31802058
-
项目类别:青年科学基金项目
-
资助金额:26.0万元
-
批准年份:2018
-
负责人:麻慧
-
依托单位:
Small RNA介导的DNA甲基化调控的水稻草矮病毒致病机制
-
批准号:31772128
-
项目类别:面上项目
-
资助金额:60.0万元
-
批准年份:2017
-
负责人:吴建国
-
依托单位:
基于small RNA-seq的针灸治疗桥本甲状腺炎的免疫调控机制研究
-
批准号:81704176
-
项目类别:青年科学基金项目
-
资助金额:20.0万元
-
批准年份:2017
-
负责人:赵继梦
-
依托单位:
水稻OsSGS3与OsHEN1调控small RNAs合成及其对抗病性的调节
-
批准号:91640114
-
项目类别:重大研究计划
-
资助金额:85.0万元
-
批准年份:2016
-
负责人:何祖华
-
依托单位: