Otomat miền

Một phần của tài liệu Kiểm chứng các tính chất thời gian thực cho hệ thống đồng thời bằng RT-SPIN (Trang 36)

Bƣớc đầu tiên trong thủ tục quyết định để kiểm tra tính rỗng xây dựng một bảng chuyển trạng thái với các đƣờng của bảng chuyển trạng thái bắt chƣớc các thực hiên của A theo cách nhất định. Ta biểu diễn bảng chuyển trạng thái mong muốn bởi R(A) Otomat miền của A. Mỗi trạng thái của các bản ghi R(A) bao gồm trạng thái của bảng chuyển trạng thái A, và lớp tƣơng đƣơng của các giá trị hiện tại của đồng hồ dƣới dạng (s,α) với s Є S và α thuộc miền đồng hồ. Biên dịch dự định là bất cứ khi nào trạng thái mở rộng A là (s,v) thì trạng thái của R(A) là (s,[v]). Otomat miền bắt đầu từ trạng thái (s0,[v0]) với s0 là trạng thái khởi tạo của A, và đồng hồ biên dịch v0 gán giá trị 0 đến các đồng hồ. Quan hệ chuyển của R(A) đƣợc định nghĩa bƣớc giả lập cần tuân thủ. Có một cung từ (s,α) đến (s,α’) đƣợc gán nhãn a nếu A trong trạng thái S với các giá trị đồng hồ v Є α có thể thực hiện một bƣớc chuyển trên a đến trạng thái mở rộng (s’, v’) sao cho v’ Є α’.

Để thuận tiện quan hệ cung đƣợc định nghĩa nhƣ là quan hệ time-succesor trên các miền đồng hồ. Time-succesors của một miền đồng hồ α là tất cả các miền đồng hồ đƣợc thăm bởi đồng hồ biên dịch v Є α trong các tiến trình thời gian.

Định nghĩa 3.11: Một miền đồng hồ α’ là time-successor của miền đồng hồ α nếu cho mỗi v Є α thì tồn tại số dƣơng t Є R sao cho v + t Є α’.

Ví dụ 3.11: Xem xét các miền đồng hồ đƣợc chỉ trong hình 12. Time-successor của miền α là các miền có thể đạt đƣợc bằng cách vẽ đƣờng thẳng di chuyển thời gian từ một số điểm trong miền α theo hƣớng chéo lên trên . Ví dụ miền [(1 <x < 2), (0 < y < x – 1)] các miền liền kề là time-successor : [(x=2), (0 < y < x – 1)], [(x>2), (y=1)] và [(x>2), (y>1)].

Kế tiếp xem xét để xây dựng tất cả các time-successor của miền đồng hồ. Từ định nghĩa miền đồng hồ α đƣợc đặc tả trong phần (1) cho các đồng hồ x, một ràng

buộc với dạng (x = c) hay (c-1 < x < c) hay (x>cx) và (2) cho các cặp x vay y sao cho (c-1 < x < c ) và (d-1 < y < d) xảy ra trong (1), quan hệ thứ tự giữ phần lẻ fract(x) và fract(y). Để tính ra tất cả các time-successor của α ta tiếp cận nhƣ sau. Đầu tiên quan sát thấy quan hệ time-successor là quan hệ chuyển. Ta xem xét các trƣờng hợp khác.

Đầu tiên giả thiết α thỏa mãn ràng buộc (x >cx) cho mọi đồng hồ x. Trong ví dụ hình trên là miền [(x > 2), (y > 1)].

Tiếp theo giả thiết tập C0 bao gồm các đồng hồ x sao cho α thỏa mãn ràng buộc (x=c) với c ≤ cx. là không rỗng. Trong trƣờng hợp này, vì các tiến trình thời gian các phần lẻ của đồng hồ khác 0 và miền đồng hồ thay đổi ngay lập tức. Time-successor của α giống nhƣ time-successor của miền đồng hồ β đƣợc chuyên biệt nhƣ sau:

(1)Với x Є C0 nếu α thỏa mãn (x = cx) thì β thỏa mãn (x > cx) mặt khác nếu α thỏa mãn (x = c) thì β thỏa mãn (c < x < c+1). Trong đó x không thuộc C0. Ràng buộc trong β tƣơng tự nhƣ trong α.

(2)Với các đồng hồ x và y sao cho x < cx và y < cy trong miền α thì trật tự trong β giữa các phần lẻ tƣơng tự nhƣ trong miền α.

Chẳng hạn trong hình 12, time-succesor của [(x=0), (0 < y < 1)] là tƣơng tự nhƣ các time-successor của [0 < x < y < 1].

Nếu cả hai trƣờng hợp trên không áp dụng, C0 là tập các đồng hồ x trong đó α không thỏa mãn (x > cx) và có phần lẻ lớn nhất. Với mọi đồng hồ y sao cho α không thỏa mãn ( y > cy) , fract(y) ≤ fract(x) là một ràng buộc của α. Trong trƣờng hợp này, nhƣ các tiến trình thời gian, các đồng hồ trong C0 giả thiết là các giá trị số nguyên. β là miền đồng hồ đƣợc đặc tả bởi:

(1)Với x Є C0 nếu α thỏa mãn (c-1 < x < c) nếu β thỏa mãn (x = c) với x không Є C0, với ràng buộc trong β tƣơng tự nhƣ trong α.

(2)Với các đồng hồ x và y sao cho (c-1 < x < c) và (d-1 < y < d) xảy ra trong (1) , quan hệ thứ tự trong β giữa các phần lẻ là giống nhau.

