Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 48 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
48
Dung lượng
1,29 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN KHẮC CHUNG KIỂM CHỨNG HỆ THỐNG THỜI GIAN THỰC BẰNG CÔNG CỤ KIỂM CHỨNG MÔ HÌNH SAL LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN HÀ NỘI, 2015 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN KHẮC CHUNG KIỂM CHỨNG HỆ THỐNG THỜI GIAN THỰC BẰNG CÔNG CỤ KIỂM CHỨNG MÔ HÌNH SAL Nghành : Công nghệ thông tin Chuyên nghành : Kỹ thuật phần mềm Mã số : 60 48 01 03 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS ĐẶNG VĂN HƯNG HÀ NỘI, 2015 ỜI CẢ N Tr ti n t i xin y t l ng iết n s u s tới TS Đặng V n ng gi ng vi n ộ môn Công nghệ ph n mềm - Khoa Công nghệ th ng tin - Tr ờng Đ i họ ng nghệ - Đ Q Trong thời gi n họ v l m lu n v n t t nghiệp th y nh nhiều thời gi n qu u v t n t nh h o h ớng n t i việ nghi n u th lu n v n T i xin m n S TS gi ng y t i qu tr nh họ t p làm lu n v n th y gi p t i hiểu th u o h n l nh v m m nh nghi n u ể thể v n ng nh ng kiến th v o ng t m nh in m n n ng nghiệp ng ty t o iều kiện t t nh t ho t i su t qu tr nh họ t p v nghi n u ể ho n th nh t t n lu n v n t t nghiệp Hà nội, tháng 11 n m ọ vi n th Nguyễn Kh c Chung ỜI C Đ N T i xin m o n r ng y l kết qu nghi n u gi p r t lớn th y h ớng n nội ung nghi n ề t i n y ho n to n trung th t i s u v kết qu Trong lu n v n t i th m kh o ến s t i liệu liệt k t i ph n t i liệu th m kh o u i lu n v n s t Hà nội, tháng 11 n m ọ vi n th Nguyễn Kh c Chung gi MỤC LỤC Ờ h ng ỚI THIỆU h ng TỔNG QUAN VỀ KIỂM DUYỆT MÔ HÌNH 2.1 Kiểm duyệt mô hình (model checking) 2.1.1 Định ngh kiểm duyệt mô hình 2.1.2 Quá trình chung cho việc kiểm duyệt mô hình i i o n mô hình hóa i i o n th c thi i i o n phân tích 10 Ưu iểm nh 2.1.3 3 2.1.4 iểm c a kiểm duyệt mô hình 10 Ưu iểm 10 h iểm 10 ể kiểm duyệt mô hình 11 2.2 Mô hình hóa hệ th ng 11 2.2.1 Hệ th ng chuyển ổi 11 Định ngh hệ th ng chuyển ổi (transition system) 12 2.2.1.2 Th c thi (run) 13 2.2.2 Mô hình hóa hệ th ng song song giao tiếp 14 Đ ng thời v n xen ( on urren y n nterle ving) 14 2.2.2.2 Giao tiếp thông qua biến dùng chung 15 2.2.2.3 B t tay (handshaking) 16 2.2.2.4 Hệ th ng kênh truyền (Channel System) 16 Đặc t tính ch t hệ th ng 16 2.3.1 Tính an toàn (safety property) 16 2.3.1.1 Khóa chết 17 2.3.1.2 B t biến (invariant) 17 2.3.2 Tính s ng (liveness property) 18 2.4 Kiểm duyệt mô hình hệ th ng thời gian th c (model checking real-time system) 18 2.4.1 Hệ th ng thời gian rời r c (Discrete-time System) 19 2.4.2 Hệ th ng thời gi n y ặc (Dense-time system) 19 2.5 Logic Thời gian tuyến tính (Linear Temporal Logic) 20 2.5.1 Logic thời gian tuyến tính 20 2.5.1.1 Cú pháp (Syntax) 20 2.5.1.2 Ng ngh (Sem nti ) 22 2.5.2 Kiểm duyệt mô hình logic thời gian tuyến tính d a otomat 23 h ng TỔNG QUAN VỀ CÔNG CỤ KIỂM CHỨNG MÔ HÌNH SAL (Symbolic Analysis Laboratory) 25 3.1 Giới thiệu 25 3.1.1 i tr ờng SAL 25 3.1.2 Bộ mô ph ng (Simulator) 25 3.1.3 Bộ tìm kiếm 3.1.4 g n ng ờng (path finder) 26 ặ t tính h t (Property Spe ifi tion 3.1.4.1 Bộ kiểm tra mô hình biểu t ngu ge) SA 26 ng (symbolic model checker) 26 3.1.4.2 Bộ kiểm tra mô hình chặn (bounded model checker) 27 3.2 Ngôn ng diễn 3.2.1 t (Expression Language) 28 Kiểu (Type) 29 3.2.1.1 Kiểu d liệu c b n 29 3.2.1.2 D liệu kiểu c u trúc 29 3.2.2 iểu th ( xpression) 30 3.3 Ngôn ng chuyển ổi (The Transition Language) 31 3.3.1 Định ngh (Definition) 32 3.3.2 Câu lệnh b o vệ (Guarded Command) 33 3.3.3 Ngôn ng m 333 un un (The o ule ngu ge) 33 sở (Base Module) 33 3.3.3.2 Thao tác biến biến tr ng thái 34 3.3.3.3 Thành ph n m 3 Kh i om 3.4 Đặ tr ng hính h un 34 un 34 a SAL 35 ng ỨNG DỤNG 36 4.1 Bài toán hệ th ng công t n 36 4.1.1 Mô t toán 36 4.1.2 Mô hình kiểm duyệt hệ th ng ng t n SA 37 4.1.2.1 Mô hình hóa 37 4.1.2.2 Kiểm duyệt tính ch t 38 4.2 Bài toán hệ th ng th ng m y n gi n 38 4.2.1 Mô t toán 38 4.2.2 Mô hình kiểm duyệt hệ th ng thang máy SAL 39 4.2.2.1 Mô hình hóa 39 4.2.2.2 Kiểm duyệt tính ch t 40 h ng KẾT LUẬN 41 TÀI LIỆU THAM KH O 42 PHỤ LỤC 43 DANH MỤC HÌNH VẼ Hình 2-1: Tổng quan kiểm duyệt mô hình Hình 2- : y n u ng t ộng 13 Hình 2-3: Ví d mô t interleaving c n gi o th ng 15 Hình 2-4: Ví d mô t biến dùng chung 16 Hình 2-5: Ng ngh ph ng th c thời gian 21 Hình 2-6: Ví d logic thời gian tuyến tính 22 Hình 2-7: Tổng quan kiểm duyệt mô hình logic thời gian tuyến tính 24 Hình 3-1: Ví d SAL simulator 25 Hình 3-2: Ví d sal path finder 26 Hình 3-3: Ví d kiểm ch ng tính ch t sử d ng sal-smc 27 Hình 3-4: Ví d sử d ng bounded model checker 28 Hình 3-5: C u tr m un 32 Hình 4-1: Mô hình hệ th ng ng t n 36 Hình 4-2: Mô hình cửa thang máy 38 Hình 4-3: Mô hình thang máy 38 ẢNG C C CH Viết tắt TS M S Act PG NBA BDD SAT SMC SAL BMC GNBA VI T TẮT Tên đầy đủ Transition system Model State Action Program graph Nondeterministic Buchi Automaton Binary Decision Diagram Boolean satisfiability Symbolic model checker Symbolic Analysis Laboratory Bounded model checker Generalized Nondeterministic Buchi Automaton Chương GIỚI THIỆU Ngày nay, s phát triển c a hệ th ng kỹ thu t thông tin truyền thông ngày nhiều v ng Các hệ th ng ngày trở nên ph c t p i s u vào s ng hàng ngày c a chẳng h n nh máy tính xách tay iện tho i i ộng, lo i tivi cao c p v dùng h ng ng y nh máy giặt, lò vi sóng Vì thế, s ph thuộc c a ng y ng t ng v hặt chẽ h n vào hệ th ng th ng tin l m ho ộ tin c y c a hệ th ng ngày yêu c u cao Để xây d ng ph n mềm có ch t l ng cao c n tuân th việ m b o ch t l ng ph n mềm Trong việ m b o tính ng n c a thiết kế gi i o n sớm ng v i trò m u ch t cho việ m b o ch t l ng trình phát triển ph n mềm K thu t kiểm duyệt hệ th ng ng c áp d ng ể kiểm duyệt thiết kế hệ th ng nh m t ng ộ tin c y c a hệ th ng Trong nhiều n m qu việc nghiên c u ph ng ph p h nh th c n ến s phát triển c a s kỹ thu t kiểm duyệt t o thu n l i cho việc phát lỗi sớm k thu t kiểm duyệt n y i ặt thành công c c sử d ng cách t ộng gi i o n khác c a việc phát triển ph n mềm Hiện có r t nhiều công c kiểm duyệt mô hình ph n mềm nh SA SPIN, NuSMV, PAT, UPPAAL SAL kiểm duyệt hệ th ng thời gian th c b ng cách thêm biến ếm ng h vào tiến trình thời gi n ể ặc t ràng buộc thời gian với trình chuyển ổi Nội dung c ề tài nghiên c u lý thuyết n kiểm duyệt mô hình, kinh nghiệm sử d ng công c kiểm duyệt mô hình SAL sử d ng SA ể kiểm duyệt mô hình hệ th ng th c tế 32 [Name Module]: MODULE = BEGIN % Khai báo biến INPUT variables OUTPUT variables LOCAL variables … % Khởi t o giá trị biến INITIALIZATION Định ngh t biến DEFINITION % Chuyển ổi tr ng thái TRANSITION END; Hình 3-5: Cấu trúc mô đun 3.3.1 Định nghĩa (Definition) Định ngh l u tr n sử d ng ể xây d ng b t biến, khởi t o, trình chuyển ổi c a m un Định ngh ũng c sử d ng ểx ịnh giá trị c a biến tính toán b ng việc cung c p ràng buộc biến iều khiển hệ th ng chuyển ổi Đ i với biến khác nh u i diện cho c u trúc d liệu nh l m ng, b n ghi ịnh ngh iến theo thành ph n riêng biệt Ví dụ: x‟ = x + l t ng iến tr ng th i x v x‟ l tr ng thái tiếp theoc a biến Một công th c chuyển ổi ph n TRANSITION ịnh ngh biến bên trái c a biểu th c Trong m un ịnh ngh ng l n a hệ th ng chuyển ổi, biến iều khiển ch c 33 3.3.2 Câu lệnh bảo vệ (Guarded Command) Câu lệnh b o vệ biểu th c boolean biến kiểm soát t i (biến c c bộ, biến toàn c c, biến u ra) biến u vào tr ng thái t i Ph n gán nh s h ẳng th c gi a bên trái biến tr ng thái biểu th c bên ph i biến tr ng thái t i biến tr ng thái Do , câu lệnh b o vệ sử d ng ể ặc t quy t c chuyển ổi v iều kiện khởi t o.Câu lệnh b o vệ sử d ng cho c u trúc phân nhánh Ví dụ: câu lệnh bảo vệ State = > t ‟ = re ; State = > t ‟= F t < THEN ELSE data + ENDIF; 3.3.3 Ngôn ngữ mô đun (The Module Language) M un l ặc t hệ th ng chuyển ổi SA m un thể ph n tí h ộc l p cho tính ch t kết h p thành ph n ng thành ph n kh ng ng 3.3.3.1 Mô đun sở (Base Module) ph Một base module x ịnh biến: u v o u ra, toàn c ng u trúc c m un th o g m ph n sau: v i DEFINITI N section: Định ngh t iến ho hệ th ng Khi kết h p với m un kh th ịnh ngh n y v n gi nguy n gi trị ng y qu tr nh huyển ổi m un kh Ph n sử d ng ể ịnh ngh iến iều khiển, biến iều khiển có giá trị ph thuộc vào biến u vào.Ph n ịnh ngh ph i c sử d ng cẩn th n ặc biệt việc mô hình hóa hệ th ng kh ng ng bộ, nh n c th c thi c m un th ng qu m y tính từ xa INITI IZ TI N section: R ng uộ gi trị n u thể ho kh i o: iến ị ph ng iến to n iến u r iến u v o thể kh ng n khởi t o Ph n khởi t o x ịnh vị ng tr ng th i ng tr ng th i n u m un sở DEFINITI Nv Guarded Commands xu t INITI IZ TI N, nh ng kh ng h iến 34 TR NSITI N section: Ph n TR NSITI N r ng uộ tr ng th i thể ho kh i o: ị ph ng to n v u r Ph n n y ịnh ngh tổng thể m i li n qu n ến tr ng th i tr m un Transition section x ịnh m i qu n hệ tr ng th i iến o vệ thể th m hiếu ến t k iến n o kể iến 3.3.3.2 Thao tác biến biến trạng thái u tr C : Th o t iến u r v to n u tr UTPUT: Th o t với iến to n Để tr nh ị trùng t n iến m un ng h sử ng u tr REN E thể ổi t n 3.3.3.3 Thành phần mô đun un thể kết h p thành ph n ng thành ph n kh ng ng Gi sử m un Mi có biến u vào Ii , biến u Oi ,biến toàn c c Gi , biến ị ph ng l Li thì: M1 || M2: kí hiệu thành ph n ng c a M1, M2 M1 [] M2: kí hiệu thành ph n kh ng ph u O, biến toàn c c G, biến ịa r ởi công th c: Các biến u vào I, biến ng a M1 ||M2 M1 [] M2 =( ) − (𝑂 𝑂 = (𝑂 Ng ngh a thành ph n ng c a M1, M2 ) 𝑂 ) =( ) =( ) ng l m un M1 || M2 bao g m: initialization l kết h p khởi t o từ h i m Transition l kết h p un M1 v M2 qu tr nh huyển ổi ri ng lẻ definition l phép h p ịnh ngh h im h im un un Ng ngh a thành ph n kh ng ng c a hai mô un r ởi s kết h p c a khởi t o v n xen (interle ving) s chuyển ổi c a hai mô un 3.3.3.4 Khai báo mô đun Một m un th m s ịnh ngh theo d ng sau: 35 𝑜 𝑢 𝐷 𝑐 𝑡𝑜 ∶= 𝑡 ⟦ 𝐷 𝑐 𝑠⟧ ∶ E= 𝑜 𝑢 3.4 Đặc trưng SAL h ng ộ kiểm uyệt m h nh hặn ( oun e mo el he kers - m ) sử ng ể t m kiếm ph n ví nh ng h ng ũng thể sử ng ể h ng minh t iến ng quy n p tr n kh ng gi n tr ng th i SA hỗ tr quy n p k kh i qu t ho nguy n t quy n p thể kiểm uyệt hệ th ng với h nh vi ộ i l k Kỹ thu t n y thể p ng ho hệ th ng tr ng th i h u h n v v h n Trong h i tr ờng h p ộ kiểm uyệt m h nh hặn sử ng Với nh ng hệ th ng tr ng th i v h n ộ kiểm h ng m h nh ị hặn kết h p với ộ gi i l thuyết m un p ng (s tisfi ility mo ulo theories-S T) [3] Kh i qu t h quy n p ( ener lize n u tion) Để ịnh ngh quy n p k, coi (S, I, →) hệ th ng chuyển ổi S t p h p tr ng thái, I ⊆ S t p tr ng th i n u v → l quan hệ chuyển ổi nhị phân Nếu k s t nhiên, quỹ o k tu n t c a tr ng thái s0 → s1→ →sk (quỹ o tr ng th i n) y k s t nhiên, P tính ch t Nguyên t c quy n p k ịnh ngh nh s u: Tr ờng h p n: Với quỹ ng với ≤ j < k quy n p: Với t t quỹ ≤ j < k th P(sk) ng [3] o k s →s → →sk với s ∈ o k s → s → →sk P(sj) P(sj) ng với Nguyên t n y l t ng ng với nguyên t c quy n p hệ th ng chuyển ổi th ng th ờng k = Với SA ng ời dùng tùy chọn giá trị k ể ặc t chiều s u ể thử ch ng minh quy n p Sử d ng kiểm tra mô hình sal-bmc, sal-inf-bmc ể kiểm duyệt với hành vi ộ dài k 36 Chương ỨNG DỤNG Để minh họa cho lý thuyết c ph ng ph p kiểm duyệt mô hình giới thiệu h ng v ng ùng ể kiểm duyệt mô hình (SAL) h ng 3, h ng n y h ng t tiến hành thử nghiệm toán c thể 4.1 Bài toán hệ thống công tắc đèn 4.1.1 Mô tả toán Đặc t hệ th ng ng t n sử d ng gi nh Đ u vào c a hệ th ng nút up, down c n Đ u c a hệ th ng tín hiệu c n c thể tr ng thái: n t t (off), n s ng mờ (low), n s ng m nh (high) Mô hình c a hệ th ng c biểu diễn tr ng thái nh s u: down off up down low up down high up Hình 4-1: Mô hình hệ thống công tác đèn Để ặc t hệ th ng ng t n x y ng hai m un: switch ( ặc t công t c n) v l mp ( ặc t n) Công t n hai tr ng thái up, down c mô t b ng: StateBtn: type = {up, down} Đèn có ba tín hiệu với tr ng thái: off, low, high 37 4.1.2 Mô hình kiểm duyệt hệ thống công tác đèn SAL 4.1.2.1 Mô hình hóa un ng t un (switch): n (lamp): 38 4.1.2.2 Kiểm duyệt tính chất Tính h t n kiểm h ng m h nh l : Khi n tr ng th i high ph i qu tr ng th i low s u tr ng th i off Tính h t tr n iểu iễn ng T nh s u: n G(NOT((light = high) AND U((light /= low),(light = off)))) Kiểm h ng tính h t sử Tính h t th1 ng ộ kiểm uyệt s l-sm h ng minh (proved) 4.2 Bài toán hệ thống thang máy đơn giản 4.2.1 Mô tả toán Hệ th ng th ng m y n gi n bao g m: thang máy, nhà có ba t ng Thang máy ho t ộng từ t ng ến t ng ba Mỗi t ng có cửa vào, thang máy Cửa mở th ng m y i ến t ng t ng ng Mô hình c a hệ th ng c biểu diễn tr ng th i nh s u: Open[i] Close[i] open close Open[i] Close[i] Hình 4-2: Mô hình cửa thang máy up down up down down up Hình 4-3: Mô hình thang máy Đặc t hệ th ng thang máy bao g m hai m un: m un ặc t thang máy (controller) v m un ặc t tr ng thái cửa thang máy (door) Cửa thang 39 máy có hai tr ng thái là: open, close Thang máy ho t ộng từ t ng ến t ng ba, di chuyển ến vị trí t ng cử t ng ng c mở 4.2.2 Mô hình kiểm duyệt hệ thống thang máy SAL 4.2.2.1 Mô hình hóa un ặ t th ng m y (controller) un ặ t th ng m y (door) 40 4.2.2.2 Kiểm duyệt tính chất Kiểm uyệt tính h t s u Sử hệ th ng th ng m y ỗi lu n từ tr ng th i close v u n u i ùng l tr ng th i open tr ng th i close ng ộ kiểm uyệt s l-sm ể kiểm uyệt Tính ch t th1 c ch ng minh (proved) Tính h t th2 h ng minh (proved) Tính h t th3 h ng minh (proved) Tính h t th4 h ng minh (proved) tính h t: 41 Chương K T LUẬN Kiểm duyệt mô hình k th t kiểm duyệt t ộng hệ th ng h u h n tr ng th i ể m b o hệ th ng th m n c yêu c u ng ời dùng Sau thời gi n nghi n u v t m hiểu lu n v n t kết qu nh s u: ọ vi n t m hiểu kiến th n nh t kiểm duyệt mô hình o g m: kh i niệm n kiểm duyệt ph n mềm tiến tr nh th kiểm duyệt o g m nh ng gi i o n n o ng việ n th qu tr nh kiểm duyệt Ngoài ra, lu n v n n t p trung tìm hiểu công c SAL kinh nghiệm sử d ng công c SAL Từ r ặ tr ng nc “Kiểm chứng hành vi có độ dài nhỏ k” r s SA l u i ùng p ng nh ng kiến th t m hiểu giới h n lu n v n họ vi n viết h ng tr nh th nghiệm ể thử nghiệm ph ng ph p kh o s t tr n ho i to n thể Bài to n “Hệ thống công tác đèn”, “Thang máy đơn giản” c mô hình và kiểm duyệt tính ch t thông qua công c SAL Trong t ng l i lu n v n tiếp t ph t triển theo h ớng kiểm uyệt m h nh tr n công c SAL ng thời thể p ng nh ng t m hiểu nghi n u v o nh ng i to n th tiễn 42 TÀI LIỆU THAM KHẢO TI NG ANH [1] Christel Baier Joost-Pieter Katoen (2008), Principles of Model Checking, MIT Press, Printed and bound in the United States of America, pp.19-26, 35-55, 89 -99, 151-152, 159-167, 170 -180, 188-193, 229-233 [2] iu Y ng ( 9) “ OD K O URR T A D R A T SYST S: T PAT APPROA ” A thesis submitted for the degree of doctor of philosophy department of computer science national university of Singapore, pp.20-22 [3] Saddek Bensalem, Vijay Ganesh, Yassine Lakhnech, Cesar Munoz, Sam Owre, Harald Rueß, John Rushby, Vlad Rusu, Hassen Saidi, N Shankar, Eli Singerm n Ashish Tiw ri ( ) “An Overview of SA ” LFM 2000: Fifth NASA Langley Formal Methods Workshop, Williamsburg, pp.5-6 [4] ee Pike ( 7) ” o el he king for the Pr ti l Verifi tionist” Automated Formal Methods(AFM07), pp.1-2, 4-5 [5] Leonardo de Moura, Sam Owre, N Shankar (2003), The SAL Language Manual (Rev.2), SRI International, Computer Science Laboratory, 333 Ravenswood Avenue, Menlo Park, pp.5-23 [6] Leonardo de Moura (2004), SAL: Tutorial Computer Science Laboratory, SRI International, Computer Science Laboratory, 333 Ravenswood Avenue, Menlo Park, pp.3-4, 6-10 [7] S Owre, N Shankar, J M Rushby, D W J Stringer - Calvert (November 2001), PVS Language Reference, Version 2.4, SRI International, Computer Science Laboratory, 333 Ravenswood Avenue, Menlo Park, pp.11-17, 37-42 43 PHỤ LỤC Hệ thống đèn cầu thang SAL (Light.sal) light: context = BEGIN Signal: type = {off, low, high}; CState: type = [0 2]; StateBtn: type = {up, down}; switch: module = BEGIN INPUT isState : BOOLEAN OUTPUT ctrLamp : StateBtn INITIALIZATION ctrLamp = down; TRANSITION [ (isState) > ctrLamp' = up; [] else > ctrLamp' = down; ] END; lamp : module = BEGIN INPUT tick : StateBtn OUTPUT light : Signal LOCAL 44 status: CState INITIALIZATION status = 0; DEFINITION light = if (status = 0) then off elsif (status = 1) then low else high endif; TRANSITION [ ((status = 0) AND (tick = up)) > status' = 1; [] ((status = 1) AND (tick = up)) > status' = 2; [] ((status = 2) AND (tick = up)) > status' = 2; [] ((status = 0) AND (tick = down)) > status' = 0; [] ((status = 1) AND (tick = down)) > status' = 0; [] ((status = 2) AND (tick = down)) > status' = 1; ] END; system: MODULE = switch [] lamp; th1: theorem system |- G(NOT((light = high) AND U((light /= low),(light = off)))); END 45 Hệ thống thang máy SAL (ele.sal) ele: context = BEGIN N: NATURAL = 3; index: TYPE = [1 N]; mType: type = {close, open}; controller: MODULE = BEGIN LOCAL onFloor: index OUTPUT openclosedoor: mType GLOBAL process : index INITIALIZATION onFloor = 1; openclosedoor = close; TRANSITION [ onFloor /= AND openclosedoor = close > onFloor' = onFloor + 1; openclosedoor' = open; process' = onFloor []onFloor /= AND openclosedoor = close > onFloor' = onFloor - 1; openclosedoor' = open; process' = onFloor ] END; 46 door[i: index]: MODULE = BEGIN INPUT openclosedoor : mType, process : index LOCAL arrDoorisopen : mType INITIALIZATION arrDoorisopen = close; TRANSITION [ (openclosedoor = open) AND (i = process) AND arrDoorisopen = close > arrDoorisopen' = open []else > arrDoorisopen' = close ] END; system: MODULE = controller [] ([] (i: index): door[i]); th1: THEOREM system |(arrDoorisopen[1] /= close))); G(arrDoorisopen[1] = close => F(NOT th2: THEOREM system |(arrDoorisopen[2] /= close))); G(arrDoorisopen[2] = close => F(NOT th3: THEOREM system |(arrDoorisopen[3] /= close))); G(arrDoorisopen[3] = close => F(NOT th4: THEOREM system |- G(forall(i, j: index): i /= j => arrDoorisopen[i] /= open or arrDoorisopen[j] /= open); END [...]... TỔNG QUAN VỀ KIỂM DUYỆT MÔ HÌNH 2.1 Kiểm duyệt mô hình (model checking) 2.1.1 Định nghĩa kiểm duyệt mô hình Kiểm duyệt mô hình được định nghĩa bởi Clarke & Emerson 1981: Kiểm duyệt mô hình là một k thu t t ộng, khi ho tr ớc một mô hình tr ng thái h u h n c a hệ th ng và một tính ch t hình th c, kiểm tra một cách có hệ th ng xem tính ch t có th a mãn ở t t c các tr ng thái trong mô hình [1] Hình 2-1: Tổng... ng th i t tr ng th i tiếp theo Ví dụ kiểm chứng các tính chất sử dụng sal- smc Hình 3-3: Ví dụ về kiểm chứng các tính chất sử dụng sal- smc 3.1.4.2 Bộ kiểm tra mô hình chặn (bounded model checker) SAL ch a một bộ kiểm tra mô hình chặn gọi là sal- bmc Bộ kiểm tra mô hình này ch hỗ tr công th c logic thời gian tuyến tính LTL, và n l sở ể sử d ng cho việ r ph n ví d sal- bmc có thể th c hiện xác minh b ng... bước để kiểm duyệt mô hình h nh h nh th hệ th ng (x y h y u u( ặ t ng một m h nh ho hệ th ng) tính h t Φ) Quyết ịnh v kiểm tr thu t to n (th h ) hiện ở ng m h nh 2.2 Mô hình hóa hệ thống Hệ th ng lớn có nhiều thành ph n, nên việc kiểm duyệt cho các hệ th ng này gặp nhiều kh kh n Vì thế, việc mô hình một hệ th ng c xem nh ể ph c v cho m í h kiểm duyệt Do các hệ th ng chuyển ổi c sử d ng ể mô hình. .. ng ngh a logic thời gian tuyến tính Tiếp theo là xem xét thu t toán kiểm duyệt mô hình d a trên otomat Buchi cho logic thời gian tuyến tính Các thu t to n n y c sử d ng ể tr lời cho câu h i: ho tr ớc một hệ th ng chuyển ổi TS và một công th c thời gian tuyến tính φ l m thế n o ể kiểm tr φ ng trong TS Logic thời gian tuyến tính phù h p ặc t các tính ch t thời gian tuyến tính Logic thời gian có thể c... quan về kiểm duyệt mô hình 2.1.2 Quá trình chung cho việc kiểm duyệt mô hình 2.1.2.1 Giai đoạn mô hình hóa h nh hệ th ng ng ộ kiểm tr m h nh h sử ng Kiểm tr v nh gi nh nh h ng hiện m ph ng nh th h t tính h t thuộ tính ng n ng m t m h nh m h nh n kiểm tr sử ng việ th ng ng n ng ặ 2.1.2.2 Giai đoạn thực thi Th c thi một bộ kiểm tr m h nh ể kiểm tra tính h p lệ c a các tính ch t trong mô hình hệ th... 2-7: Tổng quan về kiểm duyệt mô hình logic thời gian tuyến tính 25 Chương 3 TỔNG QUAN VỀ CÔNG CỤ KIỂM CHỨNG MÔ HÌNH SAL (Symbolic Analysis Laboratory) 3.1 Giới thiệu SAL viết t t c a Symbolic Analysis Laborator SAL là một framework kết h p nhiều công c khác nhau ùng ể trừu t ng h ph n tí h h ng tr nh ch ng minh ịnh lý và kiểm duyệt m h nh i với các tính ch t (phân tích biểu t ng) c a các hệ th ng chuyển... biến là Logic thời gian (Temporal Logics) Ví d nh l omput tion Tree ogi ( T ) ine r Temporal Logic (LTL), 2.4 Kiểm duyệt mô hình hệ thống thời gian thực (model checking real-time system) Máy tính th ờng sử ng trong ng ng qu n trọng m o n thời gi n p ng l r t n thiết ể m o ho tính ng hệ th ng hệ th ng n y gọi l hệ th ng thời gi n th Do tính ng ng nh v y n n việ sai sót trong hệ th ng thời gi n th kỳ nguy... sử d ng ể mô hình hóa cho các hệ th ng Mô hình hóa hệ th ng là mô t chính xác và rõ ràng hành vi c a hệ th ng Mô hình hóa ch yếu sử d ng Otomat h u h n tr ng thái, bao g m một t p h p các tr ng thái h u h n và t p h p các chuyển ổi 2.2.1 Hệ thống chuyển đổi Các hệ th ng chuyển ổi th ờng c sử d ng trong khoa học máy tính nh l m h nh ể mô t các hành vi c a các hệ th ng Các hệ th ng chuyển ổi l thị có h... nghĩa (Semantic) Công th c logic thời gian tuyến tính biểu diễn cho các tính ch t c a các ờng Điều này có ngh a là một ờng có thể p ng hoặ kh ng p ng một công th c thời gian tuyến tính Ng ngh a công th c logic thời gian tuyến tính ịnh ngh nh một chuỗi 𝑜 𝑠( ) bao g m t t c các từ vô h n trên t p kí hiệu 𝐴 mà th a mãn Do ể mỗi công th c logic thời gian tuyến tính có một thuộc tính thời gian tuyến tính... th m hí g y ổ v hệ th ng Đ m o tính ng n th ng thời gi n th ph t p l một nhiệm v qu n trọng v kh ng gi n [2] việ n h t thể một hệ hề n 19 Có hai ng ngh thời gi n trong ịnh ngh hệ th ng thời gi n th : ng ngh thời gi n rời r v ng ngh thời gi n y ặ g ngh thời gi n rời r ih it t các thời iểm truy p l s nguy n v t t ng h t ng truy p chúng ùng một thời iểm g ngh thời gi n dày ặ là truy p thời gi n thể s ...ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN KHẮC CHUNG KIỂM CHỨNG HỆ THỐNG THỜI GIAN THỰC BẰNG CÔNG CỤ KIỂM CHỨNG MÔ HÌNH SAL Nghành : Công nghệ thông tin Chuyên nghành : Kỹ thuật... ng công c kiểm duyệt mô hình SAL sử d ng SA ể kiểm duyệt mô hình hệ th ng th c tế 9 Chương TỔNG QUAN VỀ KIỂM DUYỆT MÔ HÌNH 2.1 Kiểm duyệt mô hình (model checking) 2.1.1 Định nghĩa kiểm duyệt mô. .. thế, việc mô hình hệ th ng c xem nh ể ph c v cho m í h kiểm duyệt Do hệ th ng chuyển ổi c sử d ng ể mô hình hóa cho hệ th ng Mô hình hóa hệ th ng mô t xác rõ ràng hành vi c a hệ th ng Mô hình hóa