Danh mục

Bài giảng Đặc tả hình thức: Chương 6 - Nguyễn Thị Minh Tuyền

Số trang: 23      Loại file: pdf      Dung lượng: 460.92 KB      Lượt xem: 5      Lượt tải: 0    
Thư viện của tui

Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Đặc tả hình thức: Chương 6 do Nguyễn Thị Minh Tuyền biên soạn nội dung cụ thể của chương này gồm có: Module trong Alloy, khai báo module, định nghĩa module, định nghĩa ModulePathName, các module định nghĩa sẵn, xung đột về tên, các module được tham số hóa,...
Nội dung trích xuất từ tài liệu:
Bài giảng Đặc tả hình thức: Chương 6 - Nguyễn Thị Minh TuyềnLOGOĐặc tả hình thứcCác module trong AlloyNguyễn Thị Minh TuyềnNguyễn Thị Minh Tuyền1Module trong Alloyv Alloy là một hệ thống module chophép module hóa việc sử dụng lại cácmô hình.v Một module định nghĩa một mô hìnhvà có thể xem mô hình này là một môhình con của mô hình khác.v Để thuận lợi cho việc tái sử dụng, cácmodule có thể được tham số hóatrong một hoặc nhiều signatureNguyễn Thị Minh Tuyền2Đặc tả hình thứcVí dụmodule util/relation-- r is acyclic over the set spred acyclic [r: univ->univ, s: set univ] {all x: s | x !in x.^r}module familyopen util/relation as relsig Person {parents: set Person}fact { acyclic [parents, Person] }Nguyễn Thị Minh Tuyền3Đặc tả hình thứcVí dụmodule util/relation-- r is acyclic over the set spred acyclic [r: univ->univ, s: set univ] {all x: s | x !in x.^r}module fileSystemopen util/relation as relsig Object {}sig Folder extends Object {subFolders: set Folder}fact { acyclic [subFolders, Folder] }Nguyễn Thị Minh Tuyền4Đặc tả hình thứcKhai báo modulev Dòng đầu tiên của mỗi module làmodule headermodule modulePathNamev Module có thể import một modulekhác với câu lệnh open ngay sauheaderopen modulePathNameNguyễn Thị Minh Tuyền5Đặc tả hình thức

Tài liệu được xem nhiều: