Languages and tools for the construction of verifiable programs
Languages and tools for the construction of verifiable programs
批准号:
203416-2006
负责人:
Sekerinski, Emil
金额:
$1.74万
依托单位:
依托单位国家:
加拿大
项目类别:
Discovery Grants Program - Individual
财政年份:
2007
资助国家:
加拿大
项目状态:
已结题
起止时间:
2007-01-01 至 2008-12-31
中文摘要
随着我们越来越依赖软件,软件的可靠性越来越受到社会的关注。仅在美国,商务部在2002年估计,每年可避免的软件错误给经济造成的损失在200亿到600亿美元之间。超过一半的成本是由用户承担的。长期目标是为“正确的软件”的理想做出贡献。重点是使软件开发的设计阶段更加可靠。该项目的主旨是,只有通过整合多种技术来提高可靠性,才能取得进一步的突破性进展。我们考虑的技术包括面向对象编程、规范技术、并发性、异常处理、定理证明和文档技术。该方法是在编译器中集成一个自动定理证明器(一阶逻辑的决策过程),并允许程序包含规范。这允许编译器检查实现是否满足其规范。它还允许编译器检测可能发生错误(违反规范)的地方,并让程序员在这些情况下编写异常处理程序。基于动作的并发比基于线程的并发更容易表达和验证。另一方面,基于动作的并发很难有效地实现。集成决策过程允许优化,例如避免对动作保护的评估。因此,这种方法为程序员编写规范提供了多种好处:检查正确性、更好的异常处理和更高效的代码。
英文摘要
As we become more dependent on software, the reliability of software is of increasing concern to society. In the US alone, the Department of Commerce in 2002 estimated that the cost to the economy of avoidable software errors is between 20 and 60 billion dollars every year. Over half the cost is incurred by the users. The long-term goal is to contribute to the ideal of "correct software". The focus is on making the design phase of software development more reliable. The thesis of this project is that further groundbreaking progress can only be achieved by an integration of several techniques for improving reliability. The techniques that we consider are object-oriented programming, specification techniques, concurrency, exception handling, theorem proving, and documentation techniques. The approach is to integrate an automatic theorem prover (a decision procedure for first-order logic) in the compiler and allow programs to contain specifications. This allows the compiler to check if an implementation meets its specification. It also allows the compiler to detect where errors (specification violations) can occur and make the programmer write exception handlers in those cases. Action-based concurrency is easier to express and verify than thread-based concurrency. On the other hand, action-based concurrency is difficult to implement efficiently. The integrated decision procedure allows for optimizations, like avoiding evaluations of action guards. Thus, the approach gives programmers multiple benefits for writing specifications: checking the correctness, better exception handling, and more efficient code.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$3.79万
-
财政年份:2021
-
负责人:Sekerinski, Emil
-
依托单位:
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.89万
-
财政年份:2020
-
负责人:Sekerinski, Emil
-
依托单位:
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.89万
-
财政年份:2019
-
负责人:Sekerinski, Emil
-
依托单位:
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.89万
-
财政年份:2018
-
负责人:Sekerinski, Emil
-
依托单位:
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.89万
-
财政年份:2017
-
负责人:Sekerinski, Emil
-
依托单位:
Programming Methodology for Multi-Core Concurrency and Adaptation
-
批准号:203416-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.02万
-
财政年份:2015
-
负责人:Sekerinski, Emil
-
依托单位:
Programming Methodology for Multi-Core Concurrency and Adaptation
-
批准号:203416-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.02万
-
财政年份:2014
-
负责人:Sekerinski, Emil
-
依托单位:
Programming Methodology for Multi-Core Concurrency and Adaptation
-
批准号:203416-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.02万
-
财政年份:2013
-
负责人:Sekerinski, Emil
-
依托单位:
Programming Methodology for Multi-Core Concurrency and Adaptation
-
批准号:203416-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.02万
-
财政年份:2012
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2010
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2009
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2008
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2006
-
负责人:Sekerinski, Emil
-
依托单位:
Proof-carrying programs
-
批准号:203416-2002
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.6万
-
财政年份:2005
-
负责人:Sekerinski, Emil
-
依托单位:
Proof-carrying programs
-
批准号:203416-2002
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.6万
-
财政年份:2004
-
负责人:Sekerinski, Emil
-
依托单位:
Compiling object-oriented action-based concurrency
-
批准号:300280-2004
-
项目类别:Research Tools and Instruments - Category 1 (<$150,000)
-
资助金额:$1.27万
-
财政年份:2003
-
负责人:Sekerinski, Emil
-
依托单位:
Proof-carrying programs
-
批准号:203416-2002
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.6万
-
财政年份:2003
-
负责人:Sekerinski, Emil
-
依托单位:
Proof-carrying programs
-
批准号:203416-2002
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.6万
-
财政年份:2002
-
负责人:Sekerinski, Emil
-
依托单位:
Building object-oriented programs for embedded systems
-
批准号:203416-1998
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.26万
-
财政年份:2001
-
负责人:Sekerinski, Emil
-
依托单位:
Building object-oriented programs for embedded systems
-
批准号:203416-1998
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.26万
-
财政年份:2000
-
负责人:Sekerinski, Emil
-
依托单位:
海外基金