Trong trƣờng hợp này, các time-successor của α bao gồm α và β, và tất cả các time-successor của β. Chẳng hạn trong hình 9 , time-successor của [0 < x < y < 1] bao gồm chính nó, [(0 <x < 1), (y = 1)] và tất cả các time-succesor của [(0 <x < 1), (y = 1)].

Từ đây ta có định nghĩa Otomat miền.

Định nghĩa 3.8 Cho một bảng chuyển thời gian A = (∑, S, S0, C, E) Otomat miền tƣơng ứng R(A) là bảng chuyển trên các ký tự đầu vào ∑.

Các trạng thái ban đầu có dạng <s0,[v0]> với s0 Є S0 và v0(x) = 0 với tất các các đồng hồ x Є C.

R(A) có các cung <<s, α>, <s’, α’> , a> nếu có một cung <s,s’, a, 𝜆,δ> Є E và một miền α’’ sao cho (1) α’’ là một time-succesor của α, (2) α’’ thỏa mãn δ và (3) α’’ = [𝜆 0] α’’.

Ví dụ 3.12 Xem xét Otomat thời gian A0 nhƣ trong hình 13. Tập các ký tự {a, b, c, d}. Tất cả các trạng thái của Otomat là trạng thái chấp nhận. Otomat miền tƣơng ứng R(A0) đƣợc chỉ ra. Các miền có thể đạt đƣợc từ miền khởi tạo <s0, [x=y=0]> đƣợc trình diễn. Chú ý cx=1 và cy = 1. Ràng buộc thời gian của Otomat đảm bảo bƣớc chuyển trạng thái tứ s2 đến s3 không bao giở xảy ra. Miền đạt đƣợc duy nhất với thành phần trạng thái s2 thỏa mãn các ràng buộc [y = 1, x >1] và miền này không có các cung đi ra. Vì vậy Otomat miền nhằm giúp chúng ta kết luận không có bƣớc chuyển nào theo sau bƣớc chuyển b của trạng thái 2.

Hình 3.10 : Otomat A0 và Otomat miền tƣơng ứng a a a a c d d d d d d d b b b a a a d, (x>1)? c, (x<1)? b, (y=1)? a, (y<1)? ,y :=0 c, (x<1)? y := 0 a S1 S3 S0 S1 S0 x=y=0 S1 0=y<x<1 S1 y=0, x =1 S1 y=0, x >1 S0 1=y<x S3 0<y<x<1 S3 0<y<1<x S3 x=y=0 S3 x>1,y>1

Định nghĩa 3.9: Cho một thực hiện (𝑠 , 𝑣 ) của A có dạng: r: (s0, v0) 𝜎1 𝜏1> (s1, v1) 𝜎2 𝜏2> (s2, v2) 𝜎3 𝜏3> … Định nghĩa phép chiếu [r] =(𝑠 , [𝑣]) là trình tự [r] : <s0,[v0]> 𝜎1 <s1,[v1]> 𝜎2 <s2,[v2]> 𝜎3 …

Từ định nghĩa của quan hệ cung cho R(A), tiếp đến [r] là một thực hiện của R(A) trên từ ký tự σ. Vì các tiến trình thời gian không có cận biên với r, các đồng hồ x Є C hoặc đƣợc thiết lập vô hạn lần, hay xác định thời gian thời gian tăng không có cận biên. Vì vậy với mọi x Є C, có vô hạn i ≥ 0 , [vi] thỏa mãn [(x=0) V (x > cx)] Điều này dẫn đến định nghĩa sau:

Định nghĩa 3.10: Một thực hiện r = (𝑠 , 𝑣 ) của Otomat miền R(A) có dạng: r : <s0,[v0]> 𝜎1 <s1,[v1]> 𝜎2 <s2,[v2]> 𝜎3 …

là tiến trình nếu mỗi đồng hồ x Є C có vô hạn i ≥ 0 sao cho αi thỏa mãn [(x=0) V (x > cx)].

Vì vậy cho một thực hiện r của A trên (σ,τ) , [r] là môt tiến trình thực hiện của R[A] trên σ. Ta có các thực hiện tiến trình của R(A) tƣơng ứng chính xác đến thực hiện chiếu của A.

Ví dụ 3.13: Xem xét Otomat miền R(A0) trong hình 12. Các thực hiện r của R(A0) của hình 12. Tất cả các thực hiện r của R(A0) có hậu tố của một trong 3 dạng sau: (i) các chu kỳ Otomat giữa các miền (s1, [y =0 <x <1]) và (s3, [0 <y < x< 1]), (ii) Otomat nằm trong miền < s3, [0 < y < 1 < x]> sử dụng vòng lặp trên chính nó, hay (iii) Otomat trong vùng (s3, [x>1, y > 1]).

Chỉ trƣờng hợp (iii) tƣơng ứng với các thực hiện tiến trình. Cho các thực hiện loại (i), thậm chí nhận thiết lập vô hạn lần, giá trị của x luôn luôn nhỏ hơn 1. Với các thực hiện loại (ii) thậm chí giá của x không đƣợc bao, đồng hồ y đƣợc thiết lập lại vô hạn lần và giá trị của y có giới hạn. Vì vậy các thực hiện tiến trình của A0 tƣơng ứng thực hiện của R(A0) của loại (iii).

Nếu r là một thực hiện tiến trình của R(A) trên σ thì tồn tại một trình tự thời gian τ và một thực hiện r’ của A trên (σ,τ) để r bằng với [r’].

Một phần của tài liệu Kiểm chứng các tính chất thời gian thực cho hệ thống đồng thời bằng RT-SPIN (Trang 36)

Tải bản đầy đủ (PDF)

(73 trang)