Vì lý do đó, luận văn này đề xuất kỹ thuậttinh lọc tr u tượng hiện th c trên công cụ GOLFER công cụ này được xây d ng trên nên NuSMV cho phép ki m tra trên các mô hình có không gian trạn
Trang 1NGUYEN THỊ HỎNG PHANUNG DỤNG ĐỎ THỊ PHU THUỘC BIENTRONG KIEM TRA MÔ HÌNH HUONG KÝ HIỆU
VÀ TINH LOC TRUU TƯỢNG
CHUYEN NGANH: KHOA HOC MAY TÍNHMA SO CHUYEN NGANH: 60.48.01
TP HO CHI MINH, tháng 06 năm 2013
Trang 2Cán bộ hướng dẫn khoa hoc: TS THOATI THẮNG
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
(Ghi rõ họ, tên, học hàm, học vi của Hội đông châm bảo vệ luận văn thạc si)
1 TS Nguyễn Đức Thái
2 TS Huỳnh Tường Nguyên
3 TS Nguyễn Thị Minh Tuyền A TS Trần Văn Hoài - c 5-¿5.TS vi Hoài Thắng Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên
ngành sau khi luận văn đã được sửa chữa (nêu có).
CHỦ TỊCH HỘI ĐÔNG TR ONG KHOA
Trang 3NHIEM VỤ LUẬN VĂN THAC SĨHọ tên học viên: NGUYEN THỊ HONG PHẦN MSHV: 11070465
Ngày, tháng, năm sinh: 12/10/1984 7-75 < << << <2 Noisinh: nh ương
Chuyên ngành: Khoa Học Máy T nh - «<< «<< ees Mã số : 60.48.01 I TÊN DE TÀI: - 5c 2t 222 2222212112211 ererrre
ng dụng đỗ thị phụ thuộc biến trong ki mtram h nh hướng ký hiệu va
H NHIỆM VỤ VÀ NỘI DUNG:: - - 5< 2 SE ST grrưệ= Nghiên cứu các phương pháp ph n tch phụ thuộc biến trong ki m tram hnh
hướng ký hiệu"Nghiên cứu phương pháp tinh lọc tr u tượng CEGAR
= Dé xuất một phương pháp ph nt ch phụ thuộc bién mới= Dé xuất một phương pháp ki mtram h nh kết hợp CEGAR và đa tr u tượngHI NGÀY GIAO NHIỆM VU : 21/01/2013 c2 S252 E232 1 E211 EEEErkeg
IV NGÀY HOÀN THÀNH NHIỆM VU: 21/06/2013 2-5-555+222+s+E+EzszeezV CANBOH ỚNG DẪN: TS IHOÀI THẮNG - 5555 +c+s+csesee2
Tp HCM, ngày tháng năm 20
CÁN BOH ONG DẪN CHỦ NHIỆM BỘ MÔN ĐÀO TẠO(Họ tên và chữ ký) (Họ tên và chữ ký)
TR ONG KHOA (Họ tên va chữ ky)
Trang 4Đầu tiên, t ¡ xin gửi đến Thay IHOÀI THANG lời cảm ơn về những bai họchữu ch qua m n học ki m tra chương tr nh và những ch dẫn tận t nh trong quá tr nhlàm luận văn Chnh s hướng dẫn của Thây là yếu tố quan trọng góp phần làm nênthành c ng của luận văn Tôi xin được gởi đến Thay | ng biết ơn ch n thành vas u
sac nhât.
Tiếp theo, t i xin chân thành bày tỏ lòng biết ơn đến toan th quý Thay Cô trong
Khoa Khoa Học & KT Máy Tính - Ph ng Đào Tạo Sau Đại Học Trường Đại Học Bách
Khoa TP.HCM đã tận tình truyền đạt những kiến thức quý báu cũng như tạo mọi điềukiện thuận lợi nhất cho tôi trong suốt quá trình học tập
én cạnh đó, t i cũng xin ch n thành cảm ơn ban b_ và đồng nghiệp đã lu ndành cho t is h trợ, những lời động viên và những lời khuyên hữu ch trong suốt
Trang 5Trong lĩnh v c ki m tra mô hình hiện nay, bùng nỗ không gian trang thái là mộtrào cản trong việc ki m tra các hệ thống có không gian trạng thái lớn vì khôngth tìmkiếm | i bang cách vét cạn các trang thái Vì lý do đó, luận văn này đề xuất kỹ thuật
tinh lọc tr u tượng hiện th c trên công cụ GOLFER (công cụ này được xây d ng trên
nên NuSMV) cho phép ki m tra trên các mô hình có không gian trạng thái lớn Van dékhông gian trạng thái lớn được giải quyết bằng cách tr u tượng hóa (gom nhóm nhiều
trạng thái thành một trạng thái) Thay vì ki m tra trên mồ hình thật, mồ hình tr u tượng
sẽ được ki m tra trước Nếu tìm thay | i trên mô hình tr u tượng, công cụ GOLFERmới mở rộng phạm vi tìm kiếm trên mô hình thật Tuy nhiên cách mở rộng phạm vi tìmkiếm như thế nào đ cóth định vị duoc! i nhanh nhất mà kha năng lưu trữ của máytính van con h_ trợ được là van dé cần phải giải quyết Luận văn sẽ trình bày cách thứcgom nhóm nhiều trạng thái thành một trạng thái (bài toán tr u tượng hóa) cũng nhưviệc mở rộng mot trạng thái tr u tượng thành nhiều trạng thai (bài toán tinh lọc) thông
qua kỹ thuật tinh lọc tr u tượng Quá trình tr u tượng hóa và quá trình tinh lọc là hai
quá trình ngược nhau Cóth hi u đơn giản là tr u tượng biến những cái cụ th thànhcái tong quát, còn tinh lọc là biến cái tổng quát thành cái cu th Luận văn vận dụng ýtưởng giải thuật PageRank vào việc phân tích độ quan trọng cua biến trong đồ thị phụthuộc biến đ giải quyết bài toán tr u tượng Ngoài ra, luận văn còn giới thiệu giảithuật tìm | 1 mới, giải thuật tinh lọc tr u tượng, las kết hợp giải thuật tinh lọc tr u
tượng (Clarke) và giải thuật đa tr u tượng (Qian & Nymeyer ).
Trang 6In current model checking field, the statespace explosion prevents to verifythese large systems due to the reason that exhaustive search is failed Therefore, thisthesis proposes the abstraction refinement technique implemented on GOLFER (thetool is built on NUSMV) allows to verify on large state space systems Abstraction isapplied to reduce the size of statespace Instead of checking on concrete model,abstract model is verified firstly If finding counter example, the searching scope iswiden on the concrete model, this process can be called refinement Abstraction andrefinement are two opposite processes Abstraction makes complex things to simplethings while refinement maps simple things to complex things For abstraction solving,PageRank algorithm is applied to analysis the variable’s important degree in thevariable dependency graph Moreover, this thesis also introduces a new searchingalgorithm, abstraction refinement, a combination of counter-example guidedabstraction refinement (Clarke) and multiple abstraction (Qian & Nymeyer).
Trang 7T ¡ cam đoan rang, ngoại tr các kết quả tham khảot các c ng tr nh khác như
đã ghi rõ trong luận văn, các c ng việc tr nh bay trong luận văn là do ch nh t ith c
hiện và chưa có phan nội dung nao của luận văn nay được ai khác e ng bố trong bat cứ
c ng tr nh nào.
Tp Hỗ Ch Minh, ngày 21 tháng 06 năm 2013
Học viên th c hiện
Nguyễn Thị Hồng Phan
Trang 8LOI CAM 90 iTOM TAT LUẬN VAN ucccccecceccccessececcsceccsccecsccevsceccsevacscsacsevaceevacearseeacaeeeceevaes ii
ABSTRACT woeccccccccssssssscsescscscscscscsesesescsessssscsvscessvscscsescsesssssesesssssssvscsssnseseasees iii
0980.1629792 iv
10/909 22 V
ANH MỤC THUẬTNG ANH-VIỆT, VI T TẮT - 5s: viiiDANH MỤC HÌNH - -G- CS SE 123191 91 111 91 H1 H11 HT TH ng re XDANH MUC ẢNG SG S212 TH TH TH TH HH TH TH ng set xiCH ONG 1 GIỚI THIEU DE TAI ou ce cecceccececsssssceccecccseceeceevscsscesceccnsvscecees |1.1 Lý do chọn để tài - - - 2c E1 123 5 151112115 111111011 111110101010 1g cy |1.2 Mục tiêu đỀ tầi - c1 S1 SH 12H HT HH HT ng ng kg 21.3 Phạm vi dé tầi G1119 S1 H1 19 H1 HT HH Hàng ng kg 4LA Y nghia con ẽ -“:1‹1‹<11Í<=< 41.5 Giới thiệu sơ lược các kết quả đạt được 5c 2c sex: 41.6 Cau tr c của luận văn -.- cv 12191 1S kg HT cung ng skg 5CH ONG 2 CƠ SỞ LÝ THUY TT - 2 2 222222 ££+E+EEcE£zEzErvrerees 6
2.1.Ki mtram h nh (Model checking) - s3 6
2.2 Tr u tượng hóa (Abstraction) - -c- cv vớ 8
Trang 93.2 Phương pháp ph nt ch phụ thuộc biến lan truyền (PG) 11
3.3 Giải thuật CEGAR (counter-example guided abstraction refinement) 13
3.4.Ki mtram hnhdatr u tượng (Multiple abstraction) 15
CH ONG 4.PH ONG PHÁP DE XUẤT ĐÁNH GIÁ 184.1 Phương pháp dé Xuất - ¿+ + 11 SE SE 1212525 151121 2111k 184.1.1 Phương pháp ph nt ch biến hội tụ VRK - 5-2 +scsc+x+s<<2 18
4.1.2 Sinht động các tập tr u tUONG ec ceccccceceeeeeneteeteeeteeeeeeeees 21
4.1.3 Giải thuật tinh loc tr u tượng MAR 7S S se 21
4.2 Đánh giá phương pháp dé XuẤt cccceecscscscsessescecsesesssecsssesesess 224.2.1 So sánh phương pháp phân tích phụ thuộc biến PG và VRK 22
4.2.2 Đánh giá phương pháp tinh lọc tr u tượng hóa ‹‹‹- 24
CH ƠNG 5 HIỆNTH CN NG CẤP GOL ER -5 255.1 Kiến tr ¢ GOL ER cải tiỄn 7c 25
5.2.C pháp c u lệnh - - cọ nh 26
CH ƠNG6.K T QUA TH €C NGHIỆM - 2-5 sec E se ceEsveeesereed 306.1 Phương pháp ph nt ch phụ thuộc biến PG và VRK với A* 30
6.1.1 Thử nghiệm với Leader- Election - 5S ĂS S135 2<52 31
6.1.2 Thử nghiệm với Needham - SH ng 32
6.1.3 Thử nghiệm với PeferSON - - ng 32
6.1.4 Thu nghiệm với Sender-Receiver S1 333 52 33
Trang 106.2.3 Thử nghiệm với Pef€rSON - - ng ng 35
6.2.4 Thu nghiệm với Sender-Receiver S1 333252 36
6.3 Giải thuật MAR va SAGA ki m tra trênm h nh đ ng 37
6.3.1 Ki m tra trên mô hình tr u tượng chứa 50% biến và mô hình gốc 376.3.2 Ki m tra trên tập hợp các mô hình tr u tượng chứa 20%, 80% biến vàmô hình SOC ¿55 E9E2%2E2% 2% E1 8E 9211515151151 1311211111111 0111171110111 111 11010 38
6.3.3 Ki m tra trên tap hợp các mô hình tr u tượng chứa 20%, 55%, 90%
biến và mô hình gốỐc - - + 5£ S£ SE SE 91919121 E12521 2121 1211315211111 1 11x 39
6.4 So sánh thời gian th c thí MAR va NuSMV cv 40
6.5 Thử nghiệm xác định mức độ tr u tượng th ch hop 40
CH ƠNG7.K_ T LUẬN ¿5 SE E123 2E E111 2521 1 5111 1 E1 re 43
7.1 Tóm tắt kết quả đạt được + ¿+ + E222 E1 12321 1 E11 1E ve ree 43
7.2 Hướng phát tri n trong tương Ìai - - << < << ke 44
DANH MỤC CÁC TAI LIEU THAM KHAO ccccccecceccessscescecsecesceccsececeeceees 45PHU LUC A:C_ PHÁP GOL EiR SG s13 2E xxx seo 47PHU LUC : ẢNG SỐ LIỆUTH C NGHIỆM s52 2s: 50PHU LUC C: DOWNLOAD TÀI NGUYEN .- 5 6xx se EsessEsecsi 54PHU LUC D: MINH HỌA DO THỊ PHU THUÔC BI N 55LY LICH TRÍCH NGANG -G- Gv S111 E91 5111 1195191 g1 ng re chọ 56
Trang 11Thuật ngữ tiếng Anh Thuật ngữ tiếng Việt Viết tắt
Abstract DB Cơ sở dữ liệu tr u tượngAbstract file ile tr u tượng
Abstract model Mô hình tr u tượngAbstraction Quá tr nh tr u tượng hóa, gom nhóm
các trạng thái thành một trạng tháiTinh lọc tr u tượng, tinh lọc | 1 trênAbstraction refinement m hnhtr u tượng trong quá tr nh MAR
ki m tra chuong tr nhConcrete model M6 hinh that
Convergent variable Phương pháp ph nt ch biến hội tu
dependency analysis (d a vào giải thuật PageRank) r8
Counter-example Phan ví dụ, đường đi chứa Ï 1 CE
Formal methods Phương pháp h nh thứcFormal specification Dac ta hình thức
Formal verificationKi m định hình thứcFormal languageNg n ngữ h nh thứcHeuristic Generator6 tao ra heuristic
Trang 12Propagation variable Ph nt ch phụ thuộc biên lan truyền
PGdependency analysis
Property Thuộc t nh cân ki m traSimple variable Phương pháp ph nt ch phụ thuộc bién SIM
dependency analysisdon gianSpurious counter exampleL i gia trên mô hình tr u tượngTheorem proving Chứng minh đ ng dan
Variable dependency „
Phân tích phụ thuộc biênanalysis
Verification Ki m tra, ki m chứng
Trang 13H nh 1.1 Tr u tượng hóa tín hiệu đ n giao th ng[3 | - << << << << <<<<<<<<2 2
H nh 1.2 Đồ thị phụ thuộc biến[ Í 5] - ¿5 2 2+2 22222 £+E+E+E£££z£zEzEzersrzeeered 3
H nh 2.1 Hệ thong th cd ng và hệ thống tr u tượng có L i[15] 9
H nh 3.1 Kiến trúc của GOLFER eeeeeseeseeseeseeseesceeeseeeeesesneceeseeneeeseneesenteneenes 10H nh 3.2 Counter-example cuam hnhtr u tượng << - 13Hnh3.3 a tap Sj, Š;/ Va lŠj y Q Q0 0 0 15H nh 3.4 Qui tr nh của đa tr u tượng (Multiple Abstraction) 16
Hnh 4.1 Quá tr nh tinh loc tr U tượng - << s3 ****sssesssss 22Hnh 5.1 Kiến tr e mới của GOL ER +2 2 2 +E+*+*£££+E+ErEreezreered 25Hnh 5.2 Kiến tr e mới củam hnhph nt cheeses sees 26H nh 6.1 Thử nghiệm với Leader-Election(m h nh có I 1) dùng A* 31
H nh 6.2 Thu nghiệm với bai toán Peterson (m h nh có [ 1) dùng A* 33
H nh 6.3 Thử nghiệm với bài toán Sender-Receiver (m hnh có Ï i) dùng A* 34H nh 6.4 Leader-Electon(m hnh có [ 1) với MAR và A* - 35
H nh 6.5 Peterson(m hnh có [ 1) với MAR và ÁÝ cccSS sse 36H nh 6.6 Sender-Receiver (m hnh có l 1) với MAR và A* 36
Hnh6.7M hnhđ ng với MAR va SAGA ki m tra trên I file tr u tượng 38
Hnh6.8M hnhđ ng với MAR và SAGA ki m tra trên 2 file tr u tượng 38
Hnh6.9M hnhđ ng với MAR va SAGA ki m tra trên 3 file tr u tuong 39
H nh 6.10 So sánh thời gian th c thi MAR và NuSMV - 40H nh 6.11 Thử nghiệm mức độ tr U tượng -« «<< << <2 4I
Hnh 1 Đồ thị phụ thuộc biến cho bài toán Leader-3 - -5- 55
Trang 14ang 3.1 Định nghĩa cách ph n chia tập trạng thát - «5< << << << << <2 14ang 4.1 So sánh PG và VIK ch 23
ang 5.1 Một số option ch nh của GOL ER -5 2 555 scs£zc+s+ezzcs2 27
ang 6.1 NeedHam với VRK và PG dùng A nh 32ang 6.2 NeedHam với MAR và A * - ch 35
ang 1M hnh cóI ¡ với VRK-A* giữ lại 50% biến 5-5 50ang 2M hnh có l i với PG-A* giữ lại 50% biến o- 5755552 50
ang 3M hnh cóI ¡ với VRK- MAR giữ lai 50% biến 51
ang 4M hnhđ ng với VRK- MAR giữ lại 50% biến 51
ang 5M hnhđ ng với VRK- SAGA giữ lại 50% biến 51
ang 6M hnhđ ng với VRK- MAR giữ lai 20% và 80% bién 52
ang 7M hnhđ ng voi VRK-giữ lai 20%, và 80% biến - 52
ang 8M hnhđ ng với VRK-MAR giữ lại 20%, 55% va 90% biến 52
ang 9M hnhđ ng với VRK-SAGA giữ lại 20%, 55% và 90% biến 53
ang 10 Thời gian th c thi trên NuSMVgốc vớim hnh đ ng 53
Trang 15CH ONG I1 GIỚI THIỆU DE TÀI
Phân này sẽ giới thiệu tông quan vệ đê tài: lý do chon đề tài, mục tiêu của dé tài,
phạm vi của dé tài, ý nghĩa th c tiễn và giới thiệu sơ lược các kết quả đạt được
1.1 Lý do chọn đề tài
Xuất phátt yêu cầu chất lượng của một sản phẩm phan cứng, phần mềm can
phải được bao đảm trước khi đưa ra thị trường Người ta luôn tìm cách ki m tra các san
phẩm phan cứng, phan mềm một cách nhanh nhất và ít tốn kém nhất Ð cóth ki mtra được các đặc tính của sản pham có đúng với nhu cầu người sử dụng hay không thìcó một phương pháp là mô hình hóa sản phẩm phần cứng, phần mềm và th c hiện
ki m tra trên mô hình đó Quá trình này chính là ki m tra mô hình[2| Ki m tra m
h nh là một phương pháp hình thức nhằm đảm bảo tính d ng dan của hệ thông bao gồmcả phan cứng và phần mềm được áp dụng rộng rãi ngay cả trong quá trình thiết kế của
sản phâm.
Tuy nhiên, ki m tra mồ hình hiện tại vẫn còn hạn chế khi áp dụng ki m tra chomột hệ thống lớn Với cách làm thông thường là vét cạn không gian trạng thái đ tìm| i, phương pháp ki m tra mô hình gặp hạn chế về mặt thời gian và k ch thước kh ng
gian trạng thái do khả năng của máy tính có giới hạn Trong trường hợp này, kỹ thuậttr u tượng hóa được su dụng d làm giảm kích thước của không gian trạng thái Tr utượng hóa trong ki m tra mô hình là cách tạo ra các mô hình tr u tượng d a trên mô
hình thật ban đầu Ở H nh 1.1 cho thấy hệ thong đ n giao thông có 3 trạng thái: red,green, yellow và khi th c hiện tr u tượng hóa trên mô hình này thì hệ thống tr u tượngcòn 2 trạng thái: red va Øð ang cách này k ch thước kh ng gian trang thái được thunhỏt 3 trạng thái xuống 2 trạng thái
Trang 16H nh 1.1 Tr u tượng hóa tín hiệu đ n giao thông[3 |Với ý tưởng tr u tượng hóa, kích thước không gian trang thái lớn không còn là
rào cản trong ki m tra mô hình Vấn đề còn lại là làm thế nào đ có một mô hình tr utượng tốtt mô hình gốc ban dau; và khi phát hiện | i trên mô hình tr u tượng, làm thénào đ ki m chứng l i đó trên mô hình gốc ban đầu một cách ít tốn kém thời gian vàchi phí nhất
Vì những lý do đó, dé tài này sẽ hiện th c chức năng tinh lọc tr u tượng chocông cụ GOLFER (công cu này được xây d ng trên nền NuSMV) Chức năng tinh lọctru tượng cóth hi u đơn giản làs kết hợp giữa tr u tượng hóa và tinh lọc O đâytinh lọc là một quá trình ngược của tr u tượng hóa Nếu tr u tượng hóa biến nhiềutrạng thái trên mô hình gốc thành một trang thái tr u tượng nhờ vào hàm tr u tượng h
thì tinh lọc là quá trình ánh xạ ngược lại các trang thái trạng thái tr u tượng thành các
trạng thái th c trên mô hình gốc ban đầu bang hàm ngược #“
1.2 Mục tiêu đề tài
Mục tiêu của dé tài sẽ trả lời câu hỏi: Ð tinh lọc tr u tượng hiệu quả thì xâyd ng một mô hình tr u tượng như thế nào? Nếu ki m tra trên mô hình tr u tượng pháthiện | i thi th c hiện tinh lọc 1 1 đó trên mô hình sốc như thế nào?
Trở lại ví dụ ở H nh 1.1, hàm tr u tượng trong ví dụ này là: gom nhóm các trạng
thái xe cộ có th lưu thông (trạng thái yellow và green) thành go Đối với GOL ER,GOL ER x yd ng ham tr u tượng bang cách x y d ng ra các đồ thị phụ thuộc biếnnhư ởHnh 12t m hnh cần ki m tra ban đầu ước tiếp theo la th c hiện ph ntchphụ thuộc biến trong đồ thị Th c chất của quá tr nh này là t nh toán độ quan trọng của
Trang 17các biến trong đô thị bang cách xem xét các ảnh hưởng qua lại giữa các biến Trongc ng trnh trước, Thang H Bui & Phuong B.K Dang[15] đã đề xuất phương phápph n t ch biến lan truyền Mục tiêu dé tài này là:
Level 0
Level 1
Level 2
H nh 1.2 Đồ thị phụ thuộc bién[15]= Đề xuất một phương pháp phân tích phụ thuộc biến mới: tính toán
độ quan trọng của biến trong đồ thị phụ thuộc biến Áp dụng phươngpháp phân tích phụ thuộc biến vào tr u tượng hóa mô hình d a trên mứcđộ quan trọng của biến
= Đề xuất giải pháp tinh lọc trừu tượng trong ki m tra mô hình:làs kết
hợp giữa giải thuật CEGAR (counter example guided abstractionrefinement) và phương pháp ki m tra mô hình đa tr u tượng (multipleabstraction)
Nói cách khác mục tiêu của đề tài là giải quyết bài toán bùng nỗ không giantrạng thái trong ki m tra mô hình bang phương pháp tr u tinh lọc tr u tượng Trướctiên, dé xuất phương pháp mới tính toán độ quan trọng của biến trong đồ thị phụ thuộcbiến Xây d ng mô hình tr u tượng d a trên mức độ quan trọng của các biến Hàmtr u tượng trong trường hop này th c hiện gom nhóm các biến có độ quan trọng nhỏ,ch giữ lại các biến có độ quan trọng lớn Giải thuật tinh lọc tr u tượng th c hiện ki m
Trang 18tra trên mô hình tr u tượng, nếu phát hiện | i, th c hiện tinh ch nh lại mô hình tr utượng gan hệ thống th c hơn và lặp lại quá trình ki m tra.
1.3 Phạm vi đề tài
Đề tài dé xuất một phương pháp phân tích phụ thuộc biến mới và phương pháptinh lọc tr u tượng cho công cụ GOLFER Thử nghiệm kết qua với các bài toán mẫunhư Leader Election, Sender Receiver and Peterson, Needham và một số bài toán mẫu
t NuSMV site.
1.4 Y nghia dé tai
Nếu theo phương pháp truyén thống là vét can không gian trạng thái th cácbài toán lớn kh ng th có được lời giải nhanh và chi ph thấp Công cu GOL ER vớichức năng tinh lọc tr u tượng và áp dụng phương pháp ph n tch biến mới được déxuất đ sinhram hnhtr u tượng, cho phép chạy trên các mô hình có số trạng tháilớn và cho kết quả nhanh chóng Việc tr u tượng hóam h nh (gom nhóm các kh nggian trang thái được phán đoán là kh ng có | i) nhằm mục đ ch ch ki m tra mộtphân trên hệ thống th cđ tiết kiệm thời gian và chi ph
Mặc dù mục tiêu của ki m tra chương trình là đ tim! 1 nhưng tinh lọc tr u
tượng trong ki m tra mô hình có th được dùng d chứng minh hệ thống đ ng Hy
vọng với chức năng tinh lọc tr u tượng, GOL ER sẽ trở thành c ng cụ ki m tra m
h nh hữu hiệu nhất
1.5 Giới thiệu sơ woe các ét ua đạt được
Đề tài đề xuất một phương pháp ph n tch phụ thuộc biến mới m phỏng giảithuật PageRank với tên gọi là VRK, phương pháp mới này cho kết quả tốt hơn cácphương pháp ph nt ch phụ thuộc biến trước đó với các bài toán được chứng minh quacác kết qua th c nghiệm ở phan tiếp theo
Trang 19Một đóng góp dang k nữa là dé tài hiện th c thành c ng kỹ thuật tinh lọc tr u
tượng MAR (abstraction refinement) trong ki m tram hnh, nó được dùng đ chứngminh mộtm h nh đ ngc c kỳ nhanh.
1.6.Caut ccủa uậnv nPhân còn lại của luận văn được tô chức như sau:
Chương 2: trình bày các vấn đề về cơ sở lý thuyết về ki m tra mô hình và lýthuyết về tr u tượng, mô hình tr u tượng trong ki m tra mô hình
Chương 3: tr nh bày các c ng tr nh liên quan (công cụ ki m tra mô hình hướng
ký hiệu GOLFER, phương pháp phân tích phụ thuộc biến lan truyén, kỹ thuật ki m tra
mô hình đa tr u tượng và giải thuật CEGAR (counter-example guided abstractionrefinement).
Chương 4: trình bày phương pháp dé xuất va đánh giá phương pháp đề xuất vềmặt lý thuyết cho giải thuật phân tích biến hội tụ d a trên giải thuật PageRank và giảithuật tinh lọc tr u tượng (kết hợp giữa CEGAR va đa tr u tượng)
Chương 5: trình bày phan hiện th c cải tiến c ng cụ GOL ER, phan này giớithiệu những thay đổi trong kiến trúc công cụ ki m tra mô hình hướng ký hiệu và giới
thiệu cú pháp câu lệnh th c thi.
Chương 6: trình bày kết qua th c nghiệm, các kết quả th c thi trong phan nàyth c hiện so sánh phương pháp phân tích biến lan truyền và phương pháp phân tíchbiến hội tụ trên giải thuật tìm | i A*, so sánh giải thuật tinh lọc tr u tượng với giảithuật đa tr u tượng dùng phương pháp phân tích biến hội tụ, so sánh công cụ ki m tra
mô hình hướng ký hiệu GOLFER khi dùng giải thuật tinh lọc tr u tượng với công cu
NuSMV ban dau
Chương 7: tóm tat các kết qua dat được cũng như hướng phat tri n tương lai
Trang 20CH ƠNG 2 CƠ SỞ LY THUY T
Mục tiêu chính của công nghệ phần mềm là cho phép các kỹ sư x y d ng mộthệ thống vận hành đáng tin cậy mặc dù phức tạp Trong quá trình ki m tra sản phẩm thìkỹ thuật ki m tra mô hình và chứng minh đ ng đắn là hai kỹ thuật cóth áp dụng
Ki m tra mô hình là một phương pháp năm trong nhánh ki m định hình thức
(formal verification)[4] Mục tiêu của nhánh ki m định hình thức là ki m định tính
d ng đắn của hệ thống đã được thiết kế và xây d ng Ngày nay, người ta mong đợi cóth ki m tra một hệ thống với số trạng thái không giới hạn bằng kỹ thuật tr u tượng
hóa (abstraction).
Chứng minh t nh đ ng dan (theorem proving) là kĩ thuật chứng minh mà hệthống và thuộc tính cần ki m tra được bi u thành công thức logic toán học Chứngminh đ ng đắn là một quá trình đi tìm kết quả cho các thuộc tính cần ki mtrat cáctiên dé (axioms) và các nguyên tac cho trước Trái với ki m tra mô hình, chứng minhđ ng đắn không gặp trở ngại về việc bùng nỗ không gian trạng thái
Phần luận văn này ch tập trung vào nhánh ki m tra mô hình hướng ký hiệu
2.1.Ki ta h nh (Model checking)
Trong ki m tra hình thức, ki m tra mồ hình [2] là một cách tìm ra các vi phạm
của các thuộc tính trong không gian trạng thái Khi một vi phạm được tìm thấy, mộtphản vi dụ (counter-example) được sinh rađ_ giúp cho các kỹ sư hệ thống định vi được| i Hiện nay, phương pháp ki mtram h nh dang được ứng dụng rộng rãi trong nhiềulĩnh v c: các hệ thống nhúng, kỹ thuật phần mềm, các thiết kế phần cứng Nói mộtcách ngắn gọn, ưu đi m của phương pháp ki m tra mô hình là:
" Th chiệnt động
Trang 21"m Tao ra phan ví du (counter-example) néu phát hiện | 1 sai, điều này rất có
ích cho việc tìm và sửa | 1.
= Cóth ki m trariêng phan: ch ki m tra các phan đã đặc tả riêng phan vàcóth ki m trat ng tính chất riêng rẽ, vì cóth ki m tra những tính chất
quan trọng trước.
Mặt khác, ki mtram h nh còn có một số hạn chế:
» Việc ki m tra này ch th c hiện trên các mô hình chứ không phải trên các
hệ thông th c Do đó, các kết quả đạt được ch đ ng cho m hình đó.Điều này đ ¡ hỏi phải có một mô hình mô tả được gần chính xác hệ thôngsốc
= Ki m tra mô hình ch ki m tra trên những yêu cầu được cung cấp, do đónó không bảo đảm t nh đ ng dan trọn v n của cả hệ thống
Quá trình ki m tra gặp trở ngại khi k ch thước và độ phức tạp của hệ thống ki mtra lớn Với các hệ thống ngày càng lớn và phức tạp, số trạng thái càng lúc càng lớn, cóth dẫn đến kết quả là khôngth nào quét hết tất cả các trạng thái của hệ thống Khi đó,ki m tra mô hình không th trả lời được câu hỏi là đặc tinh cần ki m tra là đ ng haysai Bằng kỹ thuật tr u tượng hóa, van dé bùng né trạng thái được giải quyết
Trong qui trình ki m tra mô hình, một hệ thống cần ki m tra thường được bi udiễn như một hệ thống chuy n dịch (transition system)
Định nghĩa 1 [Hệ thong chuy n dich (Transition system)] Mét hệ thốngchuyén dich là một bộ ký hiệu M = M = (S, T, So), trong đó S la một tap các trạng thái,
Soc S là một tap các trạng thái khởi đâu, TC S x S là một tap của các sự dich chuyển
Một trạng thái có thé đến được (reachable state) là trang thái có thê đi đến từtrạng thái khởi dau sau khi qua nhiều sự chuyền dịch
Trang 222.2.T tutuongh a A t action
Tr u tượng hóa là một phương pháp nhằm thu gon không gian trang thái bang
cách dùng một trạng thái tr u tượng bi u diễn cho một tập các trạng thái sốc Khi đó
xảy ra hiện tượng là một trạng thái tr u tượng có th đại diện cho cả các trạng thái
không tôn tại trong hệ thống gốc (trạng thái không bao giờ đạt đến của hệ thống banđầu)
Định nghĩa 2 [T tru tượng hóa theo miền (Domain Abstraction)] Giá sửrằng Š có thé được mô tả bằng một tap các bién trang thái X = (Xo, xị, , Xn»), Ở đó x; €D, Gia sứ rang có một tap cua các ánh xa toàn ánh H = (hj, hy, , h„), ở đó moi h; ánhxạ tir một miễn xác định D, vào một miễn xác định D} với |D’;| <|Dj| (Nếu |D’;| 0thì x; bị bỏ qua trong mô hình trừu tượng) Ap dụng H cho S, ký hiệu H(S), sẽ sinh ra
mot tập cua các phiên ban trừu tượng S.
Định nghĩa 3 [T tu tượng hóa (Abstraction)] Mot sự frừu tượng hóa
(homomorphic-dong hình) của một hệ thong chuyển dịch M = (S, T, So) với tập trừutượng hóa theo miễn H là hệ thống chuyển dịch M'` (ST, S’o), rongdóS” H(S)
T’ CS’ x 8S’: (Hs;), H(s;)) © T khi và chỉ khi (s), s;) 6 T, S’o = H(So).
Định lý: Nếu một hệ thống trừu tượng (đông hình) đúng, thì hệ thống thực
Trang 23th đi đến (reachable state) thành một trạng thái tr u tượng, nó trở thành trạng thái cóth đi đến (reachable state).
Vidu,o Hnh2.1 m_ tả hệ thong th c kh ng có | I1 tạo ra một hệ thống tr utượng có | i Ta thay trong hệ thống th c ở hnh (a) kh ng có đường di nào đến trạng
thái I 1 (111), nhungm hnhtr u trong hình (b) thì trang thai (110) và trạng thái (111)
được bi u diễn thành (11x) va có đường dit (10x) đến (11x)
G>@ =
&-@-@ @ YW
a) Hệ thong th ckh ngcol 1 b) Hệ thong tr utuong col 1
H nh 2.1 Hệ thong th cd ng và hệ thống tr u tượng có 1 i[15]Kết chương: Chương 2 tr nh bày cơ sở lý thuyết trong ki m tram hnh cũngnhư ph ntch ưu đi m và khuyết di m của nó ên cạnh đó có một kỹ thuật kh ng thkh ng nhac đến trong ki m tram hnh đó là kỹ thuật tr u tượng hóa Tuy nhiên, làmthế nào đ có một hàm tr u tượng tốt là bài toán cần giải quyết
Trang 24CH ƠNG3.CÔNG TR NH IEN QUAN
Chương này sé tr nh bay các nội dung về các công trình trước đó như c ng cụGOL ER, phương pháp ph n t ch biến lan truyền, c ng tr nh liên quan về tinh lọc tr u
tượng CEGAR (counter-example guided abstraction refinement) cua Clarke et al vàphương pháp ki mtram hnhdatr u tượng hóa (multiple abstraction).
3.1.C ngcuGO ER
GOLFER là một công cu ki m tram hnh hướng ký hiệu được phat tri nd a
trên nền tang NuSMV Kiến trúc của GOL ER được trình bay trong H nh 3.1
Model GOLFER tool(NuSMV)
+
INVAR) = Model »| Model Heuristic | _
CN Analysis *| Abstractor ”| Generator
Multiple |] Culded | | Guided °
tc Random Search aAbstraction Search (A*) 2
Trang 25Trong kiến trúc này, mô hình (Model) và thuộc tính cần ki m tra (Property)được đưa vào khối ph ntchm hnh (Model Analysis) đ phân tích và tính toán tr utượng hóa va đưa vào khối ki m tra (Directed Model Checking) đ ki m tra File tr u
tượng (abstract file) chính là tập tr u tượng được tạo ra một cách thủ c ng sau bước
phân tích phụ thuộc biến đơn giản Như vậy, sau bước phân tích mô hình (ModelAnalysis), tập tr u tượng được tạo ra sẽ được đưa vào khối tạo mô hình tr u tượng
(Model Abstractor) d tạo ra mô hình tr u tượng.M hnh này được chuy n sang bộtạo heuristic (Heuristic Generator) đ sinh ra cơ sở dữ liệu tr u tượng (Abstract DB).
Bộ ki m tra chương tr nh sẽ dùng cơ sở dữ liệu tr u tượng đ dẫn hướng các giải thuậttìm kiếm trongm hnh ban đầu Hiện tại bộ ki m tra chương trìnhh trợ các giải thuậttìm | i như đa tr u tượng (multiple abstraction), tìm kiếm ngẫu nhiên dùng heuristic
dẫn hướng (guided random search) và A*(Guided search ) — dùng mô hình tr u tượng
d dẫn hướng tìm | i trên mô hình gốc
3.2 Phương pháp phân tích phụ thuộc iến ant u én (PG)
Thang H Bui & Phuong B.K Dang [15] tr nh bày phương pháp ph nt ch phụ
thuộc biến tính toán tầm quan trọng của các biến với hệ thống được minh họa băng đồthị phụ thuộc biến Phương pháp này có tên gọi là phương pháp ph n t ch phụ thuộcbiến lan truyền (Propagation variable dependency analysis), viết tắt là PG Đối với m iđồ thị phụ thuộc biến, công thức đ tính toán tầm quan trọng của n t x trong đồ thị là
Trang 26tnh như sau: a(x) = B LyePrv 1+lv(y)
8Ø được dung d điều khi n mức độ ảnh hưởng ngược, tác động lên tầm quantrọng của một biến, /(zx) là cấp bậc, mức của nút x trong đồ thị, Nxt(x) là một tập cácbiến phụ thuộc vào x, Prv(x) là một tập các biến năm trong mức nhỏ hơn /v(x) mà xphụ thuộc vào, và đ(x) là bậc vào của đ nh x (số lượng các cạnh tr c tiếp đến x)
Cho đồ thị phụ thuộc biến như H nh 1.2, Các đại lượng của nút xa có giá trị như
sau: lv (x4) = 2, Nxf(x¿): Íxo, xa}, đ(x¿) = 2, Prv(x¿): {X1, xa}
Ấp dụng công thức trên cho đồ thị ở H nh 1.2 (6 được chon giá tri là 0.01), ta
Trang 273.3 Giải thuật CEGAR (counter-example guided abstraction
refinement)
Clarke [3] giới thiệu kỹ thuật tinh lọc tr u tượng lap t động lặp di lặp lai qua
trình tinh lọc trên mô hình tr u tượng ban dau Mô hình tr u tượng cóth thông báo l igiả Kỹ thuật này dé xuất cách phân tích | i trên mô hình tr u tượng và tinh lọc trên môhình gốc đ xác nhận đó có phải lal ¡thậts hay không
Đơn giản ý tưởng của giải thuật này là bat đầu ki m tra với mô hình tr u tượngthô sơ, và lặp lại việc tinh lọc | 1 trên mô hình gốc nêu phát hiện | 1 trên mô hình tr u
tượng Nêu | 1 đó tôn tại trên mô hình gôc, báo cáo lên người dùng
Các bước được Clarke giới thiệu d ki m tra chương tr nh theo câu trúc KripkeM tương ứng với chương tr nh P thỏa mãn các thuộc tính ø được mô tả như sau:
i Sinh ra mo hình tr u tượng ban đầu với hàm tr u tượng h
ii Ki m tra mô hình trên mô hình tr u tượng thô sơ đó.
ii Tinh lọc tr u tượng trong trường hop phát hiên | i với hàm ngược h”.Sau khi tinh lọc ham tr u tượng, trở về bước ii
1 ¿ 3 4
—— >et 7@ - ®10
—m—3e >e6 eo »12
H nh 3.2 Counter-example cuam hnhtr u tượng
Trang 28Clarke et al.[3 đưa ra ví dụm_ h nh thật có các trạng thái 1, 2, 3, 4, 5, 6, 7, 8, 9,
10, I1, I12.M hnh thật nay được tr u tượng hóa thành m h nh đơn giản hơn gôm 4trạng thái, bằng cách gom nhóm các trạng thái như sau:
= Các trạng thái 1, 2,3 tr u tượng hóa thành trạng thai: 1= Các trạng thái 4, 5,6tr u tượng hóa thành trạng thai: 2= Các trang thái 7,8,9tr u tượng hóa thành trạng thai: 3= Các trạng thái 10, 11, 12 tr u tượng hóa thành trạng thai: 4Rõ ràng ta thấy rằng ở H nh 3.2 ph a trên trạng thai! ila 12 Trongm hnh gốcta thấy t trạng thái bắt đầu, kh ng có đường di nao đến trang thái 1 i 12 Mặc dù ttrạng thái 7 cóth đi đến trạng thái 12 nhưngt trạng thái bat đầu kh ng có đường đinào đến trạng thái 7 V vậy m hnh thật là kh ng có 1 i nhưng trén m hnh trutượng ta thay có một đường đi chứa l it các trạng thái tr u tượng 1 > 2 > 3 > 4
Có nghĩa làm hnhtr u tượng có | 1 giả và ta phải tinh lọc | i này trén m_h nh thậtd chứng minh đ y lal i giả.
ang 3.1 Định nghĩa cách phân chia tập trạng thái
Name Partition Definition
dead-end states Sp S;
bad states Sp {s €h-1*(§)|ds’ € hF1(s2¡).R(s,s}irrelevant states Ni h-*(§)(Sp U Sp)
Clarke th c hién tinh loc bang cach chia thành 3 tập con S;o, Š;; va S;, ở H nh3.3 Ở đ y, S;o tương ứng với dead-end states (những trang thái đi tới đượct trang tháiban đầu), Š, ; tương ứng với bad states (những trạng thái không đi tới đượct trạng tháiban dau và có đường đi ra có th tạo ra counter-example giả) và S;, tương ứng vớiirrelevant states (những trạng thái không đi tới được t trang thái ban đầu và không có
s dịch chuy n trạng thái tới các trạng thái bad states) Ví dụ, ở H nh 3.2, trạng thái 9là dead-end-states, trạng thai 7 là bad states và trạng thái 8 là irrelevant states.
Trang 29cho nhu sau:
Giai thuat Po Refine
Giải thuật nay tính toán môi quan hệ tương đương mới =", , ,= ; Môi quan: : 1 J
hệ tương đương ở đ y là các tập hợp của các cặp trạng thái (là các tập con của S x S).
3.4.Ki ta h nh dat ừu tượng Mutipea t action
Qian và Nymeyer [I0] đã sử dụng kỹ thuật đa tr u tượng hóa (multiple
abstraction) dùng nhiều mô hình tr u tượng đ giải quyết van đề | i giả Nếu có một
Trang 30mô hình tr u tượng không có | i, hệ thống được đã ki m chứng là không có | i và giảithuật d ng lại mà không cần ki m tra trên mô hình gốc ban đầu 7 nhiên, nếu tất cảcác phiên bản tr u tượng chứa l i, mô hình gốc sẽ được ki m tra Qui trình ki m tradùng nhiéum hnhtr u tượng hóa theo Qian & Nymeyer [10] được dién dat nhu H nh
H nh 3.4 Qui trình của đa tr u tượng (Multiple Abstraction)
Sơ đồ Hnh 3.4m tả qui trình xử lý đa tr u tượng của GOLFER Đầu vào của
quá trình ki m tra mô hình là một tập hợp các file tr u tượng (chính là mồ hình tr u
tượng), các file tr u tượng sẽ lần lượt được ki m chứng đ tim! i Quá trình ki m tracóth kết thúc ngay với file tr u tượng dau tiên khi GOLFER thông báo không có | i
Trong trường hợp này, các file tr u tượng còn lại sẽ được bỏ qua mặc dù nó chưa được
xét tới Ngược lại, tất cả các file tr u tượng sẽ được xét và cóth quá trình ki m tra sẽth c hiện trên mô hình gốc đ tìm ral i của hệ thống
Trang 31Kết chương: Nội dung chương này đã tr nh bay các c ng tr nh tiền để về c ngcu GOL ER và phương pháp ph n t ch biến lan truyền PG Nhược đi m của phươngpháp phân tích biến lan truyền là ch tính toán độ quan trọng của các biến bằng cáchlan truyền một lần độ quan trọngt trên level 0 xuống các level phía dưới và có quantâm đến s anh hưởng nguoct bên dưới lên Tuy nhiên, do ch lan truyền một lần duynhất nên đ y chưa phải là phương pháp tốt nhất Ngoài ra, nội dung c n dé cập đến
ki mtram hnh đatr u tượng và giải thuật CEGAR Ngoài những ưu đi m của giải
thuật đa tr u tượng là cho phép tìm | i trên nhiều mô hình tr u tượng trước khi tìm | itrên mô hình gốc trong trường hợp xấu nhất Giải thuật đa tr u tượng có nhược đi m làkhông tận dụng lại kết quả tìm kiếm ở bước trước đó mà ch str dung counter-example
như là một dẫn hướng tìm kiếm Trong khi đó, giải thuật CEGAR tận dụng được
counter-example tim ra trên mô hình tr u tượng và tinh lọc trên mô hình gốc tuy nhiênCEGAR chưa là giải thuật tốt trong trường hợp loop counter-example và non-strong
connectivity xảy ra bên trong mô hình tr u tượng Kỹ thuật tinh loc tr u tượng MAR là
s kết hợp CEGAR với đa tr u tượng tận dung ưu đi m của hai giải thuật sẽ được giớithiệu trong chương kế tiếp
Trang 32CH ƠNG4.PH ONG PH PDE UAT &D NH
GIA
Nội dung chương 4 trình bay về các phương pháp dé xuất và đánh giá d a trêncác cơ sở lý thuyết và các công trình liên quan được trình bày trong các chương trướcđó Phan thứ nhất trình bày các phương pháp đề xuất Đầu tiên giới thiệu phương phápphân tích biến hội tụ VRK áp dụng giải thuật PageRank kết hợp với việc điều ch nh độquan trọng của biến theo mức (level) của biến trong đồ thị Tiếp theo là việc sinh một
tập các mô hình tr u tượng một cach tt động áp dụng cho kỹ thuật tinh lọc tr u tượng.
Quan trọng nhất là đề xuất giải thuật tinh lọc tr u tượng d a trên giải thuật CEGAR kếthợp với kỹ thuật đa tr u tượng Phan thứ hai th c hiện đánh giá các phương pháp déxuất đã được trình bày ở phân trước
4.1 Phương pháp đề xuất
4.1.1 Phương pháp phân tích iến hội tụ VRKGiải thuật PageRank ban đầu được m tả bởi Lawrence Page and Sergey Brin
(1998)[1], được dùng d t nh toán mức độ liên quan giữa các trang web cho m 1 trang
web trong Google Search Engine bang cách khám phá rang m i trang web sẽ chia đi m
của nó cho trang web khác khi nó link tới C ng thức được cho như sau:
PR(T, PR(T,(T) | ( ) (1)
PR(A) =(1-d) + ( any t+ ta
Trong đó:= PK(A) là PageRank của trang web A,
= PR(T;) là PageRank của trang web 7; liên kết tới trang web A.= C(T,) là số lượng link đi rat trang web 7;
= d là hệ số có tên gọi là damping factor được thiết lập giá trị giữa 0 và 1 TheoBrin et al [1], gia tri tốt nhất cho d là 0.85
Trang 33Ngoài ra, giải thuật PageRank còn có một dạng khác như sau:
N CT) CT)N là tong số tat cả các trang web
Giải thuật PageRank ở dang thức (2) cho kết quả PR(A) có giá trị nhỏ hon sovới dang thức (1) Trong trường hợp các trang web liên kết day đủ với nhau (giá trịPR(A) < 1) Tong đi m của tat cả các trang web sẽ là N Vì vậy, đ tai áp dụng ý tưởnggiải thuật PageRank (dang thức thứ 2) vào ph ntch biến đ tnh độ quan trong đồ thịphụ thuộc Giải thuật ph nt ch biến hội tụ VRK được m_ tả như sau:
i Ap dụng giải thuật PageRank đ tnh toán độ quan trọng của m i biếntrong đồ thị:
(—đ) PR(B)
PR(A) = +d) >N 2 N(B)N là số lượng biến, Parent(A) là một tập tất cả các biễn mà A phụ thuộc vào, M(B) là SỐlượng các biến bị phụ thuộc vào B
ii Điêu ch nh mức độ quan trọng của biên có đượct_ bước iD a vào mức (level) của biên trên đô thị, th c hiện điêu ch nh lại độ
quan trong của bién theo c_ng thức sau:
MaxLevel — Level(x)
E(x) = E(x) + MaxLevel
MaxLevel là giá trị lớn nhất của level có trong đồ thị, Level(x) là level của biếnx trên đồ thị
Trang 344.1.1.2 HU LÌ UO UU
Phan này sẽ minh họa giải thuật hội tụ với dé thi phụ thuộc biến ở H nh 1.2ước 1: Ap dụng giải thuật PageRank cho đồ thị
N 2 2 2 N 2 1 2
E(x, )= Ta HH E(,)=C—4) = — =0.025
Bx, ) =O) Hed, a) Be, = - (1-085) — 0 02s
Trang 354.1.2 Sinh tự động các tập t tu tượng
T kết quả ph ntch phụ thuộc biến trên, GOL ER cho phép sinht động một
tập hợp cácm hnh tr u tượng d a vào đặc tả của người dùng giữ lại t lệ bao nhiêu
phan trăm biến Người dùng ch cần đặc tả số lượng file tr u tượng cân sinht động vàphan trăm biến được giữ lại t nhất (cận dưới) và nhiều nhất (cận trên)
V dụ: Người dùng cần sinh ra 4 file tr u tượng trên mô hình gốc, cần giữ lại tnhất 30 biến và nhiều nhất là 90 biến GOL ER sẽt động sinh ra các file tr utượng tương ứng voit lệ phan trăm biến được giữ lại là 30, 50%, 70%, 90%
Các m hnh tr u tượng này được sử dụng cho các giải thuật đa tr u tượng(multiple abstraction) hoặc tinh lọc tr u tượng (abstraction refinement) ma kh ng phải
sinhm hnhtr u tượng bang tay như trước
4.1.3 Giải thuật tinh ọc t ừu tượng MAR
Phan này trình bày về dé xuất giải pháp tinh lọc tr u tượng d a trên nền tanggiải thuật CEGAR của Clarke kết hợp phương pháp đa tr u tượng
Nhắc lại ý tưởng: Ta cóth hi u một cách đơn giản, tinh lọc là quá trình làm rõvấn đề Tinh lọc và tr u tượng hoá là hai khái niệm bù tr nhau: càng tinh lọc thì cànghạ thấp mức tr u tượng hoá Một hệ thống không có sai sót thì phiên bản tr u tượngcủa nó chắc chăn cũng kh ng có sai sót Như vậy khi một phiên bản tr u tượng có saisót, nó phải được tinh lọc thành một phiên ban tr u tượng mới gan với phiên bản th chơn Nếu tìm thay mô hình tr u tượng có | i, áp dụng tinh lọc vào mô hình tr u tượngđ mở rộng mô hình tr u tượng gan với hệ thống th c hơn đ dẫn hướng tìm kiếm | i.Việc mở rộng hệ thống ch th c hiện một phan, ch mở rộng tại trạng thái nghi ngờ có| i, không mở rộng hết tất cả các trạng thái
Hnh4.lm tả quá tr nh tinh lọc tr utượng.M hnh ki m tra được tr u tượng
hóa thành nhiềum hnh tr u tượng va được sắp xếp theo mức độ tr u tượng giảmdan Dau tiên, giải thuật sẽ ki m tra trên m hnh tr u tượng thứ nhất, nếu kh ngtm