News
Re-Exam ResultsWritten on 28.03.22 by Julian Siber Dear students, we have published the results of the Re-Exam. You can find your result on the Personal Status page. |
Main Exam ResultsWritten on 28.02.22 by Jan Baumeister Dear students, we have published the results of the Main Exam. You can find your result on the Personal Status page. Dear students, we have published the results of the Main Exam. You can find your result on the Personal Status page. |
Results Project Part 3Written on 18.02.22 by Julian Siber Dear students, We have reviewed the third project part and uploaded the results in the CMS. If you have not passed this part, you may fix your project until the 24th of February. Please take note of the additional Office Hour on Monday, 21st of February at 10:15am, where we can help you with… Read more Dear students, We have reviewed the third project part and uploaded the results in the CMS. If you have not passed this part, you may fix your project until the 24th of February. Please take note of the additional Office Hour on Monday, 21st of February at 10:15am, where we can help you with fixing the last bugs. Have a nice weekend, |
Exams and Additional Office HoursWritten on 15.02.22 (last change on 15.02.22) by Julian Siber Dear students, Please note the following ahead of the exam next week on Friday, 25th of February at 14:00pm. The exam will take place in lecture hall 0.01 (Günter-Hotz-Hörsaal) in E2 2. The re-exam will be on 28th of March in the same lecture hall. You need to pass either the exam or the re-exam to… Read more Dear students, Please note the following ahead of the exam next week on Friday, 25th of February at 14:00pm. The exam will take place in lecture hall 0.01 (Günter-Hotz-Hörsaal) in E2 2. The re-exam will be on 28th of March in the same lecture hall. You need to pass either the exam or the re-exam to pass the course. Please also remember to register in the LSF at least one week before the exam, and again before the re-exam if you plan to attend it. Regarding Covid-related restrictions, you will get a separate mail from us. The duration of the exams will be 150 minutes. They will be "open book", i.e., you are allowed to bring any hand-written or printed materials, including books, problem sets, and slides. Electronic devices such as e-book readers, smart watches, etc are not allowed. This Wednesday, 16th of February, and next Monday, 21st of February, we will have additional Office Hours to assist you with the project and the exam preparation both starting at 10:15am. We have also uploaded an additional Problem Set in the CMS with problems that you can use for your preparation. We wish you good luck for the exam, |
Project Part 3 ReleasedWritten on 27.01.22 by Julian Siber Dear students, the third part of the project is now online. Please update your forked repositories as you did for the second part. Best of luck, |
Project Part 3 on ThursdayWritten on 25.01.22 (last change on 27.01.22) by Julian Siber Dear students, We expect to cover the topics of the third project part in Thursday's lecture, hence we will release Project Part 3 on Thursday as well. The deadline for Project Part 3 will be on 17th of February. To adjust for this higher workload shortly before the exam, Part 3 will be… Read more Dear students, We expect to cover the topics of the third project part in Thursday's lecture, hence we will release Project Part 3 on Thursday as well. The deadline for Project Part 3 will be on 17th of February. To adjust for this higher workload shortly before the exam, Part 3 will be comparatively small. Also, we will adjust the points on the problem sets to give you more time to work on the project. Instead of a maximum of 24 points, there will be a maximum of only 12 points (+ 6 Bonus points). See you on Thursday, |
Results Project Part 2Written on 14.01.22 by Julian Siber Dear students, We have reviewed the second project part and uploaded the results in the CMS. If you have not passed this part, you may fix your project until the 20th of January. In these cases, we have created an issue on GitLab that includes the tests that failed for your project. If you… Read more Dear students, We have reviewed the second project part and uploaded the results in the CMS. If you have not passed this part, you may fix your project until the 20th of January. In these cases, we have created an issue on GitLab that includes the tests that failed for your project. If you have any questions or cannot see the issue, don't hesitate to contact us by mail or on MS Teams. See you online and stay healthy, |
Project Part 3 DelayedWritten on 13.01.22 (last change on 13.01.22) by Jan Baumeister Dear students, As mentioned in the lecture, we will not upload the new project part today. This results from the delay in the course. We will upload the new project part next week and give you more time to work on this last part of the project. We are sorry for the delay, Dear students, As mentioned in the lecture, we will not upload the new project part today. This results from the delay in the course. We will upload the new project part next week and give you more time to work on this last part of the project. We are sorry for the delay, |
Results Project Part 1Written on 14.12.21 by Jan Baumeister Dear students, We have reviewed the first project part and uploaded the results on the CMS. We allow you to fix your project if you have not passed this part. For this, you have time until the 5th of January. We created an issue on GitLab that includes the tests that failed, such that every… Read more Dear students, We have reviewed the first project part and uploaded the results on the CMS. We allow you to fix your project if you have not passed this part. For this, you have time until the 5th of January. We created an issue on GitLab that includes the tests that failed, such that every project member can see the results. If you have any questions or cannot see the issue, don't hesitate to contact us by mail or on MS Teams. See you online and stay healthy, |
Project Part 2 ReleasedWritten on 13.12.21 by Julian Siber Dear students, the second part of the project is now online. Please follow the instructions provided in the Materials section to update your forked repositories. Best of luck, and sorry for the inconvenience! |
Project Part 2 DelayedWritten on 09.12.21 by Julian Siber Dear students, Unfortunately, we have to delay the release of Project Part 2, which was originally planned for today. We will release it on Monday at the latest. Furthermore, we will extend its deadline by one week to account for the delay and the Christmas holidays. Sorry for the… Read more Dear students, Unfortunately, we have to delay the release of Project Part 2, which was originally planned for today. We will release it on Monday at the latest. Furthermore, we will extend its deadline by one week to account for the delay and the Christmas holidays. Sorry for the inconvenience and have a nice weekend, |
Lectures and Office Hour Online OnlyWritten on 24.11.21 by Julian Siber Dear students, As mentioned in Tuesday's lecture, we will react to the growing number of COVID-19 cases and new regulations by holding the lectures and office hours online only, starting today. Simply use the Zoom link for the lectures, and join us in the MS Teams call for the Office Hour. The… Read more Dear students, As mentioned in Tuesday's lecture, we will react to the growing number of COVID-19 cases and new regulations by holding the lectures and office hours online only, starting today. Simply use the Zoom link for the lectures, and join us in the MS Teams call for the Office Hour. The tutorials will keep their hybrid setup as long as this is allowed. See you online and stay healthy, |
Course Project Released!Written on 11.11.21 by Julian Siber Dear students, We have released the first part of the course project. You can find detailed instructions in the Project Overview and Project Part 1 in the Materials section of the CMS. If you have any questions regarding the project, post on MS Teams or come to the Office Hour. Best of… Read more Dear students, We have released the first part of the course project. You can find detailed instructions in the Project Overview and Project Part 1 in the Materials section of the CMS. If you have any questions regarding the project, post on MS Teams or come to the Office Hour. Best of luck, and give Rust a try! |
Team Groupings EnabledWritten on 29.10.21 (last change on 29.10.21) by Julian Siber Dear students, We have enabled the Team Groupings feature in the CMS for the submission of the Problem Sets. This feature allows you to create and join teams via your Personal Status page. After a team is founded, you can invite the other students with an invitation code. The feature allows you… Read more Dear students, We have enabled the Team Groupings feature in the CMS for the submission of the Problem Sets. This feature allows you to create and join teams via your Personal Status page. After a team is founded, you can invite the other students with an invitation code. The feature allows you to hand in group submissions. All team members can see the Problem Set submission of their team on their Personal Status pages. Please use the Team Groupings feature for the next submissions, starting with Problem Set B next week. Have a nice weekend, |
Tutorial Assignment & MS TeamsWritten on 22.10.21 (last change on 25.10.21) by Julian Siber Dear students, We have assigned you to the tutorial slots. You can see your assigned tutorial on your Personal Status page. Due to the great interest in the lecture, we have decided to offer dedicated offline and online tutorials in each time slot. The offline tutorials are located in Room 206,… Read more Dear students, We have assigned you to the tutorial slots. You can see your assigned tutorial on your Personal Status page. Due to the great interest in the lecture, we have decided to offer dedicated offline and online tutorials in each time slot. The offline tutorials are located in Room 206, E1 1. For the online tutorials, we will use MS Teams. Please join us on MS Teams by finding a link and code in this weeks Problem Set A. Use the code to join our team by selecting the button "Join or create team" in the top-right corner of the "Teams" page (selected on the left in MS Teams). You can use the Forum channel on MS Teams to find a group to work with, or to ask questions related to the course. Have a nice weekend, |
Welcome to Verification!Written on 20.10.21 by Julian Siber Dear students, We have now uploaded the first lecture in the Materials section, where you can also find the lecture slides and the assignment sheets starting tomorrow. The video of Lecture 1 leaves room for improvement, and we are working on improving both the video and streaming… Read more Dear students, We have now uploaded the first lecture in the Materials section, where you can also find the lecture slides and the assignment sheets starting tomorrow. The video of Lecture 1 leaves room for improvement, and we are working on improving both the video and streaming setup. Additionally, we would like to remind you to register in the CMS and set your tutorial preferences by the end of tomorrow. Remember that we can only find the globally best tutorial assignment if you only mark "Not Okay" if you have another lecture or tutorial in this time slot. Looking forward to the next lecture, |
Registration Is Open!Written on 27.09.21 (last change on 27.09.21) by Julian Siber Dear students, Registration is now open. Please use the additional fields named "Lecture/Tutorial Mode" to indicate whether you will likely attend the lectures and tutorials in person if both options are possible. This will help us tremendously in offering you an optimal course setup. Looking… Read more Dear students, Registration is now open. Please use the additional fields named "Lecture/Tutorial Mode" to indicate whether you will likely attend the lectures and tutorials in person if both options are possible. This will help us tremendously in offering you an optimal course setup. Looking forward to the coming semester, |
Verification
Core Lecture Course (9 CP)
Lectures: Tuesday 2 to 4 pm and Thursday 10 am to 12 noon in HS001, E1 3.
Tutorials: Friday 10 am to 12 noon and Friday 12 noon to 2 pm in Room 206, E1 1.
Office Hour: Wednesday 10 am to 12 noon in Room 106, E1 1.
There will be an option to attend the lectures, tutorials and Office Hour remotely.
Syllabus
How can one ensure that computer programs actually do what they are intended to do? Simply running a program repeatedly with various inputs is inadequate, because one cannot tell which inputs might cause the program to fail. It is possible to tailor a tester to test a given program, but present-day programs are so complex that they cannot be adequately checked through conventional testing, which can leave significant bugs undetected. Program verification uses mathematical and logical methods to prove that a program is correct. This approach was pioneered by, among others, Dijkstra, Floyd, Gries, Hoare, Lamport, Manna, Owicki and Pnueli. Today, we have powerful decision procedures that can, completely automatically, answer basic questions about the data types typically used by programmers. Model Checking is a “push-button” technology that can analyze finite-state abstractions of programs with as many as 1020 states. This course takes an up-to-date look at the theory and practice of program verification.
Recommended Reading
- Christel Baier, Joost-Pieter Katoen: Principles of Model Checking, 2008.
- Edmund M. Clarke, Orna Grumberg, Daniel Kroening, Doron Peled, Helmut Veith: Model Checking, 2018.
- Edmund M. Clarke, Thomas A. Henzinger, Helmut Veith, Roderick Bloem: Handbook of Model Checking, 2018 (available on Springer Link).
- Aaron R. Bradley and Zohar Manna: The Calculus of Computation, 2007 (available on Springer Link).