Chƣơng 1 : Mở đầu
3.4 Kiểm tra tính rỗng
Trong phần này ta phát triển thuật toán để kiểm tra tính rỗng của ngơn ngữ Otomat thời gian. Sự tồn tại của đƣờng chấp nhận vô hạn trong bảng chuyển trạng thái cơ sở rõ ràng là điều kiện cần thiết cho ngôn ngữ Otomat không rỗng. Tuy nhiên ràng buộc thời gian của các luật Otomat , ta chỉ rằng Otomat Buchi có thể đƣợc xây dựng chấp nhận chính xác tập các từ không thời gian giống với từ thời gian đƣợc chấp nhận bởi Otomat thời gian.
3.4.1 Giới hạn đến các hằng nguyên
Xem lại định nghĩa của Otomat thời gian cho phép các ràng buộc bao gồm so sánh với các hằng. Bổ đề sau cho việc kiểm tra tính rỗng, ta có thể giới hạn đến Otomat thời gian với các ràng buộc đồng hồ bao gồm chỉ các hằng nguyên. Cho một trình tự thời gian τ và t Є Q khi đó t.τ đề cập đến trình tự thời gian đạt đƣợc bởi bội số của τi bởi t.
Bổ đề: Xét một bảng chuyển trạng thái thời gian A, một từ thời gian (σ,τ), và t Є Q. (s , v ) là một thực hiện của A trên (σ,τ) nếu (s ,t. v ) là một thực hiện của At qua (σ,t.τ) với At là bảng chuyển trạng thái đạt đƣợc bằng cách thay thế mỗi hằng d trong mỗi ràng buộc đồng hồ gán nhãn của A bởi t.d.
Có một đẳng cấu giữa thực hiện của A và At. Nếu ta chọn t là bội số chung nhỏ nhất của tất cả các hằng xuất hiện trong các ràng buộc đồng hồ của A, thì các ràng buộc của At sử dụng chỉ các hằng số nguyên. Trong bƣớc chuyển nay các hằng số là bội số của các hằng gốc. Ta giả thiết mã hóa nhị phân cho các hằng số.
Hơn nữa L(A) là rỗng nếu L[At] là rỗng. Vì vậy để xác định tính rỗng của ngơn ngữ L(A) ta xem xét At. Tƣơng tự Untime[L(A)] bởi Untime[L(At)]. Trong phần còn lại của phần này ta giả thiết các ràng buộc của đồng hồ chỉ sử dụng các hằng số nguyên.
3.4.2 Các miền Đồng hồ
Tại một thời điểm hành vi tiếp theo của bảng chuyện trạng thái đƣợc xác định bởi trạng thái của nó và các giá trị của các đồng hồ. Từ đó có định nghĩa sau:
Định nghĩa 3.9: Một bảng chuyển trạng thái thời gian (∑,S,S0,C,E), trạng thái mở rộng là cặp (s,v) với s Є S và v là đồng hồ biên dịch cho C
Vì số các trạng thái mở rộng là vơ hạn, ta không thể xây dựng một Otomat mà các trạng thái là các trạng thái mở rộng của atomat A. Nhƣng nếu 2 trạng thái mở rộng với cùng trạng thái A với cùng giá trị phần nguyên của các giá trị đồng hồ, và trật tự của các phần lẻ của các giá trị đồng hồ thì thực hiện bắt đầu từ hai trạng thái mở rộng
tƣơng tự nhau. Phần nguyên của các giá trị đồng hồ cần đƣợc xác định có hay khơng ràng buộc đồng hồ đƣợc đáp ứng, cũng nhƣ trật tự của các phần lẻ sẽ quyết định đồng hồ nào sẽ thay đổi phần nguyên trƣớc. Cho ví dụ, nếu 2 đồng hồ x và y có giá trị giữa 0 và 1 trong một trạng thái mở rộng, thì một bƣớc chuyển trạng thái với ràng buộc đồng hồ (x =1) có thể đƣợc theo sau bởi một bƣớc chuyển với ràng buộc đồng hồ (y= 1) phụ thuộc có hay khơng giá trị các đồng hồ thỏa mãn (x < y).
Các phần nguyên của các giá trị đồng hồ có thể lớn tùy ý. Nhƣng nếu đồng hồ x không bao giờ đƣợc so sánh với một hằng lớn hơn c, thì giá trị thực sự của nó khi vƣợt quá c, không ảnh hƣởng trong việc quyết định đƣờng đƣợc phép.
Ta có thể hình thức hóa luận điểm trên. Với bất cứ t Є R, fract(t) biểu thị lẻ của t, và 𝑡 biểu thị phần nguyên của t. nghĩa là t = 𝑡 + fract(t). Ta giả thiết các đồng hồ trong C xuất hiện trong một số ràng buộc đồng hồ.
Định nghĩa 3.10: cho A = (∑,S,S0,C,E) là một bảng chuyển trạng thái thời gian. Với mỗi x Є C, cho cx là số nguyên lớn nhất để (x ≤c) hay (c≤x) là một biểu thức con cho một số ràng buộc đồng hồ xuất hiện trong E.
Quan hệ tƣơng đƣơng ~ đƣợc định nghĩa trên tập các đồng hồ biên dịch cho C v
~v' nếu các điều kiện sau thỏa mãn.
1. Tất cả x Є C, hoặc 𝑣(𝑥) và 𝑣(𝑥′) là giống nhau, hay v(x) và v(x’) lớn hơn cx
2. Với x, y Є C với v(x) ≤cx và v(y) ≤cy , fract(v(x)) ≤ fract(v(y)) nếu
fract(v’(x)) ≤ fract(v’ (y))
3. Với x Є C và v(x) ≤cx , fract(v(x)) = 0 nếu fract(v’(x)) = 0
Miền đồng hồ của A là một lớp các đồng hồ biên dịch tƣơng đƣơng đƣợc biểu thị bởi ~
Hình 3.9: Miền đồng hồ
Ta sử dụng [v] để biểu thị miền đồng hồ của v. Mỗi miền có thể đƣợc đặc trƣng duy nhất bởi tập hữu hạn các ràng buộc đồng hồ đƣợc thỏa mãn. Ví dụ xem xét đồng hồ biên dịch trong [v] thỏa mãn ràng buộc (0 < x < y < 1) ta sẽ trình diễn bởi [0 < x < y < 1]. Bản chất của các lớp tƣơng đƣơng có thể đƣợc hiểu qua ví dụ.
6 điểm góc: chẳng hạn [(0,1)]
14 đoạn kẻ mở: chẳng hạn [ 0< x=y < 1] 8 miền mở: chẳng hạn [0 < x < y < 1]
Ví dụ 3.10 Xem xét một bảng chuyển trạng thái thời gian với hai đồng hồ x và y với cx = 2 và cy = 1. Các miền đồng hồ đƣợc chỉ trong hình 12.
Để ý chỉ có hữu hạn một số các miền. Với một ràng buộc δ trong A nếu v ~ v’ thì v thỏa mãn δ nếu v’ thỏa mãn δ. Ta nói rằng miền đồng hồ α thỏa mãn ràng buộc δ nếu mọi v Є α thỏa mãn δ. Mỗi miền có thể đƣợc trinh diễn bằng cách chuyên biệt.
(1) Cho các đồng hồ x, một ràng buộc đồng hồ từ tập:
{x = c | c = 0 , 1, ..cx} U {c-1 < x < c | c = 1,… cx} U {x > cx} .
(2) Mỗi cập đồng hồ x và y sao cho c -1 , x < c và d -1 < y < d ở trong (1) với c và d xác định, khi đó fract(x) nhỏ hơn, bằng hay lớn hơn fract(y) xác định miền đồng hồ.