Introduction to the Z Example One
-
Upload
abdul-simpson -
Category
Documents
-
view
24 -
download
1
description
Transcript of Introduction to the Z Example One
Introduction to the ZExample One
2
Write Z specifications for the Exam Schedule Problem
The Exam Schedule system keeps track of all final exams. It allows you to add, delete, update, and search exams of all courses in the college. Every exam has a specific date.
3
The Z specification should include:
Given Sets State Schema Initial State Operations
4
The Exam Schedule Z Specification
1. Given Sets [COURSE,DATE]
5
The Exam Schedule Z Specification
2. State definition
ExamSchedulecourses: P COURSE
exam: COURSE ⇸ DATE
courses = dom exam
6
The Exam Schedule Z Specification
3. Initial State ExamScheduleInit
ExamSchedule
courses = Ø
7
The Exam Schedule Z Specification
Operations
1. Add exam2. Delete exam3. Find exam4. Change date
8
The Exam Schedule Z Specification
4. Operations (AddExam) AddExam ExamSchedule
course? : COURSEdate?: DATE
course? coursescourses’= courses {course?}exam’ = exam {course? ↦ date?}
9
The Exam Schedule Z Specification
4. Operations (DeleteExam) DeleteExam ExamSchedule
course? : COURSE
course? courses
courses’= courses\{course?}
10
The Exam Schedule Z Specification
4. Operations (FindExam) FindExam ExamSchedule
course? : COURSEdate!: DATE
course? courses
date! = exam(course?)
X
11
The Exam Schedule Z Specification
4. Operations (ChangeDate) ChangeDate ExamSchedule
course? : COURSEdate?: DATE
course? courses
exam’ = exam {course? ↦ date?}
12
The Exam Schedule Z Specification
4. Operations (ChangeDate) ChangeDate ExamSchedule
course? : COURSEdate?: DATE
course? courses
exam’ = exam {course? ↦ date?}