Skip Administration

Administration

Topic outline

 
Formal Methods in Software Development (326.009/326.013, WS 2007/08)

Time:
  • Friday 8:30-11:45 (except October 19 and November 9)
  • Friday 14:30-18:00 (additional classes on October 12 and November 16)
Room:
  • HS 11 (regular and additional class on November 16)
  • HS 14 (additional class on October 12)
Start: October 5.

This course gives a survey on the use of formal methods for the development of reliable software. More specifically, we deal with

  • specifying sequential programs and concurrent systems,
  • computer-supported verification,
  • extended static checking,
  • model checking,
  • proof-carrying code.
The course consists of two parts:
  1. a lecture part where the fundamental issues of the field are taught, and
  2. an exercise part where practical skills are trained using freely available software tools.
The grading of the course will be based on a couple of exercises and a final exam. The course is offered simultaneously as 4KV (for the master program "computer mathematics") and 3KV (for the master program "software engineering"). The detailed organization will be explained in class.

To take part in the course, you have to enrol in the KUSSS system. Since the exercises will be submitted via Moodle, you also have to login in Moodle and register as a course participant. You will then also receive per email all messages posted in the News forum.

 
1
Contents
A class given by Hans-Wolfgang Loidl (LMU Munich), member of the EmBounded project and of the former Mobile Resource Guarantees project.

Proof-carrying-code (PCC) is a software mechanism that allows a host system to determine with certainty that it is safe to execute a program supplied by an untrusted source. This is achieved by attaching a condensed version of a formal proof to the program. In this part of the course we will examine the principles of PCC, explore different variants in the design of a PCC infrastructure, and take a closer look at some selected PCC infrastructures.

The structure of this part of the course is as follows:
  1. Motivation
  2. Basic Concepts
  3. An Example: CCured
  4. Components of the PCC Architecture
  5. Main challenges
  6. PCC for Resources
  7. Certificate Generation
  8. Summary
Restricted Area
The password to this area is handed out in class

Show only topic 1
2
Schedule
  1. October 5, 8:30-11:45 (all): introduction, logic, RISC ProofNavigator
  2. October 12, 8:30-11:45 (all): RISC ProofNavigator, Hoare calculus
  3. October 12, 14:30-18:00 (all): Hoare calculus, verification with RISC ProofNavigator
  4. November 16, 8:30-11:45 (all): JML, ESC/Java2
  5. November 16, 14:30-18:00 (KV4 only): more on Hoare calculus and verification
  6. November 23, 8:30-11:45 (all): ESC/Java2, JML
  7. November 30, 8:30-11:45 (all): JML/KeY
  8. December 7, 8:30-11:45 (all): modeling concurrent systems, simulating with Spin
  9. December 14, 8:30-11:45 (all): specifying concurrent systems
  10. January 11, 8:30-11:45 (all): model checking with Spin
  11. January 18, 8:30-11:45 (KV4 only): modeling message passing, verification with the RISC ProofNavigator
  12. January 25, 8:30-11:45 (KV4 only): guest lecture on PCC by H.W. Loidl
  13. February 1, 8:30-10:00 (all): exam
Show only topic 2
3Show only topic 3
4
Exercises
8 exercises are handed out; at least 7 (KV3 students: 5) of them have to be positively elaborated within two weeks. The exercises account for 50% of the course grade.

Show only topic 4
5
Exam
The final exam takes place in written form on Friday, February 1 2008, 8:30-10:00 in HS11. No materials are allowed; don't forget to bring your student id card with you. The exam has to be positively passed; it accounts for 50% of the course grade.

Results
Another exam will take place in April; check the course page at the beginning of March.

2nd Exam
A second exam takes place in written form on Wednesday, April 2 2008, 17:15-18:45 in K009D. You have to register in KUSSS for the exam by April 1, 12:00. No materials are allowed; don't forget to bring your student id card with you. The exam has to be positively passed; it accounts for 50% of the course grade.
Show only topic 5
Skip Calendar

Calendar

Mon Tue Wed Thu Fri Sat Sun
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 Today Friday, 19 March 19 20 21
22 23 24 25 26 27 28
29 30 31     

Events Key

Skip Upcoming Events

Upcoming Events

There are no upcoming events
Skip Latest News

Latest News

  • 5 Mar, 13:27
    Wolfgang Schreiner
    2nd Exam: April 2, 2008 more...
  • 1 Feb, 21:16
    Wolfgang Schreiner
    Exam Results more...
  • 30 Jan, 15:53
    Wolfgang Schreiner
    Exam more...
  • 29 Jan, 16:26
    Wolfgang Schreiner
    Exercise 9 (Extra) more...
  • 29 Jan, 12:33
    Wolfgang Schreiner
    Exercise 8 grades more...