ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
ĐỖ VĂN CHIỂU
MÔ HÌNH HÓA VÀ ĐẶC TẢ HÌNH THỨC
CÁC GIAO DIỆN THÀNH PHẦN CÓ CHỨA
CHẤT LƯỢNG DỊCH VỤ VÀ TÍNH TƯƠNG TRANH
LUẬN ÁN TIẾN SĨ NGÀNH CÔNG NGHỆ THÔNG TIN
Hà Nội – 2014
Công trình được hoàn thành tại khoa Công nghệ Thông tin,
Trường Đại học Công nghệ , Đại học Quốc Gia Hà Nội.
Người hướng dẫn khoa học: TS. Đặng Văn Hưng
PGS.TS. Nguyễn Việt Hà
Phản biện 1: ………………
Phản biện 2: ………………
Phản biện 3: ………………
Có thể tìm hiểu luận án tại:
- Thư viện Quốc gia Việt Nam
- Trung tâm Thông tin – Thư viện, Đại học Quốc gia Hà
Nội
1
Chương 1 Giới thiệu
1.1 Giới thiệu
Trong luận án này, chúng tôi tập trung nghiên cứu đề xuất
phương pháp hình thức hỗ trợ mô hình hóa và đặc tả các giao
diện thành phần có chứa các ràng buộc thời gian và tính tương
tranh và xây dựng ứng dụng. Ý tưởng cơ bản của phương pháp
đề xuất trong luận án là mở rộng về thời gian trên vết
Marzukiewicz. Kết quả của mở rộng này là đưa ra lý thuyết về
vết thời gian, ô-tô-mát đoán nhận ngôn ngữ vết và logic đặc tả
thuộc tính vết cũng như mối quan hệ giữa chúng. Để chứng minh
tính hiệu quả của phương pháp đề xuất, chúng tôi áp dụng lý
thuyết này mở rộng một số mô hình thiết kế hệ thống hướng
thành phần để hỗ trợ đặc tả các thuộc tính tương tranh có các
ràng buộc thời gian. Thứ nhất, chúng tôi đề xuất một phương
pháp hình thức cho đặc tả các hệ thống tương tranh thời gian
thực hướng thành phần dựa trên mô hình của lý thuyết rCOS.
Thứ hai, luận án đề xuất mở rộng mô hình thiết kế dựa trên giao
diện cho các hệ tương tranh có ràng buộc thời gian bằng các
ô-tô-mát giao diện tương tranh thời gian. Thứ ba, luận án đã xây
dựng một ứng dụng của vết thời gian hỗ trợ đặc tả và kiểm
chứng cho một hệ thống phân tán. Các kết quả trong luận án đã
được minh chứng qua các công trình đã được xuất bản và có ý
nghĩa lớn trong việc nghiên cứu, sử dụng để đặc tả các hệ có
ràng buộc thời gian và tương tranh.
1.2 Bố cục của luận án
Dựa trên các mục tiêu và đối tượng nghiên cứu, luận án
được bố cục gồm các chương sau. Chương 2 trình bày tóm tắt
các nghiên cứu nền tảng cho các nghiên cứu tiếp theo của luận
án. Chương 3 đưa ra lý thuyết vết thời gian dựa trên vết
Mazurkiewicz. Chương 4 trình bày một ứng dụng của lý thuyết
vết trong việc mô hình hóa hệ thống tương tranh thời gian thực
2
dựa trên việc sử dụng vết thời gian cho đặc tả các thể thức giao
diện thành phần được mở rộng từ lý thuyết rCOS. Chương 5 giới
thiệu một phát triển của lý thuyết vết trên cơ sở xây dựng một
phương pháp phát triển hệ tương tranh thời gian thực. Chương 6
đề xuất mở rộng hệ phân tán dựa trên việc mô hình bằng các hệ
dịch truyển phân tán. Các kết luận về luận án và các nghiên cứu
tiếp theo của luận án được chúng tôi trình bày trong chương 7.
Chương 2 Kiến thức nền tảng
2.1 Công nghệ phần mềm trên thành
phần
2.1.1 Các công nghệ hiện nay
Một số công nghệ hiện nay được nhiều người quan tâm sử dụng
bao gồm:
1. CORBA: là một chuẩn mở cho khả năng tương tác ứng
dụng được định nghĩa và được hỗ trợ bởi tập đoàn quản lý đối
tượng (Object Management Group - OMG), một tổ chức của
hơn 400 nhà cung cấp phần mềm và người sử dụng
(
2. COM và DCOM: COM là mô hình đối tượng thành
phần (Component Object Model-COM) là một kiến trúc chung
cho phần mềm thành phần, COM phân tán (DCOM), là một giao
thức cho phép các thành phần phần mềm giao tiếp trực tiếp qua
mạng một cách đáng tin cậy, an toàn và hiệu quả.
3. Mô hình thành phần dựa trên Java của Sun: phần
JavaBeans để phát triển thành phần phía máy khách và
Enterprise JavaBeans (EJB) cho phát triển thành phần phía máy
chủ
2.1.2 Đảm bảo chất lượng
Vòng đời của hệ thống phần mềm dựa trên thành phần có
thể được tóm tắt như sau: (1)Phân tích các yêu cầu, (2) Lựa chọn
3
kiến trúc phần mềm , xây dựng, phân tích, và đánh giá; (3) Xác
định và tùy biến thành phần; (4) Tích hợp hệ thống, (5) Kiểm thử
hệ thống; (6) Bảo trì phần mềm.
Nhiều nghiên cứu đã đề xuất một danh sách các đặc điểm
về chất lượng của các thành phần gồm: (1) Chức năng, (2) Giao
diện; (3) Khả năng sử dụng; (4) Khả năng kiểm thử; (5) Bảo trì,
(6) Độ tin cậy.
2.1.3 Mô hình đảm bảo chất lượng
Các thực nghiệm chính liên quan đến thành phần và các
hệ thống trong mô hình này bao gồm các giai đoạn sau đây: (1)
phân tích yêu cầu thành phần (2) phát triển thành phần (3) chứng
nhận thành phần (4) tùy chỉnh thành phần; (5) thiết kế kiến trúc
hệ thống ; (6) tích hợp hệ thống, (7) kiểm nghiệm hệ thống và (8)
Bảo trì hệ thống.
2.2 Ô-tô-mát thời gian
2.2.1 Ô-tô-mát thời gian
Định nghĩa 2.1 (Từ thời gian) Một từ gian gian
là một thành phần của
và thường
được viết là với là một từ trên * và là một chuỗi
thời gian trên T*.
Gọi X là tập hữu hạn các biến đồng hồ, một giá trị đồng
hồ trên X là một ánh xạ gán mỗi đồng hồ một giá trị
thời gian.
Định nghĩa 2.2 Tập các ràng buộc trên tập đồng hồ X
được kí hiệu là được định nghĩa như sau
với .
Một ô-tô-mát thời gian (TA) trên T là một bộ
với
• là một tập hữu hạn các hành động,
• Q là tập hữu hạn các trạng thái của ô-tô-mát.
4
• X là tập hữu hạn các đồng hồ,
•
là tập các trạng thái khởi đầu,
• là tập các trạng thái kết thúc,
•
là một tập hữu hạn
các dịch chuyển trạng thái.
Cấu hình của TA được kí hiệu là với và
. Ngữ nghĩa của TA là một hệ dịch chuyển với mỗi trạng
thái là một cấu hình và quan hệ chuyển được định nghĩa theo luật
sau:
nếu và ,
nếu và
.
Một thực thi (run) của một ô-tô-mát trên một từ thời gian
là một dãy các dịch chuyển có dạng:
.
Một thực thi của TA được gọi là một thực thi chấp nhận
(accepted run) nếu
Một từ thời gian được gọi là
được đoán nhận bởi TA nếu tồn tại một thực thi chấp nhận
trên . Tập tất cả các từ thời gian được đoán nhận bởi ô-tô-mát
thời gian được kí hiệu là là ngôn ngữ được đoán nhận
bởi . Ta có kết quả quan trọng sau
Hệ quả 2.1 Bài toán kiểm tra tính rỗng của ngôn ngữ của
một ô-tô-mát thời gian là quyết định được
2.2.2 Công cụ Uppaal
UPPAAL là một bộ kiểm chứng mô hình cho việc mô
hình, mô phỏng và kiểm chứng các ô-tô-mát thời gian. Thành
phần quan trọng chính trong ngôn ngữ mô hình của UPPAAL là
các ô-tô-mát thời gian. Các mô hình trong đây gồm:
1. Mô hình mạng các Ô-tô-mát thời gian,
2. Các biến nguyên được chia sẻ,
3. Kênh khẩn cấp,
5
4. Vị trí (trạng thái) cam kết.
2.2.2.1 Kiểm chứng với UPPAAL
Mô hình kiểm chứng của UPPAAL được thiết kế để kiểm
tra một tập con của công thức TCTL cho các mạng các TA.
Công thức có các dạng biểu diễn như sau:
•
•
•
•
• always lead to .
2.2.2.2 Kiến trúc UPPAAL
Mô hình kiến trúc được chỉ ra trong hình 1.
Hình 1: Kiến trúc hệ thống của UPPAAL
2.3 Lý thuyết vết
2.3.1 Vết Mazurkiewicz
Một bảng chữ cái phụ thuộc là một cặp với là
một bảng chữ cái hữu hạn và là một quan hệ hai
ngôi có tính phản xạ và đối xứng trên và được gọi là quan hệ
phụ thuộc.
6
Định nghĩa 2.3 Một vết Mazurkiewicz (gọi tắt là vết) là
một lớp tương đương của một thứ tự bộ phận được gán nhãn
vơi là tập các nút, là một quan hệ thứ tự bộ
phận trên , và là một hàn gán nhãn thỏa mãn điều
kiện sau:
• Với mỗi tập là hữu
hạn,
• Với mọi Nếu thì
hoặc , và kéo theo , với
là quan hệ dẫn trực tiếp trong .
Nếu V là hữu hạn, vết T được gọi là vết hữu hạn. Tập tất
cả các vết trên kí hiệu là . Một nhát cắt của
là một tập lớn nhất của các đỉnh không so sánh được trong .
Một từ trong
được gắn với một vết trên bằng ánh xạ
được định nghĩa như sau:
Cho
là vết với:
• .
• là thứ tự nhỏ hơn bộ phận trên thỏa mãn: cho
nếu là tiền tố của và nếu thì
,
• .
Ánh xạ
là
là một sự tuyến tính hóa của . Gọi
là một vết trên . Gọi C là tập các sự kiện
. Lịch sử của C, ký hiệu là , được định nghĩa như sau:
. Một cấu hình của T là một tập hữu hạn
sao cho là tập tất cả các cấu hình của vết .
2.3.2 Ô-tô-mát đoán nhận ngôn ngữ vết
Có hai nghiên cứu lý thuyết về ô-tô-mát đoán nhận các
ngôn ngữ vết là:
1. Ô-tô-mát Alternating Büchi,
2. và Ô-tô-mát bất đồng bộ.
7
2.3.3 Cấu hình
Gọi là một vết trên . Ký hiệu
Định nghĩa 2.4 Gọi là một vết trên .
Gọi C là tập các sự kiện . Lịch sử của C, ký hiệu là ,
được định nghĩa như sau:
.
Một cấu hình của T là một tập hữu hạn sao cho
Chúng ta định nghĩa conf(T) là tập tất cả các cấu hình của
vết T.
2.3.4 Logic trên vết
2.3.4.1 Cú pháp
Tập các công thức của LTL trên một bảng chữ cái độc lập
được ký hiệu là
và được cho theo cú pháp sau:
::= .
Chúng ta thường sử dụng ký hiệu như cho biểu
diễn công thức. Khi ngữ cảnh là rõ ràng, chúng ta có thể viết
bằng , tức là bỏ ký hiệu _t (hiểu là vết) đi.
2.3.4.2 Ngữ nghĩa
Cho vết T , một cấu hình C conf(T), và một
công thức , ngữ nghĩa của khái niệm được
định nghĩa một cách đệ quy như sau"
• .
• nếu và chỉ nếu .
• nếu và chỉ nếu hoặc
• nếu và chỉ nếu tồn tại một cấu hình C’
conf(T) sao cho
C’ và
8
• nếu và chỉ nếu tồn tại một cấu hình C’
conf(T) với sao cho và với mọi C" conf(T)
với , chúng ta có .
2.3.4.3 Một số kết quả
1. Bài toán về tính thỏa của
là quyết định
được,
2. Biểu diễn của
là đầy đủ tương ứng với biểu
diễn của FO trên vết,
3. Với mọi công thức
, tồn tại một công
thức
sao cho ,
4. Với mọi công thức
, tồn tại một công
thức
sao cho .
Định lý 2.1 Cho là một công thức của
và
ký hiệu ô-tô-mát Alternating trên bảng chữ cái là
. Khi
đó
khi và chỉ khi
đối với mọi
.
Định lý 2.2 Cho một công thức LTL
và một ô-tô-mát
bất đồng bộ , tồn tại một thuật toán quyết định xem với
mọi .
9
Chương 3 Lý thuyết Vết thời gian
3.1 Vết thời gian và ô-tô-mát khoảng
bất đồng bộ
3.1.1 Vết thời gian
Gọi thời gian là liên tục và được biểu diễn như là tập các
số thực không âm
. Kí hiệu cũng biểu diễn thứ tự tự
nhiên trong
. là hàm gán thời gian cho mỗi đỉnh của vết
một điểm thời gian trong
. Cho một vết chúng ta kí hiệu
tập các đỉnh tối thiểu của nó là . Một nhát cắt của là
một tập lớn nhất của các đỉnh không so sánh được trong .
Định nghĩa 3.1 (Vết thời gian) Một vết thời gian trên
là một bộ với là một vết trên
,
thỏa mãn:
• (thời gian có tính trước
sau),
• Nếu là vô hạn, với bất kỳ có một nhát cắt
của sao cho (thời gian luôn tiến
triển)
Đặt intv là tập tất cả các khoảng thời gian trên
. Đặt
là hàm gán một khoảng thời gian cho mỗi . Bảng chữ
cái khoảng và được định nghĩa là một bộ 3 thành phần .
Định nghĩa 3.2 (Vết thời khoảng) Gọi là
một vết trên . Chúng ta gọi cặp là một vết thời
khoảng trên .
Một vết thời gian được gọi là thỏa mãn vết thời
khoảng theo điều kiện sau khi và chỉ khi
. Ta ký hiệu
10
là tập các vết thời gian thỏa vết khoảng theo
điều kiện sau.
Một vết thời gian được gọi là thỏa mãn vết thời
khoảng theo điều kiện trước khi và chỉ khi
. Ta ký hiệu
là tập các vết thời gian thỏa vết khoảng theo
điều kiện trước.
Gọi là thỏa mãn theo
điều kiện sau hoặc điều kiện trước
1
. Trong luận án này, chúng
tôi sử dụng quan niệm thỏa theo điều kiện sau. Các ứng dụng
khác nhau có thể điều chỉnh việc chọn lựa điều kiện thỏa cho
phù hợp.
Ngôn ngữ vết thời gian của ngôn ngữ vết khoảng
được ký hiệu là ,
.
3.1.2 Ô-tô-mát khoảng bất đồng bộ
Một ô-tô-mát khoảng bất đồng bộ như là một ô-tô-mát
bất đồng bộ được trang bị thêm một hàm gán ràng buộc thời gian
.
Định nghĩa 3.3 Một ô-tô-mát khoảng bất đồng bộ là một
bộ với là một ô-tô-mát bất đồng bộ.
Một thực thi trên từ thời gian
là một
ánh xạ
được định nghĩa bởi:
•
,
• với mỗi tiền tố (a,t) của
và
với mọi ở đây đối với một từ
thời gian sao cho
và không có kí
hiệu a trong
, chúng ta định nghĩa
.
Một thực thi được gọi là thực thi chấp nhận khi và chỉ
khi với mỗi hoặc:
1
Tùy từng bài toán ta sẽ có cách lựa chọn phép thỏa một cách thích hợp
11
•
là hữu hạn, và
với
và
, hoặc
•
là vô hạn và
, với
được lặp lại vô hạn lần.
Khi là một thực thi chấp nhận trên , chúng ta nói
rằng được đoán nhận bởi . Tập tất cả các từ được đoán
nhận bởi hình thành ngôn ngữ được đoán nhận bởi
và được ký hiệu là . Chúng ta có:
Định lý 3.1
.
3.2 Logic trên vết thời gian
3.2.1 Cú pháp và ngữ nghĩa
Cú pháp về logic thời gian tuyến tính mở rộng của chúng
ta (ký hiệu là TLTL
) được cho như sau:
Với là phần tử thộc bảng chữ cái , thuộc intv, và
là ký hiệu true. Ngữ nghĩa của TLTL
được đưa ra như sau:
•
• a và nếu
•
và nếu
và
• và nếu tồn tại và với
mọi ta có
• và nếu
• và nếu hoặc
Công thức và trong TLTL
có thể được định
nghĩa như sau
12
3.2. 2 Tính thỏa được của TLTL
Chúng ta xem xét lớp con TLTL
công thức có dạng:
Định lý 3.2 Với mọi công thức TLTL
bất kỳ luôn tồn
tại một ô-tô-mát khoảng bất đồng bộ sao cho
và ngược lại.
Chương 4 Một mô hình cho hệ
thống tương tranh có ràng buộc thời
gian
4.1 Kiến trúc thành phần và các giao
thức tương tác của chúng
Hệ thống có hai phần riêng biệt: Phần thụ động là một
thành phần đóng được ghép từ tập các thành phần và phần chủ
động là một tập các tiến trìn mà tương tác với các kích thích bên
ngoài với một số ràng buộc về thời gian và sử dụng dịch vụ từ
phần thụ động để thỏa mãn các yêu cầu từ các nhân tố bên ngoài
của hệ thống. Kiến trúc hệ thống này được mô tả trong hình 2.
13
Hình 2: Kiến trúc hệ thống
4.2 Vết thời gian và biểu diễn của nó
Trong nghiên cứu này, chúng tôi sử dụng biểu thức chính
quy để biểu diễn vết thời gian. Biểu thức chính quy có dạng
.
4.3 Mô hình thành phần
4.3.1 Thiết kế
Dùng để mô tả các phương thức là một bộ ,
với ký hiệu tập các (chương trình) biến, ký hiệu đặc tả
chức năng của phương thức có dạng , và ký hiệu đặc
tả có yếu tố thời gian thi có hình thức , với là
các số thực không âm, . Chúng tôi cũng đưa ra các khái
niệm về làm mịn và ghép tuần tự các thiết kế.
4.3.2 Giao diện và hợp đồng
Ký hiệu - một khai báo đặc trưng là một tập các biến,
- một khai báo phương thức, mỗi phương thức có
dạng , với và là tập các biến. Một giao diện
là một cặp
, với
, và
.
được gọi là giao diện cung cấp của , và
là
giao diện yêu cầu của . Một hợp đồng là một bộ
, với:
14
•
là một giao diện
.
• là một sự tạo giá trị ban đầu.
• MSpec là một hàm đặc tả phương thức.
•
biểu diễn một thuộc tính bất biến của các biến
trong trong đặc tả đặc trưng
.
biểu diễn các thuộc tính
mà được yêu cầu cho giá trị của các biến trong
.
•
và
là các đặc tả giao thức, mà là các vết
thời gian.
Định nghĩa 4.1 Hợp đồng
,
,
,
làm mịn hợp
đồng
,
,
,
(ký hiệu
) nếu và chỉ nếu:
•
,
, và
, với hàm và tập ,
biểu thị hạn chế của
trên .
•
và
• Đối với tất cả phương thức op được khai báo trong
,
, và
.
• Với tất cả phương thức khai báo trong
,
, và
.
•
,
,
,
.
4.3.3 Ghép nối các hợp đồng
Gọi
,
,
,
, là các hợp đồng mà có tập các
đặc trưng và phương thức(yêu cầu và cung cấp) là không giao
nhau. Cắm
vào
, ký hiệu là được
15
định nghĩa như sau:
,
,
,
,
,
.
Định lý 4.1 Cho
tương thích với
. Nếu
đóng (tức là
) thì
.
Một thành phần thụ động là một bộ
bao gồm
• Một hợp đồng: , , ,
,
.
• gắn với mỗi phương thức op trong Mdp một
thiết kế được xây dựng từ các toán tử cơ bản.
Hợp đồng Ctr được gọi là được thực thi bởi Comp.
Định lý 4.2
là một thành
phần.
Định nghĩa 4.2 Một giao diện hệ thống là một bộ
, với
là một tập hữu hạn các phương
thức, là một tập các đặc trưng, và là tập hữu hạn các sự
kiện.
Định nghĩa 4.3 Một hợp đồng hệ thống là một bộ
, với
•
là một giao diện hệ thống.
• là thuộc tính mô tả giá trị của các đặc trưng
trong .
• là hàm đặc tả phương thức mà gắn mỗi
phương thức trong
với một thiết kế
, với , và
• là mô tả hành vi mở rộng mà là tập con hữu
hạn của and
. Mỗi thành phần của
Behav được gọi là một đặc tả tiến trình.
16
Định nghĩa 4.4 Một thành phần chủ động
, bao gồm
•
,
.
• , , .
• gắn mỗi phương thức trong với
một thiết kế được xây dựng từ một tập các phép toán cơ bản và
phương thức trong
. Mcode thỏa mãn:
-
.
là một ngôn ngữ vết có trong
ngôn ngữ vết , với tương ứng với bảng chữ cái phụ
thuộc
mà ngôn ngữ vết thời gian là , và là
toán tử shuffle.
- với mọi
.
Một hệ thống bao gồm một thành phần chủ động
và một thành phần bị động
đóng sao cho .
Định lý 4.3 Cho là một hệ
thống được hình thành bởi một thành phần chủ động
, và thành phần bị động
, . Cho là
một thành phần bị động sao cho . Thì
cũng là một hệ thống tương đương với .
Chương 5 Phương pháp đặc tả giao
diện của các thành phần trong hệ
tương tranh có yếu tố thời gian
17
Một Ô-tô-mát giao diện tương tranh có ràng buộc thời
gian (Timed Concurrent Interface Automata - TCIA) là một bộ 3
, với là tập các hành động đầu vào, là tập
các hành động đầu ra và
là một
ô-tô-mát khoảng đơn định bất đồng bộ trên bảng chữ cái
.
Cho một TCIA , ngôn ngữ giao diện của được định
nghĩa là ngôn ngữ vết thời gian được đoán nhận bởi ADA .
Hai TCIA và là được gọi là có khả năng ghép nối
nếu
1.
,
2. với mọi hành động
, và
3. Tập các tiến trình
and
là không
giao nhau.
Định nghĩa 5.1 (Tích song song của hai TCIA) Tích
song song của hai TCIA có khả năng ghép nối với nhau
và
ký hiệu là
là một TCIA
với các thành phần
được n=định nghĩa như sau.
•
và
,
•
,
,
, và
•
, với
18
.
Định lý 5.1
Cho hai TCIA và , một quan hệ làm mịn trạng thái
từ vào là một quan hệ hai ngôi
sao cho với
mọi
các điều kiện sau là thỏa mãn.
•
,
,
, và
•
và với mọi trạng thái
có tồn tại một trạng thái
sao cho .
Một TCIA được gọi là được làm mịn từ TCIA và
được ký hiệu là nếu:
•
,
, và
• tồn tại một quan hệ làm mịn trạng thái từ vào
mà
ta có .
Định lý 5.2 Cho 3 TCIA , nếu và
thì .
Cho ba TCIA và sao cho và là có khả
năng ghép nối và
. Nếu và là tương
thích và thì và là tương thích và .
Chương 6 Mô hình đặc tả và kiểm
chứng các hệ phân tán có ràng buộc
thời gian
6.1 Hệ phân tán có ràng buộc thời gian
19
Một hệ dịch chuyển phân tán (DTS) trên
là một cấu
trúc
trong đó:
• Mỗi
là một tập trạng thái địa phương thứ i ký hiệu
là i-local,
• Đặt
là tập các trạng thái toàn cục và
là tập các trạng thái khởi đầu.
• Đặt
. Quan hệ dịch
chuyển thỏa mãn điều kiện sau
Nếu thì , với
.
Ký hiệu * dùng để diễn tả các thành phần của một trạng
thái toàn cục không ảnh hưởng bởi quan hệ dịch chuyển. Một
thực thi đồng bộ của một DTS là một chuỗi vô hạn
của các trạng thái và tập các hành động độc lập thỏa mãn các
điều kiện sau:
•
,
• đối với mỗi và với mỗi
và .
với
.
•
là tập lớn nhất theo khía cạnh không có tập lớn
hơn thỏa mãn quan hệ chuyển.
Một thực thi bất đồng bộ của một DTS là một chuỗi vô
hạn
của các trạng thái
và hành động
thỏa mãn
các điều kiện sau:
•
,
• đối với mỗi ta có
và .
Một DTS khoảng là một bộ với là một DTS.
Một thực thi đồng bộ thời gian của một DDTS là bộ sao
cho:
20
• là một thực thi đồng bộ trên DTS , và
• đối với mỗi và với mỗi
ta
có
Một thực thi bất đồng bộ thời gian của một DDTS là bộ
sao cho:
• là một thực thi bất đồng bộ trên DTS , và
• đối với mỗi ta có nếu
thì
Ta có kết quả sau: Cho một DDTS luôn tồn tại
một ô-tô-mát thời gian khoảng
đoán nhận tất cả các từ được
định nghĩa bởi thực thi đồng bộ trên .
6.2 Logic thời gian trên cấu hình Foata
Logic thời gian tuyến tính là tập các công thức được định
nghĩa theo cách như sau:
Với Cho là một vết thời
gian trên ( ). Ngữ nghĩa của công thức
được định nghĩa tên cấu hình Foata thời gian C như sau:
•
•
• hoặc
• khi và chỉ khi tồn tại một
và sao cho
và với
•
nếu tồn tại một và
sao cho
và và với mọi
ta có
• khi và chỉ khi tồn tại
sao cho và mọi
kéo theo
Ta nói, T mô hình , T là một mô hình của hoặc T
21
thỏa khi và chỉ khi .
Định lý 6.1 Cho
, luôn tồn tại một
thuật toán kiểm tra xem liệu có tồn tại vết thời gian T sao cho T
thỏa công thức .
Cho
, tồn tại một ô-tô-mát Büchi thời
gian khoảng
đoán nhận ngôn ngữ
6.3 Bài toán kiểm chứng
Định lý 6.2 Cho DDTS với là tập các từ thời
gian (chuẩn Foata) tương ứng với các thực thi của hệ dịch
chuyển và một công thức
, luôn tồn tại một
thuật toán để quyết định .
Thuật toán kiểm chứng hệ thống có các bước cơ bản như
sau.
• Bước 1. Xây dựng một ô-tô-mát Büchi
đoán
nhận ngôn ngữ là các thực thi đồng bộ của DTS . Kết hợp với
ánh xạ thời gian , ta có một ô-tô-mát Büchi khoảng
.
• Bước 2. Chúng ta xây dựng ô-tô-mát Büchi
đoán nhận ngôn ngữ phần bù của là theo như
chứng minh định lý trên . Và ta có một ô-tô-mát Büchi khoảng
đoán nhận ngôn ngữ được định nghĩa bởi phần bù công
thức .
• Bước 3. Xây dựng ô-tô-mát Büchi khoảng
sao cho
.
• Bước 4. Kiểm tra tính rỗng của . Nếu
thì khẳng định là hệ thống thỏa mãn các thuộc tính
kiểm tra và ngược lại.
22
Chương 7 Kết luận
Luận án đã đề xuất một phương pháp hiệu quả hỗ trợ cho
việc mô hình hóa và đặc tả các hệ thống có ràng buộc tương
tranh và thời gian bằng việc mở rộng về thời gian của lý thuyết
vết Marzukiewicz. Phương pháp đề xuất đưa ra các khái niệm về
ngôn ngữ vết thời gian, ô-tô-mát đoán nhận ngôn ngữ vết thời
gian và một cách thức dùng để đặc tả các thuộc tính logic của hệ
thống là logic thời gian trên vết thời gian. Các kết quả về lý
thuyết đã chỉ ra vết thời gian là công cụ hiệu quả cho việc đặc tả
các ràng buộc tương tranh có yếu tố thời gian. Để thể hiện sự
hiệu quả của việc sử dụng lý thuyết vết vào trong một số mô hình
thiết kế hệ thống hướng thành phần tạo cho các mô hình này có
thể mô hình hóa được các hệ thống có đặc tả tương tranh và thời
gian. Các mô hình chúng tôi sử dụng bao gồm: Mô hình dựa
thiết kế hệ thống hướng thành phần rCOS, mô hình thiết kế hệ
thống dựa trên giao diện và mô hình thiết kế các hệ phân tán dựa
trên hệ dịch chuyển phân tán. Luận án đã nghiên cứu và đưa ra
giải pháp hiệu quả đáp ứng yêu cầu đề ra, tuy nhiên luận án vẫn
còn một số hạn chế cần được nghiên cứu để hoàn thiện phương
pháp. Thứ nhất, nghiên cứu để có thể áp dụng phương pháp này
trong một số công cụ đặc tả hiện nay như SPIN hoặc UPPAL.
Thứ hai, hoàn thiện lý thuyết về phương diện thực hành nhiều
hơn, đó là nghiên cứu các ví dụ điển hình trong thực tế để làm
nổi bật lý thuyết nghiên cứu. Thứ ba là nghiên cứu và chứng
minh về độ phức tạp tính toán trong các thuật toán, kỹ thuật đã
đề ta trong mô hình này, tiến tới xây dựng công cụ hỗ trợ đặc tả
và kiểm chứng.