Z - Notation
Z - Notation
Z Notation? HUH?!?
It is a set of conventions for presenting mathematical text, chosen to make it convenient to use simple mathematics to describe computing systems. It is targeted to clarify and streamline the specification and requirement process
Supplemented by a larger collection of useful objects and operators called the Z mathematical tool-kit.
A State A collection of state variables and their values There are also some operations that can change its state
Z Notation Formulas
Z operators are defined by formulas. These are done through symbols These symbols hold most of the same meanings as they do in an of our math classes
Notation Example
Name Some variables are declared. As well as state transitions. Relationship between the values of the variables [NAME; DATE]: Init Birthday Book Birthday Book Known =
Notation Example II
Birthday book known: NAME birthday: NAME DATE
One possible state of the system has three people in the set known, with their birthdays recorded by the function birthday:
known = { John; Mike; Susan } birthday = { John 25-Mar, Mike 20-Dec, Susan 20-Dec }
date?: DATE
name? known birthday = birthday U { name? date}
Date! : DATE
name? Known date != birthday(name?)
REFERENCES
http://spivey.oriel.ox.ac.uk/mike/zrm/z rm.pdf http://staff.washington.edu/jon/zlectures/z-lectures.html Software Engineering Theory and Practice, 3rd Edition