Đang tải... (xem toàn văn)
[r]
(1)ðặc tả Z (5)
Nguyễn Thanh Bình
Khoa Cơng nghệ Thơng tin
Trường ðại học Bách khoa
ðại học ðà Nẵng
2
Giới thiệu
ñược ñềxuất Jean René Abrial ðại học
Oxford
ngôn ngữ ñặc tảhình thức ñược sửdụng rộng rãi
nhất
dựa lý thuyết tập hợp ký hiệu toán học
(2)3
Giới thiệu
Gồm bốn thành phần cơ bản
kiểu dữliệu (types) • dựa khái niệm tập hợp
sơđồtrạng thái (state schemas) • mơ tảcác biến ràng buộc biến
sơđồthao tác (operation schemas) • mơ tảcác thao tác (thay ñổi trạng thái)
toán tử sơ ñồ(schema operations) • định nghĩa sơđồmới từcác sơđồ có
Kiểu dữ liệu
mỗi kiểu dữliệu một tập hợp phần tử Ví dụ
(3)5
Kiểu dữ liệu
Các phép toán tập hợp
Hội: A ∪ B Giao: A ∩ B Hiệu: A ⁄ B Tập con: A ⊆ B Tập tập con: P A
• ví dụ: P {a, b} = {{}, {a}, {b}, {a, b}}
6
Kiểu dữ liệu
một số kiểu dữliệu cơ bản ñã ñược ñịnh
nghĩa trước
kiểu số nguyên Z kiểu sốtự nhiên N kiểu sốthực R
có thể định nghĩa kiểu dữliệu mới
ANSWER == yes | no [PERSON]
• sửdụng cặp ký hiệu [ ] để ñịnh nghĩa kiểu
(4)7
Kiểu dữ liệu
Khai báo kiểu
x : T
• x phần tửcủa tập T Ví dụ
• x : R
• n : N
• : N
• red : {red, blue, green}
Vị từ
Một vị từ (predicate) ñược sử dụng ñể ñịnh
nghĩa tính chất của biến/giá trị
Ví dụ
(5)9
Vị từ
Có thểsửdụng tốn tửlơ-gíc để định nghĩa vị từphức tạp
Và: A ∧B
Hoặc: A ∨B
Phủ định: ¬A Kéo theo: A ⇒B
Ví dụ
(x > y) ∧(y > 0) (x > 10) ∨(x = 1) (x > 0) ) ⇒x/x = 1 (¬(x ∈S)) ∨(x ∈T)
10
Vị từ
Các toán tửkhác
(∀x : T •A)
• A với mọi x thuộc T
• Ví dụ: (∀x : N •x - x =0)
(∃x : T •A)
• A với một sốgiá trịx thuộc T
• Ví dụ: (∃x : R •x + x = 4)
{x : T | A}
• biểu diễn phần tửx T thỏa mãn A
(6)53
Total Function
ñịnh nghĩa ánh xạtừtất cảgiá trịcủa domain ñến
range
ký hiệu
nghĩa
Total Function
(7)55
Total Function
Sửdụng ñể ñịnh nghĩa số
Ví dụ
56
Các ký hiệu