Course Introduction - School of Computer Science

advertisement
G53FSP
Formal Specification
Dr. Rong Qu
Course Introduction
http://www.cs.nott.ac.uk/~rxq/g53fsp
School of Computer Science
G53FSP Formal Specifications
1
Formal Specification Definition

Covers a range of topics



Mathematical specification of programming
language
Application of formal methods in the management
of large software projects
Use of formal mathematical techniques in
program development is becoming more
important as systems become more complex
and crucial
School of Computer Science
G53FSP Formal Specifications
2
Course Aims



English “requirements specification” of a
computer systems
an exact formal
specification required in program
Understand the principles of Formal
Specification techniques via mathematical
methods
Be able to read and write specifications in Z
School of Computer Science
G53FSP Formal Specifications
3
Course Aims

Z language



Developed at Oxford
Widely accepted
Other methods also available
School of Computer Science
G53FSP Formal Specifications
4
Course Context
G51MCS
Mathematics for Computer Scientists
G51MC2
Mathematics for Computer Science 2
G53FSP
Formal Specification
School of Computer Science
G53FSP Formal Specifications
5
Pre-requisites


Rely heavily on

Set theory

First order predicate logic
First part of this module

Set theory

Relations and functions

Sequences, etc
School of Computer Science
G53FSP Formal Specifications
6
Who Can Attend?


Third-year

Single Honors

Joint Honors Computer Science
Other students from outside the School

who fulfilled the pre-requisites for
admissions to the module
School of Computer Science
G53FSP Formal Specifications
7
Course Introduction

Lectures

Handouts/notes, summary of each lecture

Speak properly (louder, clearer, faster, slower)

Feedback on coursework

Course content not too much / too little
School of Computer Science
G53FSP Formal Specifications
8
Course Introduction

Lectures

2 slots per week



Lectures, tutorial, coursework feedback, etc
About 16 hours
Lecture Times and Locations


Tue 13:00 (C3 Exchange Building)
Thur 15:00 (C1 Exchange Building)
School of Computer Science
G53FSP Formal Specifications
9
Text Book

E. Burke and E. Foxley.
Logic and its Applications.
Prentice Hall.
International Series in
Computer Science.
Second Printing. 1996.
~9 in GGL, UoN
School of Computer Science
G53FSP Formal Specifications
10
Useful Reading

David Lightfoot.
Formal Specification
using Z. Palgrave,
2001

Well written easy to
understand
School of Computer Science
G53FSP Formal Specifications
11
Useful Reading

Antoni Diller. An
Introduction to
Formal Methods.
2nd Edition. John
Wiley, 1994.



Comprehensive
tutorial intro
Practical exercises
Code
School of Computer Science
G53FSP Formal Specifications
12
Course Assessment


100% on coursework
3 pieces of coursework





15%: 2 exercises (Burke & Foxley book)
35%: 4 exercises (Burke & Foxley book)
50%: 1 handout
Non-assessed exercise (latex, 2 exercises)
Need to be formatted electronically using a proper Z preprocessor
 Roff, latex
School of Computer Science
G53FSP Formal Specifications
13
Coursework Schedule

Coursework




Is already available
Closing dates 15:30pm on the day
Hand in to school’s support office
No further extensions
School of Computer Science
G53FSP Formal Specifications
14
Course Outline

Lecture 1 & 2 – introduction



Background knowledge
FSP introduction
 specifications, formal methods advantages and
disadvantages
Lecture 3-5 – mathematical background

Propositional calculus, predicate calculus, set
theory, bags, relations, functions, sequences,
recursion and induction
School of Computer Science
G53FSP Formal Specifications
15
Course Outline

Lecture 6-16 – the Z specification language

Schemas: information schemas, state schema,
observation or query schema, axiom schema

Algebra: operations on Z schema

Large system case study

Coursework and exercises walkthrough
School of Computer Science
G53FSP Formal Specifications
16
Course Information

Course web page

http://www.cs.nott.ac.uk/~rxq/g53fsp

All lecture notes online

All coursework


Course schedule – please check updates during
the course
Supplementary materials
School of Computer Science
G53FSP Formal Specifications
17
Summary





Aims of the course
Textbooks
Lectures, course outline
Assessment, coursework schedule
Course web page
School of Computer Science
G53FSP Formal Specifications
18
Download