Overview
(In-)Formal Methods are practical structuring and design patterns that encourage programming that is easy to understand and to maintain. They are only a part of the large body of “good programming practices,” distinguished from that larger set because –for the methods we consider– the computer-science community has determined the science … For more content click the Read More button below.
Unusually, this course does not take the traditional route of teaching that science first, and then turning it into practical programming “tools-of-thought.” Instead, we teach the mental tools first, try them on examples and only then, once their effectiveness has been demonstrated, will we look behind the scenes to see where they come from.
Initially the material will deal with conventional programs, those that must “give the right output.” (This is known as functional correctness, and a sorting program is a simple example.) Later in the course we will look at additional correctness criteria, such as security (perform this calculation in a way that keeps part of the answer hidden) and randomisation (implement over-the-internet protocols that depend intrinsically on coin-flipping). Those last two topics will draw on up-to-the-minute research.
Conditions for Enrolment
Pre-requisite: MATH1081 AND COMP2521 AND (not enrolled in SENGAH)
Delivery
In-person - Standard (usually weekly or fortnightly)
Course Outline
To access course outline please visit below link (Please note that access to UNSW Canberra course outlines requires VPN):
Fees
Type | Amount |
---|---|
Commonwealth Supported Students (if applicable) | $994 |
Domestic Students | $5970 |
International Students | $5970 |
Pre-2019 Handbook Editions
Access past handbook editions (2018 and prior)