课题基金 / 基金详情

Correct translation of abstract specifications to C-Code

Correct translation of abstract specifications to C-Code
将抽象规范正确翻译为 C 代码
批准号:
503992399
负责人:
Professor Dr. Wolfgang Reif
金额:
$0.0万
依托单位国家:
德国
项目类别:
Research Grants
财政年份:
--
资助国家:
德国
项目状态:
未结题
起止时间:

项目摘要

项目成果

Professor Dr. Wolfgang Reif的其他基金

相似基金

相关文献

中文摘要
翻译
点击翻译按钮获取中文摘要
英文摘要
Correct translation of abstract specifications to C-Code (VeriCode)The refinement based approach is a successful technique for the development of verified software. It usually ends with imperativeprograms (organized in components) together with axiomatic descriptions of data structures and functions in predicate logic. Many projects have used this methodology successfully. One very extensive project is our Flashix project, in which we developed and verified a file system for Flash memory.Specifications and programs use the referentially transparent copy semantics of predicate logic, the weakest precondition calculus forsequential programs, and a rely-guarantee calculus for concurrent programs. To get executable code from such programs, theorem provers typically generate functional programs with immutable data structures.The resulting code is usually inefficient since destructive updates, that are necessary for the efficient use of e.g. arrays, are notcorrect in general. In addition, the necessary garbage collection is not possible for applications in operating system kernels, or inreal-time applications. These require code that manages memory explicitly, e.g. C-Code.Moving from abstract, referentially transparent data structures to efficient, destructive code is difficult, since explicit informationwhere memory should be allocated or which updates can overwrite is not present.In previous work we have developed an approach, that translates in a way that keeps all data structures disjoint (unshared) betweencomponents, and modifies unshared data structures destructively. Although this leads to a considerable improvement it is stillinefficient compared to manually written code (ca. a factor of 10, depending on the application), since an assignment x := ystill has to copy the data structure stored in y including all substructures (if y is still used). These copy operations can often be avoided using a careful analysis.The goal of this project is to develop a systematic data flow analysis that allows the generation of optimal C-Code with a minimum of copy operations, such that the resulting code is comparably efficient to manually written code (factor 1-3). For this, we want to define a specification framework with algebraic specifications for abstract data types, as well as concurrent imperative programs. We want to formally specify the core of the data flow analysis and verify that the transformation from the specification language yields correct code without memory leaks.To document the success of the project, its results will be evaluated with several case studies.The abstract specification framework allows the project result to be used by all other verification systems, and can significantly improve the practical usage of verified programs.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
COMBO – Combining Planning, Self-Organization and Reconfiguration in Robot Ensembles for ScORe Missions
TeamBotS - A tool-supported methodology for developing software for dynamic teams of robots
Flashix II: Incremental verification of non-local refinements
Verifikation Lock-freier Algorithmen
国内基金
海外基金
解码精母细胞特异5’UTR元件调控DNA损伤修复基因MSH5翻译挽救减数分裂障碍的研究
  • 批准号:
    82371607
  • 项目类别:
    面上项目
  • 资助金额:
    46.00万元
  • 批准年份:
    2023
  • 负责人:
    李铮
  • 依托单位:
蛋白精氨酸甲基化转移酶PRMT5调控PPARG促进巨噬细胞M2极化及其在肿瘤中作用的机制研究
  • 批准号:
    82371738
  • 项目类别:
    面上项目
  • 资助金额:
    49.00万元
  • 批准年份:
    2023
  • 负责人:
    郑英霞
  • 依托单位:
白质消融性白质脑病中胶质细胞选择性受累的机制研究
  • 批准号:
    30872793
  • 项目类别:
    面上项目
  • 资助金额:
    32.0万元
  • 批准年份:
    2008
  • 负责人:
    吴晔
  • 依托单位:
白质消融性白质脑病致病基因EIF2B5的突变功能研究
  • 批准号:
    30772355
  • 项目类别:
    面上项目
  • 资助金额:
    29.0万元
  • 批准年份:
    2007
  • 负责人:
    姜玉武
  • 依托单位: