你在这里: 主页 教学 2012/2013年冬季学期 Java的形式化方法(讲座)

Java的形式化方法(讲座)

最近,形式化方法已成功用于指定和验证大型软件系统。当前的一个例子是Verisoft项目,其目标是创建一个经过充分验证的处理器、操作系统和编译器。在本讲座中,我们将研究Java语言的现有方法。之所以选择Java语言,是因为它是一种成熟的语言,具有其语义的半形式化定义(Java语言规范)。然而,要使用数学推理,我们需要精确定义语义。因此,我们将概述Java操作语义的定义。此外,我们将研究Java的不同形式化方法。起点是允许按合同设计的语言扩展JML。这允许向方法添加前置和后置条件,并向类和循环添加不变量。可以在运行时检查这些断言,这是JML运行时断言检查器(jmlrac)的目的。另一方面,还有一些静态方法,例如ESC/Java和Jahob,可以自动提供数学证明,证明Java代码可以确保每个可能的前置条件的后置条件。如果不能自动找到这些证明,也可以使用定理证明器来帮助手动找到证明。在本讲座中,我们将介绍Java代码验证的不同方法。在练习中,您将在小的实际示例中研究不同的工具。
课程类型 讲座
讲师 Jochen Hoenicke公司
讲座 星期二,16:00–18:00 c.t.,106号楼00 007室(MMR)
星期五上午10:00-11:00,106号楼00 007室(MMR)
练习 星期五,11:00–12:00,106号楼00 007室(MMR)
第一次会议 讲座23.10.12
教学语言 英语
信用 6
考试 欧乐,2013年3月6日,052号楼,00-017室
课程目录 福尔马利法

 

新闻

  • 文件的新版本优先级队列.java已上载完整注释。这包括JMLTools中错误的解决方法。
  • 2013年1月11日,星期五,我们将有两个小时的教程来讨论圣诞表。本教程将由Jochen Hoenicke主持。请将您的解决方案发送给他(参见表上的送货单)。
  • 教员们从笔试评估转向了新的评估在线评估系统。请在1月28日至2月8日期间使用此系统,为我们提供讲座反馈。您需要RAS登录才能访问系统。这些页面有德语和英语版本。请注意,即使您必须登录系统,您对问题的回答也将是完全匿名的。

福尔马利亚

入学标准

你必须做所有的练习。

练习提交方案

每周二上课前。

考试

将会有口试。考试日期稍后公布。

请像往常一样通过考试办公室注册。

资源

文献和网络资源

幻灯片和其他材料

练习