Bài giảng Đặc tả hình thức - Chương 8: Ngôn ngữ đặc tả Z cung cấp cho người học các kiến thức: Giới thiệu, các thành phần của ngôn ngữ, giản đồ, các phép toán trên giản đồ. Mời các bạn cùng tham khảo nội dung chi tiết.
Trường Đại học Công Nghệ Thông Tin, ĐHQG-HCM Khoa Công Nghệ Phần Mềm Chương 8: Ngôn Ngữ Đặc Tả Z PGS.TS Vũ Thanh Nguyên PGS.TS Vũ Thanh Nguyên 4/5/2019 CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Giới thiệu Các thành phần ngôn ngữ Giản đồ Các phép toán giản đồ 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Giới Thiệu Được xây dựng dựa lý thuyết tập hợp logic toán học Đây ngơn ngữ tốn học chặt chẽ, sử dụng chủ yếu đặc tả hình thức để đặc tả yêu cầu chức hệ thống, đặc biệt hệ thống phần mềm Ngôn ngữ Z không thiết kế để mô tả yêu cầu phi chức hệ thống Ngôn ngữ không thiết kế cho đặc tả theo thời gian hay xử lý song song 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Các Thành Phần Của Ngôn Ngữ Logic mệnh đề Các khái niệm logic mệnh đề hệ thống ký hiệu logic mệnh đề ký pháp Z hoàn toàn giống với ngơn ngữ tốn học thơng thường Có phép tốn mệnh đề ngôn ngữ Z liệt kê bảng đây, với độ ưu tiên giảm dần từ xuống dưới: 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Các Thành Phần Của Ngôn Ngữ Logic vị từ Các khái niệm định nghĩa logic vị từ hồn tồn giống tốn học, ngoại trừ ký hiệu có khác biệt Cú pháp chung vị từ sử dụng lượng từ: Qx:A|pq Trong đó: Q: lượng từ ( ) x: biến ràng buộc A: tập giá trị x p: ràng buộc biến q: vị từ 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Các Thành Phần Của Ngôn Ngữ Logic vị từ Ta có phát biểu tương đương sau: Như vậy, ký hiệu thuộc tập hợp Z dấu hai chấm (:), thay dấu toán học Ký hiệu “sao cho” sử dụng dấu gạch đứng ( | ), ký hiệu “thì” sử dụng dấu chấm trịn () 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Các Thành Phần Của Ngơn Ngữ Logic vị từ “Tồn giá trị thỏa điều kiện” biểu diễn sau: “Tồn giá trị thỏa điều kiện” biểu diễn sau: Ví dụ: Phát biểu “có sách bàn” biểu diễn dạng vị từ sau: xDesk có nghĩa sách nằm bàn 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Các Thành Phần Của Ngôn Ngữ Logic vị từ Ký pháp-: Để xác định đối tượng tập hợp thỏa điều kiện, ngôn ngữ Z dùng ký pháp gọi ký pháp-, cụ thể sau: x: A|p đọc là: “có giá trị x thuộc tập A cho p” Khi ta ký hiệu: y=(x: A|p) tức y giá trị thuộc tập A cho p Ví dụ 4: Ta nói “2 số thuộc tập số tự nhiên thỏa 4+n=6”: 2=(x: N|4+n=6) 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Các Thành Phần Của Ngôn Ngữ Lý thuyết tập hợp Tập hợp biểu diễn dạng liệt kê : S == {a, b, c} Tập hợp biểu diễn dạng vị từ: S == {x :X | p(x)} Tập hợp rỗng: S == Để biểu diễn phát biểu: „giá trị x thuộc tập S‟, ta dùng ký hiệu: xS Để biểu diễn phát biểu : „giá trị x không thuộc thuộc tập S‟, ta dùng ký hiệu : x S (x S) 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Các Thành Phần Của Ngôn Ngữ Các phép toán tập hợp Tập tất tập tập hợp (Power set) Ký hiệu : PX 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 10 Giản Đồ Dạng chuẩn giản đồ Ví dụ : Xét giản đồ Date trên: Ta chuẩn hóa giản đồ lại sau: 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 33 Giản Đồ Đặt lại tên thành phần giản đồ Trong q trình đặc tả, đơi cần phải đặt lại tên thành phần giản đồ Bằng cách ta tạo nên giản đồ có kết cấu ràng buộc với giản đồ cũ có thành phần với tên ý nghĩa khác Cú pháp để đổi tên giản đồ: Nếu Schema giản đồ, ta ký hiệu: giản đồ tạo nên cách đổi tên thành phần tên old Schema thành new 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 34 Giản Đồ Đặt lại tên thành phần giản đồ Ví dụ : giản đồ SchemaTwo, thay a q c s, ta có: Ví dụ : giản đồ SchemaTwo, thay a q c s, ta có: đó, giản đồ kết tương đương với giản đồ : 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 35 Giản Đồ Đặt lại tên thành phần giản đồ Tương tự vậy, muốn định nghĩa kiểu liệu StartDate từ kiểu liệu Date, ta làm sau: Khi đó, giản đồ tương đương : Nếu ta định nghĩa thêm giản đồ FinishDate: Khi đó, StartDate FinishDate xem kiểu liệu khác nhau, chúng có thành phần có ràng buộc tương tự 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 36 Các Phép Toán Trên Giản Đồ Phép nối liền (Conjunction) Cho giản đồ S T thể sau, với P Q vị từ diễn tả ràng buộc lên biến tương ứng: Ta ký hiệu : ST để biểu diễn phép nối liền giản đồ S T Kết giản đồ tạo nên cách gộp biến S T lại, đồng thời thực phép nối liền vị từ ràng buộc P Q 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 37 Các Phép Toán Trên Giản Đồ Phép nối liền (Conjunction) Lưu ý : Nếu giản đồ S T có thành phần giống thành phần phải có kiểu giống giản đồ Nếu không giản đồ S T không xác định 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 38 Các Phép Toán Trên Giản Đồ Phép đổi tên (Decoration) Giả sử ta có giản đồ State mơ tả trạng thái hệ thống, có thành phần a, b với ràng buộc P Mỗi đối tượng s : State biểu diễn trạng thái hợp lệ hệ thống 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 39 Các Phép Toán Trên Giản Đồ Phép đổi tên (Decoration) Để biểu diễn thao tác lên trạng thái đó, ta cần sử dụng trạng thái : trạng thái trước thực thao tác trạng thái sau thực thao tác Để phân biệt trạng thái này, ta dùng phép đặt tên để tạo nên giản đồ mới, cách thêm dấu nháy (‟) vào sau tên giản đồ tên tất biến khai báo giản đồ : 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 40 Các Phép Toán Trên Giản Đồ Phép đổi tên (Decoration) Để đặc tả thao tác, ta đưa trạng thái State State‟ vào phần khai báo giản đồ Một giản đồ thao tác có dạng: Ngơn ngữ Z quy định cách thức biểu diễn giản đồ State State‟, cách thức biểu diễn sau: 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 41 Các Phép Toán Trên Giản Đồ Phép nối rời (Disjunction) Cho giản đồ S T thể sau, với P Q vị từ diễn tả ràng buộc lên biến tương ứng: Ta ký hiệu: ST để biểu diễn phép nối rời giản đồ S T Kết giản đồ tạo nên cách gộp biến S T lại, đồng thời thực phép nối rời vị từ ràng buộc P Q 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 42 Các Phép Toán Trên Giản Đồ Phép nối rời (Disjunction) Tương tự phép nối liền, tất thành phần (các biến) xuất giản đồ thành phần phải có kiểu liệu Tất ràng buộc có xuất phần khai báo phải chuyển sang phần vị từ ràng buộc giản đồ thành phần trước thực phép nối rời 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 43 Các Phép Toán Trên Giản Đồ Phép phủ định (Negation) Cho giản đồ S T thể sau, với P vị từ diễn tả ràng buộc lên biến tương ứng: giản đồ phủ định S có dạng: Lưu ý : phép phủ định áp dụng cho giản đồ chuẩn hóa (tức tất ràng buộc phải chuyển sang phần vị từ ràng buộc bên dưới) 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 44 Các Phép Toán Trên Giản Đồ Phép phủ định (Negation) Ví dụ : Giản đồ Date biểu diễn ngày tháng hợp lệ, Date biểu diễn tất cặp (month, day) ngày tháng hợp lệ 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 45 Các Phép Tốn Trên Giản Đồ Phép lượng từ hóa Ta lượng từ hóa số thành phần giản đồ để tạo giản đồ Nếu Q lượng từ dec phần khai báo, giản đồ lượng từ hóa có dạng: Giản đồ tạo thành cách bỏ thành phần có phần khai báo dec lượng từ hóa chúng lượng từ Q phần vị từ ràng buộc bên 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 46 Các Phép Toán Trên Giản Đồ Phép lượng từ hóa Ví dụ : cho giản đồ sau: Khi đó, b: BS giản đồ: b: BS giản đồ: 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 47 ... PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt Giới Thiệu Được xây dựng dựa lý thuyết tập hợp logic toán học Đây ngơn ngữ tốn học chặt chẽ, sử dụng chủ yếu đặc tả hình thức để đặc tả. .. phần, đối tượng cần thiết cho q trình đặc tả Nó giúp cho đặc tả ngắn gọn, xác, tránh trùng lắp rõ ràng, dễ hiểu 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt... 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt 18 Giản Đồ Ví dụ: hay 4/5/2019 CuuDuongThanCong.com PGS.TS Vũ Thanh Nguyên https://fb.com/tailieudientucntt