Skip to content

Module Catalogue

Breadcrumbs navigation

CS4052   Logic and Software Verification

Academic year(s): 2019-2020

Key information

SCOTCAT credits : 15

ECTS credits : 7

Level : SCQF level 10

Semester: 1

Availability restrictions: Not automatically available to General Degree students

Planned timetable: To be arranged.

Building on earlier coverage of elementary logic, this module motivates the need for formal methods and software verification approaches as model checking for guaranteeing the correctness of software systems. The module covers modelling, system property specification using temporal logics, and more applied approaches to software specification and verification through the use of model checkers. Model checkers such as SPIN and UPPAAL are used both in lectures and in practical work. Petri nets and program semantics are also explored. Software correctness is thus presented as a matter not of testing but of pre-execution verification through model checking.

Relationship to other modules

Pre-requisite(s): Before taking this module you must pass CS3052

Learning and teaching methods and delivery

Weekly contact: 2 lectures (x 10 weeks) and fortnightly tutorial.

Scheduled learning hours: 26

Guided independent study hours: 124

Assessment pattern

As used by St Andrews: 2-hour Written Examination = 60%, Coursework = 40%

As defined by QAA
Written examinations : 60%
Practical examinations : 0%
Coursework: 40%

Re-assessment: 2-hour Written Examination = 60%, Existing Coursework = 40%

Personnel

Module teaching staff: TBC Module coordinator(s): Honours Coordinator - Computer Science (hons-coord-cs@st-andrews.ac.uk)