1. Trang chủ
  2. » Thể loại khác

Luận văn tìm hiểu bộ kiểm chứng mô hình spin

41 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

1 MỤC LỤC MỤC LỤC .1 LỜI CẢM ƠN GIỚI THIỆU ĐặT VấN Đề CấU TRÚC KHÓA LUậN CHƢƠNG 1:KIỂM CHỨNG MƠ HÌNH 1 KIểM CHứNG MƠ HÌNH .7 CÁCH TIếN HÀNH Các bước thực kiểm chứng mơ hình 10 Ưu nhược điểm kiểm chứng mơ hình 10 Bên cạnh kiểm chứng mơ hình có nhược điểm: 11 CHƢƠNG 2:NGƠN NGỮ PROMELA .12 NGÔN NGữ PROMELA 12 1 Cấu trúc chương trình Promela 12 2 Kiểu liệu .13 Toàn tử 14 Tên, Tên số Biểu thức 15 Tiến trình .15 2 Xử LÝ KÊNH TRONG PROMELA 16 2 Cú pháp .16 2 Kênh gửi nhận 16 CÁC CÚ PHÁP .17 Lệnh printf( ) .17 Lệnh lựa chọn if 17 3 Lệnh lặp 17 Lệnh nhảy goto 18 Lệnh define 18 RUN VÀ ATOMIC 18 run tiến trình init() 18 atomic 19 Mangh■■ng Luôn 123doc Th■a thu■n l■icam s■ tr■ h■u k■t s■ nghi■m t■im■t d■ng s■website mang kho m■i th■ m■ l■i d■n CH■P vi■n nh■ng cho ■■u kh■ng ng■■i NH■N quy■n chia dùng, l■ CÁC s■l■i v■i và■I■U t■t công h■n mua nh■t 2.000.000 ngh■ bán KHO■N cho tàihi■n ng■■i li■u TH■A tài th■ hàng li■u dùng hi■n THU■N ■■u ■ t■t Khi ■■i, Vi■t c■ khách b■n l■nh Nam Chào online hàng v■c: Tác m■ng tr■ không tài phong thành b■n khác chun ■■n thành tíngì d■ng, v■i so nghi■p, viên 123doc v■i cơng c■a b■n hồn ngh■ 123doc g■c h■o, thơng B■n và■■ n■p có tin, cao th■ ti■n ngo■i tính phóng vào ng■, Khách trách tài to,kho■n nhi■m thu nh■ c■a ■■i hàng tùy123doc, v■i ý cót■ng th■b■n d■ ng■■i dàng s■ dùng ■■■c tra c■u M■c h■■ng tàitiêu li■u nh■ng hàng m■t■■u quy■n cáchc■a l■i123doc.net sau xác,n■p nhanh ti■n tr■ chóng thành website th■ vi■n tài li■u online l■n nh■t Vi■t Nam, cung c■p nh■ng tài li■u ■■c khơng th■ tìm th■y th■ tr■■ng ngo■i tr■ 123doc.net Nhi■u event thú v■, event ki■m ti■n thi■t th■c 123doc luôn t■o c■ h■i gia t■ng thu nh■p online cho t■t c■ thành viên c■a website Mangh■n Luôn Th■a Xu■t Sau Nhi■u 123doc h■■ng phát thu■n l■i event cam s■ nh■n m■t tr■ t■ h■u k■t s■ thú nghi■m t■i ýxác n■m t■■ng m■t d■ng v■, s■ nh■n website mang event kho m■i ■■i, t■o t■ th■ m■ l■i c■ng ki■m ■■ng d■n 123doc CH■P vi■n nh■ng cho ■■u ■■ng ti■n h■ kh■ng ng■■i NH■N ■ã quy■n th■ng thi■t chia t■ng ki■m dùng, l■ CÁC s■ th■c s■ l■i b■■c v■i ti■n vàchuy■n ■I■U t■t công h■n mua 123doc online kh■ng nh■t 2.000.000 ngh■ bán KHO■N sang b■ng cho tài ■■nh hi■n ng■■i li■u ph■n tài TH■A tài v■ th■ li■u hàng t■o li■u thơng dùng tríhi■n THU■N hi■u c■ c■a ■■u ■ tin t■t h■i Khi ■■i, qu■ Vi■t xác c■ khách gia b■n nh■t, minh l■nh Nam t■ng Chào online hàng uy tài v■c: l■nh thu Tác m■ng tín kho■n tr■ nh■p khơng tài phong v■c cao thành b■n email nh■t tài online khác chun ■■n li■u thành tínb■n Mong cho d■ng, v■i so nghi■p, viên kinh ■ã t■t 123doc 123doc.net! v■i mu■n công ■■ng c■a c■ doanh b■n hoàn mang ngh■ 123doc ký g■c online thành v■i h■o, Chúng l■i thơng B■n 123doc.netLink cho viên Tính ■■ n■p có tơi tin, c■ng c■a cao th■ ■■n cung ti■n ngo■i tính website phóng ■■ng th■i vào c■p ng■, Khách trách xác tài ■i■m D■ch xã to,kho■n th■c nhi■m h■i thutháng V■ nh■ m■t s■ c■a (nh■ ■■i hàng ■■■c tùy ngu■n 5/2014; 123doc, v■i ■■■c ý cóg■i t■ng th■ tài 123doc v■ mô nguyên b■n d■ ng■■i ■■a t■ dàng s■ v■■t d■■i tri dùng ■■■c ch■ tra th■c m■c ■ây) email c■u M■c h■■ng quý 100.000 cho tài b■n tiêu báu, li■u b■n, nh■ng ■ã hàng phong m■t l■■t tùy ■■ng ■■u quy■n cách truy thu■c phú, ky, c■a c■p ■a l■i b■n vào 123doc.net m■i d■ng, sau xác, vuingày, n■p lòng “■i■u nhanh giàu ti■n s■ ■■ng tr■ giá Kho■n chóng h■u thành tr■ nh■p 2.000.000 website ■■ng Th■a th■ email vi■n th■i Thu■n c■a thành mong tài v■ li■u viên mu■n S■ online ■■ng D■ng click t■o l■n ký, D■ch ■i■u vào nh■t l■t link ki■n V■” vào Vi■t 123doc top sau cho Nam, 200 ■ây cho ■ã cung các (sau g■iwebsite c■p users ■âynh■ng ■■■c cóph■ thêm tài bi■n g■i thu li■u t■t nh■t nh■p ■■c T■it■i không t■ng Chính Vi■tth■i th■ Nam, v■y ■i■m, tìm t■123doc.net th■y l■chúng tìm ki■m tơi th■ racóthu■c ■■i tr■■ng th■nh■m c■p top ngo■i 3nh■t ■áp Google tr■ ■KTTSDDV ■ng 123doc.net Nh■n nhu c■u ■■■c theo chiaquy■t danh s■ tài hi■u li■udo ch■t c■ng l■■ng ■■ng vàbình ki■mch■n ti■n online website ki■m ti■n online hi■u qu■ uy tín nh■t Luônh■n 123doc Sau Th■a Xu■t h■■ng phát thu■n cam nh■n m■t t■k■t s■ t■i ýxác n■m t■■ng d■ng s■ nh■n website mang ■■i, t■o t■l■i c■ng ■■ng d■n 123doc CH■P nh■ng ■■u ■■ng h■ NH■N ■ã quy■n th■ng chia t■ng ki■m CÁC s■s■ l■i b■■c ti■n vàchuy■n ■I■U t■t mua online kh■ng nh■t bán KHO■N sang b■ng cho tài ■■nh ng■■i li■u ph■n tài TH■A v■ li■u hàng thơng dùng tríTHU■N hi■u c■a ■■u tin Khi qu■ Vi■t xác khách nh■t, minh Nam Chào hàng uy tài l■nh Tác m■ng tín kho■n tr■ phong v■c cao thành b■n email nh■t tàichuyên ■■n li■u thành b■n Mong v■i nghi■p, viên kinh ■ã 123doc 123doc.net! mu■n ■■ng c■a doanh hoàn mang 123doc kýonline v■i h■o, Chúng l■ivà 123doc.netLink cho Tính ■■ n■p tơi c■ng cao ■■n cung ti■n tính ■■ng th■i vào c■p trách xác tài ■i■m D■ch xãkho■n th■c nhi■m h■itháng V■ m■t s■ c■a (nh■ ■■i ■■■c ngu■n 5/2014; 123doc, v■i ■■■c g■i t■ng tài 123doc v■ mô nguyên b■n ng■■i ■■a t■s■ v■■t d■■i tri dùng ■■■c ch■ th■c m■c ■ây) email M■c h■■ng quý 100.000 cho b■n tiêu báu, b■n, nh■ng ■ã hàng phong l■■t tùy ■■ng ■■u quy■n truy thu■c phú, ky, c■a c■p ■a l■i b■n vào 123doc.net m■i d■ng, sau vuingày, n■p lòng “■i■u giàu ti■n s■ ■■ng tr■ giá Kho■n h■u thành tr■ nh■p 2.000.000 website ■■ng Th■a th■ email vi■n th■i Thu■n c■a thành mong tài v■ li■u viên mu■n S■ online ■■ng D■ng click t■o l■n ký, D■ch ■i■u vào nh■t l■t link ki■n V■” vào Vi■t 123doc top sau cho Nam, 200 ■ây cho ■ã cung các (sau g■iwebsite c■p users ■âynh■ng ■■■c cóph■ thêm tài bi■n g■i thu li■u t■t nh■t nh■p ■■c T■it■i khơng t■ng Chính Vi■tth■i th■ Nam, v■y ■i■m, tìm t■123doc.net th■y l■chúng tìm ki■m tơi th■ racóthu■c ■■i tr■■ng th■nh■m c■p top ngo■i 3nh■t ■áp Google tr■ ■KTTSDDV ■ng 123doc.net Nh■n nhu c■u ■■■c theo chiaquy■t danh s■ tài hi■u li■udo ch■t c■ng l■■ng ■■ng vàbình ki■mch■n ti■n online website ki■m ti■n online hi■u qu■ uy tín nh■t Lnh■n Th■a Xu■t Sau Nhi■u 123doc Mang h■■ng phát thu■n l■i event cam s■ nh■n m■t tr■ t■ h■u k■t s■ thú nghi■m t■i ýxác n■m t■■ng m■t d■ng v■, s■ nh■n website mang event kho m■i ■■i, t■o t■ th■ m■ l■i c■ng ki■m ■■ng d■n 123doc CH■P vi■n nh■ng cho ■■u ■■ng ti■n h■ kh■ng ng■■i NH■N ■ã quy■n th■ng thi■t chia t■ng ki■m dùng, l■ CÁC s■ th■c s■ l■i b■■c v■i ti■n vàchuy■n ■I■U t■t công h■n mua 123doc online kh■ng nh■t 2.000.000 ngh■ bán KHO■N sang b■ng cho tài ■■nh hi■n ng■■i li■u ph■n tài TH■A tài v■ th■ li■u hàng t■o li■u thơng dùng tríhi■n THU■N hi■u c■ c■a ■■u ■ tin t■t h■i Khi ■■i, qu■ Vi■t xác c■ khách gia b■n nh■t, minh l■nh Nam t■ng Chào online hàng uy tài v■c: l■nh thu Tác m■ng tín kho■n tr■ nh■p khơng tài phong v■c cao thành b■n email nh■t tài online khác chuyên ■■n li■u thành tínb■n Mong cho d■ng, v■i so nghi■p, viên kinh ■ã t■t 123doc 123doc.net! v■i mu■n công ■■ng c■a c■ doanh b■n hoàn mang ngh■ 123doc ký g■c online thành v■i h■o, Chúng l■i thông B■n 123doc.netLink cho viên Tính ■■ n■p có tơi tin, c■ng c■a cao th■ ■■n cung ti■n ngo■i tính website phóng ■■ng th■i vào c■p ng■, Khách trách xác tài ■i■m D■ch xã to,kho■n th■c nhi■m h■i thutháng V■ nh■ m■t s■ c■a (nh■ ■■i hàng ■■■c tùy ngu■n 5/2014; 123doc, v■i ■■■c ý cóg■i t■ng th■ tài 123doc v■ mô nguyên b■n d■ ng■■i ■■a t■ dàng s■ v■■t d■■i tri dùng ■■■c ch■ tra th■c m■c ■ây) email c■u M■c h■■ng quý 100.000 cho tài b■n tiêu báu, li■u b■n, nh■ng ■ã hàng phong m■t l■■t tùy ■■ng ■■u quy■n cách truy thu■c phú, ky, c■a c■p ■a l■i b■n vào 123doc.net m■i d■ng, sau xác, vuingày, n■p lòng “■i■u nhanh giàu ti■n s■ ■■ng tr■ giá Kho■n chóng h■u thành tr■ nh■p 2.000.000 website ■■ng Th■a th■ email vi■n th■i Thu■n c■a thành mong tài v■ li■u viên mu■n S■ online ■■ng D■ng click t■o l■n ký, D■ch ■i■u vào nh■t l■t link ki■n V■” vào Vi■t 123doc top sau cho Nam, 200 ■ây cho ■ã cung các (sau g■iwebsite c■p users ■âynh■ng ■■■c cóph■ thêm tài bi■n g■i thu li■u t■t nh■t nh■p ■■c T■it■i khơng t■ng Chính Vi■tth■i th■ Nam, v■y ■i■m, tìm t■123doc.net th■y l■chúng tìm ki■m tơi th■ racóthu■c ■■i tr■■ng th■nh■m c■p top ngo■i 3nh■t ■áp Google tr■ ■KTTSDDV ■ng 123doc.net Nh■n nhu c■u ■■■c theo chiaquy■t danh s■ tài hi■u li■udo ch■t c■ng l■■ng ■■ng vàbình ki■mch■n ti■n online website ki■m ti■n online hi■u qu■ uy tín nh■t u■t phát Nhi■u Mang Luôn 123doc Th■a Xu■t Sau h■n h■■ng phát thu■n l■i event s■ cam nh■n t■ m■t tr■ t■ h■u ýk■t s■ thú nghi■m t■i ýt■■ng xác n■m t■■ng m■t d■ng v■, s■ nh■n website mang event t■o kho m■i ■■i, t■o t■ c■ng th■ m■ l■i c■ng ki■m ■■ng d■n 123doc CH■P vi■n nh■ng cho ■■ng ■■u ■■ng ti■n h■ kh■ng ng■■i NH■N ■ã quy■n th■ng thi■t chia ki■m t■ng ki■m dùng, l■ CÁC s■ th■c ti■n s■ l■i b■■c v■i ti■n vàchuy■n ■I■U t■t công online h■n mua 123doc online kh■ng nh■t 2.000.000 ngh■ bán KHO■N b■ng sang b■ng cho tài ■■nh hi■n tài ng■■i li■u ph■n tài TH■A li■u tài v■ th■ li■u hàng t■o li■u thơng dùng trí hi■u hi■n THU■N hi■u c■ c■a ■■u ■ tin qu■ t■t h■i Khi ■■i, qu■ Vi■t xác c■ khách gia nh■t, b■n nh■t, minh l■nh Nam t■ng Chào online uy hàng uy tài v■c: l■nh thu Tác tín m■ng tín kho■n tr■ cao nh■p không tài phong v■c cao thành b■n nh■t email nh■t tài online khác chuyên ■■n li■u thành tín Mong b■n Mong cho d■ng, v■i so nghi■p, viên kinh ■ã mu■n t■t 123doc 123doc.net! v■i mu■n công ■■ng c■a c■ doanh b■n mang hoàn mang ngh■ 123doc ký g■c online thành v■i l■i h■o, Chúng l■i thông B■n cho 123doc.netLink cho viên Tính ■■ n■p có c■ng tơi tin, c■ng c■a cao th■ ■■n cung ti■n ngo■i ■■ng tính website phóng ■■ng th■i vào c■p ng■, Khách trách xác xã tài ■i■m D■ch xã to,h■i kho■n th■c nhi■m h■i thum■t tháng V■ nh■ m■t s■ c■a (nh■ ■■i hàng ngu■n ■■■c tùy ngu■n 5/2014; 123doc, v■i ■■■c ý cótài g■i t■ng th■ tài 123doc nguyên v■ mô nguyên b■n d■ ng■■i ■■a t■ dàng s■ v■■t tri d■■i tri dùng ■■■c ch■ th■c tra th■c m■c ■ây) email c■u quý M■c h■■ng quý 100.000 cho tài báu, b■n tiêu báu, li■u b■n, nh■ng phong ■ã hàng phong m■t l■■t tùy ■■ng ■■u phú, quy■n cách truy thu■c phú, ky, c■a c■p ■a ■a l■i b■n vào d■ng, 123doc.net m■i d■ng, sau xác, vuingày, n■p giàu lòng “■i■u nhanh giàu ti■n giá s■ ■■ng tr■ giá Kho■n chóng h■u tr■ thành tr■ nh■p ■■ng 2.000.000 website ■■ng Th■a th■ email th■i vi■n th■i Thu■n mong c■a thành mong tài v■ li■u mu■n viên mu■n S■ online ■■ng D■ng t■o click t■o l■n ■i■u ký, D■ch ■i■u vào nh■t l■t link ki■n ki■n V■” vào Vi■t 123doc cho top sau cho Nam, cho 200 ■ây cho ■ã cung các (sau g■i users website c■p users ■âynh■ng có ■■■c cóph■ thêm thêm tài bi■n g■i thu thu li■u t■t nh■p nh■t nh■p ■■c T■it■i Chính khơng t■ng Chính Vi■tth■i vìth■ Nam, vìv■y v■y ■i■m, tìm 123doc.net t■123doc.net th■y l■chúng tìm ki■m tơi th■ racó ■■i thu■c ■■i tr■■ng th■ nh■m nh■m c■p top ngo■i ■áp 3nh■t ■áp Google ■ng tr■ ■KTTSDDV ■ng 123doc.net nhu Nh■n nhuc■u c■u ■■■c chia theo chias■ quy■t danh s■tàitài hi■u li■u li■uch■t ch■t c■ng l■■ng l■■ng ■■ng vàvàki■m bình ki■mch■n ti■n ti■nonline online website ki■m ti■n online hi■u qu■ uy tín nh■t Nhi■u Mang Ln 123doc Th■a Xu■t Sau h■n h■■ng phát thu■n l■i event s■ cam nh■n m■t tr■ t■ h■u k■t s■ thú nghi■m t■i ýxác n■m t■■ng m■t d■ng v■, s■ nh■n website mang event kho m■i ■■i, t■o t■ th■ m■ l■i c■ng ki■m ■■ng d■n 123doc CH■P vi■n nh■ng cho ■■u ■■ng ti■n h■ kh■ng ng■■i NH■N ■ã quy■n th■ng thi■t chia t■ng ki■m dùng, l■ CÁC s■ th■c s■ l■i b■■c v■i ti■n vàchuy■n ■I■U t■t công h■n mua 123doc online kh■ng nh■t 2.000.000 ngh■ bán KHO■N sang b■ng cho tài ■■nh hi■n ng■■i li■u ph■n tài TH■A tài v■ th■ li■u hàng t■o li■u thông dùng tríhi■n THU■N hi■u c■ c■a ■■u ■ tin t■t h■i Khi ■■i, qu■ Vi■t xác c■ khách gia b■n nh■t, minh l■nh Nam t■ng Chào online hàng uy tài v■c: l■nh thu Tác m■ng tín kho■n tr■ nh■p khơng tài phong v■c cao thành b■n email nh■t tài online khác chuyên ■■n li■u thành tínb■n Mong cho d■ng, v■i so nghi■p, viên kinh ■ã t■t 123doc 123doc.net! v■i mu■n công ■■ng c■a c■ doanh b■n hoàn mang ngh■ 123doc ký g■c online thành v■i h■o, Chúng l■i thông B■n 123doc.netLink cho viên Tính ■■ n■p có tơi tin, c■ng c■a cao th■ ■■n cung ti■n ngo■i tính website phóng ■■ng th■i vào c■p ng■, Khách trách xác tài ■i■m D■ch xã to,kho■n th■c nhi■m h■i thutháng V■ nh■ m■t s■ c■a (nh■ ■■i hàng ■■■c tùy ngu■n 5/2014; 123doc, v■i ■■■c ý cóg■i t■ng th■ tài 123doc v■ mơ ngun b■n d■ ng■■i ■■a t■ dàng s■ v■■t d■■i tri dùng ■■■c ch■ tra th■c m■c ■ây) email c■u M■c h■■ng quý 100.000 cho tài b■n tiêu báu, li■u b■n, nh■ng ■ã hàng phong m■t l■■t tùy ■■ng ■■u quy■n cách truy thu■c phú, ky, c■a c■p ■a l■i b■n vào 123doc.net m■i d■ng, sau xác, vuingày, n■p lòng “■i■u nhanh giàu ti■n s■ ■■ng tr■ giá Kho■n chóng h■u thành tr■ nh■p 2.000.000 website ■■ng Th■a th■ email vi■n th■i Thu■n c■a thành mong tài v■ li■u viên mu■n S■ online ■■ng D■ng click t■o l■n ký, D■ch ■i■u vào nh■t l■t link ki■n V■” vào Vi■t 123doc top sau cho Nam, 200 ■ây cho ■ã cung các (sau g■iwebsite c■p users ■âynh■ng ■■■c cóph■ thêm tài bi■n g■i thu li■u t■t nh■t nh■p ■■c T■it■i khơng t■ng Chính Vi■tth■i th■ Nam, v■y ■i■m, tìm t■123doc.net th■y l■chúng tìm ki■m tơi th■ racóthu■c ■■i tr■■ng th■nh■m c■p top ngo■i 3nh■t ■áp Google tr■ ■KTTSDDV ■ng 123doc.net Nh■n nhu c■u ■■■c theo chiaquy■t danh s■ tài hi■u li■udo ch■t c■ng l■■ng ■■ng vàbình ki■mch■n ti■n online website ki■m ti■n online hi■u qu■ uy tín nh■t CHƢƠNG BỘ KIỂM CHỨNG MƠ HÌNH 21 Bộ KIểM CHứNG MƠ HÌNH SPIN 21 1 Giới thiệu SPIN 21 Công cụ jSPIN 21 3 Công cụ ISPIN 23 DÙNG SPIN Đễ KIểM CHứNG .25 Giả lập ngẫu nhiên 25 2 Verify 25 3 GIớI THIệU Về LTL(LINEAR TEMPORAL LOGIC) 27 3 Cú pháp .28 3 Ngữ nghĩa 29 CHƢƠNG THỰC NGHIỆM 31 MƠ HÌNH MÁY TRạNG THÁI HƢU HạN 31 THựC NGHIệM VớI Hệ THốNG ĐÈN .31 MƠ Tả BÀI TỐN 31 2 Kiểm chứng mô hình hệ thống đèn bắng SPIN 34 Bảng chuyển Atomata 39 KẾT LUẬN 40   KếT QUả CủA KHÓA LUậN 40 HƢớNG NGHIÊN CứU TIếP THEO .40 TÀI LIỆU THAM KHẢO 41 DANH SÁCH HÌNH ẢNH: Hình1.1 Sơ đồ việc kiểm chứng hệ thống Hình1.2 Sơ đồ hoạt động phương pháp kiểm chứng mơ hình 10 Hình3.1 Giao diện JPIN 22 Hình3.2 Giao diện ISPIN .23 Hình4.3 Cửa sổ Verification 24 Hình3.4 Của sổ chạy chức View SPIN Atomaton 24 Hình4.1 Mơ hình cơng tắc đèn .32 Hình4.2 Kết chạy giả lập mơ hình hệ thống đèn .34 Hình4.3 JSPIN dịch từ LTL sang Promela 35 Hình4.4 Kết kiểm tra mơ hình hệ thống đèn 36 Hình4.5 Mơ hình cơng tắc đèn không 37 Hình4.6 Kết kiểm chứng mơ hình hệ thống đèn khơng thỏa mãn 39 Hình4.7 Kết bảng chuyển Atomata 39 LỜI CẢM ƠN Trước tiên, em xin gửi lời cảm ơn chân thành đến trường Đại học Dân Lập Hải Phòng tạo điều kiện thuận lợi cho em suốt trình học vừa qua,em xin gửi lời cảm ơn chân thành đến qúy thầy cô khoa Cơng nghệ Thơng tin nhiệt tình giảng dạy em thời gian qua, qua em có kiến thức bổ ích đểlàm đề tài Đặc biệt em gửi lời cảm ơn chân thành đến thầy Đỗ Văn Chiểu trực tiếp hướng dẫn tạo điều kiện cho em hoàn thành đề tài Cuối em xin gửi lời cảm ơn đến gia đình, bạn bè, người thân giúp đỡ động viên em nhiều trình học tập làm đồ án tốt nghiệp Do thời gian thực có hạn, kiến thức nhiều hạn chế nên đồ án thực chắn khơng tránh khỏi thiếu sót định Em mong nhận ý kiến đóng góp thầy giáo bạn để em có thêm kinh nghiệm tiếp tục hoàn thiện đồ án Em xin chân thành cảm ơn! Hải Phịng, ngàythángnăm 2012 Sinh viên Vũ Đức Hậu GIỚI THIỆU ĐẶT VẤN ĐỀ Đặc tả kiểm chứng phần mềm phương pháp kiểm tra hệ thống liệu có thỏa thiết kế hay khơng? Việc kiểm tra hệ thống thực nhiều pha quy trình sản xuất phần mềm,từ thiết kế,đặc tả,viết mã,kiểm thử,kiểm chứng,kiểm tra có thỏa yêu cầu người dùng (validation) Trong lập trình muốn có chương trình người lập trình khơng thể thành cơng lần chạy chưa thể tốt lần biên dịch đầu tiên.Một chương trình ban đầu trơng hồn hảo đưa vào chạy thật chứa lỗi đâu đó,khi gây thiệt hại thời gian tiền bạc chùng ta nhiều Trong trình thiết kế sản xuất phần cứng phần mềm,chúng ta tốn nhiều thời gian công sức việc thiết kế,đôi nhiều việc xây dựng chúng Có nhiều ứng dụng mà có lỗi dù nhỏ đưa vào sử dụng dẫn đến thiệt hại người, tài sản tốn thật nặng nề đến môi trường.Việc thiết kế phần mềm dành cho hệ thống vơ khó khăn Việc lập trình viên phải làm để có sản phẩm phần mềm ln phân tích,lập trình,kiểmtra lại,kiểm thử.Để việc kiểm chứng nhẹ nhàng nhanh chóng, tăngsự xác ln tìm kiếm cơng nghệ để giúp cho việc SPIN cơng cụ SPINlà cơng cụ chung để kiểm chứng tính đắn mơ hình phần mềm cách chặt chẽ hầu hết tự động.Ban đầu viết Gerard J.Holzmann cộng nhóm Unix ngành khoa học máy tính Trung tâm nghiên cứu Bell Labs vào năm 80 kỷ trước.SPIN miễn phí tiếp tục phát triển để bắt kịp với phát triển lĩnh vực Các hệ thống cần kiểm chứng đặc tả Promela (Process Meta Language)sau dùng (SPIN-Simple Promela Interpreter) để kiểm chứng.Các tính chất cần kiểm chứng biểu diễn công thức LTL,lấy phủ định chuyển sang Büchi Automata.Ngồi việc kiểm chứng mơ hình,SPIN hoạt động mơ phỏng,sau thi hành dãy thực thi hệ thống hiển thị vết thi hành cho người dùng Nội dung khóa luận: Khóa luận tìm hiểu kiểm chứng mơ hình SPIN,các mơ hình hệ thống viết ngơn ngữ promela mà SPIN hiểu kiểm chứng mơ hình SPIN CẤU TRÚC KHĨA LUẬN Các phần cịn lại khóa luận có cấu trúc sau: Chương 1: Trình bày sở lý thuyết kiểm thử mơ hình, bao gồm khái niệm bản, bước thực hiện, lợi ích kiểm thử mơ hình cách thức xây dựng mơ hình Chương 2: Trình bày khái niệm ngơn ngữ mơ hình Promela, bao gồm định nghĩa khai báo biến kiểu, định danh, số, biểu thức, tiến trình Chương 3: Trình bày kiểm chứng, bao gồm giới thiệu công cụ ISPIN JSPIN, dùng SPIN để kiểm chứng, giới thiệu LTL Chương 4: Trình bày kết thực nghiệm trình mơ tả hệ thống đèn, thiết kế mơ hình hệ thống đènbằng Promela Kết luân: Kết khóa luận đạt hướng nghiên cứu CHƢƠNG 1:KIỂM CHỨNG MƠ HÌNH 1 KIỂM CHỨNG MƠ HÌNH Việc kiểm tra chương trình có thỏa mãn với thiết kế hay không lĩnh vực nghiên cứu ngành Cơng nghệ Phần mềm.Đã có nhiều hướng tiếp cận nhằm mục đích đưa phương pháp tốt để giải toán này.Kiểm thử phẩn mềm phương pháp phổ biến tìm lỗi chương trình khơng chứng minh chương trình khơng cịn lỗi.Một hướng tiếp cận thay kiểm tra mức mã nguồn người ta kiểm tra từ mức thiết kế viết mã cho chương trình khơng đảm bảo chương trình khơng cịn lỗi.Trong thời gian qua có nhiều thành tựu lĩnh vực này, có nhiều ngơn ngữ công cụ dùng để đặc tả kiểm chứng chương trình.Các ngơn ngữ dùng đặc tả thuộc tính hệ thống LTL,CTL,CTL*,Promela,Alloy với cơng cụtương ứng thìSPINđã trợ giúp tốt để giải toán Các phương pháp kiểm chứng phần mềm bổ trợ cho số hạn chế kiểm thử.Trong kiểm chứng phần mềm truyền thống chương trình mơ hình hóa đặc tả S thể ngôn ngữ L(S).Bản thiết kế hệ thống đặc tả ngôn ngữ L(A).Mã nguồn chương trình Pđược thể ngơn ngữ lập trìnhL(P) đó.Khi kiểm chứng, mã nguồn chương trình chuyển sang mơ hìnhM thể ngôn ngữ L(M) vậy: L(M) L(A) Để kiểm tra mã nguồn chương trình có với thiết kế hay khơng? Người ta kiểm tra xem L(M) có thỏa mãn L(A) hay khơng? Điều khó chứng minh.Do người ta tìm L(M) kiểm tra: L(A) Nếu L(A) L(M) L(M) khẳng định mã nguồn chương trình khơng có lỗi trường hợp ngược lại khẳng định có lỗi lập đoạn mã có lỗi để khắc phục Nhưng điều quan trọng là:L(M) L(P)?Làmcách để khẳng định L(P) L(M)?Điều khó q trình có tham gia người (quy trình có người tham gia có lỗi) Như đề cập trên,bản thiết kế chương trình thể ngơn ngữ L(A) thực tế người ta dùng logic để biểu diễn LTL chọn để biểu diễn thiết kế này.Để kiểm chứng chương trình người ta chuyển L(A) L(P) ngơn ngữ mà ơtơmát Büchi đốn nhận đượcbằng thuật toán Kỹ thuật xác minh hệ thống áp dụng cho việc thiết kế hệ thống công nghệ thông tin cách đáng tin cậy Kiểm chứng mơ hình xem sét phần mếm sản xuất có yêu cầu,hợp lý trường hợp mà phần mềm phải đáp ứng không Để thực hiên điều phần mềm chạy số hữu hạn đầu vào thiết kế sẵn,phần mềm có lỗi hay khơng đem so sanh với liệu đầu mong muốn Trong giai đoạn kiểm thử việc chạy hết trường hợp cócủa liệu đầu vào khó thường khơng thực dẫn đến chứa lỗi.Không giai đoạn kiểm thử lỗi phát thường muộn dẫn đến khó khắc phục,tiêu tốn thời gian,tiền Hình1.1 Sơ đồ việc kiểm chứng hệ thống Quá trình kiểm chứng quan trọng,nó giúp biết thiết kế hay sản phẩm phần mềm có đúng,đảm bảo tính chất yểu cầu mà q trình đặc tả hệ thống đưa không Mọi công việc trình kiểm thử dựa việc đặc tả hệ thống Một lỗi phát khihệ thống khơng thỏa mãn tính chất đặc tả hệ thống ngược lại hệ thống khinhững tính chất thỏa mãn.Vì việc kiểm chứng giúp phát lỗi sớm Việc kiểm chứng mô hình dựa sở viêc mơ tả xác hành vi hệ thống cách không nhập nhằng,điều giúp phát điều nhập nhằng, khơng chưa hồn thiện hệ thống Kĩ thuật giúp kiểm chứng quà trình thiết kế sản phẩm, cơng cụ việc kiểm tra sản phẩm phần mềm bắt buộc chạy khơng có sai sót CÁCH TIẾN HÀNH Việc kiểm chứng mơ hình thực việc xác định yêu cầu hệ thống sau ta xây dựng mơ hình hệ thống, từ giúp hiểu chức hành vi hệ thống.Ta xây dựng mơ hình hệ thống ngơn ngữ lập trình C, Promela hay java… Sau cơng cụ kiểm chứng sinh tất trạng thái có hệ thống Kết đầu so sánh với kết đầu vào hệ thống kiểm tra chúng có thỏa mãn hay khơng,nếu khơng thỏa mãn kiểm chứng tìm trạng thái khơng thỏa mãn 10 Hình1.2 Sơ đồ hoạt động phƣơng pháp kiểm chứng mơ hình Các bƣớc thực kiểm chứng mơ hình  Từ đặc tả chức năng,yêu cầu hệ thống ta xây dựng mơ hình  Tạo đầu từ kiện toán  So sánh kết đầu kết thực tế mong muốn  Sửa đổi mơ hình,tạo thêm ca kiểm thử,dừng kiểm thử,đánh giá chất lượng phần mềm (Nếu cần) Kiểm chứng mơ hình khả đánh gia phần mềm hiểu Ƣu nhƣợc điểm kiểm chứng mơ hình Trong sản xuất phát triển phân phần mềm công việc kiểm thử thiếu được,nhưng kiểm thử phương pháp truyền thống nhiều thời gian,tiền của… làm cho phần mềm không đáp ứng đủ u cầu mà người dùng đưa ra.Chính kiểm chứng mơ hình khác phục số nhược điểm đó:  Do q trình sinh ca kiểm thử tự động nên trình kiểm thử rút ngắn,đồng thời chất lượng phần mềm tốt  Tuy chi phí việc xây dựng mơ hình lớn chi phí để bảo trì phần mềm tốn hệ thống đưa vào hoạt động  Trong kiểm chứng mơ hình ca kiểm thử tự động sinh nên lỗi phát nhiều  Lỗi phát sớm tăng thời gian giải vàkhác phục Do kiểm chứng mơ hình phương pháp kiểm chứng tổng quát áp 27 Trong ví dụ ta tìm nghịch đảo số biễn value gán giá trị value =(value % 10)*100 + (value / 10)%10 + 10 +1000(value / 100)do in giá tri vulue reversed khơng thỏa mãn Ví dụ Chương trình nghịch đảo số có chứa lỗi: active proctype P() { intvalue = 123; int reversed; value = (value % 10)*100 + (value / 10)%10 + 10 +1000 (value / 100); printf("value reversed) = %d,reversed = %d\n",value, } Khi chạy Verify, ISPIN đưa thông báo lỗi vi phạm verification result: SPIN -athu SPIN:thu:7,Error:syntax errorsaw ''(' = 40' SPIN:thu:10,Error:no runable process gcc-4 -DMEMLIM=1024 -O2 -DXUSAFE -DSAFETY -DNOCLAIM -w -o pan pan c pan c:435:17:error:expected expression before ‘, ’ token 3 GIỚI THIỆU VỀ LTL(Linear Temporal Logic) Linear Temporal Logic (viết tắt LTL) đề xuất Amir Pnueli (19412009),một nhà khoa học người Israel,là loại logic áp dụng cho thời gian,người ta xây dựng cơng thức tương lai.Ví dụ:một điều kiện cuối 28 điều kiện điều kiện khác đúng, … LTL phần CTL* (một loại logic có thêm lượng từ nhánh thời gian).LTL đề xuất dùng kiểm chứng hình thức Amir Pnueli năm 1977 3 CÚ PHÁP LTL xây dựng từ biến mệnh đề AP (Atomic Proposition),các toán tử logic toán tử thời gian X,U Một cách hình thức,các cơng thức LTL định nghĩa sau: Nếu p mệnh đề ngun tử p (p AP) cơng thức LTL Nếu ψ φ công thức LTL ¬ψ,φ ∨ ψ,X ψ φ U ψcũng công thức LTL ::= true | a | 1∧ |¬ |X | U | X đọc NEXT U đọc UNTIL Trình tự tốn tử sau:Tốn tử ngơi có độ ưu tiên cao nhất,tốn tử ¬ tốn tử Xcó độ ưu tiên tương đương nhau.Tốn tử U có độ ưu tiên toán tử ∧,∨,và →.Dấu ngoặc đơn “( )” loại bỏ khơng gây nhầm lẫn.Tốn tử U có độ ưu tiên bên phải,tức cơng thức U( U 3) có thểviết thành U U Dùng toán tử , đủ để biểu diễn công thức logic mệnh đề Ngồi ra,có số tốn tử bổ sung F, G.Tốn tử F cịn ký hiệu ,tốn tử G ký hiệu ,toán tử X ký hiệu O Tồn tử U biểu diễn toán tử F, G sau: G đọc làGlobally (luôn xảy ra) 29 F đọc Future (cuối xảy ra) 3 NGỮ NGHĨA Công thức LTL biểu diễn tính chất chuỗi hành động (path,có thể gọi vết - trace) Điều có nghĩa chuỗi hành động thoả công thức LTL không.Để lập cơng thức xác chuỗi hành động thoả mãn công thức LTL tiến hành sau: Đầu tiên,ngữ nghĩacủa công thức LTL định nghĩa ngôn ngữWords( ) chứa tất từ vô hạn bảng chữ 2APthoả mãn ,sau ngữ nghĩa mở rộng để diễn giải toàn trạng thái chuỗi hành động hệ thống dịch chuyển Định nghĩa(Ngữ nghĩa LTL):Cho công thức LTL AP.Tính chất logic thời gian sinh Ở đây,quan hệ thoả ⊨là tập với thuộc tính bảng 1.Ký hiệu quan hệ nhỏ Ngữ nghĩa LTL (quan hệ thỏa ╞ ) cho từ vô hạn trên2AP Giả sử a,b hai mệnh đề nguyên tử,bảng minh họa ngữ nghĩa phép toán mệnh đề 30 Minh hoạ ngữ nghĩa LTL 31 CHƢƠNG THỰC NGHIỆM MÔ HÌNH MÁY TRẠNG THÁI HƢU HẠN Máytrạngtháihữuhạn(Finite State Machine-FSM) hay gọi làmáy tựđộng trạng thái hữu hạn(FiniteStateAutomaton-FSA) sử dụng để mô tả hoạt động nhiều hệ thống thực tế,là dạng mơ hình đa trạng thái,gồm thành phần chính: Các trạng thái Các cung chuyển trạng thái Các hành động (Actions) Cách thức để chuyển FSM sang mơ hình promela sau: Các bước chuyển trạng thái khai báo kiểu mtype Tất thông tin chuyển trạng thái chuyển dến biến message kiểu kênh nhận thông điệp thuộc loại mtype trên, sau message gửi thơng điệp tiến trình coltrol() tiến trình điều khiển máy hữu hạn trạng thái Trạng thái máy thể bởibiếnstatecó giá trị thay đổi tiến trìnhaction(),kênhmessagesẽ nhận thơng điệp tiến trình action() Mỗi tiến trình điều khiển coltrol()gửi thơng điệp chuyển trạng thái,dựavào thông điệp nhận giá trị củastate,state gán giá trị tương ứng với trạng thái Vềmặtứng dụng,máy trạng thái hữu hạnđóng vai trị quan trọng nhiều lĩnh vực cơng nghệ điện tử,ngơn ngữ học,khoa học máy tính,triết học,sinh học,tốn học,logic học… Trong khoa học máy tính,máy trạng thái hữu hạnđược sửdụng rộng rãi việc mơ hình hóa hoạt động phần mềm,thiết kếhệthống phần cứng,trình biên dịch,công nghệ mạng,xử lý ngôn ngữ tự nhiên … THỰC NGHIỆM VỚI HỆ THỐNG ĐÈN MƠ TẢ BÀI TỐN Áp dụng phương pháp đề xuất tìm hiểu khóa luận cho tốn hệ thống cơng tác đèn dùng gia đình.Đầu vào thiết bị thơng qua nút bấmup down.Đầu thông quađèn báo hiệu với mức sáng:tắt (off),sáng yếu (low),sáng mạnh (high).Hoạt động đèn thể hiệnbởi mơ hình máy hữu hạn trạng thái sau: 32 Hình4.1 Mơ hình cơng tắc đèn Mơ hình promela mơ tả hoạt động đèn xây dựng sau:mơ hình promela gồm tiến trình:lamp()vàswitch()(lần lượt tương ứng vớiactive()và control().Để thểhiệntương tácgiữacơng tắcvà bóng đènhaitiến trình trao đổi thơng tin qua kênh updown nhận gửi thông điệp thuộc kiểu mtype = { up,down } Mơ hình promela đèn (file lamp pml): byte state=0; mtype={up,down}; chan updown=[0] of {mtype}; proctype lamp(){ ::atomic {updown?up->if ::state=0 -> state=1 ::state=1->state=2 ::state=2->state=2 10 ::else -> skip fi 11 } 12 ::atomic {updown?down->if 13 ::state=0-> state=0 14 ::state=1->state=0 15 ::state=2->state=1 16 ::else -> skip fi 33 17 } 18 od 19 } 20 proctype switch(){ 21 22 ::updown!up; 23 ::updown!down; 24 od 25 } 26 init{ 27 atomic{ 28 run lamp(); 29 run switch();} 30 } Trong mơ hình giá trị biếnstatelà 0,1,2 mô tả ba trạng thái đèn off,low,high.Với mơ hình này,trong SPINta chạy chế độrandom,để kiểm tra lỗi thân chương trình Promela Trong chế độ này,khi tiến trình init thực thi,SPIN giả lập hoạt động đèn,chuỗi tín hiệuupvàdownđược sinh cách tùy ý(nhờ thực thi tiến trình switch())và từ trạng thái đènthay đổi (nhờ thực thi tiến trìnhlamp()).Chương trình khơng có lỗi cú pháp SPIN dừng sau đạt tới giới hạn 250 bước 34 Hình 4.2Kết chạy giả lập mơ hình hệ thống đèn 2 KIỂM CHỨNG MƠ HÌNH HỆ THỐNG ĐÈN BẮNG SPIN 2 A KIỂM CHỨNG MƠ HÌNH HỆ THỐNG CƠNG TẮC ĐÈN ĐÁP ỨNG THUỘC TÍNH Chạy giả lập chế độ dandom để kiểm tra chương trinh: Mô tả trạng thái đèn: off:up:low low:up:high low:down:off high:up:high high:down:low Sau chạy giả lập chế độ random phần ta cần kiểm tra tính chất mà hệ thống cần thỏa mãn việc chạyverify.Tính chất cần kiểm chứng trường hợp là:khi đèn trạng tháihigh,cần phải qua trạng tháilowrồi trạng thái off Biểu thức LTL mơ tả tính chất là: [] !((state == 2) && (state != 1) U (state ==0)) 35 (Không xảy trường hợp biến state và,nó ln khác 0) Ta thêm vào mơ hình promela định nghĩa kí hiệu #define a0 (state = = 0) #define a1 (state != 1) #define a2 (state = = 2) Biểu thức LTL đưa vào SPIN là: [] !(a2 && (a1 U a0)) Khi trongJSPIN ta sử dụng chức Translate để dịch tử ngơn ngữLTL sang Promela Hình4.3 JSPIN dịch từ LTL sang Promela Code sau JSPIN dịch từ LTL sang ngôn ngữ Promela: never{/* !([] !(a2 && (a1 U a0))) */ T0_init: If :: ((a0) && (a2)) -> goto accept_all :: ((a1) && (a2)) -> goto T0_S4 :: (1) -> goto T0_init fi; 36 T0_S4: if :: ((a0)) -> goto accept_all :: ((a1)) -> goto T0_S4 fi; accept_all: skip } Sau ta Translate để dịch tử ngôn ngử LTL sang Promela ta chạy verify, kết cho thấy khơng có lỗi vi phạm hệ thống thỏa mãn tính chất cần kiểm tra Hình4.4 Kết kiểm tra mơ hình hệ thống đèn 2 B KIỂM CHỨNG MƠ HÌNH KHƠNG ĐÁP ỨNG THUỘC TÍNH 37 Hình4.5 Mơ hình cơng tắc đèn khơng Mô tả trạng thái đèn không thỏa mãn nêu phần 5.2.2.a Trong mơ hình từ trạng thái high,cái đèn chuyển sang trạng thái off mà không qua trạng thái low.Tệp mô tả trạng thái đèn lamp txt off:up:low low:up:high low:down:off high:up:high high:down:off Sau chạy giả lập chế độ random phần ta cần kiểm tra tính chất mà hệ thống cần thỏa mãn việc chạyverify.Tính chất cần kiểm chứng trường hợp là:khi đèn trạng tháihigh,cần phải qua trạng tháilowrồi trạng thái off Tệp lamp1 txt hệ thống đèn khơng đáp ứng thuộc tính: proctype lamp(){ ::atomic {updown?up->if ::state=0 -> state=1 ::state=1->state=2 ::state=2->state=2 ::else -> skip fi } atomic {updown?down->if ::state=0-> state=0 ::state=1->state=0 ::state=2->state=0 else -> skip fi 38 } od } proctype switch(){ ::updown!up; ::updown!down; od } init{ atomic{ run lamp(); run switch();} } Biểu thức LTLđưa vào SPIN: [] !(a2 && (a1 U a0)) Khi JSPIN ta sử dụng chức Translate để dịch tử ngơn ngử LTL sang Promela.Sau ta chạy verity chương trình chạy chương trình promle hệ thống đèn đồng thời so sánhbiểu thức LTL,kết cho thấy SPIN báo lỗi vi phạm,suy mơ hình đưa vào khơng thảo mãn tính chất cần kiểm tra 39 Hình4.6 Kết kiểm chứng mơ hình hệ thống đèn khơng thỏa mãn BẢNG CHUYỂN ATOMATA Hình4.7 Kết bảng chuyển Atomata 40 KẾT LUẬN  Kết khóa luận Đồ án tìm hiểu kiểm chứng mơ hình SPIN, khái niệm kiểm chứng mơ hình, kĩ thuật kiểm chứng Đồ án sâu vào tìm hiểu hệ tương tranh mơ hình hóa hệ thốngbằng Promela đồng thời em tìm hiểu cách kiểm chứng cơng cụ JSPIN ISPIN Để thực nghiệm kết nghiên cứu đồ án em xây dựng thực nghiệm công tắc đèn  Hƣớng nghiên cứu Hướng nghiên cứu đồ án tiếp tục tìm hiểu xây dựng SPIN để đặc tả hệ thống thời gian thực 41 TÀI LIỆU THAM KHẢO [1] Spin Model Checker The Primer and Reference Manual [2] Software reliability methods [3]Bài giảng môn Công Nghệ Phần Mềm thầy Nguyễn Văn Vỵ [4] http://spinroot.com [5] Principles_of_model_checking [6] Model Cheking Edmund M Jr Clarke,Orna Grumberg,Doron A Peled ... CHƢƠNG BỘ KIỂM CHỨNG MÔ HÌNH BỘ KIỂM CHỨNG MƠ HÌNH SPIN Để kiểm chứng mơ hình có nhiều cơng cụ dể kiểm chứng đồ án để kiểm chứng hệ tương tranh em sử dụng kiểm chứng SPIN công cụ JSPIN ISPIN 1... dung khóa luận: Khóa luận tìm hiểu kiểm chứng mơ hình SPIN, các mơ hình hệ thống viết ngơn ngữ promela mà SPIN hiểu kiểm chứng mơ hình SPIN CẤU TRÚC KHĨA LUẬN Các phần cịn lại khóa luận có cấu...2 CHƢƠNG BỘ KIỂM CHỨNG MƠ HÌNH 21 Bộ KIểM CHứNG MÔ HÌNH SPIN 21 1 Giới thiệu SPIN 21 Công cụ jSPIN 21 3 Công cụ ISPIN 23 DÙNG SPIN Đễ KIểM CHứNG

Ngày đăng: 05/08/2021, 21:50

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w