Subsections

Assignments and tests

Second (final) examination

The second (and mercifully final) examination will take place on 16 April at 2 pm in Molson 110.

Recall that the examination will be open book, meaning that you are allowed to use any kind of printed documentation. Electronic devices are not permitted and you are not allowed to share any material with your colleagues. Here you can find some generic information about open book exams. I strongly recommend that you (a) index well your material so that you can find the information you seek in short order and (b) ignore your material as much as possible (ideally, completely). If you stop every time to look things up you will most likely run out of time. Instead of bringing your textbook and lecture notes I also recommend that you prepare cheat sheets (no more than 4 pages) summarizing key concepts; this is going to save you considerable time during the exam.

This test covers the matter discussed in the second half of the term. This includes Chapters 11, 1, 2, 3, and 4 from the textbook and the associated lectures and lecture notes, plus the introduction on formal methods.

The type of questions asked in the examination will be similar to the ones asked in Assignments 5 and 6, plus some small questions that will test the basic understanding of the concepts. You are encouraged to check out the exercises in the textbook for supplementary practice but you should be fine if you participated in solving the assignment questions. It is worth emphasizing that it is crucial to understand how to answer questions from the two assignments, especially the ones in Assignment 6. Do not forget about Chapter 3, which should be consider a nice set of solved exercises.

Expect the bulk of the examination to be dedicated to specification and verification using the Hoare logic. Expect one question involving a loop, an array, and also a quantifier in the postcondition.

The questions on parsing and formal methods are not expected to exceed 17% (each) of the exam marks.

When it comes to formal methods, I expect you to be able to write simple CSP descriptions and also to be able to construct the transition graphs of given CSP processes. You are also expected to be able to inspect transition graphs and draw conclusions about the behaviour of the respective system including but not limited to the identification of deadlock situations. Check out the lecture notes for some larger examples (such as Isabella and Kate painting) and also for the definition of deadlock. Finally, you should be able to compute the set of traces of simple processes and draw conclusions about the equivalence of two processes based on their traces.

First (mid-term) examination

The highest grade in the examination was 42 (105%), the lowest grade was 9 (23%), and the average grade was 22 (55%).

The mid-term examination took place on 1 March during the regular class time.

The test covers most of the material on formal languages namely, Chapter 7 to Chapter 10 from the textbook and the associated lectures and lecture notes. Sections 8.5 and 10.7 were not covered and so will not be tested.

The type of questions asked in the examination will be similar to the ones asked in Assignments 1 to 4, plus some small questions that will test the basic understanding of the concepts. You are encouraged to check out the exercises in the textbook for supplementary practice but you should be fine if you participated in solving the assignment questions.

Assignments

Recall that the assignments can be done in groups of up to three students. All the collaborators must be currently enrolled in the course. A single joint solution must be submitted for each group, including the names and student numbers of all the collaborators.

Assignment can be submitted on paper in class, or as a single PDF containing all your answers by email. Either way your solution is due at 1 pm (end of class) on the due date.

Late submissions will be accepted subject to a penalty of 10% per day late until my solutions are posted on the course's Web site (which can happen as soon as two days after the due date). No submissions will be accepted afterward.

It goes without saying that a correct answer with no justification will give you full marks (unless the justification is explicitly required in the question), while an incorrect answer with no justification will give you no marks. However, there is also a middle ground: a justification that makes sense may give you partial marks even if the answer in incorrect.